OCC Main Page | FoundationClasses | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

FoundationClasses
TKMath
gp


gp_Elips2d Class Reference

Describes an ellipse in the plane (2D space).
An ellipse is defined by its major and minor radii and
positioned in the plane with a coordinate system (a
gp_Ax22d object) as follows:
- the origin of the coordinate system is the center of the ellipse,
- its "X Direction" defines the major axis of the ellipse, and
- its "Y Direction" defines the minor axis of the ellipse.
This coordinate system is the "local coordinate system"
of the ellipse. Its orientation (direct or indirect) gives an
implicit orientation to the ellipse. In this coordinate
system, the equation of the ellipse is:
X*X / (MajorRadius**2) + Y*Y / (MinorRadius**2) = 1.0
See Also
gce_MakeElips2d which provides functions for more
complex ellipse constructions
Geom2d_Ellipse which provides additional functions for
constructing ellipses and works, in particular, with the
parametric equations of ellipses
.

#include <gp_Elips2d.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
 gp_Elips2d ()
 Creates an indefinite ellipse.
.
 gp_Elips2d (const gp_Ax2d &MajorAxis, const Standard_Real MajorRadius, const Standard_Real MinorRadius, const Standard_Boolean Sense=Standard_True)
 Creates an ellipse with the major axis, the major and the
minor radius. The location of the MajorAxis is the center
of the ellipse.
The sense of parametrization is given by Sense.
Warnings :
It is possible to create an ellipse with
MajorRadius = MinorRadius.
Raises ConstructionError if MajorRadius < MinorRadius or MinorRadius < 0.0
.
Standard_EXPORT gp_Elips2d (const gp_Ax22d &A, const Standard_Real MajorRadius, const Standard_Real MinorRadius)
 Creates an ellipse with radii MajorRadius and
MinorRadius, positioned in the plane by coordinate system A where:
- the origin of A is the center of the ellipse,
- the "X Direction" of A defines the major axis of
the ellipse, that is, the major radius MajorRadius
is measured along this axis, and
- the "Y Direction" of A defines the minor axis of
the ellipse, that is, the minor radius MinorRadius
is measured along this axis, and
- the orientation (direct or indirect sense) of A
gives the orientation of the ellipse.
Warnings :
It is possible to create an ellipse with
MajorRadius = MinorRadius.
Raises ConstructionError if MajorRadius < MinorRadius or MinorRadius < 0.0
.
Standard_EXPORT void SetLocation (const gp_Pnt2d &P)
 Modifies this ellipse, by redefining its local coordinate system so that
- its origin becomes P.
.
Standard_EXPORT void SetMajorRadius (const Standard_Real MajorRadius)
 Changes the value of the major radius.
Raises ConstructionError if MajorRadius < MinorRadius.
.
Standard_EXPORT void SetMinorRadius (const Standard_Real MinorRadius)
 Changes the value of the minor radius.
Raises ConstructionError if MajorRadius < MinorRadius or MinorRadius < 0.0
.
Standard_EXPORT void SetAxis (const gp_Ax22d &A)
 Modifies this ellipse, by redefining its local coordinate system so that
it becomes A.
.
Standard_EXPORT void SetXAxis (const gp_Ax2d &A)
 Modifies this ellipse, by redefining its local coordinate system so that
its origin and its "X Direction" become those
of the axis A. The "Y Direction" is then
recomputed. The orientation of the local coordinate
system is not modified.
.
Standard_EXPORT void SetYAxis (const gp_Ax2d &A)
 Modifies this ellipse, by redefining its local coordinate system so that
its origin and its "Y Direction" become those
of the axis A. The "X Direction" is then
recomputed. The orientation of the local coordinate
system is not modified.
.
Standard_Real Area () const
 Computes the area of the ellipse.
.
Standard_EXPORT void Coefficients (Standard_Real &A, Standard_Real &B, Standard_Real &C, Standard_Real &D, Standard_Real &E, Standard_Real &F) const
 Returns the coefficients of the implicit equation of the ellipse.
A * (X**2) + B * (Y**2) + 2*C*(X*Y) + 2*D*X + 2*E*Y + F = 0.
.
gp_Ax2d Directrix1 () const
 This directrix is the line normal to the XAxis of the ellipse
in the local plane (Z = 0) at a distance d = MajorRadius / e
from the center of the ellipse, where e is the eccentricity of
the ellipse.
This line is parallel to the "YAxis". The intersection point
between directrix1 and the "XAxis" is the location point of the
directrix1. This point is on the positive side of the "XAxis".
Raised if Eccentricity = 0.0. (The ellipse degenerates into a
circle)
.
gp_Ax2d Directrix2 () const
 This line is obtained by the symmetrical transformation
