Open CASCADE Technology 6.6.0
|
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>
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. |
Geom_Ellipse::Geom_Ellipse | ( | const gp_Elips & | E | ) |
Geom_Ellipse::Geom_Ellipse | ( | const gp_Ax2 & | A2, |
const Standard_Real | MajorRadius, | ||
const Standard_Real | MinorRadius | ||
) |
MajorRadius is less than MinorRadius, or
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] |
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] |
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.