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 =========================================================================*/ 00028 #ifndef __vtkProperty2D_h 00029 #define __vtkProperty2D_h 00030 00031 #include "vtkObject.h" 00032 00033 class vtkViewport; 00034 00035 #define VTK_BACKGROUND_LOCATION 0 00036 #define VTK_FOREGROUND_LOCATION 1 00037 00038 class VTK_COMMON_EXPORT vtkProperty2D : public vtkObject 00039 { 00040 public: 00041 vtkTypeMacro(vtkProperty2D,vtkObject); 00042 void PrintSelf(ostream& os, vtkIndent indent); 00043 00046 static vtkProperty2D *New(); 00047 00049 void DeepCopy(vtkProperty2D *p); 00050 00052 00053 vtkSetVector3Macro(Color, double); 00054 vtkGetVector3Macro(Color, double); 00056 00058 00059 vtkGetMacro(Opacity, double); 00060 vtkSetMacro(Opacity, double); 00062 00064 00066 vtkSetClampMacro(PointSize,float,0,VTK_LARGE_FLOAT); 00067 vtkGetMacro(PointSize,float); 00069 00071 00073 vtkSetClampMacro(LineWidth,float,0,VTK_LARGE_FLOAT); 00074 vtkGetMacro(LineWidth,float); 00076 00078 00081 vtkSetMacro(LineStipplePattern,int); 00082 vtkGetMacro(LineStipplePattern,int); 00084 00086 00089 vtkSetClampMacro(LineStippleRepeatFactor,int,1,VTK_LARGE_INTEGER); 00090 vtkGetMacro(LineStippleRepeatFactor,int); 00092 00094 00100 vtkSetClampMacro( DisplayLocation, int, 00101 VTK_BACKGROUND_LOCATION, VTK_FOREGROUND_LOCATION ); 00102 vtkGetMacro( DisplayLocation, int ); 00103 void SetDisplayLocationToBackground() 00104 {this->DisplayLocation = VTK_BACKGROUND_LOCATION;}; 00105 void SetDisplayLocationToForeground() 00106 {this->DisplayLocation = VTK_FOREGROUND_LOCATION;}; 00108 00109 //BTX 00111 00112 virtual void Render (vtkViewport* vtkNotUsed(viewport)) {} 00113 //ETX 00115 00116 protected: 00117 vtkProperty2D(); 00118 ~vtkProperty2D(); 00119 00120 double Color[3]; 00121 double Opacity; 00122 float PointSize; 00123 float LineWidth; 00124 int LineStipplePattern; 00125 int LineStippleRepeatFactor; 00126 int DisplayLocation; 00127 00128 private: 00129 vtkProperty2D(const vtkProperty2D&); // Not implemented. 00130 void operator=(const vtkProperty2D&); // Not implemented. 00131 }; 00132 00133 #endif