Sourceforge.net - The VCF's Project Host
   The VCF Website Home   |   Online Discussion Forums   |   Sourceforge.net Project Page   

VCF::Ellipse Class Reference

#include <Ellipse.h>

Inheritance diagram for VCF::Ellipse:

VCF::Object VCF::Path VCF::Interface VCF::Circle List of all members.

Public Member Functions

 Ellipse ()
 Ellipse (const Rect &r)
 Ellipse (const double &x1, const double &y1, const double &x2, const double &y2)
 Ellipse (const Point &tl, const Point &br)
virtual ~Ellipse ()
virtual void applyTransform (const Matrix2D &transform)
 Applies the transform to the path.
virtual bool contains (const Rect &rect, Matrix2D *transform=NULL)
 Returns true or false, depending on whether or not the path includes, or contains, the specified rectangle.
virtual bool contains (const Point &pt, Matrix2D *transform=NULL)
 Returns true or false, depending on whether or not the path includes, or contains, the specified point.
virtual bool intersects (const Point &pt, Matrix2D *transform=NULL)
 Returns true or false, depending on whether or not the specified point intersects any part of the path.
virtual bool intersects (const Rect &rect, Matrix2D *transform=NULL)
 Returns true or false, depending on whether or not the specified rectangle intersects any part of the path.
virtual Rect getBounds ()
 returns the smallest rectangular bounds that fully enclose this path
virtual WindingRule getWindingRule ()
 Returns the winding rule for the path.
virtual void setWindingRule (WindingRule rule)
virtual bool getPoints (std::vector< PathPoint > &points, Matrix2D *transform)
 This fills in the points vector with a series of all the points that make up the path.
virtual void flattenPoints (std::vector< Point > &flattenedPoints)
 This does the same thing as getPoints(), only it "flattens" the path if neccessary.
void ellipse (const Rect &bounds)

Protected Attributes

agg::path_storage ellipsePath_

Constructor & Destructor Documentation

VCF::Ellipse::Ellipse  )  [inline]
 

VCF::Ellipse::Ellipse const Rect r  )  [inline]
 

VCF::Ellipse::Ellipse const double &  x1,
const double &  y1,
const double &  x2,
const double &  y2
[inline]
 

VCF::Ellipse::Ellipse const Point tl,
const Point br
[inline]
 

virtual VCF::Ellipse::~Ellipse  )  [inline, virtual]
 


Member Function Documentation

virtual void VCF::Ellipse::applyTransform const Matrix2D transform  )  [inline, virtual]
 

Applies the transform to the path.

Implements VCF::Path.

virtual bool VCF::Ellipse::contains const Point pt,
Matrix2D transform = NULL
[inline, virtual]
 

Returns true or false, depending on whether or not the path includes, or contains, the specified point.

Returns:
bool Returns true if the point is within the bounds of the shape, otherwise false.

Implements VCF::Path.

virtual bool VCF::Ellipse::contains const Rect rect,
Matrix2D transform = NULL
[inline, virtual]
 

Returns true or false, depending on whether or not the path includes, or contains, the specified rectangle.

Returns:
bool Returns true if the rect is within the bounds of the shape, otherwise false.

Implements VCF::Path.

void VCF::Ellipse::ellipse const Rect bounds  )  [inline]
 

virtual void VCF::Ellipse::flattenPoints std::vector< Point > &  flattenedPoints  )  [inline, virtual]
 

This does the same thing as getPoints(), only it "flattens" the path if neccessary.

For example, if you had a path that was a bezier curve, it might be made of 4 points, the start point, 1st control point, 2nd control point, and end point. Calling getPoints would returns these 4 points, where as calling flattenPoints() would "flatten" the curve, and return a series of points that approximate the curve. How closely the flattened points approximate the curve is entirely up to the implementor of the Path class.

Implements VCF::Path.

virtual Rect VCF::Ellipse::getBounds  )  [inline, virtual]
 

returns the smallest rectangular bounds that fully enclose this path

Implements VCF::Path.

virtual bool VCF::Ellipse::getPoints std::vector< PathPoint > &  points,
Matrix2D transform
[inline, virtual]
 

This fills in the points vector with a series of all the points that make up the path.

If the path were to describe a rectangle, then more than likely the points parameter would be filled with 4 points for the 4 corners of the rectangle.

Parameters:
std::vector<PathPoint> 
Matrix2D a pointer to an affine matrix. This matrix is used to apply a transformation to the returned points. It does not modify the path. The matrix instance is optional, and may be NULL.
Returns:
bool returns true if the points vector is non empty (i.e. points.emtpy() == false).

Implements VCF::Path.

virtual WindingRule VCF::Ellipse::getWindingRule  )  [inline, virtual]
 

Returns the winding rule for the path.

This affects how the path get rendered.

Implements VCF::Path.

virtual bool VCF::Ellipse::intersects const Rect rect,
Matrix2D transform = NULL
[inline, virtual]
 

Returns true or false, depending on whether or not the specified rectangle intersects any part of the path.

Returns:
bool Returns true if the rectangle intersects the shape, otherwise false.

Implements VCF::Path.

virtual bool VCF::Ellipse::intersects const Point pt,
Matrix2D transform = NULL
[inline, virtual]
 

Returns true or false, depending on whether or not the specified point intersects any part of the path.

Returns:
bool Returns true if the point intersects the shape, otherwise false.

Implements VCF::Path.

virtual void VCF::Ellipse::setWindingRule WindingRule  rule  )  [inline, virtual]
 


Member Data Documentation

agg::path_storage VCF::Ellipse::ellipsePath_ [protected]
 


The documentation for this class was generated from the following file:
   Comments or Suggestions?    License Information