27 #ifndef __IPSDKGEOMETRY_PARABOLA2D_H__ 28 #define __IPSDKGEOMETRY_PARABOLA2D_H__ 32 #pragma warning (push) 33 #pragma warning (disable : 4251) 35 #include <IPSDKGeometry/Entity/2d/BaseTypedGeometryEntity2d.h> 38 #include <IPSDKGeometry/Entity/2d/Point/Point2d.h> 39 #include <IPSDKGeometry/Entity/2d/Line/Line2d.h> 81 bool isDegenerated()
const;
94 inline void setDirectrix(
const Line2d& directrix);
97 inline const Line2d& getDirectrix()
const;
98 inline Line2d& getDirectrix();
108 Line2d getSymmetryAxis()
const;
122 template <
typename T>
129 template <
typename T>
131 Parabola2d::Parabola2d(
const Point2dData<T>& focus,
const Line2d& directrix)
148 template <
typename T>
156 template <
typename T>
164 template <
typename T>
208 #pragma warning (pop) 210 #endif // __IPSDKGEOMETRY_PARABOLA2D_H__ Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Utility functions for parabola 2d management.
eCoordinateSystem2dType getCoordinateSystem2dType() const
method allowing to retrieve coordinate system 2d type
Definition: Parabola2d.h:137
void setCoords(const Point2d< T > &focus, const Line2d &directrix)
access to parabola coordinates
Definition: Parabola2d.h:150
Point class associated to cartesian 2d coordinates.
Definition: GeometryEntity2dTypes.h:28
double ipReal64
Base types definition.
Definition: BaseTypes.h:57
static const eCoordinateSystem2dType::domain g_coordinateSystem2dType
coordinate system associated to entity
Definition: Parabola2d.h:55
eEntity2dType getEntity2dType() const
method allowing to retrieve entity 2d type
Definition: Parabola2d.h:143
Point2dData< ipReal64 > _focus
focus point associated to parabola
Definition: Parabola2d.h:113
eCoordinateSystem2dType
Enumerate describing coordinate system 2d type.
Definition: GeometryEntity2dTypes.h:76
Parabola.
Definition: GeometryEntity2dTypes.h:64
const Line2d & getDirectrix() const
access to parabola coordinates
Definition: Parabola2d.h:190
Parabola 2d class.
Definition: Parabola2d.h:47
#define IPSDKGEOMETRY_API
Import/Export macro for library IPSDKGeometry.
Definition: IPSDKGeometryExports.h:25
Base class for typed 3d geometry entities.
Definition: BaseTypedGeometryEntity2d.h:27
2d line associated to polar coordinates
Definition: Line2d.h:42
static const eEntity2dType::domain g_entity2dType
type associated to entity
Definition: Parabola2d.h:58
#define IPSDK_DECLARE_GEOMETRY_ENTITY_2D(libraryName, className)
Macro allowing to declare a geometry entity 2d.
Definition: GeometryEntity2dHdrMacros.h:131
const Point2dData< T > & getCoords() const
access to point coordinates
Definition: Point2d.h:139
void setDirectrix(const Line2d &directrix)
access to parabola coordinates
Definition: Parabola2d.h:172
eEntity2dType
Enumerate describing entity 2d type.
Definition: GeometryEntity2dTypes.h:38
const Point2dData< ipReal64 > & getFocus() const
access to parabola coordinates
Definition: Parabola2d.h:178
Lightweight structure used to store Point2d data.
Definition: GeometryEntity2dTypes.h:26
void setFocus(const Point2d< T > &focus)
access to parabola coordinates
Definition: Parabola2d.h:166
Line2d _directrix
directrix associated to parabola
Definition: Parabola2d.h:116
Cartesian coordinate system.
Definition: GeometryEntity2dTypes.h:78
Basic operators used for parabola 2d management.