Allows you to iterate through BShape operations. More...
Public Member Functions | |
BShapeIterator () | |
Constructor, does nothing. | |
virtual | ~BShapeIterator () |
Destructor, does nothing. | |
status_t | Iterate (BShape *shape) |
Iterates over each operation that make up the BShape calling IterateMoveTo(), IterateLineTo(), IterateBezierTo(), IterateClose() or IterateArcTo() depending on the operation. | |
virtual status_t | IterateArcTo (float &rx, float &ry, float &angle, bool largeArc, bool counterClockWise, BPoint &point) |
Called by Iterate() to act on an arc. | |
virtual status_t | IterateBezierTo (int32 bezierCount, BPoint *bezierPoints) |
Called by Iterate() to act on bezierCount Bézier curves comprised of the points specified by bezierPoints. | |
virtual status_t | IterateClose () |
Called by Iterate() to close the BShape. | |
virtual status_t | IterateLineTo (int32 lineCount, BPoint *linePoints) |
Called by Iterate() to act on lineCount lines comprised of the points specified by linePoints. | |
virtual status_t | IterateMoveTo (BPoint *point) |
Called by Iterate() to act on point. | |
Allows you to iterate through BShape operations.
You should override this class and implement the IterateMoveTo(), IterateLineTo(), IterateBezierTo(), IterateClose(), and IterateArcTo() methods which correspond to BShape::MoveTo(), BShape::LineTo(), BShape::BezierTo(), BShape::Close() and BShape::ArcTo() respectively.
BShapeIterator::BShapeIterator | ( | ) |
Constructor, does nothing.
This method does nothing and should be implemented by derived classes.
|
virtual |
Destructor, does nothing.
This method does nothing and should be implemented by derived classes.
Iterates over each operation that make up the BShape calling IterateMoveTo(), IterateLineTo(), IterateBezierTo(), IterateClose() or IterateArcTo() depending on the operation.
shape The BShape object to iterate through.
B_OK
. You should override this method to return an appropriate status code.
|
virtual |
Called by Iterate() to act on an arc.
rx | The horizontal radius of the arc to act on. |
ry | The vertical radius of the arc to act on. |
angle | The starting angle of the arc in degrees to act on. |
largeArc | Whether or not to draw a large arc. |
counterClockWise | true if the arc is drawn counter-clockwise, false if the arc is drawn clockwise. |
point | The center point of the arc to act on. |
This method does nothing and should be implemented by derived classes.
B_OK
. You should override this method to return an appropriate status code.Called by Iterate() to act on bezierCount Bézier curves comprised of the points specified by bezierPoints.
This method does nothing and should be implemented by derived classes.
bezierCount | The number of points in bezierPoints. |
bezierPoints | The list of Bézier curve points to act on. |
B_OK
. You should override this method to return an appropriate status code.
|
virtual |
Called by Iterate() to act on lineCount lines comprised of the points specified by linePoints.
This method does nothing and should be implemented by derived classes.
lineCount | The number of points in linePoints. |
linePoints | The list of points of lines to act on. |
B_OK
. You should override this method to return an appropriate status code.Called by Iterate() to act on point.
This method does nothing and should be implemented by derived classes.
point | The point to act on. |
B_OK
. You should override this method to return an appropriate status code.