OCC Main Page | ModelingData | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingData
TKGeomBase
gce


gce_MakeCone Class Reference

This class implements the following algorithms used
to create a Cone from gp.
* Create a Cone coaxial to another and passing
through a point.
* Create a Cone coaxial to another at a distance
<dist>.
* Create a Cone by 4 points.
* Create a Cone by its axis and 2 points.
* Create a Cone by 2 points and 2 radius.
* Create a Cone by an Ax2 an angle and the radius of
its reference section.
.

#include <gce_MakeCone.hxx>

Inheritance diagram for gce_MakeCone:

Inheritance graph
[legend]

Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT 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.
.
Standard_EXPORT 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>.
.
Standard_EXPORT 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.
.
Standard_EXPORT 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".
.
Standard_EXPORT 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"
.
Standard_EXPORT 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"
.
Standard_EXPORT 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:
- 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.
.
Standard_EXPORT const gp_Cone & Value () const
 Returns the constructed cone.
Exceptions StdFail_NotDone if no cone is constructed.
.
Standard_EXPORT const gp_Cone & Operator () const
Standard_EXPORT operator gp_Cone () const

Private Attributes

gp_Cone TheCone

Constructor & Destructor Documentation

Standard_EXPORT gce_MakeCone::gce_MakeCone const gp_Ax2 &  A2,
const Standard_Real  Ang,
const Standard_Real  Radius
 

Standard_EXPORT gce_MakeCone::gce_MakeCone const gp_Cone &  Cone,
const gp_Pnt &  Point
 

Standard_EXPORT gce_MakeCone::gce_MakeCone const gp_Cone &  Cone,
const Standard_Real  Dist
 

Standard_EXPORT gce_MakeCone::gce_MakeCone const gp_Pnt &  P1,
const gp_Pnt &  P2,
const gp_Pnt &  P3,
const gp_Pnt &  P4
 

Standard_EXPORT gce_MakeCone::gce_MakeCone const gp_Ax1 &  Axis,
const gp_Pnt &  P1,
const gp_Pnt &  P2
 

Standard_EXPORT gce_MakeCone::gce_MakeCone const gp_Lin &  Axis,
const gp_Pnt &  P1,
const gp_Pnt &  P2
 

Standard_EXPORT gce_MakeCone::gce_MakeCone const gp_Pnt &  P1,
const gp_Pnt &  P2,
const Standard_Real  R1,
const Standard_Real  R2
 


Member Function Documentation

Standard_EXPORT const gp_Cone& gce_MakeCone::Operator  )  const
 

void gce_MakeCone::operator delete void *  anAddress  )  [inline]
 

Reimplemented from gce_Root.

Standard_EXPORT gce_MakeCone::operator gp_Cone  )  const
 

void* gce_MakeCone::operator new size_t  size  )  [inline]
 

Reimplemented from gce_Root.

void* gce_MakeCone::operator new size_t  ,
void *  anAddress
[inline]
 

Reimplemented from gce_Root.

Standard_EXPORT const gp_Cone& gce_MakeCone::Value  )  const
 


Field Documentation

gp_Cone gce_MakeCone::TheCone [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:22:43 2008 for OpenCASCADE by  doxygen 1.4.1