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::Ellipse2d< T > Class Template Reference

2d ellipse class associated to cartesian 2d coordinates. For a non rotated ellipse, the major axis follows the x axis and the minor axis follows the y axis. More...

#include <Ellipse2d.h>

Inheritance diagram for ipsdk::geom::Ellipse2d< T >:
ipsdk::geom::BaseTypedGeometryEntity2d< T > 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
 
ipReal64 focalLength () const
 compute focal length associated to ellipse
 
ipReal64 perimeterLowerBound () const
 retrieve lower bound for ellipse perimeter
 
ipReal64 perimeterUpperBound () const
 retrieve upper bound for ellipse perimeter More...
 
ipReal64 area () const
 retrieve ellipse area
 
ipReal64 excentricity () const
 retrieve ellipse excentricity
 
ipReal64 radius (const ipReal64 phi) const
 retrieve ellipse radius for a given orientation
 
Point2dData< ipReal64boundaryPoint (const ipReal64 phi) const
 retrieve ellipse boundary point for a given orientation
 
Constructors and destructors
 Ellipse2d ()
 
 Ellipse2d (const Point2dData< T > &center, const T majorRadius, const T minorRadius, const ipReal64 theta)
 
 Ellipse2d (const Point2d< T > &center, const T majorRadius, const T minorRadius, const ipReal64 theta)
 
 Ellipse2d (const T xCenter, const T yCenter, const T majorRadius, const T minorRadius, const ipReal64 theta)
 
 ~Ellipse2d ()
 
void setCoords (const Point2dData< T > &centerPt, const T majorRadius, const T minorRadius, const ipReal64 theta)
 access to ellipse parameters
 
void setCoords (const Point2d< T > &centerPt, const T majorRadius, const T minorRadius, const ipReal64 theta)
 access to ellipse parameters
 
void setCoords (const T xCenter, const T yCenter, const T majorRadius, const T minorRadius, const ipReal64 theta)
 access to ellipse parameters
 
void setCenter (const Point2dData< T > &center)
 access to ellipse parameters
 
void setCenter (const Point2d< T > &center)
 access to ellipse parameters
 
void setCenter (const T xCenter, const T yCenter)
 access to ellipse parameters
 
void setMajorRadius (const T majorRadius)
 access to ellipse parameters
 
void setMinorRadius (const T minorRadius)
 access to ellipse parameters
 
void setTheta (const ipReal64 theta)
 access to ellipse parameters
 
getMajorRadius () const
 access to ellipse parameters
 
getMinorRadius () const
 access to ellipse parameters
 
ipReal64 getTheta () const
 access to ellipse parameters
 
centerX () const
 access to ellipse parameters
 
centerY () const
 access to ellipse parameters
 
const Point2dData< T > & center () const
 access to ellipse parameters
 
Point2dData< ipReal64focus1 () const
 compute focus points coordinates
 
Point2dData< ipReal64focus2 () const
 compute focus points coordinates
 
- Public Member Functions inherited from ipsdk::geom::BaseTypedGeometryEntity2d< T >
 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_BoundingBox
 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< T > _centerPt
 center of the ellipse
 
_majorRadius
 major radius
 
_minorRadius
 minor radius
 
ipReal64 _theta
 orientation (in radian) of the ellipse
 
ipReal64 _cosTheta
 computation intermediate
 
ipReal64 _sinTheta
 computation intermediate
 
- Protected Attributes inherited from ipsdk::BaseObjectWithSkeleton
eSklSrzMode _sklSrzMode
 serialization flag for object More...
 

Additional Inherited Members

- Public Types inherited from ipsdk::geom::BaseTypedGeometryEntity2d< T >
typedef T 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

template<typename T>
class ipsdk::geom::Ellipse2d< T >

2d ellipse class associated to cartesian 2d coordinates. For a non rotated ellipse, the major axis follows the x axis and the minor axis follows the y axis.

Author
R. Abbal
Date
2015/06/18

Member Function Documentation

◆ perimeterUpperBound()

template<typename T >
ipReal64 ipsdk::geom::Ellipse2d< T >::perimeterUpperBound ( ) const
inline

retrieve upper bound for ellipse perimeter

Note
This value can also be used as an approximate value for ellipse perimeter

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