Open CASCADE Technology 6.6.0
Public Member Functions
Geom_Ellipse Class Reference

Describes an ellipse in 3D space.
An ellipse is defined by its major and minor radii and,
as with any conic curve, is positioned in space with a
right-handed coordinate system (gp_Ax2 object) where:
More...

#include <Geom_Ellipse.hxx>

Inheritance diagram for Geom_Ellipse:
Inheritance graph
[legend]

Public Member Functions

 Geom_Ellipse (const gp_Elips &E)
 Constructs an ellipse by conversion of the gp_Elips ellipse E.

 Geom_Ellipse (const gp_Ax2 &A2, const Standard_Real MajorRadius, const Standard_Real MinorRadius)
 Constructs an ellipse
defined by its major and minor radii, MajorRadius
and MinorRadius, where A2 locates the ellipse
and defines its orientation in 3D space such that:

void SetElips (const gp_Elips &E)
 Converts the gp_Elips ellipse E into this ellipse.

void SetMajorRadius (const Standard_Real MajorRadius)
 Assigns a value to the major radius of this ellipse.
ConstructionError raised if MajorRadius < MinorRadius.

void SetMinorRadius (const Standard_Real MinorRadius)
 Assigns a value to the minor radius of this ellipse.
ConstructionError raised if MajorRadius < MinorRadius or if MinorRadius < 0.

gp_Elips Elips () const
 returns the non transient ellipse from gp with the same

Standard_Real ReversedParameter (const Standard_Real U) const
 Computes the parameter on the reversed ellipse for
the point of parameter U on this ellipse.
For an ellipse, the returned value is: 2.*Pi - U.

gp_Ax1 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_Ax1 Directrix2 () const
 This line is obtained by the symmetrical transformation
of "Directrix1" with respect to the "YAxis" 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
 Computes the focal distance. It is the distance between the
the two focus of the ellipse.

gp_Pnt Focus1 () const
 Returns the first focus of the ellipse. This focus is on the
positive side of the "XAxis" of the ellipse.

gp_Pnt Focus2 () const
 Returns the second focus of the ellipse. This focus is on
the negative side of the "XAxis" of the ellipse.

Standard_Real MajorRadius () const
 Returns the major radius of this ellipse.

Standard_Real MinorRadius () const
 Returns the minor radius of this ellipse.

Standard_Real Parameter () const
 Returns p = (1 - e * e) * MajorRadius where e is the eccentricity
of the ellipse.
Returns 0 if MajorRadius = 0

Standard_Real FirstParameter () const
 Returns the value of the first parameter of this
ellipse. This is respectively:

Standard_Real LastParameter () const
 Returns the value of the last parameter of this
ellipse. This is respectively:

Standard_Boolean IsClosed () const
 return True.

Standard_Boolean IsPeriodic () const
 return True.

void D0 (const Standard_Real U, gp_Pnt &P) const
 Returns in P the point of parameter U.
P = C + MajorRadius * Cos (U) * XDir + MinorRadius * Sin (U) * YDir
where C is the center of the ellipse , XDir the direction of
the "XAxis" and "YDir" the "YAxis" of the ellipse.

void D1 (const Standard_Real U, gp_Pnt &P, gp_Vec &V1) const
 Returns the point P of parameter U and the first derivative V1.
//! Raised if the continuity of the curve is not C1.

void D2 (const Standard_Real U, gp_Pnt &P, gp_Vec &V1, gp_Vec &V2) const
 Returns the point P of parameter U. The vectors V1 and V2
are the first and second derivatives at this point.

void D3 (const Standard_Real U, gp_Pnt &P, gp_Vec &V1, gp_Vec &V2, gp_Vec &V3) const
 Returns the point P of parameter U, the first second and
third derivatives V1 V2 and V3.

gp_Vec DN (const Standard_Real U, const Standard_Integer N) const
 For the point of parameter U of this ellipse, computes
the vector corresponding to the Nth derivative.
Exceptions Standard_RangeError if N is less than 1.

