Open CASCADE Technology 6.6.0
Public Member Functions
gce_MakeHypr Class Reference

This class implements the following algorithms used to
create Hyperbola from gp.
* Create an Hyperbola from its center, and two points:
one on its axis of symmetry giving the major radius, the
other giving the value of the small radius.
The three points give the plane of the hyperbola.
* Create an hyperbola from its axisplacement and its
MajorRadius and its MinorRadius.


^YAxis
|
FirstConjugateBranch
|
Other | Main
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

Detailed Description

--------------------- 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::gce_MakeHypr ( const gp_Ax2 A2,
const Standard_Real  MajorRadius,
const Standard_Real  MinorRadius 
)
gce_MakeHypr::gce_MakeHypr ( const gp_Pnt S1,
const gp_Pnt S2,
const gp_Pnt Center 
)
  • 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

const gp_Hypr& gce_MakeHypr::Operator ( ) const
gce_MakeHypr::operator gp_Hypr ( ) const
const gp_Hypr& gce_MakeHypr::Value ( ) const

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines