22 #ifndef vtkOpenGLGL2PSHelperImpl_h 23 #define vtkOpenGLGL2PSHelperImpl_h 25 #include "vtkRenderingGL2PSOpenGL2Module.h" 26 #include "vtkOpenGLGL2PSHelper.h" 43 unsigned char col[4]) VTK_OVERRIDE;
46 float col[4]) VTK_OVERRIDE;
49 double pos[3],
double backgroundDepth,
53 unsigned char rgba[4],
double scale[2] = NULL,
54 double rotateAngle = 0.0,
float strokeWidth = -1,
55 const char *label = NULL) VTK_OVERRIDE;
58 double rasterPos[3],
unsigned char actorColor[4],
59 vtkRenderer *ren,
const char *label = NULL) VTK_OVERRIDE;
81 static
void GetTransformParameters(
vtkRenderer *ren,
84 double halfSize[2],
double zfact[2]);
92 static
void ProjectPoint(
double point[4],
vtkMatrix4x4 *transformMatrix,
93 double viewportOrigin[2],
double halfWidth,
94 double halfHeight,
double zfact1,
double zfact2);
104 static
void UnprojectPoint(
double point[4],
vtkMatrix4x4 *invTransformMatrix,
105 double viewportOrigin[2],
double halfWidth,
106 double halfHeight,
double zfact1,
double zfact2);
107 static
void UnprojectPoints(
double *points3D,
vtkIdType numPoints,
112 void DrawPathPS(
vtkPath *path,
double rasterPos[3],
double windowPos[2],
113 unsigned char rgba[4],
double scale[2],
double rotateAngle,
114 float strokeWidth, const std::
string &label);
115 void DrawPathPDF(
vtkPath *path,
double rasterPos[3],
double windowPos[2],
116 unsigned char rgba[4],
double scale[2],
double rotateAngle,
117 float strokeWidth, const std::
string &label);
118 void DrawPathSVG(
vtkPath *path,
double rasterPos[3],
double windowPos[2],
119 unsigned char rgba[4],
double scale[2],
double rotateAngle,
120 float strokeWidth, const std::
string &label);
127 #endif // vtkOpenGLGL2PSHelperImpl_h represents an object (geometry & properties) in a rendered scene
represent and manipulate 4x4 transformation matrices
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
concrete dataset representing a path defined by Bezier curves.
Helper functionality for GL2PS exporting.
virtual void Draw3DPath(vtkPath *path, vtkMatrix4x4 *actorMatrix, double rasterPos[3], unsigned char actorColor[4], vtkRenderer *ren, const char *label=NULL)=0
Transform the path using the actor's matrix and current GL state, then draw it to GL2PS...
abstract specification for renderers
virtual void DrawImage(vtkImageData *image, double pos[3])=0
Draw the image at pos.
virtual void DrawString(const std::string &str, vtkTextProperty *tprop, double pos[3], double backgroundDepth, vtkRenderer *ren)=0
Format the text in str according to tprop and instruct GL2PS to draw it at pixel coordinate pos...
a simple class to control print indentation
topologically and geometrically regular array of data
represent text properties.
vtkOpenGLGL2PSHelper override implementation.
virtual void ProcessTransformFeedback(vtkTransformFeedback *tfc, vtkRenderer *ren, vtkActor *act)=0
Parse the vertex information in tfc and inject primitives into GL2PS.
static vtkOpenGLGL2PSHelper * New()
virtual void DrawPath(vtkPath *path, double rasterPos[3], double windowPos[2], unsigned char rgba[4], double scale[2]=NULL, double rotateAngle=0.0, float strokeWidth=-1, const char *label=NULL)=0
Generate PS, EPS, or SVG markup from a vtkPath object, and then inject it into the output using the g...
represent and manipulate 3D points