3.4.0
tigl::CTiglProjectPointOnCurveAtAngle Class Reference

#include <CTiglProjectPointOnCurveAtAngle.h>

Public Member Functions

TIGL_EXPORT CTiglProjectPointOnCurveAtAngle (const gp_Pnt &p, const Handle(Geom_Curve)&curve, double angle, const gp_Dir &planeRefNormal)
 
TIGL_EXPORT bool IsDone () const
 Returns true, if the computation is successful. Note: It might be, that there is no solution possible. In this case, IsDone() returns false. More...
 
TIGL_EXPORT int NbPoints () const
 
TIGL_EXPORT double Parameter (int i) const
 Returns the parameter on the curve. More...
 
TIGL_EXPORT gp_Pnt Point (int i) const
 Returns the point on the curve. Throws, if no solution exists. More...
 

Private Member Functions

void AddSolution (double value, double tol) const
 
void Compute () const
 
void FindPoint (double ustart) const
 
const Handle (Geom_Curve) m_curve
 

Private Attributes

const double m_angle
 
bool m_hasComputed = true
 
const gp_Pnt m_pointToProject
 
const gp_Dir m_refNormal
 
std::vector< double > resultParameter
 

Constructor & Destructor Documentation

◆ CTiglProjectPointOnCurveAtAngle()

TIGL_EXPORT tigl::CTiglProjectPointOnCurveAtAngle::CTiglProjectPointOnCurveAtAngle ( const gp_Pnt &  p,
const Handle(Geom_Curve)&  curve,
double  angle,
const gp_Dir &  planeRefNormal 
)

Projects a point a curve such that the vector from the point p to the point on the curve has a certain angle to the curve's direction.

Parameters
PPoint to project on the curve
curveCurve on which p is projected on
angleAngle, at which the curve is projected on. Angle in range [0,pi]. 0 means in curve direction, pi against curve direction. Pi/2 perpendicular to the curve corresponds to standard projection.
planeRefNormalNormal of the reference plane, in which the angle is measured.

Member Function Documentation

◆ AddSolution()

void tigl::CTiglProjectPointOnCurveAtAngle::AddSolution ( double  value,
double  tol 
) const
private

◆ Compute()

void tigl::CTiglProjectPointOnCurveAtAngle::Compute ( ) const
private

◆ FindPoint()

void tigl::CTiglProjectPointOnCurveAtAngle::FindPoint ( double  ustart) const
private

◆ Handle()

const tigl::CTiglProjectPointOnCurveAtAngle::Handle ( Geom_Curve  )
private

◆ IsDone()

TIGL_EXPORT bool tigl::CTiglProjectPointOnCurveAtAngle::IsDone ( ) const

Returns true, if the computation is successful. Note: It might be, that there is no solution possible. In this case, IsDone() returns false.

◆ NbPoints()

TIGL_EXPORT int tigl::CTiglProjectPointOnCurveAtAngle::NbPoints ( ) const

◆ Parameter()

TIGL_EXPORT double tigl::CTiglProjectPointOnCurveAtAngle::Parameter ( int  i) const

Returns the parameter on the curve.

◆ Point()

TIGL_EXPORT gp_Pnt tigl::CTiglProjectPointOnCurveAtAngle::Point ( int  i) const

Returns the point on the curve. Throws, if no solution exists.

Field Documentation

◆ m_angle

const double tigl::CTiglProjectPointOnCurveAtAngle::m_angle
private

◆ m_hasComputed

bool tigl::CTiglProjectPointOnCurveAtAngle::m_hasComputed = true
mutableprivate

◆ m_pointToProject

const gp_Pnt tigl::CTiglProjectPointOnCurveAtAngle::m_pointToProject
private

◆ m_refNormal

const gp_Dir tigl::CTiglProjectPointOnCurveAtAngle::m_refNormal
private

◆ resultParameter

std::vector<double> tigl::CTiglProjectPointOnCurveAtAngle::resultParameter
mutableprivate

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