Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions
GCPnts_TangentialDeflection Class Reference

Computes a set of points on a curve from package Adaptor3d such as between two successive points P1(u1)and P2(u2) : More...

#include <GCPnts_TangentialDeflection.hxx>

Public Member Functions

 GCPnts_TangentialDeflection ()
 Empty constructor.
 
 GCPnts_TangentialDeflection (const Adaptor3d_Curve &theC, const double theAngularDeflection, const double theCurvatureDeflection, const int theMinimumOfPoints=2, const double theUTol=1.0e-9, const double theMinLen=1.0e-7)
 Constructor for 3D curve.
 
 GCPnts_TangentialDeflection (const Adaptor3d_Curve &theC, const double theFirstParameter, const double theLastParameter, const double theAngularDeflection, const double theCurvatureDeflection, const int theMinimumOfPoints=2, const double theUTol=1.0e-9, const double theMinLen=1.0e-7)
 Constructor for 3D curve with restricted range.
 
 GCPnts_TangentialDeflection (const Adaptor2d_Curve2d &theC, const double theAngularDeflection, const double theCurvatureDeflection, const int theMinimumOfPoints=2, const double theUTol=1.0e-9, const double theMinLen=1.0e-7)
 Constructor for 2D curve.
 
 GCPnts_TangentialDeflection (const Adaptor2d_Curve2d &theC, const double theFirstParameter, const double theLastParameter, const double theAngularDeflection, const double theCurvatureDeflection, const int theMinimumOfPoints=2, const double theUTol=1.0e-9, const double theMinLen=1.0e-7)
 Constructor for 2D curve with restricted range.
 
void Initialize (const Adaptor3d_Curve &theC, const double theAngularDeflection, const double theCurvatureDeflection, const int theMinimumOfPoints=2, const double theUTol=1.0e-9, const double theMinLen=1.0e-7)
 Initialize algorithm for 3D curve.
 
void Initialize (const Adaptor3d_Curve &theC, const double theFirstParameter, const double theLastParameter, const double theAngularDeflection, const double theCurvatureDeflection, const int theMinimumOfPoints=2, const double theUTol=1.0e-9, const double theMinLen=1.0e-7)
 Initialize algorithm for 3D curve with restricted range.
 
void Initialize (const Adaptor2d_Curve2d &theC, const double theAngularDeflection, const double theCurvatureDeflection, const int theMinimumOfPoints=2, const double theUTol=1.0e-9, const double theMinLen=1.0e-7)
 Initialize algorithm for 2D curve.
 
void Initialize (const Adaptor2d_Curve2d &theC, const double theFirstParameter, const double theLastParameter, const double theAngularDeflection, const double theCurvatureDeflection, const int theMinimumOfPoints=2, const double theUTol=1.0e-9, const double theMinLen=1.0e-7)
 Initialize algorithm for 2D curve with restricted range.
 
int AddPoint (const gp_Pnt &thePnt, const double theParam, const bool theIsReplace=true)
 Add point to already calculated points (or replace existing) Returns index of new added point or founded with parametric tolerance (replaced if theIsReplace is true)
 
int NbPoints () const
 
double Parameter (const int I) const
 
gp_Pnt Value (const int I) const
 

Static Public Member Functions

static double ArcAngularStep (const double theRadius, const double theLinearDeflection, const double theAngularDeflection, const double theMinLength)
 Computes angular step for the arc using the given parameters.
 

Detailed Description

Computes a set of points on a curve from package Adaptor3d such as between two successive points P1(u1)and P2(u2) :

STL input iterator that wraps an OCCT More()/Next() iterator.
Definition NCollection_ForwardRange.hxx:142

where P3 is the point of abscissa ((u1+u2)/2), with u1 the abscissa of the point P1 and u2 the abscissa of the point P2.

^ is the cross product of two vectors, and ||P1P2|| the magnitude of the vector P1P2.

The conditions AngularDeflection > gp::Resolution() and CurvatureDeflection > gp::Resolution() must be satisfied at the construction time.

