Open CASCADE Technology  7.4.0
Public Member Functions

gp_Elips Class Reference

Describes an ellipse in 3D space. An ellipse is defined by its major and minor radii and positioned in space with a coordinate system (a gp_Ax2 object) as follows: More...

#include <gp_Elips.hxx>

Public Member Functions

 gp_Elips ()
 Creates an indefinite ellipse. More...
 
 gp_Elips (const gp_Ax2 &A2, const Standard_Real MajorRadius, const Standard_Real MinorRadius)
 The major radius of the ellipse is on the "XAxis" and the minor radius is on the "YAxis" of the ellipse. The "XAxis" is defined with the "XDirection" of A2 and the "YAxis" is defined with the "YDirection" of A2. Warnings : It is not forbidden to create an ellipse with MajorRadius = MinorRadius. Raises ConstructionError if MajorRadius < MinorRadius or MinorRadius < 0. More...
 
void SetAxis (const gp_Ax1 &A1)
 Changes the axis normal to the plane of the ellipse. It modifies the definition of this plane. The "XAxis" and the "YAxis" are recomputed. The local coordinate system is redefined so that: More...
 
void SetLocation (const gp_Pnt &P)
 Modifies this ellipse, by redefining its local coordinate so that its origin becomes P. More...
 
void SetMajorRadius (const Standard_Real MajorRadius)
 The major radius of the ellipse is on the "XAxis" (major axis) of the ellipse. Raises ConstructionError if MajorRadius < MinorRadius. More...
 
void SetMinorRadius (const Standard_Real MinorRadius)
 The minor radius of the ellipse is on the "YAxis" (minor axis) of the ellipse. Raises ConstructionError if MinorRadius > MajorRadius or MinorRadius < 0. More...
 
void SetPosition (const gp_Ax2 &A2)
 Modifies this ellipse, by redefining its local coordinate so that it becomes A2e. More...
 
Standard_Real Area () const
 Computes the area of the Ellipse. More...
 
const gp_Ax1Axis () const
 Computes the axis normal to the plane of the ellipse. More...
 
gp_Ax1 Directrix1 () const
 Computes the first or second directrix of this ellipse. These are the lines, in the plane of the ellipse, normal to the major axis, at a distance equal to MajorRadius/e from the center of the ellipse, where e is the eccentricity of the ellipse. The first directrix (Directrix1) is on the positive side of the major axis. The second directrix (Directrix2) is on the negative side. The directrix is returned as an axis (gp_Ax1 object), the origin of which is situated on the "X Axis" of the local coordinate system of this ellipse. Exceptions Standard_ConstructionError if the eccentricity is null (the ellipse has degenerated into a circle). More...
 
gp_Ax1 Directrix2 () const
 This line is obtained by the symmetrical transformation of "Directrix1" with respect to the "YAxis" of the ellipse. Exceptions Standard_ConstructionError if the eccentricity is null (the ellipse has degenerated into a circle). More...
 
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. Raises ConstructionError if MajorRadius = 0.0. More...
 
Standard_Real Focal () const
 Computes the focal distance. It is the distance between the two focus focus1 and focus2 of the ellipse. More...
 
gp_Pnt Focus1 () const
 Returns the first focus of the ellipse. This focus is on the positive side of the "XAxis" of the ellipse. More...
 
gp_Pnt Focus2 () const
 Returns the second focus of the ellipse. This focus is on the negative side of the "XAxis" of the ellipse. More...
 
const gp_PntLocation () const
 Returns the center of the ellipse. It is the "Location" point of the coordinate system of the ellipse. More...
 
Standard_Real MajorRadius () const
 Returns the major radius of the ellipse. More...
 
Standard_Real MinorRadius () const
 Returns the minor radius of the ellipse. More...
 
Standard_Real Parameter () const
 Returns p = (1 - e * e) * MajorRadius where e is the eccentricity of the ellipse. Returns 0 if MajorRadius = 0. More...
 
const gp_Ax2Position () const
 Returns the coordinate system of the ellipse. More...
 
gp_Ax1 XAxis () const
 Returns the "XAxis" of the ellipse whose origin is the center of this ellipse. It is the major axis of the ellipse. More...
 
gp_Ax1 YAxis () const
 Returns the "YAxis" of the ellipse whose unit vector is the "X Direction" or the "Y Direction" of the local coordinate system of this ellipse. This is the minor axis of the ellipse. More...
 
void Mirror (const gp_Pnt &P)
 
gp_Elips Mirrored (const gp_Pnt &P) const
 Performs the symmetrical transformation of an ellipse with respect to the point P which is the center of the symmetry. More...
 
void Mirror (const gp_Ax1 &A1)
 
