Open CASCADE Technology 7.8.0
Public Member Functions
gce_MakeHypr Class Reference

This class implements the following algorithms used to create Hyperbola from gp. More...

#include <gce_MakeHypr.hxx>

Inheritance diagram for gce_MakeHypr:
Inheritance graph
[legend]

Public Member Functions

 gce_MakeHypr (const gp_Ax2 &A2, const Standard_Real MajorRadius, const Standard_Real MinorRadius)
 A2 is the local coordinate system of the hyperbola. In the local coordinates system A2 the equation of the hyperbola is : X*X / MajorRadius*MajorRadius - Y*Y / MinorRadius*MinorRadius = 1.0 It is not forbidden to create an Hyperbola with MajorRadius = MinorRadius. For the hyperbola the MajorRadius can be lower than the MinorRadius. The status is "NegativeRadius" if MajorRadius < 0.0 and "InvertRadius" if MinorRadius > MajorRadius.
 
 gce_MakeHypr (const gp_Pnt &S1, const gp_Pnt &S2, const gp_Pnt &Center)
 Constructs a hyperbola.
 
const gp_HyprValue () const
 Returns the constructed hyperbola. Exceptions StdFail_NotDone if no hyperbola is constructed.
 
const gp_HyprOperator () const
 
 operator gp_Hypr () const
 
- Public Member Functions inherited from gce_Root
Standard_Boolean IsDone () const
 Returns true if the construction is successful.
 
gce_ErrorType Status () const
 Returns the status of the construction:
 

Additional Inherited Members

- Protected Attributes inherited from gce_Root
gce_ErrorType TheError
 

Detailed Description

This class implements the following algorithms used to create Hyperbola from gp.

^YAxis | FirstConjugateBranch | Other | Main ------------------— C ---------------------------—>XAxis Branch | Branch | | SecondConjugateBranch |

The local cartesian coordinate system of the ellipse is an axis placement (two axis).

The "XDirection" and the "YDirection" of the axis placement define the plane of the hyperbola.

The "Direction" of the axis placement defines the normal axis to the hyperbola's plane.

The "XAxis" of the hyperbola ("Location", "XDirection") is the major axis and the "YAxis" of the hyperbola ("Location", "YDirection") is the minor axis.

Warnings : The major radius (on the major axis) can be lower than the minor radius (on the minor axis).

Constructor & Destructor Documentation

◆ gce_MakeHypr() [1/2]

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

A2 is the local coordinate system of the hyperbola. In the local coordinates system A2 the equation of the hyperbola is : X*X / MajorRadius*MajorRadius - Y*Y / MinorRadius*MinorRadius = 1.0 It is not forbidden to create an Hyperbola with MajorRadius = MinorRadius. For the hyperbola the MajorRadius can be lower than the MinorRadius. The status is "NegativeRadius" if MajorRadius < 0.0 and "InvertRadius" if MinorRadius > MajorRadius.

◆ gce_MakeHypr() [2/2]

gce_MakeHypr::gce_MakeHypr ( const gp_Pnt S1,
const gp_Pnt S2,
const gp_Pnt Center 
)

Constructs a hyperbola.

  • centered on the point Center, where:
  • the plane of the hyperbola is defined by Center, S1 and S2,
  • its major axis is defined by Center and S1,
  • its major radius is the distance between Center and S1, and
  • its minor radius is the distance between S2 and the major axis. Warning If an error occurs (that is, when IsDone returns false), the Status function returns:
  • gce_NegativeRadius if MajorRadius is less than 0.0;
  • gce_InvertRadius if:
  • the major radius (computed with Center, S1) is less than the minor radius (computed with Center, S1 and S2), or
  • MajorRadius is less than MinorRadius; or
  • gce_ColinearPoints if S1, S2 and Center are collinear.

Member Function Documentation

◆ Operator()

const gp_Hypr & gce_MakeHypr::Operator ( ) const

◆ operator gp_Hypr()

gce_MakeHypr::operator gp_Hypr ( ) const

◆ Value()

const gp_Hypr & gce_MakeHypr::Value ( ) const

Returns the constructed hyperbola. Exceptions StdFail_NotDone if no hyperbola is constructed.


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