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

Efficient batch evaluator for 2D circle grid points. More...

#include <Geom2dGridEval_Circle.hxx>

Public Member Functions

 Geom2dGridEval_Circle (const occ::handle< Geom2d_Circle > &theCircle)
 Constructor with geometry.
 
 Geom2dGridEval_Circle (const Geom2dGridEval_Circle &)=delete
 Non-copyable and non-movable.
 
Geom2dGridEval_Circleoperator= (const Geom2dGridEval_Circle &)=delete
 
 Geom2dGridEval_Circle (Geom2dGridEval_Circle &&)=delete
 
Geom2dGridEval_Circleoperator= (Geom2dGridEval_Circle &&)=delete
 
const occ::handle< Geom2d_Circle > & Geometry () const
 Returns the geometry handle.
 
NCollection_Array1< gp_Pnt2dEvaluateGrid (const NCollection_Array1< double > &theParams) const
 Evaluate all grid points.
 
NCollection_Array1< Geom2dGridEval::CurveD1EvaluateGridD1 (const NCollection_Array1< double > &theParams) const
 Evaluate all grid points with first derivative. D1 = R * (-sin(u) * XDir + cos(u) * YDir)
 
NCollection_Array1< Geom2dGridEval::CurveD2EvaluateGridD2 (const NCollection_Array1< double > &theParams) const
 Evaluate all grid points with first and second derivatives. D2 = R * (-cos(u) * XDir - sin(u) * YDir) = -P (relative to center)
 
NCollection_Array1< Geom2dGridEval::CurveD3EvaluateGridD3 (const NCollection_Array1< double > &theParams) const
 Evaluate all grid points with first, second, and third derivatives. D3 = R * (sin(u) * XDir - cos(u) * YDir) = -D1.
 
NCollection_Array1< gp_Vec2dEvaluateGridDN (const NCollection_Array1< double > &theParams, int theN) const
 Evaluate Nth derivative at all grid points. Circle has cyclic derivatives with period 4: D1 = R * (-sin(u) * X + cos(u) * Y) D2 = R * (-cos(u) * X - sin(u) * Y) D3 = R * (sin(u) * X - cos(u) * Y) D4 = R * (cos(u) * X + sin(u) * Y) = D0, then repeats.
 

Detailed Description

Efficient batch evaluator for 2D circle grid points.

Uses analytical formula: P(u) = Center + R * (cos(u) * XDir + sin(u) * YDir)

Usage:

Efficient batch evaluator for 2D circle grid points.
Definition Geom2dGridEval_Circle.hxx:33
STL input iterator that wraps an OCCT More()/Next() iterator.
Definition NCollection_ForwardRange.hxx:142

Constructor & Destructor Documentation

◆ Geom2dGridEval_Circle() [1/3]

Geom2dGridEval_Circle::Geom2dGridEval_Circle ( const occ::handle< Geom2d_Circle > & theCircle)
inline

Constructor with geometry.

Parameters
theCirclethe 2D circle geometry to evaluate

◆ Geom2dGridEval_Circle() [2/3]

Geom2dGridEval_Circle::Geom2dGridEval_Circle ( const Geom2dGridEval_Circle & )
delete

Non-copyable and non-movable.

◆ Geom2dGridEval_Circle() [3/3]

Geom2dGridEval_Circle::Geom2dGridEval_Circle ( Geom2dGridEval_Circle && )
delete

Member Function Documentation

◆ EvaluateGrid()

NCollection_Array1< gp_Pnt2d > Geom2dGridEval_Circle::EvaluateGrid ( const NCollection_Array1< double > & theParams) const

Evaluate all grid points.

Parameters
theParamsarray of parameter values (angles in radians)
Returns
array of evaluated points (1-based indexing), or empty array if geometry is null or no parameters

◆ EvaluateGridD1()

NCollection_Array1< Geom2dGridEval::CurveD1 > Geom2dGridEval_Circle::EvaluateGridD1 ( const NCollection_Array1< double > & theParams) const

Evaluate all grid points with first derivative. D1 = R * (-sin(u) * XDir + cos(u) * YDir)

Parameters
theParamsarray of parameter values
Returns
array of CurveD1 (1-based indexing), or empty array if geometry is null or no parameters

◆ EvaluateGridD2()

NCollection_Array1< Geom2dGridEval::CurveD2 > Geom2dGridEval_Circle::EvaluateGridD2 ( const NCollection_Array1< double > & theParams) const

Evaluate all grid points with first and second derivatives. D2 = R * (-cos(u) * XDir - sin(u) * YDir) = -P (relative to center)

Parameters
theParamsarray of parameter values
Returns
array of CurveD2 (1-based indexing), or empty array if geometry is null or no parameters

◆ EvaluateGridD3()

NCollection_Array1< Geom2dGridEval::CurveD3 > Geom2dGridEval_Circle::EvaluateGridD3 ( const NCollection_Array1< double > & theParams) const

Evaluate all grid points with first, second, and third derivatives. D3 = R * (sin(u) * XDir - cos(u) * YDir) = -D1.

Parameters
theParamsarray of parameter values
Returns
array of CurveD3 (1-based indexing), or empty array if geometry is null or no parameters

◆ EvaluateGridDN()

NCollection_Array1< gp_Vec2d > Geom2dGridEval_Circle::EvaluateGridDN ( const NCollection_Array1< double > & theParams,
int theN ) const

Evaluate Nth derivative at all grid points. Circle has cyclic derivatives with period 4: D1 = R * (-sin(u) * X + cos(u) * Y) D2 = R * (-cos(u) * X - sin(u) * Y) D3 = R * (sin(u) * X - cos(u) * Y) D4 = R * (cos(u) * X + sin(u) * Y) = D0, then repeats.

Parameters
theParamsarray of parameter values
theNderivative order (N >= 1)
Returns
array of derivative vectors (1-based indexing), or empty array if geometry is null or no parameters

◆ Geometry()

const occ::handle< Geom2d_Circle > & Geom2dGridEval_Circle::Geometry ( ) const
inline

Returns the geometry handle.

◆ operator=() [1/2]

Geom2dGridEval_Circle & Geom2dGridEval_Circle::operator= ( const Geom2dGridEval_Circle & )
delete

◆ operator=() [2/2]

Geom2dGridEval_Circle & Geom2dGridEval_Circle::operator= ( Geom2dGridEval_Circle && )
delete

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