Arc2D

Description

This structure is used to represent two-dimensional arc in the Cartesian system.

struct Arc2D
{
	Point2D center;
	real radius;
	real startAngle;
	real sweepAngle;

	Arc2D();
	Arc2D(real x, real y, real radius, real startAngle, real sweepAngle);
	Arc2D(const Point2D center, real radius, real startAngle, real sweepAngle);

	Point2D Center() const;				
	atl::real Radius( void ) const;		
	atl::real StartAngle( void ) const;	
	atl::real SweepAngle( void ) const;	
	atl::real X( void ) const;			
	atl::real Y( void ) const;			
	Circle2D GetCircle() const;			

	bool operator == ( const Arc2D& rhs ) const;
	bool operator != ( const Arc2D& rhs ) const;
};

Structure fields and default values (if defined) are described below:

struct Arc2D
{
	Point2D	Center;
	real	Radius;
	Real	StartAngle;
	Real	SweepAngle;


	Point2D Center( void ) const	{ return Center;		};
	real Radius( void ) const		{ return Radius;		};
	Real StartAngle( void ) const	{ return StartAngle;	};
	Real SweepAngle( void ) const	{ return SweepAngle;	};

	bool operator == ( const avl::Arc2D& rhs ) const
	{
		return Center == rhs.Center && 
			Radius == rhs.Radius && StartAngle == rhs.StartAngle && 
			SweepAngle == rhs.SweepAngle;
	}

	bool operator != ( const avl::Arc2D& rhs ) const
	{
		return !(operator==(rhs));
	}

};

See also