#include <vtkGL2PSExporter.h>
vtkGL2PSExporter is a concrete subclass of vtkExporter that writes high quality vector PostScript (PS/EPS), PDF or SVG files by using GL2PS. GL2PS can be obtained at: http://www.geuz.org/gl2ps/. This can be very useful when one requires publication quality pictures. This class works best with simple 3D scenes and most 2D plots. Please note that GL2PS has its limitations since PostScript is not an ideal language to represent complex 3D scenes. However, this class does allow one to write mixed vector/raster files by using the Write3DPropsAsRasterImage ivar. Please do read the caveats section of this documentation.
By default vtkGL2PSExporter generates Encapsulated PostScript (EPS) output along with the text in portrait orientation with the background color of the window being drawn. The generated output is also compressed using zlib. The various other options are set to sensible defaults.
The output file format (FileFormat) can be either PostScript (PS), Encapsulated PostScript (EPS), PDF, SVG or TeX. The file extension is generated automatically depending on the FileFormat. The default is EPS. When TeX output is chosen, only the text strings in the plot are generated and put into a picture environment. One can turn on and off the text when generating PS/EPS/PDF/SVG files by using the Text boolean variable. By default the text is drawn. The background color of the renderwindow is drawn by default. To make the background white instead use the DrawBackgroundOff function. Landscape figures can be generated by using the LandscapeOn function. Portrait orientation is used by default. Several of the GL2PS options can be set. The names of the ivars for these options are similar to the ones that GL2PS provides. Compress, SimpleLineOffset, Silent, BestRoot, PS3Shading and OcclusionCull are similar to the options provided by GL2PS. Please read the function documentation or the GL2PS documentation for more details. The ivar Write3DPropsAsRasterImage allows one to generate mixed vector/raster images. All the 3D props in the scene will be written as a raster image and all 2D actors will be written as vector graphic primitives. This makes it possible to handle transparency and complex 3D scenes. This ivar is set to Off by default. When drawing lines and points the OpenGL point size and line width are multiplied by a factor in order to generate PostScript lines and points of the right size. The Get/SetGlobalPointSizeFactor and Get/SetGlobalLineWidthFactor let one customize this ratio. The default value is such that the PostScript output looks close to what is seen on screen.
To use this class you need to turn on VTK_USE_GL2PS when configuring VTK.
Definition at line 90 of file vtkGL2PSExporter.h.
Public Types | |
enum | OutputFormat { PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE, SVG_FILE } |
enum | SortScheme { NO_SORT = 0, SIMPLE_SORT = 1, BSP_SORT = 2 } |
typedef vtkExporter | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual void | SetFilePrefix (const char *) |
virtual char * | GetFilePrefix () |
virtual void | SetFileFormat (int) |
virtual int | GetFileFormat () |
void | SetFileFormatToPS () |
void | SetFileFormatToEPS () |
void | SetFileFormatToPDF () |
void | SetFileFormatToTeX () |
void | SetFileFormatToSVG () |
const char * | GetFileFormatAsString () |
virtual void | SetSort (int) |
virtual int | GetSort () |
void | SetSortToOff () |
void | SetSortToSimple () |
void | SetSortToBSP () |
const char * | GetSortAsString () |
virtual void | SetCompress (int) |
virtual int | GetCompress () |
virtual void | CompressOn () |
virtual void | CompressOff () |
virtual void | SetDrawBackground (int) |
virtual int | GetDrawBackground () |
virtual void | DrawBackgroundOn () |
virtual void | DrawBackgroundOff () |
virtual void | SetSimpleLineOffset (int) |
virtual int | GetSimpleLineOffset () |
virtual void | SimpleLineOffsetOn () |
virtual void | SimpleLineOffsetOff () |
virtual void | SetSilent (int) |
virtual int | GetSilent () |
virtual void | SilentOn () |
virtual void | SilentOff () |
virtual void | SetBestRoot (int) |
virtual int | GetBestRoot () |
virtual void | BestRootOn () |
virtual void | BestRootOff () |
virtual void | SetText (int) |
virtual int | GetText () |
virtual void | TextOn () |
virtual void | TextOff () |
virtual void | SetLandscape (int) |
virtual int | GetLandscape () |
virtual void | LandscapeOn () |
virtual void | LandscapeOff () |
virtual void | SetPS3Shading (int) |
virtual int | GetPS3Shading () |
virtual void | PS3ShadingOn () |
virtual void | PS3ShadingOff () |
virtual void | SetOcclusionCull (int) |
virtual int | GetOcclusionCull () |
virtual void | OcclusionCullOn () |
virtual void | OcclusionCullOff () |
virtual void | SetWrite3DPropsAsRasterImage (int) |
virtual int | GetWrite3DPropsAsRasterImage () |
virtual void | Write3DPropsAsRasterImageOn () |
virtual void | Write3DPropsAsRasterImageOff () |
Static Public Member Functions | |
static vtkGL2PSExporter * | New () |
static int | IsTypeOf (const char *type) |
static vtkGL2PSExporter * | SafeDownCast (vtkObject *o) |
static void | SetGlobalPointSizeFactor (float val) |
static float | GetGlobalPointSizeFactor () |
static void | SetGlobalLineWidthFactor (float val) |
static float | GetGlobalLineWidthFactor () |
Protected Member Functions | |
vtkGL2PSExporter () | |
~vtkGL2PSExporter () | |
void | WriteData () |
Protected Attributes | |
char * | FilePrefix |
int | FileFormat |
int | Sort |
int | Compress |
int | DrawBackground |
int | SimpleLineOffset |
int | Silent |
int | BestRoot |
int | Text |
int | Landscape |
int | PS3Shading |
int | OcclusionCull |
int | Write3DPropsAsRasterImage |
Definition at line 106 of file vtkGL2PSExporter.h.
vtkGL2PSExporter::vtkGL2PSExporter | ( | ) | [protected] |
vtkGL2PSExporter::~vtkGL2PSExporter | ( | ) | [protected] |
static vtkGL2PSExporter* vtkGL2PSExporter::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
virtual const char* vtkGL2PSExporter::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkExporter.
static int vtkGL2PSExporter::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkExporter.
virtual int vtkGL2PSExporter::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkExporter.
static vtkGL2PSExporter* vtkGL2PSExporter::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkExporter.
void vtkGL2PSExporter::PrintSelf | ( | ostream & | os, | |
vtkIndent | indent | |||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkExporter.
virtual void vtkGL2PSExporter::SetFilePrefix | ( | const char * | ) | [virtual] |
Specify the prefix of the files to write out. The resulting filenames will have .ps or .eps or .tex appended to them depending on the other options chosen.
virtual char* vtkGL2PSExporter::GetFilePrefix | ( | ) | [virtual] |
Specify the prefix of the files to write out. The resulting filenames will have .ps or .eps or .tex appended to them depending on the other options chosen.
virtual void vtkGL2PSExporter::SetFileFormat | ( | int | ) | [virtual] |
Specify the format of file to write out. This can be one of: PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE. Defaults to EPS_FILE. Depending on the option chosen it generates the appropriate file (with correct extension) when the Write function is called.
virtual int vtkGL2PSExporter::GetFileFormat | ( | ) | [virtual] |
Specify the format of file to write out. This can be one of: PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE. Defaults to EPS_FILE. Depending on the option chosen it generates the appropriate file (with correct extension) when the Write function is called.
void vtkGL2PSExporter::SetFileFormatToPS | ( | ) | [inline] |
Specify the format of file to write out. This can be one of: PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE. Defaults to EPS_FILE. Depending on the option chosen it generates the appropriate file (with correct extension) when the Write function is called.
Definition at line 123 of file vtkGL2PSExporter.h.
void vtkGL2PSExporter::SetFileFormatToEPS | ( | ) | [inline] |
Specify the format of file to write out. This can be one of: PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE. Defaults to EPS_FILE. Depending on the option chosen it generates the appropriate file (with correct extension) when the Write function is called.
Definition at line 125 of file vtkGL2PSExporter.h.
void vtkGL2PSExporter::SetFileFormatToPDF | ( | ) | [inline] |
Specify the format of file to write out. This can be one of: PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE. Defaults to EPS_FILE. Depending on the option chosen it generates the appropriate file (with correct extension) when the Write function is called.
Definition at line 127 of file vtkGL2PSExporter.h.
void vtkGL2PSExporter::SetFileFormatToTeX | ( | ) | [inline] |
Specify the format of file to write out. This can be one of: PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE. Defaults to EPS_FILE. Depending on the option chosen it generates the appropriate file (with correct extension) when the Write function is called.
Definition at line 129 of file vtkGL2PSExporter.h.
void vtkGL2PSExporter::SetFileFormatToSVG | ( | ) | [inline] |
Specify the format of file to write out. This can be one of: PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE. Defaults to EPS_FILE. Depending on the option chosen it generates the appropriate file (with correct extension) when the Write function is called.
Definition at line 131 of file vtkGL2PSExporter.h.
const char * vtkGL2PSExporter::GetFileFormatAsString | ( | void | ) | [inline] |
Specify the format of file to write out. This can be one of: PS_FILE, EPS_FILE, PDF_FILE, TEX_FILE. Defaults to EPS_FILE. Depending on the option chosen it generates the appropriate file (with correct extension) when the Write function is called.
Definition at line 302 of file vtkGL2PSExporter.h.
virtual void vtkGL2PSExporter::SetSort | ( | int | ) | [virtual] |
Set the the type of sorting algorithm to order primitives from back to front. Successive algorithms are more memory intensive. Simple is the default but BSP is perhaps the best.
virtual int vtkGL2PSExporter::GetSort | ( | ) | [virtual] |
Set the the type of sorting algorithm to order primitives from back to front. Successive algorithms are more memory intensive. Simple is the default but BSP is perhaps the best.
void vtkGL2PSExporter::SetSortToOff | ( | ) | [inline] |
Set the the type of sorting algorithm to order primitives from back to front. Successive algorithms are more memory intensive. Simple is the default but BSP is perhaps the best.
Definition at line 151 of file vtkGL2PSExporter.h.
void vtkGL2PSExporter::SetSortToSimple | ( | ) | [inline] |
Set the the type of sorting algorithm to order primitives from back to front. Successive algorithms are more memory intensive. Simple is the default but BSP is perhaps the best.
Definition at line 153 of file vtkGL2PSExporter.h.
void vtkGL2PSExporter::SetSortToBSP | ( | ) | [inline] |
Set the the type of sorting algorithm to order primitives from back to front. Successive algorithms are more memory intensive. Simple is the default but BSP is perhaps the best.
Definition at line 155 of file vtkGL2PSExporter.h.
const char * vtkGL2PSExporter::GetSortAsString | ( | void | ) | [inline] |
Set the the type of sorting algorithm to order primitives from back to front. Successive algorithms are more memory intensive. Simple is the default but BSP is perhaps the best.
Definition at line 286 of file vtkGL2PSExporter.h.
virtual void vtkGL2PSExporter::SetCompress | ( | int | ) | [virtual] |
Turn on/off compression when generating PostScript or PDF output. By default compression is on.
virtual int vtkGL2PSExporter::GetCompress | ( | ) | [virtual] |
Turn on/off compression when generating PostScript or PDF output. By default compression is on.
virtual void vtkGL2PSExporter::CompressOn | ( | ) | [virtual] |
Turn on/off compression when generating PostScript or PDF output. By default compression is on.
virtual void vtkGL2PSExporter::CompressOff | ( | ) | [virtual] |
Turn on/off compression when generating PostScript or PDF output. By default compression is on.
virtual void vtkGL2PSExporter::SetDrawBackground | ( | int | ) | [virtual] |
Turn on/off drawing the background frame. If off the background is treated as white. By default the background is drawn.
virtual int vtkGL2PSExporter::GetDrawBackground | ( | ) | [virtual] |
Turn on/off drawing the background frame. If off the background is treated as white. By default the background is drawn.
virtual void vtkGL2PSExporter::DrawBackgroundOn | ( | ) | [virtual] |
Turn on/off drawing the background frame. If off the background is treated as white. By default the background is drawn.
virtual void vtkGL2PSExporter::DrawBackgroundOff | ( | ) | [virtual] |
Turn on/off drawing the background frame. If off the background is treated as white. By default the background is drawn.
virtual void vtkGL2PSExporter::SetSimpleLineOffset | ( | int | ) | [virtual] |
Turn on/off the GL2PS_SIMPLE_LINE_OFFSET option. When enabled a small offset is added in the z-buffer to all the lines in the plot. This results in an anti-aliasing like solution. Defaults to on.
virtual int vtkGL2PSExporter::GetSimpleLineOffset | ( | ) | [virtual] |
Turn on/off the GL2PS_SIMPLE_LINE_OFFSET option. When enabled a small offset is added in the z-buffer to all the lines in the plot. This results in an anti-aliasing like solution. Defaults to on.
virtual void vtkGL2PSExporter::SimpleLineOffsetOn | ( | ) | [virtual] |
Turn on/off the GL2PS_SIMPLE_LINE_OFFSET option. When enabled a small offset is added in the z-buffer to all the lines in the plot. This results in an anti-aliasing like solution. Defaults to on.
virtual void vtkGL2PSExporter::SimpleLineOffsetOff | ( | ) | [virtual] |
Turn on/off the GL2PS_SIMPLE_LINE_OFFSET option. When enabled a small offset is added in the z-buffer to all the lines in the plot. This results in an anti-aliasing like solution. Defaults to on.
virtual void vtkGL2PSExporter::SetSilent | ( | int | ) | [virtual] |
Turn on/off GL2PS messages sent to stderr (GL2PS_SILENT). When enabled GL2PS messages are suppressed. Defaults to off.
virtual int vtkGL2PSExporter::GetSilent | ( | ) | [virtual] |
Turn on/off GL2PS messages sent to stderr (GL2PS_SILENT). When enabled GL2PS messages are suppressed. Defaults to off.
virtual void vtkGL2PSExporter::SilentOn | ( | ) | [virtual] |
Turn on/off GL2PS messages sent to stderr (GL2PS_SILENT). When enabled GL2PS messages are suppressed. Defaults to off.
virtual void vtkGL2PSExporter::SilentOff | ( | ) | [virtual] |
Turn on/off GL2PS messages sent to stderr (GL2PS_SILENT). When enabled GL2PS messages are suppressed. Defaults to off.
virtual void vtkGL2PSExporter::SetBestRoot | ( | int | ) | [virtual] |
Turn on/off the GL2PS_BEST_ROOT option. When enabled the construction of the BSP tree is optimized by choosing the root primitives leading to the minimum number of splits. Defaults to on.
virtual int vtkGL2PSExporter::GetBestRoot | ( | ) | [virtual] |
Turn on/off the GL2PS_BEST_ROOT option. When enabled the construction of the BSP tree is optimized by choosing the root primitives leading to the minimum number of splits. Defaults to on.
virtual void vtkGL2PSExporter::BestRootOn | ( | ) | [virtual] |
Turn on/off the GL2PS_BEST_ROOT option. When enabled the construction of the BSP tree is optimized by choosing the root primitives leading to the minimum number of splits. Defaults to on.
virtual void vtkGL2PSExporter::BestRootOff | ( | ) | [virtual] |
Turn on/off the GL2PS_BEST_ROOT option. When enabled the construction of the BSP tree is optimized by choosing the root primitives leading to the minimum number of splits. Defaults to on.
virtual void vtkGL2PSExporter::SetText | ( | int | ) | [virtual] |
Turn on/off drawing the text. If on (default) the text is drawn. If the FileFormat is set to TeX output then a LaTeX picture is generated with the text strings. If off text output is suppressed.
virtual int vtkGL2PSExporter::GetText | ( | ) | [virtual] |
Turn on/off drawing the text. If on (default) the text is drawn. If the FileFormat is set to TeX output then a LaTeX picture is generated with the text strings. If off text output is suppressed.
virtual void vtkGL2PSExporter::TextOn | ( | ) | [virtual] |
Turn on/off drawing the text. If on (default) the text is drawn. If the FileFormat is set to TeX output then a LaTeX picture is generated with the text strings. If off text output is suppressed.
virtual void vtkGL2PSExporter::TextOff | ( | ) | [virtual] |
Turn on/off drawing the text. If on (default) the text is drawn. If the FileFormat is set to TeX output then a LaTeX picture is generated with the text strings. If off text output is suppressed.
virtual void vtkGL2PSExporter::SetLandscape | ( | int | ) | [virtual] |
Turn on/off landscape orientation. If off (default) the orientation is set to portrait.
virtual int vtkGL2PSExporter::GetLandscape | ( | ) | [virtual] |
Turn on/off landscape orientation. If off (default) the orientation is set to portrait.
virtual void vtkGL2PSExporter::LandscapeOn | ( | ) | [virtual] |
Turn on/off landscape orientation. If off (default) the orientation is set to portrait.
virtual void vtkGL2PSExporter::LandscapeOff | ( | ) | [virtual] |
Turn on/off landscape orientation. If off (default) the orientation is set to portrait.
virtual void vtkGL2PSExporter::SetPS3Shading | ( | int | ) | [virtual] |
Turn on/off the GL2PS_PS3_SHADING option. When enabled the shfill PostScript level 3 operator is used. Read the GL2PS documentation for more details. Defaults to on.
virtual int vtkGL2PSExporter::GetPS3Shading | ( | ) | [virtual] |
Turn on/off the GL2PS_PS3_SHADING option. When enabled the shfill PostScript level 3 operator is used. Read the GL2PS documentation for more details. Defaults to on.
virtual void vtkGL2PSExporter::PS3ShadingOn | ( | ) | [virtual] |
Turn on/off the GL2PS_PS3_SHADING option. When enabled the shfill PostScript level 3 operator is used. Read the GL2PS documentation for more details. Defaults to on.
virtual void vtkGL2PSExporter::PS3ShadingOff | ( | ) | [virtual] |
Turn on/off the GL2PS_PS3_SHADING option. When enabled the shfill PostScript level 3 operator is used. Read the GL2PS documentation for more details. Defaults to on.
virtual void vtkGL2PSExporter::SetOcclusionCull | ( | int | ) | [virtual] |
Turn on/off culling of occluded polygons (GL2PS_OCCLUSION_CULL). When enabled hidden polygons are removed. This reduces file size considerably. Defaults to on.
virtual int vtkGL2PSExporter::GetOcclusionCull | ( | ) | [virtual] |
Turn on/off culling of occluded polygons (GL2PS_OCCLUSION_CULL). When enabled hidden polygons are removed. This reduces file size considerably. Defaults to on.
virtual void vtkGL2PSExporter::OcclusionCullOn | ( | ) | [virtual] |
Turn on/off culling of occluded polygons (GL2PS_OCCLUSION_CULL). When enabled hidden polygons are removed. This reduces file size considerably. Defaults to on.
virtual void vtkGL2PSExporter::OcclusionCullOff | ( | ) | [virtual] |
Turn on/off culling of occluded polygons (GL2PS_OCCLUSION_CULL). When enabled hidden polygons are removed. This reduces file size considerably. Defaults to on.
virtual void vtkGL2PSExporter::SetWrite3DPropsAsRasterImage | ( | int | ) | [virtual] |
Turn on/off writing 3D props as raster images. 2D props are rendered using vector graphics primitives. If you have hi-res actors and are using transparency you probably need to turn this on. Defaults to Off.
virtual int vtkGL2PSExporter::GetWrite3DPropsAsRasterImage | ( | ) | [virtual] |
Turn on/off writing 3D props as raster images. 2D props are rendered using vector graphics primitives. If you have hi-res actors and are using transparency you probably need to turn this on. Defaults to Off.
virtual void vtkGL2PSExporter::Write3DPropsAsRasterImageOn | ( | ) | [virtual] |
Turn on/off writing 3D props as raster images. 2D props are rendered using vector graphics primitives. If you have hi-res actors and are using transparency you probably need to turn this on. Defaults to Off.
virtual void vtkGL2PSExporter::Write3DPropsAsRasterImageOff | ( | ) | [virtual] |
Turn on/off writing 3D props as raster images. 2D props are rendered using vector graphics primitives. If you have hi-res actors and are using transparency you probably need to turn this on. Defaults to Off.
static void vtkGL2PSExporter::SetGlobalPointSizeFactor | ( | float | val | ) | [static] |
Set the ratio between the OpenGL PointSize and that used by GL2PS to generate PostScript. Defaults to a ratio of 5/7.
static float vtkGL2PSExporter::GetGlobalPointSizeFactor | ( | ) | [static] |
Set the ratio between the OpenGL PointSize and that used by GL2PS to generate PostScript. Defaults to a ratio of 5/7.
static void vtkGL2PSExporter::SetGlobalLineWidthFactor | ( | float | val | ) | [static] |
Set the ratio between the OpenGL LineWidth and that used by GL2PS to generate PostScript. Defaults to a ratio of 5/7.
static float vtkGL2PSExporter::GetGlobalLineWidthFactor | ( | ) | [static] |
Set the ratio between the OpenGL LineWidth and that used by GL2PS to generate PostScript. Defaults to a ratio of 5/7.
void vtkGL2PSExporter::WriteData | ( | ) | [protected, virtual] |
Implements vtkExporter.
char* vtkGL2PSExporter::FilePrefix [protected] |
Definition at line 267 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::FileFormat [protected] |
Definition at line 268 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::Sort [protected] |
Definition at line 269 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::Compress [protected] |
Definition at line 270 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::DrawBackground [protected] |
Definition at line 271 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::SimpleLineOffset [protected] |
Definition at line 272 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::Silent [protected] |
Definition at line 273 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::BestRoot [protected] |
Definition at line 274 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::Text [protected] |
Definition at line 275 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::Landscape [protected] |
Definition at line 276 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::PS3Shading [protected] |
Definition at line 277 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::OcclusionCull [protected] |
Definition at line 278 of file vtkGL2PSExporter.h.
int vtkGL2PSExporter::Write3DPropsAsRasterImage [protected] |
Definition at line 279 of file vtkGL2PSExporter.h.