IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
ipsdk::geom::Parabola2d Class Reference

Parabola 2d class. More...

#include <Parabola2d.h>

Inheritance diagram for ipsdk::geom::Parabola2d:
ipsdk::geom::BaseTypedGeometryEntity2d< ipReal64 > ipsdk::geom::BaseGeometryEntity2d ipsdk::geom::BaseGeometryEntity ipsdk::BaseObjectWithSkeleton ipsdk::BaseSerializationObject ipsdk::BaseDynamicObject

Public Member Functions

eCoordinateSystem2dType getCoordinateSystem2dType () const
 method allowing to retrieve coordinate system 2d type
 
eEntity2dType getEntity2dType () const
 method allowing to retrieve entity 2d type
 
bool isDegenerated () const
 
ipReal64 getFocalLength () const
 retrieve focal length associated to parabola
 
Point2dData< ipReal64getVertex () const
 retrieve vertex associated to parabola
 
Line2d getSymmetryAxis () const
 retrieve symmetry axis for parabola
 
Constructors and destructor
 Parabola2d ()
 
template<typename T >
 Parabola2d (const Point2d< T > &focus, const Line2d &directrix)
 
template<typename T >
 Parabola2d (const Point2dData< T > &focus, const Line2d &directrix)
 
 ~Parabola2d ()
 
template<typename T >
void setCoords (const Point2d< T > &focus, const Line2d &directrix)
 access to parabola coordinates More...
 
template<typename T >
void setCoords (const Point2dData< T > &focus, const Line2d &directrix)
 access to parabola coordinates More...
 
template<typename T >
void setFocus (const Point2d< T > &focus)
 access to parabola coordinates More...
 
template<typename T >
void setFocus (const Point2dData< T > &focus)
 access to parabola coordinates More...
 
void setDirectrix (const Line2d &directrix)
 access to parabola coordinates More...
 
const Point2dData< ipReal64 > & getFocus () const
 access to parabola coordinates More...
 
Point2dData< ipReal64 > & getFocus ()
 access to parabola coordinates More...
 
const Line2dgetDirectrix () const
 access to parabola coordinates More...
 
Line2dgetDirectrix ()
 access to parabola coordinates More...
 
- Public Member Functions inherited from ipsdk::geom::BaseTypedGeometryEntity2d< ipReal64 >
 BaseTypedGeometryEntity2d ()
 
virtual ~BaseTypedGeometryEntity2d ()=0
 
- Public Member Functions inherited from ipsdk::geom::BaseGeometryEntity2d
eCoordinateDimension getCoordinateDimension () const
 method allowing to retrieve entity underlying coordinates dimension
 
 BaseGeometryEntity2d ()
 
virtual ~BaseGeometryEntity2d ()=0
 
- Public Member Functions inherited from ipsdk::geom::BaseGeometryEntity
 BaseGeometryEntity ()
 
virtual ~BaseGeometryEntity ()=0
 
- Public Member Functions inherited from ipsdk::BaseObjectWithSkeleton
const eSklSrzModegetSerializationMode () const
 retrieve serialization flag for object More...
 
void setSerializationMode (const eSklSrzMode &sklSrzMode) const
 set serialization flag for object
 
 BaseObjectWithSkeleton ()
 
 ~BaseObjectWithSkeleton ()
 
- Public Member Functions inherited from ipsdk::BaseSerializationObject
 BaseSerializationObject ()
 Default constructor.
 
virtual ~BaseSerializationObject ()=0
 destructor
 
- Public Member Functions inherited from ipsdk::BaseDynamicObject
virtual const std::string & getClassName () const
 method allowing to retrieve object class name
 
virtual BaseDynamicObjectcreateNew () const =0
 method allowing to create new instance of current object type
 
virtual DynamicObjectPtr createShared () const =0
 method allowing to create new shared instance of current object type
 
virtual bool hasCopySupport () const =0
 check whether objet has copy support
 
virtual BaseDynamicObjectduplicate () const =0
 method allowing to duplicate current object More...
 
