VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkProperty2D.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 =========================================================================*/ 00025 #ifndef __vtkProperty2D_h 00026 #define __vtkProperty2D_h 00027 00028 #include "vtkObject.h" 00029 00030 class vtkViewport; 00031 00032 #define VTK_BACKGROUND_LOCATION 0 00033 #define VTK_FOREGROUND_LOCATION 1 00034 00035 class VTK_COMMON_EXPORT vtkProperty2D : public vtkObject 00036 { 00037 public: 00038 vtkTypeMacro(vtkProperty2D,vtkObject); 00039 void PrintSelf(ostream& os, vtkIndent indent); 00040 00043 static vtkProperty2D *New(); 00044 00046 void DeepCopy(vtkProperty2D *p); 00047 00049 00050 vtkSetVector3Macro(Color, double); 00051 vtkGetVector3Macro(Color, double); 00053 00055 00056 vtkGetMacro(Opacity, double); 00057 vtkSetMacro(Opacity, double); 00059 00061 00063 vtkSetClampMacro(PointSize,float,0,VTK_LARGE_FLOAT); 00064 vtkGetMacro(PointSize,float); 00066 00068 00070 vtkSetClampMacro(LineWidth,float,0,VTK_LARGE_FLOAT); 00071 vtkGetMacro(LineWidth,float); 00073 00075 00078 vtkSetMacro(LineStipplePattern,int); 00079 vtkGetMacro(LineStipplePattern,int); 00081 00083 00086 vtkSetClampMacro(LineStippleRepeatFactor,int,1,VTK_LARGE_INTEGER); 00087 vtkGetMacro(LineStippleRepeatFactor,int); 00089 00091 00097 vtkSetClampMacro( DisplayLocation, int, 00098 VTK_BACKGROUND_LOCATION, VTK_FOREGROUND_LOCATION ); 00099 vtkGetMacro( DisplayLocation, int ); 00100 void SetDisplayLocationToBackground() 00101 {this->DisplayLocation = VTK_BACKGROUND_LOCATION;}; 00102 void SetDisplayLocationToForeground() 00103 {this->DisplayLocation = VTK_FOREGROUND_LOCATION;}; 00105 00107 00108 virtual void Render (vtkViewport* vtkNotUsed(viewport)) {} 00109 //ETX 00111 00112 protected: 00113 vtkProperty2D(); 00114 ~vtkProperty2D(); 00115 00116 double Color[3]; 00117 double Opacity; 00118 float PointSize; 00119 float LineWidth; 00120 int LineStipplePattern; 00121 int LineStippleRepeatFactor; 00122 int DisplayLocation; 00123 00124 private: 00125 vtkProperty2D(const vtkProperty2D&); // Not implemented. 00126 void operator=(const vtkProperty2D&); // Not implemented. 00127 }; 00128 00129 #endif