Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions
gp_Cone Class Reference

Defines an infinite conical surface. A cone is defined by its half-angle (can be negative) at the apex and positioned in space with a coordinate system (a gp_Ax3 object) and a "reference radius" where: More...

#include <gp_Cone.hxx>

Public Member Functions

constexpr gp_Cone () noexcept
 Creates an indefinite Cone.
 
constexpr gp_Cone (const gp_Ax3 &theA3, const double theAng, const double theRadius)
 Creates an infinite conical surface. theA3 locates the cone in the space and defines the reference plane of the surface. Ang is the conical surface semi-angle. Its absolute value is in range ]0, PI/2[. theRadius is the radius of the circle in the reference plane of the cone. theRaises ConstructionError.
 
void SetAxis (const gp_Ax1 &theA1)
 Changes the symmetry axis of the cone. Raises ConstructionError the direction of theA1 is parallel to the "XDirection" of the coordinate system of the cone.
 
constexpr void SetLocation (const gp_Pnt &theLoc) noexcept
 Changes the location of the cone.
 
constexpr void SetPosition (const gp_Ax3 &theA3) noexcept
 Changes the local coordinate system of the cone. This coordinate system defines the reference plane of the cone.
 
void SetRadius (const double theR)
 Changes the radius of the cone in the reference plane of the cone. Raised if theR < 0.0.
 
void SetSemiAngle (const double theAng)
 Changes the semi-angle of the cone. Semi-angle can be negative. Its absolute value std::abs(theAng) is in range ]0,PI/2[. Raises ConstructionError if std::abs(theAng) < Resolution from gp or std::abs(theAng) >= PI/2.
 
gp_Pnt Apex () const
 Computes the cone's top. The Apex of the cone is on the negative side of the symmetry axis of the cone.
 
constexpr void UReverse () noexcept
 Reverses the U parametrization of the cone reversing the YAxis.
 
constexpr void VReverse () noexcept
 Reverses the V parametrization of the cone reversing the ZAxis.
 
bool Direct () const
 Returns true if the local coordinate system of this cone is right-handed.
 
constexpr const gp_Ax1Axis () const noexcept
 returns the symmetry axis of the cone.
 
void Coefficients (double &theA1, double &theA2, double &theA3, double &theB1, double &theB2, double &theB3, double &theC1, double &theC2, double &theC3, double &theD) const
 Computes the coefficients of the implicit equation of the quadric in the absolute cartesian coordinates system : theA1.X**2 + theA2.Y**2 + theA3.Z**2 + 2.(theB1.X.Y + theB2.X.Z + theB3.Y.Z) + 2.(theC1.X + theC2.Y + theC3.Z) + theD = 0.0.
 
constexpr const gp_PntLocation () const noexcept
 returns the "Location" point of the cone.
 
constexpr const gp_Ax3Position () const noexcept
 Returns the local coordinates system of the cone.
 
constexpr double RefRadius () const noexcept
 Returns the radius of the cone in the reference plane.
 
constexpr double SemiAngle () const noexcept
 Returns the half-angle at the apex of this cone. Attention! Semi-angle can be negative.
 
constexpr gp_Ax1 XAxis () const noexcept
 Returns the XAxis of the reference plane.
 
constexpr gp_Ax1 YAxis () const noexcept
 Returns the YAxis of the reference plane.
 
void Mirror (const gp_Pnt &theP) noexcept
 
gp_Cone Mirrored (const gp_Pnt &theP) const noexcept
 Performs the symmetrical transformation of a cone with respect to the point theP which is the center of the symmetry.
 
void Mirror (const gp_Ax1 &theA1) noexcept
 
gp_Cone Mirrored (const gp_Ax1 &theA1) const noexcept
 Performs the symmetrical transformation of a cone with respect to an axis placement which is the axis of the symmetry.
 
void Mirror (const gp_Ax2 &theA2) noexcept
 
gp_Cone Mirrored (const gp_Ax2 &theA2) const noexcept
 Performs the symmetrical transformation of a cone with respect to a plane. The axis placement theA2 locates the plane of the of the symmetry : (Location, XDirection, YDirection).
 
void Rotate (const gp_Ax1 &theA1, const double theAng)
 
gp_Cone Rotated (const gp_Ax1 &theA1, const double theAng) const
 Rotates a cone. theA1 is the axis of the rotation. Ang is the angular value of the rotation in radians.
 
void Scale (const gp_Pnt &theP, const double theS)
 
gp_Cone Scaled (const gp_Pnt &theP, const double theS) const
 Scales a cone. theS is the scaling value. The absolute value of theS is used to scale the cone.
 
void Transform (const gp_Trsf &theT)
 
gp_Cone Transformed (const gp_Trsf &theT) const
 Transforms a cone with the transformation theT from class Trsf.
 
constexpr void Translate (const gp_Vec &theV) noexcept
 
constexpr gp_Cone Translated (const gp_Vec &theV) const noexcept
 Translates a cone in the direction of the vector theV. The magnitude of the translation is the vector's magnitude.
 
constexpr void Translate (const gp_Pnt &theP1, const gp_Pnt &theP2) noexcept
 
constexpr gp_Cone Translated (const gp_Pnt &theP1, const gp_Pnt &theP2) const noexcept
 Translates a cone from the point P1 to the point P2.
 

Detailed Description

Defines an infinite conical surface. A cone is defined by its half-angle (can be negative) at the apex and positioned in space with a coordinate system (a gp_Ax3 object) and a "reference radius" where:

Constructor & Destructor Documentation

◆ gp_Cone() [1/2]

constexpr gp_Cone::gp_Cone ( )
inlineconstexprnoexcept

Creates an indefinite Cone.

◆ gp_Cone() [2/2]

constexpr gp_Cone::gp_Cone ( const gp_Ax3 & theA3,
const double theAng,
const double theRadius )
inlineconstexpr

Creates an infinite conical surface. theA3 locates the cone in the space and defines the reference plane of the surface. Ang is the conical surface semi-angle. Its absolute value is in range ]0, PI/2[. theRadius is the radius of the circle in the reference plane of the cone. theRaises ConstructionError.

  • if theRadius is lower than 0.0
  • std::abs(theAng) < Resolution from gp or std::abs(theAng) >= (PI/2) - Resolution.

Member Function Documentation

◆ Apex()

gp_Pnt gp_Cone::Apex ( ) const
inline

Computes the cone's top. The Apex of the cone is on the negative side of the symmetry axis of the cone.

◆ Axis()

constexpr const gp_Ax1 & gp_Cone::Axis ( ) const
inlineconstexprnoexcept

returns the symmetry axis of the cone.

◆ Coefficients()

void gp_Cone::Coefficients ( double & theA1,
double & theA2,
double & theA3,
double & theB1,
double & theB2,
double & theB3,
double & theC1,
double & theC2,
double & theC3,
double & theD ) const

Computes the coefficients of the implicit equation of the quadric in the absolute cartesian coordinates system : theA1.X**2 + theA2.Y**2 + theA3.Z**2 + 2.(theB1.X.Y + theB2.X.Z + theB3.Y.Z) + 2.(theC1.X + theC2.Y + theC3.Z) + theD = 0.0.

◆ Direct()

bool gp_Cone::Direct ( ) const
inline

Returns true if the local coordinate system of this cone is right-handed.

◆ Location()

constexpr const gp_Pnt & gp_Cone::Location ( ) const
inlineconstexprnoexcept

returns the "Location" point of the cone.

◆ Mirror() [1/3]

void gp_Cone::Mirror ( const gp_Ax1 & theA1)
noexcept

◆ Mirror() [2/3]

void gp_Cone::Mirror ( const gp_Ax2 & theA2)
noexcept

◆ Mirror() [3/3]

void gp_Cone::Mirror ( const gp_Pnt & theP)
noexcept

◆ Mirrored() [1/3]

gp_Cone gp_Cone::Mirrored ( const gp_Ax1 & theA1) const
noexcept

Performs the symmetrical transformation of a cone with respect to an axis placement which is the axis of the symmetry.

◆ Mirrored() [2/3]

gp_Cone gp_Cone::Mirrored ( const gp_Ax2 & theA2) const
noexcept

Performs the symmetrical transformation of a cone with respect to a plane. The axis placement theA2 locates the plane of the of the symmetry : (Location, XDirection, YDirection).

◆ Mirrored() [3/3]

gp_Cone gp_Cone::Mirrored ( const gp_Pnt & theP) const
noexcept

Performs the symmetrical transformation of a cone with respect to the point theP which is the center of the symmetry.

◆ Position()

constexpr const gp_Ax3 & gp_Cone::Position ( ) const
inlineconstexprnoexcept

Returns the local coordinates system of the cone.

◆ RefRadius()

constexpr double gp_Cone::RefRadius ( ) const
inlineconstexprnoexcept

Returns the radius of the cone in the reference plane.

◆ Rotate()

void gp_Cone::Rotate ( const gp_Ax1 & theA1,
const double theAng )
inline

◆ Rotated()

gp_Cone gp_Cone::Rotated ( const gp_Ax1 & theA1,
const double theAng ) const
inline

Rotates a cone. theA1 is the axis of the rotation. Ang is the angular value of the rotation in radians.

◆ Scale()

void gp_Cone::Scale ( const gp_Pnt & theP,
const double theS )
inline

◆ Scaled()

gp_Cone gp_Cone::Scaled ( const gp_Pnt & theP,
const double theS ) const
inline

Scales a cone. theS is the scaling value. The absolute value of theS is used to scale the cone.

◆ SemiAngle()

constexpr double gp_Cone::SemiAngle ( ) const
inlineconstexprnoexcept

Returns the half-angle at the apex of this cone. Attention! Semi-angle can be negative.

◆ SetAxis()

void gp_Cone::SetAxis ( const gp_Ax1 & theA1)
inline

Changes the symmetry axis of the cone. Raises ConstructionError the direction of theA1 is parallel to the "XDirection" of the coordinate system of the cone.

◆ SetLocation()

constexpr void gp_Cone::SetLocation ( const gp_Pnt & theLoc)
inlineconstexprnoexcept

Changes the location of the cone.

◆ SetPosition()

constexpr void gp_Cone::SetPosition ( const gp_Ax3 & theA3)
inlineconstexprnoexcept

Changes the local coordinate system of the cone. This coordinate system defines the reference plane of the cone.

◆ SetRadius()

void gp_Cone::SetRadius ( const double theR)
inline

Changes the radius of the cone in the reference plane of the cone. Raised if theR < 0.0.

◆ SetSemiAngle()

void gp_Cone::SetSemiAngle ( const double theAng)
inline

Changes the semi-angle of the cone. Semi-angle can be negative. Its absolute value std::abs(theAng) is in range ]0,PI/2[. Raises ConstructionError if std::abs(theAng) < Resolution from gp or std::abs(theAng) >= PI/2.

  • Resolution

◆ Transform()

void gp_Cone::Transform ( const gp_Trsf & theT)
inline

◆ Transformed()

gp_Cone gp_Cone::Transformed ( const gp_Trsf & theT) const
inline

Transforms a cone with the transformation theT from class Trsf.

◆ Translate() [1/2]

constexpr void gp_Cone::Translate ( const gp_Pnt & theP1,
const gp_Pnt & theP2 )
inlineconstexprnoexcept

◆ Translate() [2/2]

constexpr void gp_Cone::Translate ( const gp_Vec & theV)
inlineconstexprnoexcept

◆ Translated() [1/2]

constexpr gp_Cone gp_Cone::Translated ( const gp_Pnt & theP1,
const gp_Pnt & theP2 ) const
inlineconstexprnoexcept

Translates a cone from the point P1 to the point P2.

◆ Translated() [2/2]

constexpr gp_Cone gp_Cone::Translated ( const gp_Vec & theV) const
inlineconstexprnoexcept

Translates a cone in the direction of the vector theV. The magnitude of the translation is the vector's magnitude.

◆ UReverse()

constexpr void gp_Cone::UReverse ( )
inlineconstexprnoexcept

Reverses the U parametrization of the cone reversing the YAxis.

◆ VReverse()

constexpr void gp_Cone::VReverse ( )
inlineconstexprnoexcept

Reverses the V parametrization of the cone reversing the ZAxis.

◆ XAxis()

constexpr gp_Ax1 gp_Cone::XAxis ( ) const
inlineconstexprnoexcept

Returns the XAxis of the reference plane.

◆ YAxis()

constexpr gp_Ax1 gp_Cone::YAxis ( ) const
inlineconstexprnoexcept

Returns the YAxis of the reference plane.


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