00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
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
00103 enum OutputFormat
00104 {
00105 PS_FILE,
00106 EPS_FILE,
00107 PDF_FILE,
00108 TEX_FILE
00109 };
00110
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
00131 enum SortScheme
00132 {
00133 NO_SORT=0,
00134 SIMPLE_SORT=1,
00135 BSP_SORT=2
00136 };
00137
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&);
00277
void operator=(
const vtkGL2PSExporter&);
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