Open CASCADE Technology  7.3.1.dev
Public Member Functions
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: More...

#include <gp_Elips2d.hxx>

Public Member Functions

 gp_Elips2d ()
 Creates an indefinite ellipse. More...
 
 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. More...
 
 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: More...
 
void SetLocation (const gp_Pnt2d &P)
 Modifies this ellipse, by redefining its local coordinate system so that. More...
 
void SetMajorRadius (const Standard_Real MajorRadius)
 Changes the value of the major radius. Raises ConstructionError if MajorRadius < MinorRadius. More...
 
void SetMinorRadius (const Standard_Real MinorRadius)
 Changes the value of the minor radius. Raises ConstructionError if MajorRadius < MinorRadius or MinorRadius < 0.0. More...
 
void SetAxis (const gp_Ax22d &A)
 Modifies this ellipse, by redefining its local coordinate system so that it becomes A. More...
 
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. More...
 
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. More...
 
Standard_Real Area () const
 Computes the area of the ellipse. More...
 
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. More...
 
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". More...
 
gp_Ax2d Directrix2 () const
 This line is obtained by the symmetrical transformation of "Directrix1" with respect to the minor axis of the ellipse. 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. Returns 0 if MajorRadius = 0. More...
 
Standard_Real Focal () const
 Returns the distance between the center of the ellipse and focus1 or focus2. More...
 
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. More...
 
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. More...
 
const gp_Pnt2dLocation () const
 Returns the center 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_Ax22dAxis () const
 Returns the major axis of the ellipse. More...
 
gp_Ax2d XAxis () const
 Returns the major axis of the ellipse. More...
 
gp_Ax2d YAxis () const
 Returns the minor axis of the ellipse. Reverses the direction of the circle. More...
 
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. More...
 
void Mirror (const gp_Pnt2d &P)
 
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. More...
 
void Mirror (const gp_Ax2d &A)
 
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. More...
 
void Rotate (const gp_Pnt2d &P, const Standard_Real Ang)
 
gp_Elips2d Rotated (const gp_Pnt2d &P, const Standard_Real Ang) const
 
void Scale (const gp_Pnt2d &P, const Standard_Real S)
 
gp_Elips2d Scaled (const gp_Pnt2d &P, const Standard_Real S) const
 Scales a ellipse. S is the scaling value. More...
 
void Transform (const gp_Trsf2d &T)
 
gp_Elips2d Transformed (const gp_Trsf2d &T) const
 Transforms an ellipse with the transformation T from class Trsf2d. More...
 
void Translate (const gp_Vec2d &V)
 
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. More...
 
void Translate (const gp_Pnt2d &P1, const gp_Pnt2d &P2)
 
gp_Elips2d Translated (const gp_Pnt2d &P1, const gp_Pnt2d &P2) const
 Translates a ellipse from the point P1 to the point P2. More...
 

Detailed Description

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:

Constructor & Destructor Documentation

◆ gp_Elips2d() [1/3]

gp_Elips2d::gp_Elips2d ( )

Creates an indefinite ellipse.

◆ gp_Elips2d() [2/3]

gp_Elips2d::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.

◆ gp_Elips2d() [3/3]

gp_Elips2d::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

Member Function Documentation

◆ Area()

Standard_Real gp_Elips2d::Area ( ) const

Computes the area of the ellipse.

◆ Axis()

const gp_Ax22d& gp_Elips2d::Axis ( ) const

Returns the major axis of the ellipse.

◆ Coefficients()

void gp_Elips2d::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.

◆ Directrix1()

gp_Ax2d gp_Elips2d::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)

◆ Directrix2()

gp_Ax2d gp_Elips2d::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).

◆ Eccentricity()

Standard_Real gp_Elips2d::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.

◆ Focal()

Standard_Real gp_Elips2d::Focal ( ) const

Returns the distance between the center of the ellipse and focus1 or focus2.

◆ Focus1()

gp_Pnt2d gp_Elips2d::Focus1 ( ) const

