#include <2DBase.h>
Inheritance diagram for C2DBase:

Public Types | |
| enum | E_TYPE |
| Enumeration of the types the geometric entities that will derive from this. | |
Public Member Functions | |
| C2DBase (E_TYPE Type) | |
| Constructor must provide the type. | |
| virtual | ~C2DBase (void) |
| Destructor. | |
| virtual void | Move (const C2DVector &Vector)=0 |
| Moves the entity. | |
| virtual void | RotateToRight (double dAng, const C2DPoint &Origin)=0 |
| Rotation around the origin given. | |
| virtual void | Grow (double dFactor, const C2DPoint &Origin)=0 |
| Grows the entity. | |
| virtual void | Reflect (const C2DPoint &Point)=0 |
| Reflection in a point. | |
| virtual void | Reflect (const C2DLine &Line)=0 |
| Reflection in a line. | |
| virtual double | Distance (const C2DPoint &Point) const =0 |
| Distance to a point. | |
| virtual void | GetBoundingRect (C2DRect &Rect) const =0 |
| Return the bounding rect. | |
| virtual void | Project (const C2DLine &Line, CInterval &Interval) const =0 |
| Projects this onto the line provided with the interval on the line returned. | |
| virtual void | Project (const C2DVector &Vector, CInterval &Interval) const =0 |
| Projects this onto the vector provided with the interval on the line returned. | |
| virtual void | SnapToGrid (void)=0 |
| Snaps this to the conceptual grid. | |
| E_TYPE | GetType (void) const |
| Returns the type. | |
Protected Attributes | |
| E_TYPE | m_Type |
| The type of geometric entity. | |
Abstract base class for all Geometric entities which should be able to perform the same set of operations such as Move, Reflect etc.
---------------------------------------------------------------------------
1.4.4