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. | |
Public Member Functions inherited from IRenderObj | |
| long | AddRef () PURE |
| long | Release () PURE |
| void | OnFinalRelease () PURE |
| IRenderFactory * | GetRenderFactory () SCONST PURE |
| OBJTYPE | ObjectType () SCONST PURE |
Public Member Functions inherited from IObjRef | |
| 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. |