Returns the first focus of the ellipse. This focus is on the positive side of the major axis of the ellipse.

◆ Focus2()

gp_Pnt2d gp_Elips2d::Focus2 ( ) const

Returns the second focus of the ellipse. This focus is on the negative side of the major axis of the ellipse.

◆ IsDirect()

Standard_Boolean gp_Elips2d::IsDirect ( ) const

Returns true if the local coordinate system is direct and false in the other case.

◆ Location()

const gp_Pnt2d& gp_Elips2d::Location ( ) const

Returns the center of the ellipse.

◆ MajorRadius()

Standard_Real gp_Elips2d::MajorRadius ( ) const

Returns the major radius of the Ellipse.

◆ MinorRadius()

Standard_Real gp_Elips2d::MinorRadius ( ) const

Returns the minor radius of the Ellipse.

◆ Mirror() [1/2]

void gp_Elips2d::Mirror ( const gp_Pnt2d P)

◆ Mirror() [2/2]

void gp_Elips2d::Mirror ( const gp_Ax2d A)

◆ Mirrored() [1/2]

gp_Elips2d 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.

◆ Mirrored() [2/2]

gp_Elips2d 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.

◆ Parameter()

Standard_Real gp_Elips2d::Parameter ( ) const

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

◆ Reverse()

void gp_Elips2d::Reverse ( )

◆ Reversed()

gp_Elips2d gp_Elips2d::Reversed ( ) const

◆ Rotate()

void gp_Elips2d::Rotate ( const gp_Pnt2d P,
const Standard_Real  Ang 
)

◆ Rotated()

gp_Elips2d gp_Elips2d::Rotated ( const gp_Pnt2d P,
const Standard_Real  Ang 
) const

◆ Scale()

void gp_Elips2d::Scale ( const gp_Pnt2d P,
const Standard_Real  S 
)

◆ Scaled()

gp_Elips2d gp_Elips2d::Scaled ( const gp_Pnt2d P,
const Standard_Real  S 
) const

Scales a ellipse. S is the scaling value.

◆ SetAxis()

void gp_Elips2d::SetAxis ( const gp_Ax22d A)

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

◆ SetLocation()

void gp_Elips2d::SetLocation ( const gp_Pnt2d P)

Modifies this ellipse, by redefining its local coordinate system so that.

  • its origin becomes P.

◆ SetMajorRadius()

void gp_Elips2d::SetMajorRadius ( const Standard_Real  MajorRadius)

Changes the value of the major radius. Raises ConstructionError if MajorRadius < MinorRadius.

◆ SetMinorRadius()

void gp_Elips2d::SetMinorRadius ( const Standard_Real  MinorRadius)

Changes the value of the minor radius. Raises ConstructionError if MajorRadius < MinorRadius or MinorRadius < 0.0.

◆ SetXAxis()

void gp_Elips2d::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.

◆ SetYAxis()

void gp_Elips2d::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.

◆ Transform()

void gp_Elips2d::Transform ( const gp_Trsf2d T)

◆ Transformed()

gp_Elips2d gp_Elips2d::Transformed ( const gp_Trsf2d T) const

Transforms an ellipse with the transformation T from class Trsf2d.

◆ Translate() [1/2]

void gp_Elips2d::Translate ( const gp_Vec2d V)

◆ Translate() [2/2]

void gp_Elips2d::Translate ( const gp_Pnt2d P1,
const gp_Pnt2d P2 
)

◆ Translated() [1/2]

gp_Elips2d 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.

◆ Translated() [2/2]

gp_Elips2d gp_Elips2d::Translated ( const gp_Pnt2d P1,
const gp_Pnt2d P2 
) const

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

◆ XAxis()

gp_Ax2d gp_Elips2d::XAxis ( ) const

Returns the major axis of the ellipse.

◆ YAxis()

gp_Ax2d gp_Elips2d::YAxis ( ) const

Returns the minor axis of the ellipse. Reverses the direction of the circle.


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