VTK  9.3.20240418
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
vtkPDFContextDevice2D Class Reference

vtkContextDevice2D implementation for use with vtkPDFExporter. More...

#include <vtkPDFContextDevice2D.h>

Inheritance diagram for vtkPDFContextDevice2D:
[legend]
Collaboration diagram for vtkPDFContextDevice2D:
[legend]

Public Types

typedef vtkContextDevice2D Superclass
 
- Public Types inherited from vtkContextDevice2D
enum  TextureProperty { Nearest = 0x01 , Linear = 0x02 , Stretch = 0x04 , Repeat = 0x08 }
 
typedef vtkObject Superclass
 

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class. More...
 
vtkPDFContextDevice2DNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
void SetHaruObjects (void *doc, void *page)
 Set the HPDF_Doc and HPDF_Page to use while exporting the scene. More...
 
void SetRenderer (vtkRenderer *)
 
void DrawPoly (float *points, int n, unsigned char *colors=nullptr, int nc_comps=0) override
 Draw a poly line using the points - fastest code path due to memory layout of the coordinates. More...
 
void DrawLines (float *f, int n, unsigned char *colors=nullptr, int nc_comps=0) override
 Draw lines using the points - memory layout is as follows: l1p1,l1p2,l2p1,l2p2... More...
 
void DrawPoints (float *points, int n, unsigned char *colors=nullptr, int nc_comps=0) override
 Draw a series of points - fastest code path due to memory layout of the coordinates. More...
 
void DrawPointSprites (vtkImageData *sprite, float *points, int n, unsigned char *colors=nullptr, int nc_comps=0) override
 Draw a series of point sprites, images centred at the points supplied. More...
 
void DrawMarkers (int shape, bool highlight, float *points, int n, unsigned char *colors=nullptr, int nc_comps=0) override
 Draw a series of markers centered at the points supplied. More...
 
void DrawQuad (float *, int) override
 Draw a quad using the specified number of points. More...
 
void DrawQuadStrip (float *, int) override
 Draw a quad using the specified number of points. More...
 
void DrawPolygon (float *, int) override
 Draw a polygon using the specified number of points. More...
 
void DrawColoredPolygon (float *points, int numPoints, unsigned char *colors=nullptr, int nc_comps=0) override
 Draw a polygon using the specified number of points. More...
 
void DrawEllipseWedge (float x, float y, float outRx, float outRy, float inRx, float inRy, float startAngle, float stopAngle) override
 Draw an elliptic wedge with center at x, y, outer radii outRx, outRy, inner radii inRx, inRy between angles startAngle and stopAngle (expressed in degrees). More...
 
void DrawEllipticArc (float x, float y, float rX, float rY, float startAngle, float stopAngle) override
 Draw an elliptic arc with center at x,y with radii rX and rY between angles startAngle and stopAngle (expressed in degrees). More...
 
void DrawString (float *point, const vtkStdString &string) override
 Draw some text to the screen. More...
 
void ComputeStringBounds (const vtkStdString &string, float bounds[4]) override
 Compute the bounds of the supplied string. More...
 
void ComputeJustifiedStringBounds (const char *string, float bounds[4]) override
 Compute the bounds of the supplied string while taking into account the justification of the currently applied text property. More...
 
void DrawMathTextString (float *point, const vtkStdString &str) override
 Draw text using MathText markup for mathematical equations. More...
 
void DrawImage (float p[2], float scale, vtkImageData *image) override
 Draw the supplied image at the given x, y (p[0], p[1]) (bottom corner), scaled by scale (1.0 would match the image). More...
 
void DrawImage (const vtkRectf &pos, vtkImageData *image) override
 Draw the supplied image at the given position. More...
 
void SetColor4 (unsigned char color[4]) override
 Set the color for the device using unsigned char of length 4, RGBA. More...
 
void SetTexture (vtkImageData *image, int properties) override
 Set the texture for the device, it is used to fill the polygons. More...
 
void SetPointSize (float size) override
 Set the point size for glyphs/sprites. More...
 
void SetLineWidth (float width) override
 Set the line width. More...
 
