CoordinateSystem2D

Description

Represents a bounded local coordinate system consisting of a reference point, rotation and scale. Typically used to store results of template-matching routines.

struct CoordinateSystem2D
{
	CoordinateSystem2D();
	CoordinateSystem2D( const Point2D& origin_, float angle_, float scale_ = 1.0f );
	CoordinateSystem2D( const Vector2D& delta, float angle_, float scale_ = 1.0f )'
	CoordinateSystem2D( float x_, float y_, float angle_, float scale_ = 1.0f );
	
	Point2D origin;
	float angle;
	float scale;

	Point2D Origin( void ) const;
	float Angle( void ) const;
	float Scale( void ) const;
	float X( void ) const;
	float Y( void ) const;

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