gp_Elips Mirrored (const gp_Ax1 &A1) const
 Performs the symmetrical transformation of an ellipse with respect to an axis placement which is the axis of the symmetry. More...
 
void Mirror (const gp_Ax2 &A2)
 
gp_Elips Mirrored (const gp_Ax2 &A2) const
 Performs the symmetrical transformation of an ellipse with respect to a plane. The axis placement A2 locates the plane of the symmetry (Location, XDirection, YDirection). More...
 
void Rotate (const gp_Ax1 &A1, const Standard_Real Ang)
 
gp_Elips Rotated (const gp_Ax1 &A1, const Standard_Real Ang) const
 Rotates an ellipse. A1 is the axis of the rotation. Ang is the angular value of the rotation in radians. More...
 
void Scale (const gp_Pnt &P, const Standard_Real S)
 
gp_Elips Scaled (const gp_Pnt &P, const Standard_Real S) const
 Scales an ellipse. S is the scaling value. More...
 
void Transform (const gp_Trsf &T)
 
gp_Elips Transformed (const gp_Trsf &T) const
 Transforms an ellipse with the transformation T from class Trsf. More...
 
void Translate (const gp_Vec &V)
 
gp_Elips Translated (const gp_Vec &V) const
 Translates an ellipse in the direction of the vector V. The magnitude of the translation is the vector's magnitude. More...
 
void Translate (const gp_Pnt &P1, const gp_Pnt &P2)
 
gp_Elips Translated (const gp_Pnt &P1, const gp_Pnt &P2) const
 Translates an ellipse from the point P1 to the point P2. More...
 

Detailed Description

Describes an ellipse in 3D space. An ellipse is defined by its major and minor radii and positioned in space with a coordinate system (a gp_Ax2 object) as follows:

Constructor & Destructor Documentation

◆ gp_Elips() [1/2]

gp_Elips::gp_Elips ( )

Creates an indefinite ellipse.

◆ gp_Elips() [2/2]

gp_Elips::gp_Elips ( const gp_Ax2 A2,
const Standard_Real  MajorRadius,
const Standard_Real  MinorRadius 
)

The major radius of the ellipse is on the "XAxis" and the minor radius is on the "YAxis" of the ellipse. The "XAxis" is defined with the "XDirection" of A2 and the "YAxis" is defined with the "YDirection" of A2. Warnings : It is not forbidden to create an ellipse with MajorRadius = MinorRadius. Raises ConstructionError if MajorRadius < MinorRadius or MinorRadius < 0.

Member Function Documentation

◆ Area()

Standard_Real gp_Elips::Area ( ) const

Computes the area of the Ellipse.

◆ Axis()

const gp_Ax1& gp_Elips::Axis ( ) const

Computes the axis normal to the plane of the ellipse.

◆ Directrix1()

gp_Ax1 gp_Elips::Directrix1 ( ) const

Computes the first or second directrix of this ellipse. These are the lines, in the plane of the ellipse, normal to the major axis, at a distance equal to MajorRadius/e from the center of the ellipse, where e is the eccentricity of the ellipse. The first directrix (Directrix1) is on the positive side of the major axis. The second directrix (Directrix2) is on the negative side. The directrix is returned as an axis (gp_Ax1 object), the origin of which is situated on the "X Axis" of the local coordinate system of this ellipse. Exceptions Standard_ConstructionError if the eccentricity is null (the ellipse has degenerated into a circle).

◆ Directrix2()

gp_Ax1 gp_Elips::Directrix2 ( ) const

This line is obtained by the symmetrical transformation of "Directrix1" with respect to the "YAxis" of the ellipse. Exceptions Standard_ConstructionError if the eccentricity is null (the ellipse has degenerated into a circle).

◆ Eccentricity()

Standard_Real gp_Elips::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. Raises ConstructionError if MajorRadius = 0.0.

◆ Focal()

Standard_Real gp_Elips::Focal ( ) const

Computes the focal distance. It is the distance between the two focus focus1 and focus2 of the ellipse.

◆ Focus1()

gp_Pnt gp_Elips::Focus1 ( ) const

Returns the first focus of the ellipse. This focus is on the positive side of the "XAxis" of the ellipse.

◆ Focus2()

gp_Pnt gp_Elips::Focus2 ( ) const

Returns the second focus of the ellipse. This focus is on the negative side of the "XAxis" of the ellipse.

◆ Location()

const gp_Pnt& gp_Elips::Location ( ) const

Returns the center of the ellipse. It is the "Location" point of the coordinate system of the ellipse.

◆ MajorRadius()

Standard_Real gp_Elips::MajorRadius ( ) const

Returns the major radius of the ellipse.

◆ MinorRadius()