of "Directrix1" with respect to the minor axis of the ellipse.
Raised if Eccentricity = 0.0. (The ellipse degenerates into a
circle).
.
Standard_Real Eccentricity () const
 Returns the eccentricity of the ellipse between 0.0 and 1.0
If f is the distance between the center of the ellipse and
the Focus1 then the eccentricity e = f / MajorRadius.
Returns 0 if MajorRadius = 0.
.
Standard_Real Focal () const
 Returns the distance between the center of the ellipse
and focus1 or focus2.
.
gp_Pnt2d Focus1 () const
 Returns the first focus of the ellipse. This focus is on the
positive side of the major axis of the ellipse.
.
gp_Pnt2d Focus2 () const
 Returns the second focus of the ellipse. This focus is on the
negative side of the major axis of the ellipse.
.
const gp_Pnt2dLocation () const
 Returns the center of the ellipse.
.
Standard_Real MajorRadius () const
 Returns the major radius of the Ellipse.
.
Standard_Real MinorRadius () const
 Returns the minor radius of the Ellipse.
.
Standard_Real Parameter () const
 Returns p = (1 - e * e) * MajorRadius where e is the eccentricity
of the ellipse.
Returns 0 if MajorRadius = 0
.
const gp_Ax22dAxis () const
 Returns the major axis of the ellipse.
.
gp_Ax2d XAxis () const
 Returns the major axis of the ellipse.
.
gp_Ax2d YAxis () const
 Returns the minor axis of the ellipse.
//! Reverses the direction of the circle.
.
void Reverse ()
gp_Elips2d Reversed () const
Standard_Boolean IsDirect () const
 Returns true if the local coordinate system is direct
and false in the other case.
.
Standard_EXPORT void Mirror (const gp_Pnt2d &P)
Standard_EXPORT gp_Elips2d Mirrored (const gp_Pnt2d &P) const
 Performs the symmetrical transformation of a ellipse with respect
to the point P which is the center of the symmetry
.
Standard_EXPORT void Mirror (const gp_Ax2d &A)
Standard_EXPORT gp_Elips2d Mirrored (const gp_Ax2d &A) const
 Performs the symmetrical transformation of a ellipse with respect
to an axis placement which is the axis of the symmetry.
.
Standard_EXPORT void Rotate (const gp_Pnt2d &P, const Standard_Real Ang)
Standard_EXPORT gp_Elips2d Rotated (const gp_Pnt2d &P, const Standard_Real Ang) const
Standard_EXPORT void Scale (const gp_Pnt2d &P, const Standard_Real S)
Standard_EXPORT gp_Elips2d Scaled (const gp_Pnt2d &P, const Standard_Real S) const
 Scales a ellipse. S is the scaling value.
.
Standard_EXPORT void Transform (const gp_Trsf2d &T)
Standard_EXPORT gp_Elips2d Transformed (const gp_Trsf2d &T) const
 Transforms an ellipse with the transformation T from class Trsf2d.
.
Standard_EXPORT void Translate (const gp_Vec2d &V)
Standard_EXPORT gp_Elips2d Translated (const gp_Vec2d &V) const
 Translates a ellipse in the direction of the vector V.
The magnitude of the translation is the vector's magnitude.
.
Standard_EXPORT void Translate (const gp_Pnt2d &P1, const gp_Pnt2d &P2)
Standard_EXPORT gp_Elips2d Translated (const gp_Pnt2d &P1, const gp_Pnt2d &P2) const
 Translates a ellipse from the point P1 to the point P2.
.
const gp_Ax22d_CSFDB_Getgp_Elips2dpos () const
Standard_Real _CSFDB_Getgp_Elips2dmajorRadius () const
void _CSFDB_Setgp_Elips2dmajorRadius (const Standard_Real p)
Standard_Real _CSFDB_Getgp_Elips2dminorRadius () const
void _CSFDB_Setgp_Elips2dminorRadius (const Standard_Real p)

Private Attributes

gp_Ax22d pos
Standard_Real majorRadius
Standard_Real minorRadius

Friends

Standard_EXPORT friend Handle_Standard_Type & gp_Elips2d_Type_ ()


Constructor & Destructor Documentation

gp_Elips2d::gp_Elips2d  )  [inline]
 

gp_Elips2d::gp_Elips2d const gp_Ax2d MajorAxis,
const Standard_Real  MajorRadius,
const Standard_Real  MinorRadius,
const Standard_Boolean  Sense = Standard_True
[inline]
 

gp_Elips2d::gp_Elips2d const gp_Ax22d A,
const Standard_Real  MajorRadius,
const Standard_Real  MinorRadius
[inline]
 


Member Function Documentation

Standard_Real gp_Elips2d::_CSFDB_Getgp_Elips2dmajorRadius  )  const [inline]
 