void Transform (const gp_Trsf &T)
 Applies the transformation T to this ellipse.

Handle_Geom_Geometry Copy () const
 Creates a new object which is a copy of this ellipse.


Detailed Description


Constructor & Destructor Documentation

Geom_Ellipse::Geom_Ellipse ( const gp_Elips E)
Geom_Ellipse::Geom_Ellipse ( const gp_Ax2 A2,
const Standard_Real  MajorRadius,
const Standard_Real  MinorRadius 
)
  • the center of the ellipse is the origin of A2,
  • the "X Direction" of A2 defines the major axis
    of the ellipse, i.e. the major radius
    MajorRadius is measured along this axis,
  • the "Y Direction" of A2 defines the minor axis
    of the ellipse, i.e. the minor radius
    MinorRadius is measured along this axis,
  • A2 is the local coordinate system of the ellipse.
    Exceptions
    Standard_ConstructionError if:

MajorRadius is less than MinorRadius, or

  • MinorRadius is less than 0.
    Warning The Geom package does not prevent the
    construction of an ellipse where MajorRadius and
    MinorRadius are equal.

Member Function Documentation

Handle_Geom_Geometry Geom_Ellipse::Copy ( ) const [virtual]

Implements Geom_Geometry.

void Geom_Ellipse::D0 ( const Standard_Real  U,
gp_Pnt P 
) const [virtual]

Implements Geom_Curve.

void Geom_Ellipse::D1 ( const Standard_Real  U,
gp_Pnt P,
gp_Vec V1 
) const [virtual]

Implements Geom_Curve.

void Geom_Ellipse::D2 ( const Standard_Real  U,
gp_Pnt P,
gp_Vec V1,
gp_Vec V2 
) const [virtual]

Implements Geom_Curve.

void Geom_Ellipse::D3 ( const Standard_Real  U,
gp_Pnt P,
gp_Vec V1,
gp_Vec V2,
gp_Vec V3 
) const [virtual]

Implements Geom_Curve.

gp_Ax1 Geom_Ellipse::Directrix1 ( ) const
gp_Ax1 Geom_Ellipse::Directrix2 ( ) const
gp_Vec Geom_Ellipse::DN ( const Standard_Real  U,
const Standard_Integer  N 
) const [virtual]

Implements Geom_Curve.

Standard_Real Geom_Ellipse::Eccentricity ( ) const [virtual]

Implements Geom_Conic.

gp_Elips Geom_Ellipse::Elips ( ) const
Standard_Real Geom_Ellipse::FirstParameter ( ) const [virtual]
  • 0.0, which gives the start point of this ellipse, or
    The start point and end point of an ellipse are coincident.

Implements Geom_Curve.

Standard_Real Geom_Ellipse::Focal ( ) const
gp_Pnt Geom_Ellipse::Focus1 ( ) const
gp_Pnt Geom_Ellipse::Focus2 ( ) const
Standard_Boolean Geom_Ellipse::IsClosed ( ) const [virtual]

Implements Geom_Curve.

Standard_Boolean Geom_Ellipse::IsPeriodic ( ) const [virtual]

Implements Geom_Curve.

Standard_Real Geom_Ellipse::LastParameter ( ) const [virtual]
  • 2.*Pi, which gives the end point of this ellipse.
    The start point and end point of an ellipse are coincident.

Implements Geom_Curve.

Standard_Real Geom_Ellipse::MajorRadius ( ) const
Standard_Real Geom_Ellipse::MinorRadius ( ) const
Standard_Real Geom_Ellipse::Parameter ( ) const
Standard_Real Geom_Ellipse::ReversedParameter ( const Standard_Real  U) const [virtual]

Implements Geom_Conic.

void Geom_Ellipse::SetElips ( const gp_Elips E)
void Geom_Ellipse::SetMajorRadius ( const Standard_Real  MajorRadius)
void Geom_Ellipse::SetMinorRadius ( const Standard_Real  MinorRadius)
void Geom_Ellipse::Transform ( const gp_Trsf T) [virtual]

Implements Geom_Geometry.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines