Open CASCADE Technology
7.5.0
|
Describes a branch of a hyperbola in 3D space. A hyperbola is defined by its major and minor radii and positioned in space with a coordinate system (a gp_Ax2 object) of which: More...
#include <gp_Hypr.hxx>
Public Member Functions | |
gp_Hypr () | |
Creates of an indefinite hyperbola. More... | |
gp_Hypr (const gp_Ax2 &A2, const Standard_Real MajorRadius, const Standard_Real MinorRadius) | |
Creates a hyperbola with radii MajorRadius and MinorRadius, positioned in the space by the coordinate system A2 such that: More... | |
void | SetAxis (const gp_Ax1 &A1) |
Modifies this hyperbola, by redefining its local coordinate system so that: More... | |
void | SetLocation (const gp_Pnt &P) |
Modifies this hyperbola, by redefining its local coordinate system so that its origin becomes P. More... | |
void | SetMajorRadius (const Standard_Real MajorRadius) |
Modifies the major radius of this hyperbola. Exceptions Standard_ConstructionError if MajorRadius is negative. More... | |
void | SetMinorRadius (const Standard_Real MinorRadius) |
Modifies the minor radius of this hyperbola. Exceptions Standard_ConstructionError if MinorRadius is negative. More... | |
void | SetPosition (const gp_Ax2 &A2) |
Modifies this hyperbola, by redefining its local coordinate system so that it becomes A2. More... | |
gp_Ax1 | Asymptote1 () const |
In the local coordinate system of the hyperbola the equation of the hyperbola is (X*X)/(A*A) - (Y*Y)/(B*B) = 1.0 and the equation of the first asymptote is Y = (B/A)*X where A is the major radius and B is the minor radius. Raises ConstructionError if MajorRadius = 0.0. More... | |
gp_Ax1 | Asymptote2 () const |
In the local coordinate system of the hyperbola the equation of the hyperbola is (X*X)/(A*A) - (Y*Y)/(B*B) = 1.0 and the equation of the first asymptote is Y = -(B/A)*X. where A is the major radius and B is the minor radius. Raises ConstructionError if MajorRadius = 0.0. More... | |
const gp_Ax1 & | Axis () const |
Returns the axis passing through the center, and normal to the plane of this hyperbola. More... | |
gp_Hypr | ConjugateBranch1 () const |
Computes the branch of hyperbola which is on the positive side of the "YAxis" of <me>. More... | |
gp_Hypr | ConjugateBranch2 () const |
Computes the branch of hyperbola which is on the negative side of the "YAxis" of <me>. More... | |
gp_Ax1 | Directrix1 () const |
This directrix is the line normal to the XAxis of the hyperbola in the local plane (Z = 0) at a distance d = MajorRadius / e from the center of the hyperbola, where e is the eccentricity of the hyperbola. This line is parallel to the "YAxis". The intersection point between the directrix1 and the "XAxis" is the "Location" point of the directrix1. This point is on the positive side of the "XAxis". More... | |
gp_Ax1 | Directrix2 () const |
This line is obtained by the symmetrical transformation of "Directrix1" with respect to the "YAxis" of the hyperbola. More... | |
Standard_Real | Eccentricity () const |
Returns the excentricity of the hyperbola (e > 1). If f is the distance between the location of the hyperbola and the Focus1 then the eccentricity e = f / MajorRadius. Raises DomainError if MajorRadius = 0.0. More... | |
Standard_Real | Focal () const |
Computes the focal distance. It is the distance between the the two focus of the hyperbola. More... | |
gp_Pnt | Focus1 () const |
Returns the first focus of the hyperbola. This focus is on the positive side of the "XAxis" of the hyperbola. More... | |
gp_Pnt | Focus2 () const |
Returns the second focus of the hyperbola. This focus is on the negative side of the "XAxis" of the hyperbola. More... | |
const gp_Pnt & | Location () const |
Returns the location point of the hyperbola. It is the intersection point between the "XAxis" and the "YAxis". More... | |
Standard_Real | MajorRadius () const |
Returns the major radius of the hyperbola. It is the radius on the "XAxis" of the hyperbola. More... | |
Standard_Real | MinorRadius () const |
Returns the minor radius of the hyperbola. It is the radius on the "YAxis" of the hyperbola. More... | |
gp_Hypr | OtherBranch () const |
Returns the branch of hyperbola obtained by doing the symmetrical transformation of <me> with respect to the "YAxis" of <me>. More... | |
Standard_Real | Parameter () const |
Returns p = (e * e - 1) * MajorRadius where e is the eccentricity of the hyperbola. Raises DomainError if MajorRadius = 0.0. More... | |
const gp_Ax2 & | Position () const |
Returns the coordinate system of the hyperbola. More... | |
gp_Ax1 | XAxis () const |
Computes an axis, whose. More... | |
gp_Ax1 | YAxis () const |
Computes an axis, whose. More... | |
void | Mirror (const gp_Pnt &P) |
gp_Hypr | Mirrored (const gp_Pnt &P) const |
Performs the symmetrical transformation of an hyperbola with respect to the point P which is the center of the symmetry. More... | |
void | Mirror (const gp_Ax1 &A1) |
gp_Hypr | Mirrored (const gp_Ax1 &A1) const |
Performs the symmetrical transformation of an hyperbola with respect to an axis placement which is the axis of the symmetry. More... | |
void | Mirror (const gp_Ax2 &A2) |
gp_Hypr | Mirrored (const gp_Ax2 &A2) const |
Performs the symmetrical transformation of an hyperbola 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_Hypr | Rotated (const gp_Ax1 &A1, const Standard_Real Ang) const |
Rotates an hyperbola. 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_Hypr | Scaled (const gp_Pnt &P, const Standard_Real S) const |
Scales an hyperbola. S is the scaling value. More... | |
void | Transform (const gp_Trsf &T) |
gp_Hypr | Transformed (const gp_Trsf &T) const |
Transforms an hyperbola with the transformation T from class Trsf. More... | |
void | Translate (const gp_Vec &V) |
gp_Hypr | Translated (const gp_Vec &V) const |
Translates an hyperbola 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_Hypr | Translated (const gp_Pnt &P1, const gp_Pnt &P2) const |
Translates an hyperbola from the point P1 to the point P2. More... | |
Describes a branch of a hyperbola in 3D space. A hyperbola is defined by its major and minor radii and positioned in space with a coordinate system (a gp_Ax2 object) of which:
^YAxis | FirstConjugateBranch | Other | Main ------------------— C ---------------------------—>XAxis Branch | Branch | | SecondConjugateBranch | ^YAxis Warning The major radius can be less than the minor radius. See Also gce_MakeHypr which provides functions for more complex hyperbola constructions Geom_Hyperbola which provides additional functions for constructing hyperbolas and works, in particular, with the parametric equations of hyperbolas
gp_Hypr::gp_Hypr | ( | ) |
Creates of an indefinite hyperbola.
gp_Hypr::gp_Hypr | ( | const gp_Ax2 & | A2, |
const Standard_Real | MajorRadius, | ||
const Standard_Real | MinorRadius | ||
) |
Creates a hyperbola with radii MajorRadius and MinorRadius, positioned in the space by the coordinate system A2 such that:
gp_Ax1 gp_Hypr::Asymptote1 | ( | ) | const |
In the local coordinate system of the hyperbola the equation of the hyperbola is (X*X)/(A*A) - (Y*Y)/(B*B) = 1.0 and the equation of the first asymptote is Y = (B/A)*X where A is the major radius and B is the minor radius. Raises ConstructionError if MajorRadius = 0.0.
gp_Ax1 gp_Hypr::Asymptote2 | ( | ) | const |
In the local coordinate system of the hyperbola the equation of the hyperbola is (X*X)/(A*A) - (Y*Y)/(B*B) = 1.0 and the equation of the first asymptote is Y = -(B/A)*X. where A is the major radius and B is the minor radius. Raises ConstructionError if MajorRadius = 0.0.
const gp_Ax1& gp_Hypr::Axis | ( | ) | const |
Returns the axis passing through the center, and normal to the plane of this hyperbola.
gp_Hypr gp_Hypr::ConjugateBranch1 | ( | ) | const |
Computes the branch of hyperbola which is on the positive side of the "YAxis" of <me>.
gp_Hypr gp_Hypr::ConjugateBranch2 | ( | ) | const |
Computes the branch of hyperbola which is on the negative side of the "YAxis" of <me>.
gp_Ax1 gp_Hypr::Directrix1 | ( | ) | const |
This directrix is the line normal to the XAxis of the hyperbola in the local plane (Z = 0) at a distance d = MajorRadius / e from the center of the hyperbola, where e is the eccentricity of the hyperbola. This line is parallel to the "YAxis". The intersection point between the directrix1 and the "XAxis" is the "Location" point of the directrix1. This point is on the positive side of the "XAxis".
gp_Ax1 gp_Hypr::Directrix2 | ( | ) | const |
This line is obtained by the symmetrical transformation of "Directrix1" with respect to the "YAxis" of the hyperbola.
Standard_Real gp_Hypr::Eccentricity | ( | ) | const |
Returns the excentricity of the hyperbola (e > 1). If f is the distance between the location of the hyperbola and the Focus1 then the eccentricity e = f / MajorRadius. Raises DomainError if MajorRadius = 0.0.
Standard_Real gp_Hypr::Focal | ( | ) | const |
Computes the focal distance. It is the distance between the the two focus of the hyperbola.
gp_Pnt gp_Hypr::Focus1 | ( | ) | const |
Returns the first focus of the hyperbola. This focus is on the positive side of the "XAxis" of the hyperbola.
gp_Pnt gp_Hypr::Focus2 | ( | ) | const |
Returns the second focus of the hyperbola. This focus is on the negative side of the "XAxis" of the hyperbola.
const gp_Pnt& gp_Hypr::Location | ( | ) | const |
Returns the location point of the hyperbola. It is the intersection point between the "XAxis" and the "YAxis".
Standard_Real gp_Hypr::MajorRadius | ( | ) | const |
Returns the major radius of the hyperbola. It is the radius on the "XAxis" of the hyperbola.
Standard_Real gp_Hypr::MinorRadius | ( | ) | const |
Returns the minor radius of the hyperbola. It is the radius on the "YAxis" of the hyperbola.
void gp_Hypr::Mirror | ( | const gp_Pnt & | P | ) |
void gp_Hypr::Mirror | ( | const gp_Ax1 & | A1 | ) |
void gp_Hypr::Mirror | ( | const gp_Ax2 & | A2 | ) |
Performs the symmetrical transformation of an hyperbola with respect to the point P which is the center of the symmetry.
Performs the symmetrical transformation of an hyperbola with respect to an axis placement which is the axis of the symmetry.
Performs the symmetrical transformation of an hyperbola with respect to a plane. The axis placement A2 locates the plane of the symmetry (Location, XDirection, YDirection).
gp_Hypr gp_Hypr::OtherBranch | ( | ) | const |
Returns the branch of hyperbola obtained by doing the symmetrical transformation of <me> with respect to the "YAxis" of <me>.
Standard_Real gp_Hypr::Parameter | ( | ) | const |
Returns p = (e * e - 1) * MajorRadius where e is the eccentricity of the hyperbola. Raises DomainError if MajorRadius = 0.0.
const gp_Ax2& gp_Hypr::Position | ( | ) | const |
Returns the coordinate system of the hyperbola.
void gp_Hypr::Rotate | ( | const gp_Ax1 & | A1, |
const Standard_Real | Ang | ||
) |
gp_Hypr gp_Hypr::Rotated | ( | const gp_Ax1 & | A1, |
const Standard_Real | Ang | ||
) | const |
Rotates an hyperbola. A1 is the axis of the rotation. Ang is the angular value of the rotation in radians.
void gp_Hypr::Scale | ( | const gp_Pnt & | P, |
const Standard_Real | S | ||
) |
gp_Hypr gp_Hypr::Scaled | ( | const gp_Pnt & | P, |
const Standard_Real | S | ||
) | const |
Scales an hyperbola. S is the scaling value.
void gp_Hypr::SetAxis | ( | const gp_Ax1 & | A1 | ) |
Modifies this hyperbola, by redefining its local coordinate system so that:
void gp_Hypr::SetLocation | ( | const gp_Pnt & | P | ) |
Modifies this hyperbola, by redefining its local coordinate system so that its origin becomes P.
void gp_Hypr::SetMajorRadius | ( | const Standard_Real | MajorRadius | ) |
Modifies the major radius of this hyperbola. Exceptions Standard_ConstructionError if MajorRadius is negative.
void gp_Hypr::SetMinorRadius | ( | const Standard_Real | MinorRadius | ) |
Modifies the minor radius of this hyperbola. Exceptions Standard_ConstructionError if MinorRadius is negative.
void gp_Hypr::SetPosition | ( | const gp_Ax2 & | A2 | ) |
Modifies this hyperbola, by redefining its local coordinate system so that it becomes A2.
void gp_Hypr::Transform | ( | const gp_Trsf & | T | ) |
Transforms an hyperbola with the transformation T from class Trsf.
void gp_Hypr::Translate | ( | const gp_Vec & | V | ) |
Translates an hyperbola in the direction of the vector V. The magnitude of the translation is the vector's magnitude.
Translates an hyperbola from the point P1 to the point P2.
gp_Ax1 gp_Hypr::XAxis | ( | ) | const |
Computes an axis, whose.
gp_Ax1 gp_Hypr::YAxis | ( | ) | const |
Computes an axis, whose.