VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkScalarBarRepresentation.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00015 00032 #ifndef __vtkXYPlotRepresentation_h 00033 #define __vtkXYPlotRepresentation_h 00034 00035 #include "vtkInteractionWidgetsModule.h" // For export macro 00036 #include "vtkBorderRepresentation.h" 00037 00038 class vtkXYPlotActor; 00039 00040 class VTKINTERACTIONWIDGETS_EXPORT vtkXYPlotRepresentation : public vtkBorderRepresentation 00041 { 00042 public: 00043 vtkTypeMacro(vtkXYPlotRepresentation, vtkBorderRepresentation); 00044 virtual void PrintSelf(ostream &os, vtkIndent indent); 00045 static vtkXYPlotRepresentation *New(); 00046 00048 00049 vtkGetObjectMacro(XYPlotActor, vtkXYPlotActor); 00050 virtual void SetXYPlotActor(vtkXYPlotActor *); 00052 00054 00055 virtual void BuildRepresentation(); 00056 virtual void WidgetInteraction(double eventPos[2]); 00057 virtual void GetSize(double size[2]) 00058 {size[0]=2.0; size[1]=2.0;} 00060 00062 00064 virtual int GetVisibility(); 00065 virtual void SetVisibility(int); 00066 virtual void GetActors2D(vtkPropCollection *collection); 00067 virtual void ReleaseGraphicsResources(vtkWindow *window); 00068 virtual int RenderOverlay(vtkViewport*); 00069 virtual int RenderOpaqueGeometry(vtkViewport*); 00070 virtual int RenderTranslucentPolygonalGeometry(vtkViewport*); 00071 virtual int HasTranslucentPolygonalGeometry(); 00073 00075 00076 void SetGlyphSize(double x); 00077 void SetPlotGlyphType(int curve, int glyph); 00079 00081 00082 void SetTitle(const char* title); 00083 void SetTitleColor(double r, double g, double b); 00084 void SetTitleFontFamily(int x); 00085 void SetTitleBold(int x); 00086 void SetTitleItalic(int x); 00087 void SetTitleShadow(int x); 00088 void SetTitleFontSize(int x); 00089 void SetTitleJustification(int x); 00090 void SetTitleVerticalJustification(int x); 00091 void SetAdjustTitlePosition(int x); 00092 void SetTitlePosition(double x, double y); 00094 00096 00097 void SetXAxisColor(double r, double g, double b); 00098 void SetYAxisColor(double r, double g, double b); 00099 void SetXTitle( const char* ytitle ); 00100 char* GetXTitle(); 00101 void SetXRange(double min, double max); 00102 void SetYTitle( const char* ytitle ); 00103 char* GetYTitle(); 00104 void SetYRange(double min, double max); 00105 void SetYTitlePosition (int pos); 00106 int GetYTitlePosition() const; 00107 void SetXValues(int x); 00109 00111 00112 void SetAxisTitleColor(double r, double g, double b); 00113 void SetAxisTitleFontFamily(int x); 00114 void SetAxisTitleBold(int x); 00115 void SetAxisTitleItalic(int x); 00116 void SetAxisTitleShadow(int x); 00117 void SetAxisTitleFontSize(int x); 00118 void SetAxisTitleJustification(int x); 00119 void SetAxisTitleVerticalJustification(int x); 00121 00123 00124 void SetAxisLabelColor(double r, double g, double b); 00125 void SetAxisLabelFontFamily(int x); 00126 void SetAxisLabelBold(int x); 00127 void SetAxisLabelItalic(int x); 00128 void SetAxisLabelShadow(int x); 00129 void SetAxisLabelFontSize(int x); 00130 void SetAxisLabelJustification(int x); 00131 void SetAxisLabelVerticalJustification(int x); 00132 void SetXLabelFormat(const char* _arg); 00133 void SetYLabelFormat(const char* _arg); 00135 00137 00138 void SetBorder(int x); 00139 void RemoveAllActiveCurves(); 00140 void AddUserCurvesPoint( double c, double x, double y); 00141 void SetLegend(int x); 00142 void SetLegendBorder(int b); 00143 void SetLegendBox(int b); 00144 void SetLegendBoxColor(double r, double g, double b); 00145 void SetLegendPosition(double x, double y); 00146 void SetLegendPosition2(double x, double y); 00147 void SetLineWidth(double w); 00148 void SetPlotColor(int i, int r, int g, int b); 00149 void SetPlotLines(int i); 00150 void SetPlotPoints(int i); 00151 void SetPlotLabel(int i, const char* label); 00153 00154 protected: 00155 vtkXYPlotRepresentation(); 00156 ~vtkXYPlotRepresentation(); 00157 00158 vtkXYPlotActor *XYPlotActor; 00159 private: 00160 vtkXYPlotRepresentation(const vtkXYPlotRepresentation &); // Not implemented 00161 void operator=(const vtkXYPlotRepresentation &); // Not implemented 00162 }; 00163 00164 #endif //__vtkXYPlotRepresentation_h