Open CASCADE Technology
6.5.4
|
Describes a branch of a hyperbola in the plane (2D space).
A hyperbola is defined by its major and minor radii
and, as with any conic curve, is positioned in the
plane with a coordinate system (gp_Ax22d object) where:
More...
#include <Geom2d_Hyperbola.hxx>
Public Member Functions | |
Geom2d_Hyperbola (const gp_Hypr2d &H) | |
Creates an Hyperbola from a non persistent one from package gp | |
Geom2d_Hyperbola (const gp_Ax2d &MajorAxis, const Standard_Real MajorRadius, const Standard_Real MinorRadius, const Standard_Boolean Sense=Standard_True) | |
MajorAxis is the "XAxis" of the hyperbola. The YAxis is in the direct sense if "Sense" is True; The major radius of the hyperbola is on this "XAxis" and the minor radius is on the "YAxis" of the hyperbola. //! Raised if MajorRadius < 0.0 or if MinorRadius < 0.0 | |
Geom2d_Hyperbola (const gp_Ax22d &Axis, const Standard_Real MajorRadius, const Standard_Real MinorRadius) | |
The XDirection of "Axis" is the "XAxis" of the hyperbola and the YDirection of "Axis" is the "YAxis". The major radius of the hyperbola is on this "XAxis" and the minor radius is on the "YAxis" of the hyperbola. //! Raised if MajorRadius < 0.0 or if MinorRadius < 0.0 | |
void | SetHypr2d (const gp_Hypr2d &H) |
Converts the gp_Hypr2d hyperbola H into this hyperbola. | |
void | SetMajorRadius (const Standard_Real MajorRadius) |
Assigns a value to the major or minor radius of this hyperbola. Exceptions Standard_ConstructionError if: | |
void | SetMinorRadius (const Standard_Real MinorRadius) |
Assigns a value to the major or minor radius of this hyperbola. Exceptions Standard_ConstructionError if: | |
gp_Hypr2d | Hypr2d () const |
Converts this hyperbola into a gp_Hypr2d one. | |
Standard_Real | ReversedParameter (const Standard_Real U) const |
Computes the parameter on the reversed hyperbola, for the point of parameter U on this hyperbola. For a hyperbola, the returned value is -U. | |
Standard_Real | FirstParameter () const |
Returns RealFirst from Standard. | |
Standard_Real | LastParameter () const |
returns RealLast from Standard. | |
Standard_Boolean | IsClosed () const |
Returns False. | |
Standard_Boolean | IsPeriodic () const |
return False for an hyperbola. | |
gp_Ax2d | 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 of the hyperbola and B is the minor radius of the hyperbola. //! Raised if MajorRadius = 0.0 | |
gp_Ax2d | 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 of the hyperbola and B is the minor radius of the hyperbola. //! raised if MajorRadius = 0.0 | |
gp_Hypr2d | ConjugateBranch1 () const |
Computes the first conjugate branch relative to this hyperbola. Note: The diagram given under the class purpose indicates where these two branches of hyperbola are positioned in relation to this branch of hyperbola. | |
gp_Hypr2d | ConjugateBranch2 () const |
Computes the second conjugate branch relative to this hyperbola. Note: The diagram given under the class purpose indicates where these two branches of hyperbola are positioned in relation to this branch of hyperbola. | |
gp_Ax2d | 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 directrix1 and the "XAxis" is the location point of the directrix1. This point is on the positive side of the "XAxis". | |
gp_Ax2d | Directrix2 () const |
This line is obtained by the symmetrical transformation of "Directrix1" with respect to the "YAxis" of the hyperbola. | |
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. //! raised if MajorRadius = 0.0 | |
Standard_Real | Focal () const |
Computes the focal distance. It is the distance between the two focus of the hyperbola. | |
gp_Pnt2d | Focus1 () const |
Returns the first focus of the hyperbola. This focus is on the positive side of the "XAxis" of the hyperbola. | |
gp_Pnt2d | Focus2 () const |
Returns the second focus of the hyperbola. This focus is on the negative side of the "XAxis" of the hyperbola. | |
Standard_Real | MajorRadius () const |
Returns the major or minor radius of this hyperbola. The major radius is also the distance between the center of the hyperbola and the apex of the main branch (located on the "X Axis" of the hyperbola). | |
Standard_Real | MinorRadius () const |
Returns the major or minor radius of this hyperbola. The minor radius is also the distance between the center of the hyperbola and the apex of a conjugate branch (located on the "Y Axis" of the hyperbola). | |
gp_Hypr2d | OtherBranch () const |
Computes the "other" branch of this hyperbola. This is a symmetrical branch with respect to the center of this hyperbola. Note: The diagram given under the class purpose indicates where the "other" branch is positioned in relation to this branch of the hyperbola. ^ YAxis | FirstConjugateBranch | Other | Main ---------------------------- C ------------------------------------------>XAxis Branch | Branch | | SecondConjugateBranch | Warning The major radius can be less than the minor radius. | |
Standard_Real | Parameter () const |
Computes the parameter of this hyperbola. The parameter is: p = (e*e - 1) * MajorRadius where e is the eccentricity of this hyperbola and MajorRadius its major radius. Exceptions Standard_DomainError if the major radius of this hyperbola is null. | |
void | D0 (const Standard_Real U, gp_Pnt2d &P) const |
Returns in P the point of parameter U. P = C + MajorRadius * Cosh (U) * XDir + MinorRadius * Sinh (U) * YDir where C is the center of the hyperbola , XDir the XDirection and YDir the YDirection of the hyperbola's local coordinate system. | |
void | D1 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V1) const |
Returns the point P of parameter U and the first derivative V1. | |
void | D2 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V1, gp_Vec2d &V2) const |
Returns the point P of parameter U, the first and second derivatives V1 and V2. | |
void | D3 (const Standard_Real U, gp_Pnt2d &P, gp_Vec2d &V1, gp_Vec2d &V2, gp_Vec2d &V3) const |
Returns the point P of parameter U, the first second and third derivatives V1 V2 and V3. | |
gp_Vec2d | DN (const Standard_Real U, const Standard_Integer N) const |
For the point of parameter U of this hyperbola, computes the vector corresponding to the Nth derivative. Exceptions Standard_RangeError if N is less than 1. | |
void | Transform (const gp_Trsf2d &T) |
Applies the transformation T to this hyperbola. | |
Handle_Geom2d_Geometry | Copy () const |
Creates a new object which is a copy of this hyperbola. |
Geom2d_Hyperbola::Geom2d_Hyperbola | ( | const gp_Ax2d & | MajorAxis, |
const Standard_Real | MajorRadius, | ||
const Standard_Real | MinorRadius, | ||
const Standard_Boolean | Sense = Standard_True |
||
) |
Geom2d_Hyperbola::Geom2d_Hyperbola | ( | const gp_Ax22d & | Axis, |
const Standard_Real | MajorRadius, | ||
const Standard_Real | MinorRadius | ||
) |
gp_Ax2d Geom2d_Hyperbola::Asymptote1 | ( | ) | const |
gp_Ax2d Geom2d_Hyperbola::Asymptote2 | ( | ) | const |
gp_Hypr2d Geom2d_Hyperbola::ConjugateBranch1 | ( | ) | const |
gp_Hypr2d Geom2d_Hyperbola::ConjugateBranch2 | ( | ) | const |
Handle_Geom2d_Geometry Geom2d_Hyperbola::Copy | ( | ) | const [virtual] |
Implements Geom2d_Geometry.
void Geom2d_Hyperbola::D0 | ( | const Standard_Real | U, |
gp_Pnt2d & | P | ||
) | const [virtual] |
Implements Geom2d_Curve.
void Geom2d_Hyperbola::D1 | ( | const Standard_Real | U, |
gp_Pnt2d & | P, | ||
gp_Vec2d & | V1 | ||
) | const [virtual] |
Implements Geom2d_Curve.
void Geom2d_Hyperbola::D2 | ( | const Standard_Real | U, |
gp_Pnt2d & | P, | ||
gp_Vec2d & | V1, | ||
gp_Vec2d & | V2 | ||
) | const [virtual] |
Implements Geom2d_Curve.
void Geom2d_Hyperbola::D3 | ( | const Standard_Real | U, |
gp_Pnt2d & | P, | ||
gp_Vec2d & | V1, | ||
gp_Vec2d & | V2, | ||
gp_Vec2d & | V3 | ||
) | const [virtual] |
Implements Geom2d_Curve.
gp_Ax2d Geom2d_Hyperbola::Directrix1 | ( | ) | const |
gp_Ax2d Geom2d_Hyperbola::Directrix2 | ( | ) | const |
gp_Vec2d Geom2d_Hyperbola::DN | ( | const Standard_Real | U, |
const Standard_Integer | N | ||
) | const [virtual] |
Implements Geom2d_Curve.
Standard_Real Geom2d_Hyperbola::Eccentricity | ( | ) | const [virtual] |
Implements Geom2d_Conic.
Standard_Real Geom2d_Hyperbola::FirstParameter | ( | ) | const [virtual] |
Implements Geom2d_Curve.
Standard_Real Geom2d_Hyperbola::Focal | ( | ) | const |
gp_Pnt2d Geom2d_Hyperbola::Focus1 | ( | ) | const |
gp_Pnt2d Geom2d_Hyperbola::Focus2 | ( | ) | const |
gp_Hypr2d Geom2d_Hyperbola::Hypr2d | ( | ) | const |
Standard_Boolean Geom2d_Hyperbola::IsClosed | ( | ) | const [virtual] |
Implements Geom2d_Curve.
Standard_Boolean Geom2d_Hyperbola::IsPeriodic | ( | ) | const [virtual] |
Implements Geom2d_Curve.
Standard_Real Geom2d_Hyperbola::LastParameter | ( | ) | const [virtual] |
Implements Geom2d_Curve.
Standard_Real Geom2d_Hyperbola::MajorRadius | ( | ) | const |
Standard_Real Geom2d_Hyperbola::MinorRadius | ( | ) | const |
gp_Hypr2d Geom2d_Hyperbola::OtherBranch | ( | ) | const |
Standard_Real Geom2d_Hyperbola::Parameter | ( | ) | const |
Standard_Real Geom2d_Hyperbola::ReversedParameter | ( | const Standard_Real | U | ) | const [virtual] |
Implements Geom2d_Conic.
void Geom2d_Hyperbola::SetMajorRadius | ( | const Standard_Real | MajorRadius | ) |
void Geom2d_Hyperbola::SetMinorRadius | ( | const Standard_Real | MinorRadius | ) |
void Geom2d_Hyperbola::Transform | ( | const gp_Trsf2d & | T | ) | [virtual] |
Implements Geom2d_Geometry.