51 static void initClass(
void);
72 virtual void apply(
const SoPathList & pathlist, SbBool obeysrules = FALSE);
74 void beginStandardPage(
const PageSize & pagesize,
const float border = 10.0f);
76 virtual void beginPage(
const SbVec2f & startpagepos,
78 DimensionUnit u = MM);
79 virtual void endPage(
void);
83 virtual void beginViewport(
const SbVec2f & startpos =
SbVec2f(-1.0f, 1.0f),
85 DimensionUnit u = MM);
86 virtual void endViewport(
void);
88 virtual void setOrientation(Orientation o);
89 virtual Orientation getOrientation(
void)
const;
91 virtual void setBackgroundColor(SbBool bg,
const SbColor & col =
SbColor(0.0f, 0.0f, 0.0f));
92 virtual SbBool getBackgroundColor(
SbColor & col)
const;
94 virtual void setNominalWidth(
float w, DimensionUnit u = MM);
95 virtual float getNominalWidth(DimensionUnit u = MM)
const;
97 virtual void setPixelImageSize(
float w, DimensionUnit u = MM);
98 virtual float getPixelImageSize(DimensionUnit u = MM)
const;
105 virtual void setPointStyle(
const PointStyle & style);
106 virtual PointStyle getPointStyle(
void)
const;
108 const SbVec2f & getPageStartpos(
void)
const;
109 const SbVec2f & getPageSize(
void)
const;
113 enum ColorTranslationMethod { REVERSE_ONLY_BLACK_AND_WHITE, AS_IS, REVERSE };
115 enum JoinLineStyle { NO_JOIN, MITERED_JOIN, MITERED_BEVELED_JOIN,
116 BEVELED_JOIN, TRIANGULAR_JOIN, ROUNDED_JOIN } ;
117 enum EndLineStyle { BUTT_END, SQUARE_END, TRIANGULAR_END, ROUND_END };
118 enum HLHSRMode { NO_HLHSR, HLHSR_SIMPLE_PAINTER, HLHSR_PAINTER,
119 HLHSR_PAINTER_SURFACE_REMOVAL, HIDDEN_LINES_REMOVAL };
121 virtual void setDrawingDimensions(
const SbVec2f & d, DimensionUnit u = MM);
122 virtual void setDrawingDimensions(
float w,
float h, DimensionUnit u = MM) { this->setDrawingDimensions(
SbVec2f(w, h), u); }
123 virtual SbVec2f getDrawingDimensions(DimensionUnit u = MM)
const;
125 virtual void setStartPosition(
const SbVec2f & p, DimensionUnit u = MM);
126 virtual void setStartPosition(
float x,
float y, DimensionUnit u = MM) { this->setStartPosition(
SbVec2f(x, y), u); }
127 virtual SbVec2f getStartPosition(DimensionUnit u = MM)
const;
129 virtual void setColorTranslationMethod(ColorTranslationMethod method);
130 virtual ColorTranslationMethod getColorTranslationMethod(
void)
const;
132 virtual void setLineEndStyle(EndLineStyle style);
133 virtual EndLineStyle getLineEndStyle(
void)
const;
135 virtual void setLineJoinsStyle(JoinLineStyle style);
136 virtual JoinLineStyle getLineJoinsStyle(
void)
const;
138 virtual void setHLHSRMode(HLHSRMode mode);
139 HLHSRMode getHLHSRMode(
void)
const;
141 virtual void setBorder(
float width);
142 virtual void setBorder (
float width,
SbColor color);
144 virtual void setMiterLimit(
float limit);
145 virtual float getMiterLimit(
void)
const;
147 virtual void setPenDescription(
int num_pens,
149 const float * widths = 0,
150 DimensionUnit u = MM);
151 virtual void getPenDescription(
SbColor * colors,
153 DimensionUnit u = MM)
const;
154 virtual int getPenNum(
void)
const;
156 virtual void setColorPriority(SbBool priority);
157 virtual SbBool getColorPriority(
void)
const;
159 virtual void enableLighting(SbBool flag);
160 SbBool isLightingEnabled(
void)
const;
165 virtual float pixelsToUnits(
const int pixels);
167 virtual void printFooter(
void)
const;
168 virtual void printBackground(
void)
const;
169 virtual void printItem(
const SoVectorizeItem * item)
const = 0;
170 virtual void printViewport(
void)
const;
172 SbVec2f getRotatedViewportStartpos(
void)
const;
173 SbVec2f getRotatedViewportSize(
void)
const;
175 const SbBSPTree & getBSPTree(
void)
const;
178 SoVectorizeActionP * pimpl;
179 friend class SoVectorizeActionP;