Standard_Real gp_Elips::MinorRadius ( ) const

Returns the minor radius of the ellipse.

◆ Mirror() [1/3]

void gp_Elips::Mirror ( const gp_Pnt P)

◆ Mirror() [2/3]

void gp_Elips::Mirror ( const gp_Ax1 A1)

◆ Mirror() [3/3]

void gp_Elips::Mirror ( const gp_Ax2 A2)

◆ Mirrored() [1/3]

gp_Elips gp_Elips::Mirrored ( const gp_Pnt P) const

Performs the symmetrical transformation of an ellipse with respect to the point P which is the center of the symmetry.

◆ Mirrored() [2/3]

gp_Elips gp_Elips::Mirrored ( const gp_Ax1 A1) const

Performs the symmetrical transformation of an ellipse with respect to an axis placement which is the axis of the symmetry.

◆ Mirrored() [3/3]

gp_Elips gp_Elips::Mirrored ( const gp_Ax2 A2) const

Performs the symmetrical transformation of an ellipse with respect to a plane. The axis placement A2 locates the plane of the symmetry (Location, XDirection, YDirection).

◆ Parameter()

Standard_Real gp_Elips::Parameter ( ) const

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

◆ Position()

const gp_Ax2& gp_Elips::Position ( ) const

Returns the coordinate system of the ellipse.

◆ Rotate()

void gp_Elips::Rotate ( const gp_Ax1 A1,
const Standard_Real  Ang 
)

◆ Rotated()

gp_Elips gp_Elips::Rotated ( const gp_Ax1 A1,
const Standard_Real  Ang 
) const

Rotates an ellipse. A1 is the axis of the rotation. Ang is the angular value of the rotation in radians.

◆ Scale()

void gp_Elips::Scale ( const gp_Pnt P,
const Standard_Real  S 
)

◆ Scaled()

gp_Elips gp_Elips::Scaled ( const gp_Pnt P,
const Standard_Real  S 
) const

Scales an ellipse. S is the scaling value.

◆ SetAxis()

void gp_Elips::SetAxis ( const gp_Ax1 A1)

Changes the axis normal to the plane of the ellipse. It modifies the definition of this plane. The "XAxis" and the "YAxis" are recomputed. The local coordinate system is redefined so that:

  • its origin and "main Direction" become those of the axis A1 (the "X Direction" and "Y Direction" are then recomputed in the same way as for any gp_Ax2), or Raises ConstructionError if the direction of A1 is parallel to the direction of the "XAxis" of the ellipse.

◆ SetLocation()

void gp_Elips::SetLocation ( const gp_Pnt P)

Modifies this ellipse, by redefining its local coordinate so that its origin becomes P.

◆ SetMajorRadius()

void gp_Elips::SetMajorRadius ( const Standard_Real  MajorRadius)

The major radius of the ellipse is on the "XAxis" (major axis) of the ellipse. Raises ConstructionError if MajorRadius < MinorRadius.

◆ SetMinorRadius()

void gp_Elips::SetMinorRadius ( const Standard_Real  MinorRadius)

The minor radius of the ellipse is on the "YAxis" (minor axis) of the ellipse. Raises ConstructionError if MinorRadius > MajorRadius or MinorRadius < 0.

◆ SetPosition()

void gp_Elips::SetPosition ( const gp_Ax2 A2)

Modifies this ellipse, by redefining its local coordinate so that it becomes A2e.

◆ Transform()

void gp_Elips::Transform ( const gp_Trsf T)

◆ Transformed()

gp_Elips gp_Elips::Transformed ( const gp_Trsf T) const

Transforms an ellipse with the transformation T from class Trsf.

◆ Translate() [1/2]

void gp_Elips::Translate ( const gp_Vec V)

◆ Translate() [2/2]

void gp_Elips::Translate ( const gp_Pnt P1,
const gp_Pnt P2 
)

◆ Translated() [1/2]

gp_Elips gp_Elips::Translated ( const gp_Vec V) const

Translates an ellipse in the direction of the vector V. The magnitude of the translation is the vector's magnitude.

◆ Translated() [2/2]

gp_Elips gp_Elips::Translated ( const gp_Pnt P1,
const gp_Pnt P2 
) const

Translates an ellipse from the point P1 to the point P2.

◆ XAxis()

gp_Ax1 gp_Elips::XAxis ( ) const

Returns the "XAxis" of the ellipse whose origin is the center of this ellipse. It is the major axis of the ellipse.

◆ YAxis()

gp_Ax1 gp_Elips::YAxis ( ) const

Returns the "YAxis" of the ellipse whose unit vector is the "X Direction" or the "Y Direction" of the local coordinate system of this ellipse. This is the minor axis of the ellipse.


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