Standard_Real gp_Elips2d::_CSFDB_Getgp_Elips2dminorRadius  )  const [inline]
 

const gp_Ax22d& gp_Elips2d::_CSFDB_Getgp_Elips2dpos  )  const [inline]
 

void gp_Elips2d::_CSFDB_Setgp_Elips2dmajorRadius const Standard_Real  p  )  [inline]
 

void gp_Elips2d::_CSFDB_Setgp_Elips2dminorRadius const Standard_Real  p  )  [inline]
 

Standard_Real gp_Elips2d::Area  )  const [inline]
 

const gp_Ax22d & gp_Elips2d::Axis  )  const [inline]
 

Standard_EXPORT void gp_Elips2d::Coefficients Standard_Real A,
Standard_Real B,
Standard_Real C,
Standard_Real D,
Standard_Real E,
Standard_Real F
const
 

gp_Ax2d gp_Elips2d::Directrix1  )  const [inline]
 

gp_Ax2d gp_Elips2d::Directrix2  )  const [inline]
 

Standard_Real gp_Elips2d::Eccentricity  )  const [inline]
 

Standard_Real gp_Elips2d::Focal  )  const [inline]
 

gp_Pnt2d gp_Elips2d::Focus1  )  const [inline]
 

gp_Pnt2d gp_Elips2d::Focus2  )  const [inline]
 

Standard_Boolean gp_Elips2d::IsDirect  )  const [inline]
 

const gp_Pnt2d & gp_Elips2d::Location  )  const [inline]
 

Standard_Real gp_Elips2d::MajorRadius  )  const [inline]
 

Standard_Real gp_Elips2d::MinorRadius  )  const [inline]
 

Standard_EXPORT void gp_Elips2d::Mirror const gp_Ax2d A  ) 
 

Standard_EXPORT void gp_Elips2d::Mirror const gp_Pnt2d P  ) 
 

Standard_EXPORT gp_Elips2d gp_Elips2d::Mirrored const gp_Ax2d A  )  const
 

Standard_EXPORT gp_Elips2d gp_Elips2d::Mirrored const gp_Pnt2d P  )  const
 

void gp_Elips2d::operator delete void *  anAddress  )  [inline]
 

void* gp_Elips2d::operator new size_t  size  )  [inline]
 

void* gp_Elips2d::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_Real gp_Elips2d::Parameter  )  const [inline]
 

void gp_Elips2d::Reverse  )  [inline]
 

gp_Elips2d gp_Elips2d::Reversed  )  const [inline]
 

void gp_Elips2d::Rotate const gp_Pnt2d P,
const Standard_Real  Ang
[inline]
 

gp_Elips2d gp_Elips2d::Rotated const gp_Pnt2d P,
const Standard_Real  Ang
const [inline]
 

void gp_Elips2d::Scale const gp_Pnt2d P,
const Standard_Real  S
[inline]
 

gp_Elips2d gp_Elips2d::Scaled const gp_Pnt2d P,
const Standard_Real  S
const [inline]
 

void gp_Elips2d::SetAxis const gp_Ax22d A  )  [inline]
 

void gp_Elips2d::SetLocation const gp_Pnt2d P  )  [inline]
 

void gp_Elips2d::SetMajorRadius const Standard_Real  MajorRadius  )  [inline]
 

void gp_Elips2d::SetMinorRadius const Standard_Real  MinorRadius  )  [inline]
 

void gp_Elips2d::SetXAxis const gp_Ax2d A  )  [inline]
 

void gp_Elips2d::SetYAxis const gp_Ax2d A  )  [inline]
 

void gp_Elips2d::Transform const gp_Trsf2d T  )  [inline]
 

gp_Elips2d gp_Elips2d::Transformed const gp_Trsf2d T  )  const [inline]
 

void gp_Elips2d::Translate const gp_Pnt2d P1,
const gp_Pnt2d P2
[inline]
 

void gp_Elips2d::Translate const gp_Vec2d V  )  [inline]
 

gp_Elips2d gp_Elips2d::Translated const gp_Pnt2d P1,
const gp_Pnt2d P2
const [inline]
 

gp_Elips2d gp_Elips2d::Translated const gp_Vec2d V  )  const [inline]
 

gp_Ax2d gp_Elips2d::XAxis  )  const [inline]
 

gp_Ax2d gp_Elips2d::YAxis  )  const [inline]
 


Friends And Related Function Documentation

Standard_EXPORT friend Handle_Standard_Type& gp_Elips2d_Type_  )  [friend]
 


Field Documentation

Standard_Real gp_Elips2d::majorRadius [private]
 

Standard_Real gp_Elips2d::minorRadius [private]
 

gp_Ax22d gp_Elips2d::pos [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Aug 25 13:12:40 2008 for OpenCASCADE by  doxygen 1.4.1