A minimum number of points can be fixed for a linear or circular element. Example:

double aCDeflect = 0.01; // Curvature deflection
double anADeflect = 0.09; // Angular deflection
for (int i = 1; i <= aPointsOnCurve.NbPoints(); ++i)
{
double aU = aPointsOnCurve.Parameter (i);
gp_Pnt aPnt = aPointsOnCurve.Value (i);
}
Computes a set of points on a curve from package Adaptor3d such as between two successive points P1(u...
Definition GCPnts_TangentialDeflection.hxx:62
Describes a rational or non-rational Bezier curve.
Definition Geom_BezierCurve.hxx:86
This class provides an interface between the services provided by any curve from the package Geom and...
Definition GeomAdaptor_Curve.hxx:52
Defines a 3D cartesian point.
Definition gp_Pnt.hxx:32
Intrusive smart pointer for use with Standard_Transient class and its descendants.
Definition Standard_Handle.hxx:54

Constructor & Destructor Documentation

◆ GCPnts_TangentialDeflection() [1/5]

GCPnts_TangentialDeflection::GCPnts_TangentialDeflection ( )

Empty constructor.

See also
Initialize()

◆ GCPnts_TangentialDeflection() [2/5]

GCPnts_TangentialDeflection::GCPnts_TangentialDeflection ( const Adaptor3d_Curve & theC,
const double theAngularDeflection,
const double theCurvatureDeflection,
const int theMinimumOfPoints = 2,
const double theUTol = 1.0e-9,
const double theMinLen = 1.0e-7 )

Constructor for 3D curve.

Parameters
[in]theC3d curve
[in]theAngularDeflectionangular deflection in radians
[in]theCurvatureDeflectionlinear deflection
[in]theMinimumOfPointsminimum number of points
[in]theUToltolerance in curve parametric scope
[in]theMinLenminimal length

◆ GCPnts_TangentialDeflection() [3/5]

GCPnts_TangentialDeflection::GCPnts_TangentialDeflection ( const Adaptor3d_Curve & theC,
const double theFirstParameter,
const double theLastParameter,
const double theAngularDeflection,
const double theCurvatureDeflection,
const int theMinimumOfPoints = 2,
const double theUTol = 1.0e-9,
const double theMinLen = 1.0e-7 )

Constructor for 3D curve with restricted range.

Parameters
[in]theC3d curve
[in]theFirstParameterfirst parameter on curve
[in]theLastParameterlast parameter on curve
[in]theAngularDeflectionangular deflection in radians
[in]theCurvatureDeflectionlinear deflection
[in]theMinimumOfPointsminimum number of points
theUTol[in] tolerance in curve parametric scope
[in]theMinLenminimal length

◆ GCPnts_TangentialDeflection() [4/5]

GCPnts_TangentialDeflection::GCPnts_TangentialDeflection ( const Adaptor2d_Curve2d & theC,
const double theAngularDeflection,
const double theCurvatureDeflection,
const int theMinimumOfPoints = 2,
const double theUTol = 1.0e-9,
const double theMinLen = 1.0e-7 )

Constructor for 2D curve.

Parameters
[in]theC2d curve
[in]theAngularDeflectionangular deflection in radians
[in]theCurvatureDeflectionlinear deflection
[in]theMinimumOfPointsminimum number of points
[in]theUToltolerance in curve parametric scope
[in]theMinLenminimal length

◆ GCPnts_TangentialDeflection() [5/5]

GCPnts_TangentialDeflection::GCPnts_TangentialDeflection ( const Adaptor2d_Curve2d & theC,
const double theFirstParameter,
const double theLastParameter,
const double theAngularDeflection,
const double theCurvatureDeflection,
const int theMinimumOfPoints = 2,
const double theUTol = 1.0e-9,
const double theMinLen = 1.0e-7 )

Constructor for 2D curve with restricted range.

Parameters
[in]theC2d curve
[in]theFirstParameterfirst parameter on curve
[in]theLastParameterlast parameter on curve
[in]theAngularDeflectionangular deflection in radians
[in]theCurvatureDeflectionlinear deflection
[in]theMinimumOfPointsminimum number of points
[in]theUToltolerance in curve parametric scope
[in]theMinLenminimal length

Member Function Documentation

◆ AddPoint()

int GCPnts_TangentialDeflection::AddPoint ( const gp_Pnt & thePnt,
const double theParam,
const bool theIsReplace = true )

Add point to already calculated points (or replace existing) Returns index of new added point or founded with parametric tolerance (replaced if theIsReplace is true)

◆ ArcAngularStep()

static double GCPnts_TangentialDeflection::ArcAngularStep ( const double theRadius,
const double theLinearDeflection,
const double theAngularDeflection,
const double theMinLength )
static

Computes angular step for the arc using the given parameters.

◆ Initialize() [1/4]

void GCPnts_TangentialDeflection::Initialize ( const Adaptor2d_Curve2d & theC,
const double theAngularDeflection,
const double theCurvatureDeflection,
const int theMinimumOfPoints = 2,
const double theUTol = 1.0e-9,
const double theMinLen = 1.0e-7 )

Initialize algorithm for 2D curve.

Parameters
[in]theC2d curve
[in]theAngularDeflectionangular deflection in radians
[in]theCurvatureDeflectionlinear deflection
[in]theMinimumOfPointsminimum number of points
[in]theUToltolerance in curve parametric scope
[in]theMinLenminimal length

◆ Initialize() [2/4]

void GCPnts_TangentialDeflection::Initialize ( const Adaptor2d_Curve2d & theC,
const double theFirstParameter,
const double theLastParameter,
const double theAngularDeflection,
const double theCurvatureDeflection,
const int theMinimumOfPoints = 2,
const double theUTol = 1.0e-9,
const double theMinLen = 1.0e-7 )

Initialize algorithm for 2D curve with restricted range.

Parameters
[in]theC2d curve
[in]theFirstParameterfirst parameter on curve
[in]theLastParameterlast parameter on curve
[in]theAngularDeflectionangular deflection in radians
[in]theCurvatureDeflectionlinear deflection
[in]theMinimumOfPointsminimum number of points
[in]theUToltolerance in curve parametric scope
[in]theMinLenminimal length

◆ Initialize() [3/4]

void GCPnts_TangentialDeflection::Initialize ( const Adaptor3d_Curve & theC,
const double theAngularDeflection,
const double theCurvatureDeflection,
const int theMinimumOfPoints = 2,
const double theUTol = 1.0e-9,
const double theMinLen = 1.0e-7 )

Initialize algorithm for 3D curve.

Parameters
[in]theC3d curve
[in]theAngularDeflectionangular deflection in radians
[in]theCurvatureDeflectionlinear deflection
[in]theMinimumOfPointsminimum number of points
[in]theUToltolerance in curve parametric scope
[in]theMinLenminimal length

◆ Initialize() [4/4]

void GCPnts_TangentialDeflection::Initialize ( const Adaptor3d_Curve & theC,
const double theFirstParameter,
const double theLastParameter,
const double theAngularDeflection,
const double theCurvatureDeflection,
const int theMinimumOfPoints = 2,
const double theUTol = 1.0e-9,
const double theMinLen = 1.0e-7 )

Initialize algorithm for 3D curve with restricted range.

Parameters
[in]theC3d curve
[in]theFirstParameterfirst parameter on curve
[in]theLastParameterlast parameter on curve
[in]theAngularDeflectionangular deflection in radians
[in]theCurvatureDeflectionlinear deflection
[in]theMinimumOfPointsminimum number of points
[in]theUToltolerance in curve parametric scope
[in]theMinLenminimal length

◆ NbPoints()

int GCPnts_TangentialDeflection::NbPoints ( ) const
inline

◆ Parameter()

double GCPnts_TangentialDeflection::Parameter ( const int I) const
inline

◆ Value()

gp_Pnt GCPnts_TangentialDeflection::Value ( const int I) const
inline

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