Coin Logo Coin3D is Free Software,
published under the BSD 3-clause license.
https://coin3d.github.io
https://www.kongsberg.com/en/kogt/
SoVectorizePSAction Class Reference

The SoVectorizePSAction class is used for rendering to a PostScript file. More...

#include <Inventor/annex/HardCopy/SoVectorizePSAction.h>

Inheritance diagram for SoVectorizePSAction:
SoVectorizeAction SoCallbackAction SoAction

Public Member Functions

virtual SoType getTypeId (void) const
 
 SoVectorizePSAction (void)
 
virtual ~SoVectorizePSAction ()
 
void setDefault2DFont (const SbString &fontname)
 
const SbStringgetDefault2DFont (void) const
 
void setGouraudThreshold (const double eps)
 
SoPSVectorOutputgetOutput (void) const
 
SoPSVectorOutputgetPSOutput (void) const
 
- Public Member Functions inherited from SoVectorizeAction
 SoVectorizeAction (void)
 
virtual ~SoVectorizeAction ()
 
SoVectorOutputgetOutput (void) const
 
virtual void apply (SoNode *node)
 
virtual void apply (SoPath *path)
 
virtual void apply (const SoPathList &pathlist, SbBool obeysrules=FALSE)
 
void beginStandardPage (const PageSize &pagesize, const float border=10.0f)
 
virtual void beginPage (const SbVec2f &startpagepos, const SbVec2f &pagesize, DimensionUnit u=MM)
 
virtual void endPage (void)
 
virtual void calibrate (const SbViewportRegion &vp)
 
virtual void beginViewport (const SbVec2f &startpos=SbVec2f(-1.0f, 1.0f), const SbVec2f &size=SbVec2f(-1.0f, -1.0f), DimensionUnit u=MM)
 
virtual void endViewport (void)
 
virtual void setOrientation (Orientation o)
 
virtual Orientation getOrientation (void) const
 
virtual void setBackgroundColor (SbBool bg, const SbColor &col=SbColor(0.0f, 0.0f, 0.0f))
 
virtual SbBool getBackgroundColor (SbColor &col) const
 
virtual void setNominalWidth (float w, DimensionUnit u=MM)
 
virtual float getNominalWidth (DimensionUnit u=MM) const
 
virtual void setPixelImageSize (float w, DimensionUnit u=MM)
 
virtual float getPixelImageSize (DimensionUnit u=MM) const
 
virtual void setPointStyle (const PointStyle &style)
 
virtual PointStyle getPointStyle (void) const
 
const SbVec2fgetPageStartpos (void) const
 
const SbVec2fgetPageSize (void) const
 
virtual void setDrawingDimensions (const SbVec2f &d, DimensionUnit u=MM)
 
virtual void setDrawingDimensions (float w, float h, DimensionUnit u=MM)
 
virtual SbVec2f getDrawingDimensions (DimensionUnit u=MM) const
 
virtual void setStartPosition (const SbVec2f &p, DimensionUnit u=MM)
 
virtual void setStartPosition (float x, float y, DimensionUnit u=MM)
 
virtual SbVec2f getStartPosition (DimensionUnit u=MM) const
 
virtual void setColorTranslationMethod (ColorTranslationMethod method)
 
virtual ColorTranslationMethod getColorTranslationMethod (void) const
 
virtual void setLineEndStyle (EndLineStyle style)
 
virtual EndLineStyle getLineEndStyle (void) const
 
virtual void setLineJoinsStyle (JoinLineStyle style)
 
virtual JoinLineStyle getLineJoinsStyle (void) const
 
virtual void setHLHSRMode (HLHSRMode mode)
 
HLHSRMode getHLHSRMode (void) const
 
virtual void setBorder (float width)
 
virtual void setBorder (float width, SbColor color)
 
virtual void setMiterLimit (float limit)
 
virtual float getMiterLimit (void) const
 
virtual void setPenDescription (int num_pens, const SbColor *colors=0, const float *widths=0, DimensionUnit u=MM)
 
virtual void getPenDescription (SbColor *colors, float *widths, DimensionUnit u=MM) const
 
virtual int getPenNum (void) const
 
virtual void setColorPriority (SbBool priority)
 
virtual SbBool getColorPriority (void) const
 
virtual void enableLighting (SbBool flag)
 
SbBool isLightingEnabled (void) const
 
- Public Member Functions inherited from SoCallbackAction
 SoCallbackAction (void)
 
 SoCallbackAction (const SbViewportRegion &vp)
 
virtual ~SoCallbackAction (void)
 
void setViewportRegion (const SbViewportRegion &vp)
 
void addPreCallback (const SoType type, SoCallbackActionCB *cb, void *userdata)
 
