Public Member Functions | |
long | AddRef () PURE |
Add a reference to the object. | |
long | Release () PURE |
Release a reference to the object. | |
void | OnFinalRelease () PURE |
Perform final release operations on the object. | |
IRenderFactory * | GetRenderFactory () SCONST PURE |
Obtain the factory that created this render object. | |
OBJTYPE | ObjectType () SCONST PURE |
Query the type of the object. | |
FillType | getFillType () SCONST PURE |
Return the path's fill type, which defines how "inside" is computed. | |
void | setFillType (FillType ft) PURE |
Set the path's fill type, which defines how "inside" is computed. | |
void | reset () PURE |
Clear any lines and curves from the path, making it empty. This frees up internal storage. | |
BOOL | isEmpty () SCONST PURE |
Check if the path is empty (contains no lines or curves). | |
void | getBounds (LPRECT prc) SCONST PURE |
Return the bounds of the path's points. | |
void | moveTo (float x, float y) PURE |
Set the beginning of the next contour to the point (x,y). | |
void | rMoveTo (float dx, float dy) PURE |
Set the beginning of the next contour relative to the last point on the previous contour. | |
void | lineTo (float x, float y) PURE |
Add a line from the last point to the specified point (x,y). | |
void | rLineTo (float dx, float dy) PURE |
Add a line from the last point, but the coordinates are relative to the last point. | |
void | quadTo (float x1, float y1, float x2, float y2) PURE |
Add a quadratic Bezier curve from the last point, approaching control point (x1,y1), and ending at (x2,y2). | |
void | rQuadTo (float dx1, float dy1, float dx2, float dy2) PURE |
Add a quadratic Bezier curve, but the coordinates are relative to the last point. | |
void | conicTo (float x1, float y1, float x2, float y2, float w) PURE |
Add a conic Bezier curve from the last point, approaching control point (x1,y1), and ending at (x2,y2). | |
void | rConicTo (float dx1, float dy1, float dx2, float dy2, float w) PURE |
Add a conic Bezier curve, but the coordinates are relative to the last point. | |
void | cubicTo (float x1, float y1, float x2, float y2, float x3, float y3) PURE |
Add a cubic Bezier curve from the last point, approaching control points (x1,y1) and (x2,y2), and ending at (x3,y3). | |
void | rCubicTo (float x1, float y1, float x2, float y2, float x3, float y3) PURE |
Add a cubic Bezier curve, but the coordinates are relative to the last point. | |
void | addRect (const RECT *rect, Direction dir DEF_VAL(kCW_Direction)) PURE |
Add a closed rectangle contour to the path. | |
void | addRect2 (float left, float top, float right, float bottom, Direction dir DEF_VAL(kCW_Direction)) PURE |
Add a closed rectangle contour to the path. | |
void | addOval (const RECT *oval, Direction dir DEF_VAL(kCW_Direction)) PURE |
Add a closed oval contour to the path. | |
void | addOval2 (float left, float top, float right, float bottom, Direction dir DEF_VAL(kCW_Direction)) PURE |
Add a closed oval contour to the path. | |
void | addCircle (float x, float y, float radius, Direction dir DEF_VAL(kCW_Direction)) PURE |
Add a closed circle contour to the path. | |
void | addArc (const RECT *oval, float startAngle, float sweepAngle) PURE |
Add the specified arc to the path as a new contour. | |
void | addArc2 (float left, float top, float right, float bottom, float startAngle, float sweepAngle) PURE |
Add the specified arc to the path as a new contour. | |
void | addRoundRect (const RECT *rect, float rx, float ry, Direction dir DEF_VAL(kCW_Direction)) PURE |
Add a closed round-rectangle contour to the path. | |
void | addRoundRect2 (float left, float top, float right, float bottom, float rx, float ry, Direction dir DEF_VAL(kCW_Direction)) PURE |
Add a closed round-rectangle contour to the path. | |
void | addPoly (const POINT pts[], int count, BOOL close) PURE |
Add a new contour made of just lines. | |
void | offset (float dx, float dy) PURE |
Offset the path by (dx,dy). | |
void | transform (const IxForm *matrix) PURE |
Transform the points in this path by the given matrix. | |
BOOL | getLastPt (fPoint *lastPt) SCONST PURE |
Return the last point on the path. | |
void | addString (LPCTSTR pszText, int nLen, float x, float y, const IFontS *pFont) PURE |
Add a string to the path. | |
IPathS * | clone () SCONST PURE |
Clone the current path. | |
BOOL | beginFigure (float x, float y, BOOL bFill DEF_VAL(TRUE)) PURE |
Begin a new figure in the path. | |
BOOL | endFigure (BOOL bClose) PURE |
End the current figure in the path. | |
float | getLength () SCONST PURE |
Get the length of the path. | |
BOOL | getPosTan (float distance, fPoint *pos, fPoint *vec) SCONST PURE |
Get the position and tangent at a given distance along the path. | |
void | close () PURE |
Close the current path to stop editing. | |
BOOL | hitTest (float x, float y) SCONST PURE |
Test if a point hits the path. | |
BOOL | hitTestStroke (float x, float y, float strokeSize) SCONST PURE |
Test if a point hits the stroked path. | |
![]() | |
long | AddRef () PURE |
long | Release () PURE |
void | OnFinalRelease () PURE |
IRenderFactory * | GetRenderFactory () SCONST PURE |
OBJTYPE | ObjectType () SCONST PURE |
![]() | |
long | AddRef () PURE |
Increases the reference count. | |
long | Release () PURE |
Decreases the reference count. | |
void | OnFinalRelease () PURE |
Called when the reference count reaches zero and the object is about to be released. | |
Definition at line 508 of file SRender-i.h.
void IPathS::addArc | ( | const RECT * | oval, |
float | startAngle, | ||
float | sweepAngle ) |
Add the specified arc to the path as a new contour.
addArc
oval | The bounds of the oval used to define the size of the arc. |
startAngle | The starting angle (in degrees) where the arc begins. |
sweepAngle | The sweep angle (in degrees) measured clockwise. |
void IPathS::addArc2 | ( | float | left, |
float | top, | ||
float | right, | ||
float | bottom, | ||
float | startAngle, | ||
float | sweepAngle ) |
Add the specified arc to the path as a new contour.
addArc2
left | The left side of the oval. |
top | The top of the oval. |
right | The right side of the oval. |
bottom | The bottom of the oval. |
startAngle | The starting angle (in degrees) where the arc begins. |
sweepAngle | The sweep angle (in degrees) measured clockwise. |
void IPathS::addCircle | ( | float | x, |
float | y, | ||
float | radius, | ||
Direction dir | DEF_VALkCW_Direction ) |
Add a closed circle contour to the path.
addCircle
x | The x-coordinate of the center of the circle. |
y | The y-coordinate of the center of the circle. |
radius | The radius of the circle. |
dir | The direction to wind the circle's contour. Cannot be kUnknown_Direction. |
void IPathS::addOval | ( | const RECT * | oval, |
Direction dir | DEF_VALkCW_Direction ) |
Add a closed oval contour to the path.
addOval
oval | The bounding oval to add as a closed contour. |
dir | The direction to wind the oval's contour. Cannot be kUnknown_Direction. |
void IPathS::addOval2 | ( | float | left, |
float | top, | ||
float | right, | ||
float | bottom, | ||
Direction dir | DEF_VALkCW_Direction ) |
Add a closed oval contour to the path.
addOval2
left | The left side of the oval. |
top | The top of the oval. |
right | The right side of the oval. |
bottom | The bottom of the oval. |
dir | The direction to wind the oval's contour. Cannot be kUnknown_Direction. |
void IPathS::addPoly | ( | const POINT | pts[], |
int | count, | ||
BOOL | close ) |
Add a new contour made of just lines.
addPoly
pts | The array of points defining the polygon. |
count | The number of points in the array. |
close | Whether to close the polygon. |
void IPathS::addRect | ( | const RECT * | rect, |
Direction dir | DEF_VALkCW_Direction ) |
Add a closed rectangle contour to the path.
addRect
rect | The rectangle to add as a closed contour. |
dir | The direction to wind the rectangle's contour. Cannot be kUnknown_Direction. |
void IPathS::addRect2 | ( | float | left, |
float | top, | ||
float | right, | ||
float | bottom, | ||
Direction dir | DEF_VALkCW_Direction ) |
Add a closed rectangle contour to the path.
addRect2
left | The left side of the rectangle. |
top | The top of the rectangle. |
right | The right side of the rectangle. |
bottom | The bottom of the rectangle. |
dir | The direction to wind the rectangle's contour. Cannot be kUnknown_Direction. |
void IPathS::addRoundRect | ( | const RECT * | rect, |
float | rx, | ||
float | ry, | ||
Direction dir | DEF_VALkCW_Direction ) |
Add a closed round-rectangle contour to the path.
addRoundRect
rect | The bounds of the round-rectangle. |
rx | The x-radius of the rounded corners. |
ry | The y-radius of the rounded corners. |
dir | The direction to wind the rectangle's contour. Cannot be kUnknown_Direction. |
void IPathS::addRoundRect2 | ( | float | left, |
float | top, | ||
float | right, | ||
float | bottom, | ||
float | rx, | ||
float | ry, | ||
Direction dir | DEF_VALkCW_Direction ) |
Add a closed round-rectangle contour to the path.
addRoundRect2
left | The left side of the round-rectangle. |
top | The top of the round-rectangle. |
right | The right side of the round-rectangle. |
bottom | The bottom of the round-rectangle. |
rx | The x-radius of the rounded corners. |
ry | The y-radius of the rounded corners. |
dir | The direction to wind the rectangle's contour. Cannot be kUnknown_Direction. |
void IPathS::addString | ( | LPCTSTR | pszText, |
int | nLen, | ||
float | x, | ||
float | y, | ||
const IFontS * | pFont ) |
Add a string to the path.
addString
pszText | The string to add. |
nLen | The length of the string. |
x | The x-coordinate of the starting position. |
y | The y-coordinate of the starting position. |
pFont | The font to use for the text. |
BOOL IPathS::beginFigure | ( | float | x, |
float | y, | ||
BOOL bFill | DEF_VALTRUE ) |
Begin a new figure in the path.
beginFigure
x | The x-coordinate of the starting point. |
y | The y-coordinate of the starting point. |
bFill | Whether to fill the figure. Default is TRUE. |
IPathS * IPathS::clone | ( | ) |
Clone the current path.
clone
void IPathS::close | ( | ) |
Close the current path to stop editing.
close
void IPathS::conicTo | ( | float | x1, |
float | y1, | ||
float | x2, | ||
float | y2, | ||
float | w ) |
Add a conic Bezier curve from the last point, approaching control point (x1,y1), and ending at (x2,y2).
conicTo
x1 | The x-coordinate of the control point. |
y1 | The y-coordinate of the control point. |
x2 | The x-coordinate of the end point. |
y2 | The y-coordinate of the end point. |
w | The weight of the control point. |
void IPathS::cubicTo | ( | float | x1, |
float | y1, | ||
float | x2, | ||
float | y2, | ||
float | x3, | ||
float | y3 ) |
Add a cubic Bezier curve from the last point, approaching control points (x1,y1) and (x2,y2), and ending at (x3,y3).
cubicTo
x1 | The x-coordinate of the 1st control point. |
y1 | The y-coordinate of the 1st control point. |
x2 | The x-coordinate of the 2nd control point. |
y2 | The y-coordinate of the 2nd control point. |
x3 | The x-coordinate of the end point. |
y3 | The y-coordinate of the end point. |
BOOL IPathS::endFigure | ( | BOOL | bClose | ) |
End the current figure in the path.
endFigure
bClose | Whether to close the figure. |
void IPathS::getBounds | ( | LPRECT | prc | ) |
Return the bounds of the path's points.
getBounds
prc | The rectangle to receive the bounds. |
FillType IPathS::getFillType | ( | ) |
Return the path's fill type, which defines how "inside" is computed.
getFillType
BOOL IPathS::getLastPt | ( | fPoint * | lastPt | ) |
Return the last point on the path.
getLastPt
lastPt | The structure to receive the last point. |
float IPathS::getLength | ( | ) |
Get the length of the path.
getLength
Get the position and tangent at a given distance along the path.
getPosTan
distance | The distance along the path. |
pos | The structure to receive the position. |
vec | The structure to receive the tangent vector. |
IRenderFactory * IPathS::GetRenderFactory | ( | ) |
Obtain the factory that created this render object.
GetRenderFactory
BOOL IPathS::hitTest | ( | float | x, |
float | y ) |
Test if a point hits the path.
hitTest
x | The x-coordinate of the point. |
y | The y-coordinate of the point. |
BOOL IPathS::hitTestStroke | ( | float | x, |
float | y, | ||
float | strokeSize ) |
Test if a point hits the stroked path.
hitTestStroke
x | The x-coordinate of the point. |
y | The y-coordinate of the point. |
strokeSize | The stroke size. |
BOOL IPathS::isEmpty | ( | ) |
Check if the path is empty (contains no lines or curves).
isEmpty
void IPathS::lineTo | ( | float | x, |
float | y ) |
Add a line from the last point to the specified point (x,y).
lineTo
x | The x-coordinate of the end of a line. |
y | The y-coordinate of the end of a line. |
void IPathS::moveTo | ( | float | x, |
float | y ) |
Set the beginning of the next contour to the point (x,y).
moveTo
x | The x-coordinate of the start of a new contour. |
y | The y-coordinate of the start of a new contour. |
OBJTYPE IPathS::ObjectType | ( | ) |
Query the type of the object.
ObjectType
void IPathS::offset | ( | float | dx, |
float | dy ) |
Offset the path by (dx,dy).
offset
dx | The amount in the X direction to offset the entire path. |
dy | The amount in the Y direction to offset the entire path. |
void IPathS::quadTo | ( | float | x1, |
float | y1, | ||
float | x2, | ||
float | y2 ) |
Add a quadratic Bezier curve from the last point, approaching control point (x1,y1), and ending at (x2,y2).
quadTo
x1 | The x-coordinate of the control point. |
y1 | The y-coordinate of the control point. |
x2 | The x-coordinate of the end point. |
y2 | The y-coordinate of the end point. |
void IPathS::rConicTo | ( | float | dx1, |
float | dy1, | ||
float | dx2, | ||
float | dy2, | ||
float | w ) |
Add a conic Bezier curve, but the coordinates are relative to the last point.
rConicTo
dx1 | The amount to add to the x-coordinate of the last point to specify the control point. |
dy1 | The amount to add to the y-coordinate of the last point to specify the control point. |
dx2 | The amount to add to the x-coordinate of the last point to specify the end point. |
dy2 | The amount to add to the y-coordinate of the last point to specify the end point. |
w | The weight of the control point. |
void IPathS::rCubicTo | ( | float | x1, |
float | y1, | ||
float | x2, | ||
float | y2, | ||
float | x3, | ||
float | y3 ) |
Add a cubic Bezier curve, but the coordinates are relative to the last point.
rCubicTo
x1 | The x-coordinate of the 1st control point. |
y1 | The y-coordinate of the 1st control point. |
x2 | The x-coordinate of the 2nd control point. |
y2 | The y-coordinate of the 2nd control point. |
x3 | The x-coordinate of the end point. |
y3 | The y-coordinate of the end point. |
void IPathS::reset | ( | ) |
Clear any lines and curves from the path, making it empty. This frees up internal storage.
reset
void IPathS::rLineTo | ( | float | dx, |
float | dy ) |
Add a line from the last point, but the coordinates are relative to the last point.
rLineTo
dx | The amount to add to the x-coordinate of the previous point. |
dy | The amount to add to the y-coordinate of the previous point. |
void IPathS::rMoveTo | ( | float | dx, |
float | dy ) |
Set the beginning of the next contour relative to the last point on the previous contour.
rMoveTo
dx | The amount to add to the x-coordinate of the end of the previous contour. |
dy | The amount to add to the y-coordinate of the end of the previous contour. |
void IPathS::rQuadTo | ( | float | dx1, |
float | dy1, | ||
float | dx2, | ||
float | dy2 ) |
Add a quadratic Bezier curve, but the coordinates are relative to the last point.
rQuadTo
dx1 | The amount to add to the x-coordinate of the last point to specify the control point. |
dy1 | The amount to add to the y-coordinate of the last point to specify the control point. |
dx2 | The amount to add to the x-coordinate of the last point to specify the end point. |
dy2 | The amount to add to the y-coordinate of the last point to specify the end point. |
void IPathS::setFillType | ( | FillType | ft | ) |
Set the path's fill type, which defines how "inside" is computed.
setFillType
ft | The new fill type for this path. |
void IPathS::transform | ( | const IxForm * | matrix | ) |
Transform the points in this path by the given matrix.
transform
matrix | The transformation matrix to apply to the path. |