VTK
dox/Interaction/Widgets/vtkXYPlotRepresentation.h
Go to the documentation of this file.
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