void addPostCallback (const SoType type, SoCallbackActionCB *cb, void *userdata)
 
void addPreTailCallback (SoCallbackActionCB *cb, void *userdata)
 
void addPostTailCallback (SoCallbackActionCB *cb, void *userdata)
 
void addTriangleCallback (const SoType type, SoTriangleCB *cb, void *userdata)
 
void addLineSegmentCallback (const SoType type, SoLineSegmentCB *cb, void *userdata)
 
void addPointCallback (const SoType type, SoPointCB *cb, void *userdata)
 
SoDecimationTypeElement::Type getDecimationType (void) const
 
float getDecimationPercentage (void) const
 
float getComplexity (void) const
 
SoComplexity::Type getComplexityType (void) const
 
int32_t getNumCoordinates (void) const
 
const SbVec3fgetCoordinate3 (const int index) const
 
const SbVec4fgetCoordinate4 (const int index) const
 
SoDrawStyle::Style getDrawStyle (void) const
 
unsigned short getLinePattern (void) const
 
float getLineWidth (void) const
 
float getPointSize (void) const
 
const SbNamegetFontName (void) const
 
float getFontSize (void) const
 
SoLightModel::Model getLightModel (void) const
 
const SbVec3fgetLightAttenuation (void) const
 
void getMaterial (SbColor &ambient, SbColor &diffuse, SbColor &specular, SbColor &emission, float &shininess, float &transparency, const int index=0) const
 
SoMaterialBinding::Binding getMaterialBinding (void) const
 
uint32_t getNumNormals (void) const
 
const SbVec3fgetNormal (const int index) const
 
SoNormalBinding::Binding getNormalBinding (void) const
 
int32_t getNumProfileCoordinates (void) const
 
const SbVec2fgetProfileCoordinate2 (const int index) const
 
const SbVec3fgetProfileCoordinate3 (const int index) const
 
const SoNodeListgetProfile (void) const
 
SoShapeHints::VertexOrdering getVertexOrdering (void) const
 
SoShapeHints::ShapeType getShapeType (void) const
 
SoShapeHints::FaceType getFaceType (void) const
 
float getCreaseAngle (void) const
 
int32_t getNumTextureCoordinates (void) const
 
const SbVec2fgetTextureCoordinate2 (const int index) const
 
const SbVec3fgetTextureCoordinate3 (const int index) const
 
const SbVec4fgetTextureCoordinate4 (const int index) const
 
SoTextureCoordinateBinding::Binding getTextureCoordinateBinding (void) const
 
const SbColorgetTextureBlendColor (void) const
 
const unsigned char * getTextureImage (SbVec2s &size, int &numcomps) const
 
const unsigned char * getTextureImage (SbVec3s &size, int &numcomps) const
 
const SbMatrixgetTextureMatrix (void) const
 
SoTexture2::Model getTextureModel (void) const
 
SoTexture2::Wrap getTextureWrapS (void) const
 
SoTexture2::Wrap getTextureWrapT (void) const
 
SoTexture2::Wrap getTextureWrapR (void) const
 
const SbMatrixgetModelMatrix (void) const
 
SoUnits::Units getUnits (void) const
 
float getFocalDistance (void) const
 
const SbMatrixgetProjectionMatrix (void) const
 
const SbMatrixgetViewingMatrix (void) const
 
const SbViewVolumegetViewVolume (void) const
 
const SbViewportRegiongetViewportRegion (void) const
 
SoPickStyle::Style getPickStyle (void) const
 
int32_t getSwitch (void) const
 
Response getCurrentResponse (void) const
 
void invokePreCallbacks (const SoNode *const node)
 
void invokePostCallbacks (const SoNode *const node)
 
void invokeTriangleCallbacks (const SoShape *const shape, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2, const SoPrimitiveVertex *const v3)
 
void invokeLineSegmentCallbacks (const SoShape *const shape, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2)
 
void invokePointCallbacks (const SoShape *const shape, const SoPrimitiveVertex *const v)
 
SbBool shouldGeneratePrimitives (const SoShape *shape) const
 
virtual SoNodegetCurPathTail (void)
 
void setCurrentNode (SoNode *const node)
 
void setCallbackAll (SbBool callbackall)
 
SbBool isCallbackAll (void) const
 
- Public Member Functions inherited from SoAction
virtual ~SoAction (void)
 
virtual SbBool isOfType (SoType type) const
 
void apply (SoAction *beingApplied)
 
virtual void invalidateState (void)
 
AppliedCode getWhatAppliedTo (void) const
 
SoNodegetNodeAppliedTo (void) const
 
SoPathgetPathAppliedTo (void) const
 
const SoPathListgetPathListAppliedTo (void) const
 