virtual DynamicObjectPtr duplicateShared () const =0
 method allowing shared duplication of current object More...
 
 BaseDynamicObject ()
 
virtual ~BaseDynamicObject ()=0
 

Static Public Attributes

static const eCoordinateSystem2dType::domain g_coordinateSystem2dType = eCoordinateSystem2dType::eCS2DT_Cartesian
 coordinate system associated to entity
 
static const eEntity2dType::domain g_entity2dType = eEntity2dType::eE2DT_Parabola
 type associated to entity
 
- Static Public Attributes inherited from ipsdk::geom::BaseGeometryEntity2d
static const eCoordinateDimension::domain g_coordinateDimension = eCoordinateDimension::eCD_2d
 entity underlying coordinates dimension
 

Protected Attributes

Point2dData< ipReal64_focus
 focus point associated to parabola
 
Line2d _directrix
 directrix associated to parabola
 
- Protected Attributes inherited from ipsdk::BaseObjectWithSkeleton
eSklSrzMode _sklSrzMode
 serialization flag for object More...
 

Additional Inherited Members

- Public Types inherited from ipsdk::geom::BaseTypedGeometryEntity2d< ipReal64 >
typedef ipReal64 DataType
 data type associated to coordinates
 
- Static Public Member Functions inherited from ipsdk::BaseSerializationObject
static ipUInt32 getVersion ()
 method allowing to retrieve class version information for serialization
 
- Static Public Member Functions inherited from ipsdk::BaseDynamicObject
static const std::string & getTypeName ()
 method allowing to retrieve name associated to class
 
- Protected Member Functions inherited from ipsdk::BaseSerializationObject
virtual BoolResult write (BaseOArchive &ar) const
 method allowing to ensure serialization write part for object
 
virtual BoolResult read (BaseIArchive &ar)
 method allowing to ensure serialization read part for object
 
- Protected Member Functions inherited from ipsdk::BaseDynamicObject
virtual void initCtorCopy (const BaseDynamicObject &object)
 
virtual void copy (const BaseDynamicObject &object)
 method allowing to copy data from another object
 

Detailed Description

Parabola 2d class.

Author
E. Noirfalise
Date
2016/03/23

Parabola is represented by a line (its directrix) and a point (its focus). Points on parabola are then at same distance from directrix and focus. These parameters allows to define following properties :

Parabola parameters are illustrated on following image :

parabola2d.png
See also
https://en.wikipedia.org/wiki/Parabola

Member Function Documentation

◆ isDegenerated()

bool ipsdk::geom::Parabola2d::isDegenerated ( ) const

check whether parabola is degenerated (case of focus on directrix)

◆ setCoords() [1/2]

template<typename T >
void ipsdk::geom::Parabola2d::setCoords ( const Point2d< T > &  focus,
const Line2d directrix 
)
inline

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

◆ setCoords() [2/2]

template<typename T >
void ipsdk::geom::Parabola2d::setCoords ( const Point2dData< T > &  focus,
const Line2d directrix 
)
inline

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

◆ setFocus() [1/2]

template<typename T >
void ipsdk::geom::Parabola2d::setFocus ( const Point2d< T > &  focus)
inline

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

◆ setFocus() [2/2]

template<typename T >
void ipsdk::geom::Parabola2d::setFocus ( const Point2dData< T > &  focus)

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

◆ setDirectrix()

void ipsdk::geom::Parabola2d::setDirectrix ( const Line2d directrix)
inline

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

◆ getFocus() [1/2]

const Point2dData< ipReal64 > & ipsdk::geom::Parabola2d::getFocus ( ) const
inline

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

◆ getFocus() [2/2]

Point2dData< ipReal64 > & ipsdk::geom::Parabola2d::getFocus ( )
inline

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

◆ getDirectrix() [1/2]

const Line2d & ipsdk::geom::Parabola2d::getDirectrix ( ) const
inline

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

◆ getDirectrix() [2/2]

Line2d & ipsdk::geom::Parabola2d::getDirectrix ( )
inline

access to parabola coordinates

Warning
focus should not be on directrix (degenerate case)

The documentation for this class was generated from the following file: