Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
gce_MakeCone Class Reference

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

#include <gce_MakeCone.hxx>

Inheritance diagram for gce_MakeCone:
Inheritance graph
[legend]

Public Member Functions

DEFINE_STANDARD_ALLOC gce_MakeCone (const gp_Ax2 &A2, const Standard_Real Ang, const Standard_Real Radius)
 Creates an infinite conical surface. A2 locates the cone
in the space and defines the reference plane of the surface.
Ang is the conical surface semi-angle between 0 and PI/2 radians.
Radius is the radius of the circle in the reference plane of
the cone.
If Radius is lower than 0.0 the status is "
If Ang < Resolution from gp or Ang >= (PI/2) - Resolution.

 gce_MakeCone (const gp_Cone &Cone, const gp_Pnt &Point)
 Makes a Cone from gp <TheCone> coaxial to another
Cone <Cone> and passing through a Pnt <Point>.

 gce_MakeCone (const gp_Cone &Cone, const Standard_Real Dist)
 Makes a Cone from gp <TheCone> coaxial to another
Cone <Cone> at the distance <Dist> which can
be greater or lower than zero.

 gce_MakeCone (const gp_Pnt &P1, const gp_Pnt &P2, const gp_Pnt &P3, const gp_Pnt &P4)
 Makes a Cone from gp <TheCone> by four points <P1>,
<P2>,<P3> and <P4>.
Its axis is <P1P2> and the radius of its base is
the distance between <P3> and <P1P2>.
The distance between <P4> and <P1P2> is the radius of
the section passing through <P4>.
If <P1> and <P2> are confused or <P3> and <P4> are
confused we have the status "ConfusedPoints"
if <P1>,<P2>,<P3>,<P4> are colinear we have the
status "ColinearPoints"
If <P3P4> is perpendicular to <P1P2> we have the
status "NullAngle".
<P3P4> is colinear to <P1P2> we have the status
"NullAngle".

 gce_MakeCone (const gp_Ax1 &Axis, const gp_Pnt &P1, const gp_Pnt &P2)
 Makes a Cone by its axis <Axis> and and two points.
The distance between <P1> and the axis is the radius
of the section passing through <P1>.
The distance between <P2> and the axis is the radius
of the section passing through <P2>.
If <P1P2> is colinear to <Axis> we have the status
"NullAngle"
If <P3P4> is perpendicular to <Axis> we have the status
"NullAngle"
If <P1> and <P2> are confused we have the status
"ConfusedPoints"

 gce_MakeCone (const gp_Lin &Axis, const gp_Pnt &P1, const gp_Pnt &P2)
 Makes a Cone by its axis <Axis> and and two points.
The distance between <P1> and the axis is the radius
of the section passing through <P1>
The distance between <P2> and the axis is the radius
of the section passing through <P2>
If <P1P2> is colinear to <Axis> we have the status
"NullAngle"
If <P3P4> is perpendicular to <Axis> we have the status
"NullAngle"
If <P1> and <P2> are confused we have the status
"ConfusedPoints"

 gce_MakeCone (const gp_Pnt &P1, const gp_Pnt &P2, const Standard_Real R1, const Standard_Real R2)
 Makes a Cone with two points and two radius.
The axis of the solution is the line passing through
<P1> and <P2>.
<R1> is the radius of the section passing through <P1>
and <R2> the radius of the section passing through <P2>.
If <P1> and <P2> are confused we have the status "NullAxis".
Warning
If an error occurs (that is, when IsDone returns
false), the Status function returns:

const gp_ConeValue () const
 Returns the constructed cone.
Exceptions StdFail_NotDone if no cone is constructed.

const gp_ConeOperator () const
 operator gp_Cone () const

Detailed Description


Constructor & Destructor Documentation

gce_MakeCone::gce_MakeCone ( const gp_Pnt P1,
const gp_Pnt P2,
const gp_Pnt P3,
const gp_Pnt P4 
)
  • gce_NegativeRadius if Radius, R1 or R2 is less than 0.0;
  • gce_BadAngle if Ang is less than
    gp::Resolution() or greater than Pi/2.- gp::Resolution();
  • gce_ConfusedPoints if P1 and P2 or P3 and P4 are coincident;
  • gce_NullAxis if the points P1 and P2, are coincident (5th syntax only);
  • gce_NullAngle if:
    • the vector joining P1 to P2 is parallel to either
      Axis or the line joining P3 to P4, or
    • R1 and R2 are equal, (that is, their difference is
      less than gp::Resolution()); or
  • gce_NullRadius if:
  • the vector joining P1 to P2 is perpendicular to the line joining P3 to P4,
    • the vector joining P1 to P2 is perpendicular to Axis, or
    • P1, P2, P3, and P4 are collinear.

Member Function Documentation

gce_MakeCone::operator gp_Cone ( ) const

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