void DrawPolyData (float p[2], float scale, vtkPolyData *polyData, vtkUnsignedCharArray *colors, int scalarMode) override
 Draw the supplied PolyData at the given x, y (p[0], p[1]) (bottom corner), scaled by scale (1.0 would match the actual dataset). More...
 
void SetLineType (int type) override
 Set the line type type (using anonymous enum in vtkPen). More...
 
void SetMatrix (vtkMatrix3x3 *m) override
 Set the model view matrix for the display. More...
 
void GetMatrix (vtkMatrix3x3 *m) override
 Set the model view matrix for the display. More...
 
void MultiplyMatrix (vtkMatrix3x3 *m) override
 Multiply the current model view matrix by the supplied one. More...
 
void PushMatrix () override
 Push the current matrix onto the stack. More...
 
void PopMatrix () override
 Pop the current matrix off of the stack. More...
 
void SetClipping (int *x) override
 Supply an int array of length 4 with x1, y1, width, height specifying clipping region for the device in pixels. More...
 
void EnableClipping (bool enable) override
 Enable or disable the clipping of the scene. More...
 
- Public Member Functions inherited from vtkContextDevice2D
vtkContextDevice2DNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
virtual void DrawPoints (vtkDataArray *positions, vtkUnsignedCharArray *colors, std::uintptr_t vtkNotUsed(cacheIdentifier))
 
virtual void DrawPointSprites (vtkImageData *sprite, vtkDataArray *positions, vtkUnsignedCharArray *colors, std::uintptr_t vtkNotUsed(cacheIdentifier))
 
virtual void DrawMarkers (int shape, bool highlight, vtkDataArray *positions, vtkUnsignedCharArray *colors, std::uintptr_t vtkNotUsed(cacheIdentifier))
 
virtual bool MathTextIsSupported ()
 Return true if MathText rendering available on this device. More...
 
virtual void ApplyPen (vtkPen *pen)
 Apply the supplied pen which controls the outlines of shapes, as well as lines, points and related primitives. More...
 
virtual void ApplyBrush (vtkBrush *brush)
 Apply the supplied brush which controls the outlines of shapes, as well as lines, points and related primitives. More...
 
virtual void ApplyTextProp (vtkTextProperty *prop)
 Apply the supplied text property which controls how text is rendered. More...
 
virtual int GetWidth ()
 Get the width of the device in pixels. More...
 
virtual int GetHeight ()
 Get the width of the device in pixels. More...
 
virtual void DisableClipping ()
 Disable clipping of the display. More...
 
virtual void Begin (vtkViewport *)
 Begin drawing, pass in the viewport to set up the view. More...
 
virtual void End ()
 End drawing, clean up the view. More...
 
virtual bool GetBufferIdMode () const
 Tell if the device context is in BufferId creation mode. More...
 
virtual void BufferIdModeBegin (vtkAbstractContextBufferId *bufferId)
 Start BufferId creation Mode. More...
 
virtual void BufferIdModeEnd ()
 Finalize BufferId creation Mode. More...
 
virtual void SetViewportSize (const vtkVector2i &size)
 
virtual vtkVector2i GetViewportSize ()
 
virtual void SetViewportRect (const vtkRecti &rect)
 
virtual vtkRecti GetViewportRect ()
 
virtual void ReleaseCache (std::uintptr_t vtkNotUsed(cacheIdentifier))
 Concrete graphics implementations maintain a cache of heavy-weight buffer objects to achieve higher interactive framerates. More...
 
virtual vtkPenGetPen ()
 Get the pen which controls the outlines of shapes, as well as lines, points and related primitives. More...
 
virtual vtkBrushGetBrush ()
 Get the pen which controls the outlines of shapes as well as lines, points and related primitives. More...
 
virtual vtkTextPropertyGetTextProp ()
 Get the text properties object for the vtkContext2D. More...
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 Turn debugging output on. More...
 
virtual void DebugOff ()
 Turn debugging output off. More...
 
bool GetDebug ()
 Get the value of the debug flag. More...
 
void SetDebug (bool debugFlag)
 Set the value of the debug flag. More...
 
virtual void Modified ()
 Update the modification time for this object. More...
 
virtual vtkMTimeType GetMTime ()
 Return this object's modified time. More...
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
vtkTypeBool HasObserver (unsigned long event)
 
