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; };
Structure fields and default values (if defined) are described below:
struct CoordinateSystem2D
{
	Point2D	Origin;
	Real	Angle;
	float	Scale;
	explicit CoordinateSystem2D
	(
		float Scale_ = 1.0f 
	) :
		 Scale(Scale_) 
	{}
	Point2D Origin() const	{ return Origin;	};
	Real Angle() const		{ return Angle;		};
	float Scale() const		{ return Scale;		};
	bool operator == ( const avl::CoordinateSystem2D& rhs ) const
	{
		return Origin == rhs.Origin && 
			Angle == rhs.Angle && 
			Scale == rhs.Scale;
	}
	bool operator != ( const avl::CoordinateSystem2D& rhs ) const
	{
		return !(operator==(rhs));
	}
};

