Open CASCADE Technology 7.8.2.dev
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:

Public Member Functions

 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 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 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
 
- 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 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.

Constructor & Destructor Documentation

◆ gce_MakeCone() [1/7]

gce_MakeCone::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() [2/7]

gce_MakeCone::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() [3/7]

gce_MakeCone::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() [4/7]

gce_MakeCone::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() [5/7]

gce_MakeCone::gce_MakeCone ( const gp_Ax1 & Axis,
const gp_Pnt & P1,
const gp_Pnt & P2 )

Makes a Cone by its axis <Axis> 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() [6/7]

gce_MakeCone::gce_MakeCone ( const gp_Lin & Axis,
const gp_Pnt & P1,
const gp_Pnt & P2 )

Makes a Cone by its axis <Axis> 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() [7/7]

gce_MakeCone::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.

Member Function Documentation

◆ Operator()

const gp_Cone & gce_MakeCone::Operator ( ) const

◆ operator gp_Cone()

gce_MakeCone::operator gp_Cone ( ) const

◆ Value()

const gp_Cone & gce_MakeCone::Value ( ) const

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


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