vtkTypeBool HasObserver (const char *event)
 
vtkTypeBool InvokeEvent (unsigned long event)
 
vtkTypeBool InvokeEvent (const char *event)
 
std::string GetObjectDescription () const override
 The object description printed in messages and PrintSelf output. More...
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkCommandGetCommand (unsigned long tag)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObserver (vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObservers (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObservers (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkTypeBool HasObserver (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Allow user to set the AbortFlagOn() with the return value of the callback method. More...
 
vtkTypeBool InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
vtkTypeBool InvokeEvent (const char *event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
virtual void SetObjectName (const std::string &objectName)
 Set/get the name of this object for reporting purposes. More...
 
virtual std::string GetObjectName () const
 Set/get the name of this object for reporting purposes. More...
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string. More...
 
virtual vtkIdType GetNumberOfGenerationsFromBase (const char *name)
 Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). More...
 
virtual void Delete ()
 Delete a VTK object. More...
 
virtual void FastDelete ()
 Delete a reference to this object. More...
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream. More...
 
void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object). More...
 
virtual void UnRegister (vtkObjectBase *o)
 Decrease the reference count (release by another object). More...
 
int GetReferenceCount ()
 Return the current reference count of this object. More...
 
void SetReferenceCount (int)
 Sets the reference count. More...
 
bool GetIsInMemkind () const
 A local state flag that remembers whether this object lives in the normal or extended memory space. More...
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses. More...
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses. More...
 
virtual bool UsesGarbageCollector () const
 Indicate whether the class uses vtkGarbageCollector or not. More...
 

Static Public Member Functions

static vtkPDFContextDevice2DNew ()
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkPDFContextDevice2DSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkContextDevice2D
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkContextDevice2DSafeDownCast (vtkObjectBase *o)
 
static vtkContextDevice2DNew ()
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 
static void BreakOnError ()
 This method is called when vtkErrorMacro executes. More...
 
static void SetGlobalWarningDisplay (vtkTypeBool val)
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOn ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOff ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static vtkTypeBool GetGlobalWarningDisplay ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class. More...
 
static vtkIdType GetNumberOfGenerationsFromBaseType (const char *name)
 Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). More...
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 
static void SetMemkindDirectory (const char *directoryname)
 The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. More...
 
static bool GetUsingMemkind ()
 A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space. More...
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkPDFContextDevice2D ()
 
 ~vtkPDFContextDevice2D () override
 
void PushGraphicsState ()
 
void PopGraphicsState ()
 
void ApplyPenState ()
 
void ApplyStrokeColor (unsigned char *color, int numComps)
 
void ApplyLineWidth (float width)
 
void ApplyLineType (int type)
 
void Stroke ()
 
void ApplyPenStateAsFill ()
 
void ApplyBrushState ()
 
void ApplyTextPropertyState ()
 
void ApplyFillColor (unsigned char *color, int numComps)
 
void ApplyFillAlpha (unsigned char alpha)
 
void Fill (bool stroke=false)
 
void FillEvenOdd (bool stroke=false)
 
void BeginClipPathForTexture ()
 
void RegisterTexturePoints (float *data, int numPoints)
 
void FillTexture ()
 
vtkImageDataPrepareImageData (vtkImageData *in)
 
void DrawEllipticArcSegments (float x, float y, float rX, float rY, float startAngle, float stopAngle, bool startPath)
 
int GetNumberOfArcIterations (float rX, float rY, float startAngle, float stopAngle)
 
void DrawCrossMarkers (bool highlight, float *points, int n, unsigned char *colors, int nc_comps)
 
void DrawPlusMarkers (bool highlight, float *points, int n, unsigned char *colors, int nc_comps)
 
void DrawSquareMarkers (bool highlight, float *points, int n, unsigned char *colors, int nc_comps)
 
void DrawCircleMarkers (bool highlight, float *points, int n, unsigned char *colors, int nc_comps)
 
void DrawDiamondMarkers (bool highlight, float *points, int n, unsigned char *colors, int nc_comps)
 
void DrawPath (vtkPath *path, float x, float y)
 
void ApplyTransform ()
 
vtkVector2f GetUnscaledPenWidth ()
 
- Protected Member Functions inherited from vtkContextDevice2D
 vtkContextDevice2D ()
 
 ~vtkContextDevice2D () override
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
 ~vtkObject () override
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods allow a command to exclusively grab all events. More...
 
void InternalReleaseFocus ()
 These methods allow a command to exclusively grab all events. More...
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Static Protected Member Functions

static void Matrix3ToMatrix4 (vtkMatrix3x3 *mat3, double mat4[16])
 
static void Matrix4ToMatrix3 (double mat4[16], vtkMatrix3x3 *mat3)
 
static void Matrix4ToMatrix3 (double mat4[16], double mat3[9])
 
static void Matrix4ToHPDFTransform (const double mat4[16], float hpdfMat[6])
 
static void Matrix3ToHPDFTransform (const double mat3[9], float hpdfMat[6])
 
static void HPDFTransformToMatrix3 (float a, float b, float c, float d, float x, float y, double mat3[9])
 
- Static Protected Member Functions inherited from vtkObjectBase
static vtkMallocingFunction GetCurrentMallocFunction ()
 
static vtkReallocingFunction GetCurrentReallocFunction ()
 
static vtkFreeingFunction GetCurrentFreeFunction ()
 
static vtkFreeingFunction GetAlternateFreeFunction ()
 

Protected Attributes

Details * Impl
 
vtkNew< vtkTransformMatrix
 
vtkRendererRenderer
 
float PointSize
 
float ClipBox [4]
 
bool IsInTexturedFill
 
float TextureBounds [4]
 
- Protected Attributes inherited from vtkContextDevice2D
int Geometry [2]
 Store the width and height of the device in pixels. More...
 
vtkVector2i ViewportSize
 Store the size of the total viewport. More...
 
vtkRecti ViewportRect
 Store our origin and size in the total viewport. More...
 
vtkAbstractContextBufferIdBufferId
 
vtkPenPen
 
vtkBrushBrush
 
vtkTextPropertyTextProp
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
std::string ObjectName
 
- Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

vtkContextDevice2D implementation for use with vtkPDFExporter.

Quirks:

Definition at line 26 of file vtkPDFContextDevice2D.h.

Member Typedef Documentation

◆ Superclass

Definition at line 30 of file vtkPDFContextDevice2D.h.

Constructor & Destructor Documentation

◆ vtkPDFContextDevice2D()

vtkPDFContextDevice2D::vtkPDFContextDevice2D ( )
protected

◆ ~vtkPDFContextDevice2D()

vtkPDFContextDevice2D::~vtkPDFContextDevice2D ( )
overrideprotected

Member Function Documentation

◆ New()

static vtkPDFContextDevice2D* vtkPDFContextDevice2D::New ( )
static

◆ IsTypeOf()

static vtkTypeBool vtkPDFContextDevice2D::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual vtkTypeBool vtkPDFContextDevice2D::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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkContextDevice2D.

◆ SafeDownCast()

static vtkPDFContextDevice2D* vtkPDFContextDevice2D::SafeDownCast ( vtkObjectBase o)
static

◆ NewInstanceInternal()

virtual vtkObjectBase* vtkPDFContextDevice2D::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkContextDevice2D.

◆ NewInstance()

vtkPDFContextDevice2D* vtkPDFContextDevice2D::NewInstance ( ) const

◆ PrintSelf()

void vtkPDFContextDevice2D::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

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 vtkObject.

◆ SetHaruObjects()

void vtkPDFContextDevice2D::SetHaruObjects ( void *  doc,
void *  page 
)

Set the HPDF_Doc and HPDF_Page to use while exporting the scene.

The type is void* to keep the libharu opaque types from leaking into headers. This function expects HPDF_Document* and HPDF_Page* as the arguments.

◆ SetRenderer()

void vtkPDFContextDevice2D::SetRenderer ( vtkRenderer )

◆ DrawPoly()

void vtkPDFContextDevice2D::DrawPoly ( float *  points,
int  n,
unsigned char *  colors = nullptr,
int  nc_comps = 0 
)
overridevirtual

Draw a poly line using the points - fastest code path due to memory layout of the coordinates.

The line will be colored by the colors array, which must be have nc_comps components (defining a single color).

See also
DrawLines()

Implements vtkContextDevice2D.

◆ DrawLines()

void vtkPDFContextDevice2D::DrawLines ( float *  f,
int  n,
unsigned char *  colors = nullptr,
int  nc_comps = 0 
)
overridevirtual

Draw lines using the points - memory layout is as follows: l1p1,l1p2,l2p1,l2p2...

The lines will be colored by colors array which has nc_comps components (defining a single color).

See also
DrawPoly()

Implements vtkContextDevice2D.

◆ DrawPoints()

void vtkPDFContextDevice2D::DrawPoints ( float *  points,
int  n,
unsigned char *  colors = nullptr,
int  nc_comps = 0 
)
overridevirtual

Draw a series of points - fastest code path due to memory layout of the coordinates.

The colors and nc_comps are optional - color array.

Implements vtkContextDevice2D.

◆ DrawPointSprites()

void vtkPDFContextDevice2D::DrawPointSprites ( vtkImageData sprite,
float *  points,
int  n,
unsigned char *  colors = nullptr,
int  nc_comps = 0 
)
overridevirtual

Draw a series of point sprites, images centred at the points supplied.

The supplied vtkImageData is the sprite to be drawn, only squares will be drawn and the size is set using SetPointSize.

Parameters
spritethe image to draw
pointswhere to draw the sprites
nthe number of points
colorsis an optional array of colors.
nc_compsis the number of components for the color.

Implements vtkContextDevice2D.

◆ DrawMarkers()

void vtkPDFContextDevice2D::DrawMarkers ( int  shape,
bool  highlight,
float *  points,
int  n,
unsigned char *  colors = nullptr,
int  nc_comps = 0 
)
overridevirtual

Draw a series of markers centered at the points supplied.

The shape argument controls the marker shape, and can be one of

  • VTK_MARKER_CROSS
  • VTK_MARKER_PLUS
  • VTK_MARKER_SQUARE
  • VTK_MARKER_CIRCLE
  • VTK_MARKER_DIAMOND
    Parameters
    shapethe shape of the marker
    highlightwhether to highlight the marker or not
    pointswhere to draw the sprites
    nthe number of points
    colorsis an optional array of colors.
    nc_compsis the number of components for the color.

Reimplemented from vtkContextDevice2D.

◆ DrawQuad()

void vtkPDFContextDevice2D::DrawQuad ( float *  ,
int   
)
overridevirtual

Draw a quad using the specified number of points.

Reimplemented from vtkContextDevice2D.

◆ DrawQuadStrip()

void vtkPDFContextDevice2D::DrawQuadStrip ( float *  ,
int   
)
overridevirtual

Draw a quad using the specified number of points.

Reimplemented from vtkContextDevice2D.

◆ DrawPolygon()

void vtkPDFContextDevice2D::DrawPolygon ( float *  p,
int  n 
)
overridevirtual

Draw a polygon using the specified number of points.

Reimplemented from vtkContextDevice2D.

◆ DrawColoredPolygon()

void vtkPDFContextDevice2D::DrawColoredPolygon ( float *  points,
int  numPoints,
unsigned char *  colors = nullptr,
int  nc_comps = 0 
)
overridevirtual

Draw a polygon using the specified number of points.

Reimplemented from vtkContextDevice2D.

◆ DrawEllipseWedge()

void vtkPDFContextDevice2D::DrawEllipseWedge ( float  x,
float  y,
float  outRx,
float  outRy,
float  inRx,
float  inRy,
float  startAngle,
float  stopAngle 
)
overridevirtual

Draw an elliptic wedge with center at x, y, outer radii outRx, outRy, inner radii inRx, inRy between angles startAngle and stopAngle (expressed in degrees).

Precondition
positive_outRx: outRx>=0
positive_outRy: outRy>=0
positive_inRx: inRx>=0
positive_inRy: inRy>=0
ordered_rx: inRx<=outRx
ordered_ry: inRy<=outRy

Implements vtkContextDevice2D.

◆ DrawEllipticArc()

void vtkPDFContextDevice2D::DrawEllipticArc ( float  x,
float  y,
float  rX,
float  rY,
float  startAngle,
float  stopAngle 
)
overridevirtual

Draw an elliptic arc with center at x,y with radii rX and rY between angles startAngle and stopAngle (expressed in degrees).

Precondition
positive_rX: rX>=0
positive_rY: rY>=0

Implements vtkContextDevice2D.

◆ DrawString()

void vtkPDFContextDevice2D::DrawString ( float *  point,
const vtkStdString string 
)
overridevirtual

Draw some text to the screen.

Implements vtkContextDevice2D.

◆ ComputeStringBounds()

void vtkPDFContextDevice2D::ComputeStringBounds ( const vtkStdString string,
float  bounds[4] 
)
overridevirtual

Compute the bounds of the supplied string.

The bounds will be copied to the supplied bounds variable, the first two elements are the bottom corner of the string, and the second two elements are the width and height of the bounding box. NOTE: This function does not take account of the text rotation or justification.

Implements vtkContextDevice2D.

◆ ComputeJustifiedStringBounds()

void vtkPDFContextDevice2D::ComputeJustifiedStringBounds ( const char *  string,
float  bounds[4] 
)
overridevirtual

Compute the bounds of the supplied string while taking into account the justification of the currently applied text property.

Simple rotations (0, 90, 180, 270) are also correctly taken into account.

Implements vtkContextDevice2D.

◆ DrawMathTextString()

void vtkPDFContextDevice2D::DrawMathTextString ( float *  point,
const vtkStdString string 
)
overridevirtual

Draw text using MathText markup for mathematical equations.

See http://matplotlib.sourceforge.net/users/mathtext.html for more information.

Implements vtkContextDevice2D.

◆ DrawImage() [1/2]

void vtkPDFContextDevice2D::DrawImage ( float  p[2],
float  scale,
vtkImageData image 
)
overridevirtual

Draw the supplied image at the given x, y (p[0], p[1]) (bottom corner), scaled by scale (1.0 would match the image).

Implements vtkContextDevice2D.

◆ DrawImage() [2/2]

void vtkPDFContextDevice2D::DrawImage ( const vtkRectf pos,
vtkImageData image 
)
overridevirtual

Draw the supplied image at the given position.

The origin, width, and height are specified by the supplied vtkRectf variable pos. The image will be drawn scaled to that size.

Implements vtkContextDevice2D.

◆ SetColor4()

void vtkPDFContextDevice2D::SetColor4 ( unsigned char  color[4])
overridevirtual

Set the color for the device using unsigned char of length 4, RGBA.

Implements vtkContextDevice2D.

◆ SetTexture()

void vtkPDFContextDevice2D::SetTexture ( vtkImageData image,
int  properties 
)
overridevirtual

Set the texture for the device, it is used to fill the polygons.

Implements vtkContextDevice2D.

◆ SetPointSize()

void vtkPDFContextDevice2D::SetPointSize ( float  size)
overridevirtual

Set the point size for glyphs/sprites.

Implements vtkContextDevice2D.

◆ SetLineWidth()

void vtkPDFContextDevice2D::SetLineWidth ( float  width)
overridevirtual

Set the line width.

Implements vtkContextDevice2D.

◆ DrawPolyData()

void vtkPDFContextDevice2D::DrawPolyData ( float  p[2],
float  scale,
vtkPolyData polyData,
vtkUnsignedCharArray colors,
int  scalarMode 
)
overridevirtual

Draw the supplied PolyData at the given x, y (p[0], p[1]) (bottom corner), scaled by scale (1.0 would match the actual dataset).

Only lines and polys are rendered. Only the x/y coordinates of the polydata are used.

Parameters
pOffset to apply to polydata.
scaleIsotropic scale for polydata. Applied after offset.
polyDataDraw lines and polys from this dataset.
colorsRGBA for points or cells, depending on value of scalarMode. Must not be NULL.
scalarModeMust be either VTK_SCALAR_MODE_USE_POINT_DATA or VTK_SCALAR_MODE_USE_CELL_DATA.

The base implementation breaks the polydata apart and renders each polygon individually using the device API. Subclasses should override this method with a batch-drawing implementation if performance is a concern.

Reimplemented from vtkContextDevice2D.

◆ SetLineType()

void vtkPDFContextDevice2D::SetLineType ( int  type)
overridevirtual

Set the line type type (using anonymous enum in vtkPen).

Implements vtkContextDevice2D.

◆ SetMatrix()

void vtkPDFContextDevice2D::SetMatrix ( vtkMatrix3x3 m)
overridevirtual

Set the model view matrix for the display.

Implements vtkContextDevice2D.

◆ GetMatrix()

void vtkPDFContextDevice2D::GetMatrix ( vtkMatrix3x3 m)
overridevirtual

Set the model view matrix for the display.

Implements vtkContextDevice2D.

◆ MultiplyMatrix()

void vtkPDFContextDevice2D::MultiplyMatrix ( vtkMatrix3x3 m)
overridevirtual

Multiply the current model view matrix by the supplied one.

Implements vtkContextDevice2D.

◆ PushMatrix()

void vtkPDFContextDevice2D::PushMatrix ( )
overridevirtual

Push the current matrix onto the stack.

Implements vtkContextDevice2D.

◆ PopMatrix()

void vtkPDFContextDevice2D::PopMatrix ( )
overridevirtual

Pop the current matrix off of the stack.

Implements vtkContextDevice2D.

◆ SetClipping()

void vtkPDFContextDevice2D::SetClipping ( int *  x)
overridevirtual

Supply an int array of length 4 with x1, y1, width, height specifying clipping region for the device in pixels.

Implements vtkContextDevice2D.

◆ EnableClipping()

void vtkPDFContextDevice2D::EnableClipping ( bool  enable)
overridevirtual

Enable or disable the clipping of the scene.

Implements vtkContextDevice2D.

◆ PushGraphicsState()

void vtkPDFContextDevice2D::PushGraphicsState ( )
protected

◆ PopGraphicsState()

void vtkPDFContextDevice2D::PopGraphicsState ( )
protected

◆ ApplyPenState()

void vtkPDFContextDevice2D::ApplyPenState ( )
protected

◆ ApplyStrokeColor()

void vtkPDFContextDevice2D::ApplyStrokeColor ( unsigned char *  color,
int  numComps 
)
protected

◆ ApplyLineWidth()

void vtkPDFContextDevice2D::ApplyLineWidth ( float  width)
protected

◆ ApplyLineType()

void vtkPDFContextDevice2D::ApplyLineType ( int  type)
protected

◆ Stroke()

void vtkPDFContextDevice2D::Stroke ( )
protected

◆ ApplyPenStateAsFill()

void vtkPDFContextDevice2D::ApplyPenStateAsFill ( )
protected

◆ ApplyBrushState()

void vtkPDFContextDevice2D::ApplyBrushState ( )
protected

◆ ApplyTextPropertyState()

void vtkPDFContextDevice2D::ApplyTextPropertyState ( )
protected

◆ ApplyFillColor()

void vtkPDFContextDevice2D::ApplyFillColor ( unsigned char *  color,
int  numComps 
)
protected

◆ ApplyFillAlpha()

void vtkPDFContextDevice2D::ApplyFillAlpha ( unsigned char  alpha)
protected

◆ Fill()

void vtkPDFContextDevice2D::Fill ( bool  stroke = false)
protected

◆ FillEvenOdd()

void vtkPDFContextDevice2D::FillEvenOdd ( bool  stroke = false)
protected

◆ BeginClipPathForTexture()

void vtkPDFContextDevice2D::BeginClipPathForTexture ( )
protected

◆ RegisterTexturePoints()

void vtkPDFContextDevice2D::RegisterTexturePoints ( float *  data,
int  numPoints 
)
protected

◆ FillTexture()

void vtkPDFContextDevice2D::FillTexture ( )
protected

◆ PrepareImageData()

vtkImageData* vtkPDFContextDevice2D::PrepareImageData ( vtkImageData in)
protected

◆ DrawEllipticArcSegments()

void vtkPDFContextDevice2D::DrawEllipticArcSegments ( float  x,
float  y,
float  rX,
float  rY,
float  startAngle,
float  stopAngle,
bool  startPath 
)
protected

◆ GetNumberOfArcIterations()

int vtkPDFContextDevice2D::GetNumberOfArcIterations ( float  rX,
float  rY,
float  startAngle,
float  stopAngle 
)
protected

◆ DrawCrossMarkers()

void vtkPDFContextDevice2D::DrawCrossMarkers ( bool  highlight,
float *  points,
int  n,
unsigned char *  colors,
int  nc_comps 
)
protected

◆ DrawPlusMarkers()

void vtkPDFContextDevice2D::DrawPlusMarkers ( bool  highlight,
float *  points,
int  n,
unsigned char *  colors,
int  nc_comps 
)
protected

◆ DrawSquareMarkers()

void vtkPDFContextDevice2D::DrawSquareMarkers ( bool  highlight,
float *  points,
int  n,
unsigned char *  colors,
int  nc_comps 
)
protected

◆ DrawCircleMarkers()

void vtkPDFContextDevice2D::DrawCircleMarkers ( bool  highlight,
float *  points,
int  n,
unsigned char *  colors,
int  nc_comps 
)
protected

◆ DrawDiamondMarkers()

void vtkPDFContextDevice2D::DrawDiamondMarkers ( bool  highlight,
float *  points,
int  n,
unsigned char *  colors,
int  nc_comps 
)
protected

◆ DrawPath()

void vtkPDFContextDevice2D::DrawPath ( vtkPath path,
float  x,
float  y 
)
protected

◆ ApplyTransform()

void vtkPDFContextDevice2D::ApplyTransform ( )
protected

◆ GetUnscaledPenWidth()

vtkVector2f vtkPDFContextDevice2D::GetUnscaledPenWidth ( )
protected

◆ Matrix3ToMatrix4()

static void vtkPDFContextDevice2D::Matrix3ToMatrix4 ( vtkMatrix3x3 mat3,
double  mat4[16] 
)
staticprotected

◆ Matrix4ToMatrix3() [1/2]

static void vtkPDFContextDevice2D::Matrix4ToMatrix3 ( double  mat4[16],
vtkMatrix3x3 mat3 
)
staticprotected

◆ Matrix4ToMatrix3() [2/2]

static void vtkPDFContextDevice2D::Matrix4ToMatrix3 ( double  mat4[16],
double  mat3[9] 
)
staticprotected

◆ Matrix4ToHPDFTransform()

static void vtkPDFContextDevice2D::Matrix4ToHPDFTransform ( const double  mat4[16],
float  hpdfMat[6] 
)
staticprotected

◆ Matrix3ToHPDFTransform()

static void vtkPDFContextDevice2D::Matrix3ToHPDFTransform ( const double  mat3[9],
float  hpdfMat[6] 
)
staticprotected

◆ HPDFTransformToMatrix3()

static void vtkPDFContextDevice2D::HPDFTransformToMatrix3 ( float  a,
float  b,
float  c,
float  d,
float  x,
float  y,
double  mat3[9] 
)
staticprotected

Member Data Documentation

◆ Impl

Details* vtkPDFContextDevice2D::Impl
protected

Definition at line 145 of file vtkPDFContextDevice2D.h.

◆ Matrix

vtkNew<vtkTransform> vtkPDFContextDevice2D::Matrix
protected

Definition at line 148 of file vtkPDFContextDevice2D.h.

◆ Renderer

vtkRenderer* vtkPDFContextDevice2D::Renderer
protected

Definition at line 150 of file vtkPDFContextDevice2D.h.

◆ PointSize

float vtkPDFContextDevice2D::PointSize
protected

Definition at line 151 of file vtkPDFContextDevice2D.h.

◆ ClipBox

float vtkPDFContextDevice2D::ClipBox[4]
protected

Definition at line 152 of file vtkPDFContextDevice2D.h.

◆ IsInTexturedFill

bool vtkPDFContextDevice2D::IsInTexturedFill
protected

Definition at line 154 of file vtkPDFContextDevice2D.h.

◆ TextureBounds

float vtkPDFContextDevice2D::TextureBounds[4]
protected

Definition at line 155 of file vtkPDFContextDevice2D.h.


The documentation for this class was generated from the following file: