32 #ifndef IGeometricObject2DHPP 33 #define IGeometricObject2DHPP 35 #include <zeusbase/System/Interfaces/IList.hpp> 36 #include <zeusbase/System/Interfaces/IValueType.hpp> 41 #define INTERFACE_IGeometricObject2D TIID(0x668d0dfb, 0x7a53, 0x4ddf, 0x9b, 0x59, 0x81, 0xea, 0xad, 0x67, 0x86, 0x25) 44 #define INTERSECT_TANGENT_TOLERANCE 1e-6 60 virtual const InterfaceID& MQUALIFIER getInterfaceID()
const = 0;
63 virtual Float MQUALIFIER getLength()
const = 0;
79 virtual Retval MQUALIFIER getPointFromRunningParameter(
const Float& rfRunningParameter,
123 IList<IVector2D>& rLstIntersectionPoints,
124 const Float& rfTangentTolerance =
138 virtual bool MQUALIFIER containsPoint(
const IVector2D& rVecPoint,
139 const Float& rfTolerance = 0)
const = 0;
147 virtual void MQUALIFIER calcClosestPointToPoint(
const IVector2D& rVecPoint,
157 virtual Float MQUALIFIER calcDistanceToPoint(
const IVector2D& rVecPoint)
const = 0;
168 virtual Float MQUALIFIER calcDistanceToObject(
const IGeometricObject2D& rObject)
const = 0;
181 virtual Retval MQUALIFIER getXMinPoint(
IVector2D& rVecPoint)
const = 0;
194 virtual Retval MQUALIFIER getXMaxPoint(
IVector2D& rVecPoint)
const = 0;
207 virtual Retval MQUALIFIER getYMinPoint(
IVector2D& rVecPoint)
const = 0;
220 virtual Retval MQUALIFIER getYMaxPoint(
IVector2D& rVecPoint)
const = 0;
231 virtual void MQUALIFIER getMinMaxCoordinates(Float& rfXMin, Float& rfXMax,
232 Float& rfYMin, Float& rfYMax)
const = 0;
Definition: IGeometricObject2D.hpp:54
#define INTERSECT_TANGENT_TOLERANCE
Definition: IGeometricObject2D.hpp:44
Definition: IVector2D.hpp:47