const SoPathListgetOriginalPathListAppliedTo (void) const
 
SbBool isLastPathListAppliedTo (void) const
 
PathCode getPathCode (int &numindices, const int *&indices)
 
void traverse (SoNode *const node)
 
SbBool hasTerminated (void) const
 
const SoPathgetCurPath (void)
 
SoStategetState (void) const
 
PathCode getCurPathCode (void) const
 
void usePathCode (int &numindices, const int *&indices)
 
void pushCurPath (const int childindex, SoNode *node=NULL)
 
void popCurPath (const PathCode prevpathcode)
 
void pushCurPath (void)
 
void popPushCurPath (const int childindex, SoNode *node=NULL)
 
void popCurPath (void)
 
void switchToPathTraversal (SoPath *path)
 
void switchToNodeTraversal (SoNode *node)
 

Static Public Member Functions

static SoType getClassTypeId (void)
 
static void addMethod (const SoType type, SoActionMethod method)
 
static void enableElement (const SoType type, const int stackindex)
 
static void initClass (void)
 
- Static Public Member Functions inherited from SoVectorizeAction
static SoType getClassTypeId (void)
 
static void addMethod (const SoType type, SoActionMethod method)
 
static void enableElement (const SoType type, const int stackindex)
 
static void initClass (void)
 
- Static Public Member Functions inherited from SoCallbackAction
static SoType getClassTypeId (void)
 
static void addMethod (const SoType type, SoActionMethod method)
 
static void enableElement (const SoType type, const int stackindex)
 
static void initClass (void)
 
- Static Public Member Functions inherited from SoAction
static void initClass (void)
 
static void initClasses (void)
 
static SoType getClassTypeId (void)
 
static void nullAction (SoAction *action, SoNode *node)
 

Protected Member Functions

virtual const SoEnabledElementsListgetEnabledElements (void) const
 
virtual void printHeader (void) const
 
virtual void printFooter (void) const
 
virtual void printBackground (void) const
 
virtual void printItem (const SoVectorizeItem *item) const
 
virtual void printViewport (void) const
 
- Protected Member Functions inherited from SoVectorizeAction
void setOutput (SoVectorOutput *output)
 
virtual float pixelsToUnits (const int pixels)
 
SbVec2f getRotatedViewportStartpos (void) const
 
SbVec2f getRotatedViewportSize (void) const
 
const SbBSPTreegetBSPTree (void) const
 
- Protected Member Functions inherited from SoCallbackAction
virtual void beginTraversal (SoNode *node)
 
- Protected Member Functions inherited from SoAction
 SoAction (void)
 
virtual void endTraversal (SoNode *node)
 
void setTerminated (const SbBool flag)
 
virtual SbBool shouldCompactPathList (void) const
 

Static Protected Member Functions

static SoEnabledElementsListgetClassEnabledElements (void)
 
static SoActionMethodListgetClassActionMethods (void)
 
- Static Protected Member Functions inherited from SoVectorizeAction
static SoEnabledElementsListgetClassEnabledElements (void)
 
static SoActionMethodListgetClassActionMethods (void)
 
- Static Protected Member Functions inherited from SoCallbackAction
static SoEnabledElementsListgetClassEnabledElements (void)
 
static SoActionMethodListgetClassActionMethods (void)
 
- Static Protected Member Functions inherited from SoAction
static SoEnabledElementsListgetClassEnabledElements (void)
 
static SoActionMethodListgetClassActionMethods (void)
 

Additional Inherited Members

- Public Types inherited from SoVectorizeAction
enum  DimensionUnit { INCH, MM, METER }
 
enum  Orientation { PORTRAIT, LANDSCAPE }
 
enum  PageSize {
  A0 = 0, A1, A2, A3,
  A4, A5, A6, A7,
  A8, A9, A10
}
 
enum  PointStyle { CIRCLE, SQUARE }
 
enum  ColorTranslationMethod { REVERSE_ONLY_BLACK_AND_WHITE, AS_IS, REVERSE }
 
enum  JoinLineStyle {
  NO_JOIN, MITERED_JOIN, MITERED_BEVELED_JOIN, BEVELED_JOIN,
  TRIANGULAR_JOIN, ROUNDED_JOIN
}
 
enum  EndLineStyle { BUTT_END, SQUARE_END, TRIANGULAR_END, ROUND_END }
 
enum  HLHSRMode {
  NO_HLHSR, HLHSR_SIMPLE_PAINTER, HLHSR_PAINTER, HLHSR_PAINTER_SURFACE_REMOVAL,
  HIDDEN_LINES_REMOVAL
}
 
- Public Types inherited from SoCallbackAction
enum  Response { CONTINUE, ABORT, PRUNE }
 
