Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/Rendering/vtkGL2PSExporter.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkGL2PSExporter.h,v $ 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 =========================================================================*/ 00082 #ifndef __vtkGL2PSExporter_h 00083 #define __vtkGL2PSExporter_h 00084 00085 #include "vtkExporter.h" 00086 00087 class VTK_RENDERING_EXPORT vtkGL2PSExporter : public vtkExporter 00088 { 00089 public: 00090 static vtkGL2PSExporter *New(); 00091 vtkTypeRevisionMacro(vtkGL2PSExporter,vtkExporter); 00092 void PrintSelf(ostream& os, vtkIndent indent); 00093 00095 00098 vtkSetStringMacro(FilePrefix); 00099 vtkGetStringMacro(FilePrefix); 00101 00102 //BTX 00103 enum OutputFormat 00104 { 00105 PS_FILE, 00106 EPS_FILE, 00107 PDF_FILE, 00108 TEX_FILE 00109 }; 00110 //ETX 00111 00113 00117 vtkSetClampMacro(FileFormat, int, PS_FILE, TEX_FILE); 00118 vtkGetMacro(FileFormat, int); 00119 void SetFileFormatToPS() 00120 {this->SetFileFormat(PS_FILE);}; 00121 void SetFileFormatToEPS() 00122 {this->SetFileFormat(EPS_FILE);}; 00123 void SetFileFormatToPDF() 00124 {this->SetFileFormat(PDF_FILE);}; 00125 void SetFileFormatToTeX() 00126 {this->SetFileFormat(TEX_FILE);}; 00127 char *GetFileFormatAsString(); 00129 00130 //BTX 00131 enum SortScheme 00132 { 00133 NO_SORT=0, 00134 SIMPLE_SORT=1, 00135 BSP_SORT=2 00136 }; 00137 //ETX 00138 00140 00143 vtkSetClampMacro(Sort, int, NO_SORT, BSP_SORT); 00144 vtkGetMacro(Sort,int); 00145 void SetSortToOff() 00146 {this->SetSort(NO_SORT);}; 00147 void SetSortToSimple() 00148 {this->SetSort(SIMPLE_SORT);}; 00149 void SetSortToBSP() 00150 {this->SetSort(BSP_SORT);}; 00151 char *GetSortAsString(); 00153 00155 00157 vtkSetMacro(Compress, int); 00158 vtkGetMacro(Compress, int); 00159 vtkBooleanMacro(Compress, int); 00161 00163 00165 vtkSetMacro(DrawBackground, int); 00166 vtkGetMacro(DrawBackground, int); 00167 vtkBooleanMacro(DrawBackground, int); 00169 00171 00174 vtkSetMacro(SimpleLineOffset, int); 00175 vtkGetMacro(SimpleLineOffset, int); 00176 vtkBooleanMacro(SimpleLineOffset, int); 00178 00180 00182 vtkSetMacro(Silent, int); 00183 vtkGetMacro(Silent, int); 00184 vtkBooleanMacro(Silent, int); 00186 00188 00191 vtkSetMacro(BestRoot, int); 00192 vtkGetMacro(BestRoot, int); 00193 vtkBooleanMacro(BestRoot, int); 00195 00197 00200 vtkSetMacro(Text, int); 00201 vtkGetMacro(Text, int); 00202 vtkBooleanMacro(Text, int); 00204 00206 00208 vtkSetMacro(Landscape, int); 00209 vtkGetMacro(Landscape, int); 00210 vtkBooleanMacro(Landscape, int); 00212 00214 00217 vtkSetMacro(PS3Shading, int); 00218 vtkGetMacro(PS3Shading, int); 00219 vtkBooleanMacro(PS3Shading, int); 00221 00223 00226 vtkSetMacro(OcclusionCull, int); 00227 vtkGetMacro(OcclusionCull, int); 00228 vtkBooleanMacro(OcclusionCull, int); 00230 00232 00236 vtkSetMacro(Write3DPropsAsRasterImage, int); 00237 vtkGetMacro(Write3DPropsAsRasterImage, int); 00238 vtkBooleanMacro(Write3DPropsAsRasterImage, int); 00240 00242 00244 static void SetGlobalPointSizeFactor(float val); 00245 static float GetGlobalPointSizeFactor(); 00247 00249 00251 static void SetGlobalLineWidthFactor(float val); 00252 static float GetGlobalLineWidthFactor(); 00254 00255 protected: 00256 vtkGL2PSExporter(); 00257 ~vtkGL2PSExporter(); 00258 00259 void WriteData(); 00260 00261 char *FilePrefix; 00262 int FileFormat; 00263 int Sort; 00264 int Compress; 00265 int DrawBackground; 00266 int SimpleLineOffset; 00267 int Silent; 00268 int BestRoot; 00269 int Text; 00270 int Landscape; 00271 int PS3Shading; 00272 int OcclusionCull; 00273 int Write3DPropsAsRasterImage; 00274 00275 private: 00276 vtkGL2PSExporter(const vtkGL2PSExporter&); // Not implemented 00277 void operator=(const vtkGL2PSExporter&); // Not implemented 00278 }; 00279 00280 inline char *vtkGL2PSExporter::GetSortAsString(void) 00281 { 00282 if ( this->Sort == NO_SORT ) 00283 { 00284 return (char *)"Off"; 00285 } 00286 else if ( this->Sort == SIMPLE_SORT ) 00287 { 00288 return (char *)"Simple"; 00289 } 00290 else 00291 { 00292 return (char *)"BSP"; 00293 } 00294 } 00295 00296 inline char *vtkGL2PSExporter::GetFileFormatAsString(void) 00297 { 00298 if ( this->FileFormat == PS_FILE ) 00299 { 00300 return (char *)"PS"; 00301 } 00302 else if ( this->FileFormat == EPS_FILE ) 00303 { 00304 return (char *)"EPS"; 00305 } 00306 else if ( this->FileFormat == PDF_FILE ) 00307 { 00308 return (char *)"PDF"; 00309 } 00310 else 00311 { 00312 return (char *)"TeX"; 00313 } 00314 } 00315 00316 #endif