typedef Response SoCallbackActionCB(void *userdata, SoCallbackAction *action, const SoNode *node)
 
- Public Types inherited from SoAction
enum  AppliedCode { NODE = 0, PATH = 1, PATH_LIST = 2 }
 
enum  PathCode { NO_PATH = 0, IN_PATH = 1, BELOW_PATH = 2, OFF_PATH = 3 }
 
- Protected Attributes inherited from SoAction
SoStatestate
 
SoActionMethodListtraversalMethods
 

Detailed Description

The SoVectorizePSAction class is used for rendering to a PostScript file.

Since
Coin 2.1
TGS provides HardCopy support as a separate extension for TGS Inventor.

Constructor & Destructor Documentation

◆ SoVectorizePSAction()

SoVectorizePSAction::SoVectorizePSAction ( void  )

Default constructor.

◆ ~SoVectorizePSAction()

SoVectorizePSAction::~SoVectorizePSAction ( )
virtual

Default destructor.

Member Function Documentation

◆ getTypeId()

SoType SoVectorizePSAction::getTypeId ( void  ) const
virtual

Returns the type identification of an action derived from a class inheriting SoAction. This is used for runtime type checking and "downward" casting.

Usage example:

void bar(SoAction * action)
{
if (action->getTypeId() == SoGLRenderAction::getClassTypeId()) {
// safe downward cast, know the type
SoGLRenderAction * glrender = (SoGLRenderAction *)action;
}
return; // ignore if not render action
}

For application programmers wanting to extend the library with new actions: this method needs to be overridden in all subclasses. This is typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the predefined macros available through Inventor/nodes/SoSubAction.h: SO_ACTION_SOURCE, SO_ACTION_INIT_CLASS and SO_ACTION_CONSTRUCTOR.

For more information on writing Coin extensions, see the SoAction class documentation.

Returns the actual type id of an object derived from a class inheriting SoAction. Needs to be overridden in all subclasses.

Reimplemented from SoVectorizeAction.

◆ addMethod()

void SoVectorizePSAction::addMethod ( const SoType  type,
SoActionMethod  method 
)
static

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

◆ enableElement()

void SoVectorizePSAction::enableElement ( const SoType  type,
const int  stackindex 
)
static

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

◆ getEnabledElements()

const SoEnabledElementsList & SoVectorizePSAction::getEnabledElements ( void  ) const
protectedvirtual

Returns a list of the elements used by action instances of this class upon traversal operations.

Reimplemented from SoVectorizeAction.

◆ setDefault2DFont()

void SoVectorizePSAction::setDefault2DFont ( const SbString fontname)

Sets the default font name. This font will be used for rendering Text2-nodes which have no Font-nodes preceding them. The default value is "Courier".

◆ getDefault2DFont()

const SbString & SoVectorizePSAction::getDefault2DFont ( void  ) const

Returns the default font name.

See also
setDefault2DFont()

◆ setGouraudThreshold()

void SoVectorizePSAction::setGouraudThreshold ( const double  eps)

Sets the Gouraud shading threshold. A threshold of 0.0 will disable Gouraud shading. A smaller value will yield more accurate Gouraud shading. Default is 0.1.

Since the PostScript language has no support for Gouraud shaded triangles, each triangle will be split into subtriangles approximately of size eps PostScript units. One PostScript unit is approximately 1/72 inch.

◆ getOutput()

SoPSVectorOutput * SoVectorizePSAction::getOutput ( void  ) const

Returns the SoPSVectorOutput used by this instance.

◆ getPSOutput()

SoPSVectorOutput * SoVectorizePSAction::getPSOutput ( void  ) const

Returns the SoPSVectorOutput used by this instance. Provided for API compatibility with TGS HardCopy support.

◆ printHeader()

void SoVectorizePSAction::printHeader ( void  ) const
protectedvirtual

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Implements SoVectorizeAction.

◆ printFooter()

void SoVectorizePSAction::printFooter ( void  ) const
protectedvirtual

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Should be overridden by subclasses to print file footer data.

Reimplemented from SoVectorizeAction.

◆ printBackground()

void SoVectorizePSAction::printBackground ( void  ) const
protectedvirtual

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Should be overridden by subclasses to print background data.

Reimplemented from SoVectorizeAction.

◆ printItem()

void SoVectorizePSAction::printItem ( const SoVectorizeItem *  item) const
protectedvirtual

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Should be overridden by subclasses to print an item.

Implements SoVectorizeAction.

◆ printViewport()

void SoVectorizePSAction::printViewport ( void  ) const
protectedvirtual

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Should be overridden by subclasses to set up the current page viewport.

Reimplemented from SoVectorizeAction.


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