DATAKIT API  V2025.1
Dtk_NurbsCurve Class Reference

This is the Nurbs Class. It is part of the Dtk_Curve entity. More...

+ Inheritance diagram for Dtk_NurbsCurve:

Public Member Functions

virtual Dtk_ErrorStatus _ComputeAnyDerivative (Dtk_Double64 inUvalue, int inUdiff, Dtk_dir &outdir, int exttype) const
 Compute any derivative for an U value. More...
 
Dtk_ErrorStatus _ComputeAnyDerivativeExtended (Dtk_Double64 inUvalue, int inUdiff, Dtk_dir &outdir, int exttype) const
 Compute any derivative for an U value outside of the curve definition. More...
 
Dtk_Double64 _ComputeWeight (Dtk_Double64 inUvalue, int exttype) const
 
Dtk_ErrorStatus _DegreeElevation (const Dtk_Size_t &inDegreeElevation)
 
Dtk_ErrorStatus _KnotInsertion (const Dtk_Double64 &inUparameter, const Dtk_Size_t &inOccurence, Dtk_Double64 inTolerance=DTK_TOLERANCE)
 
int _KnotRemoval (const Dtk_Double64 &inU, const int &inNum, const Dtk_Double64 &inTolerance)
 
virtual Dtk_ErrorStatus _Store (void *)
 
Dtk_bool CanHaveDiscontinuity () const
 return DTK_TRUE if nurbs can have discontinuity More...
 
Dtk_ErrorStatus ComputeBoundingBox (Dtk_pnt &outMin, Dtk_pnt &outMax, Dtk_bool inMorePrecise=0)
 Compute Bounding Box. More...
 
virtual Dtk_pnt ComputeEndPoint () const
 Return Last point. More...
 
Dtk_Double64 ComputeLength ()
 return curve Length More...
 
Dtk_NurbsCurvePtr ComputeOffset (Dtk_Double64 inOffset, Dtk_dir inOffsetDirection)
 Compute offset curve and convert it to nurbs. More...
 
virtual Dtk_ErrorStatus ComputeOrientedBoundingBox (Dtk_pnt &outMin, Dtk_pnt &outMax, const Dtk_transfo &inLocal)
 Compute Oriented Bounding Box. More...
 
virtual Dtk_ErrorStatus ComputeParameter (const Dtk_pnt &inPoint, Dtk_Double64 &outParameter) const
 Compute pparameter. More...
 
virtual Dtk_pnt ComputeStartPoint () const
 Return First point. More...
 
virtual Dtk_ErrorStatus ComputeUDir (const Dtk_Double64 &inU, Dtk_dir &outDir) const
 Compute dir on U parameter. More...
 
virtual Dtk_ErrorStatus ComputeUPoint (const Dtk_Double64 &inU, Dtk_pnt &outPoint) const
 Compute point on U parameter. More...
 
Dtk_ErrorStatus ComputeUPointDir (const Dtk_Double64 &inUparameter, Dtk_pnt &outPoint, Dtk_dir &outDir) const
 Compute point and dir on U parameter. More...
 
void DeleteCorrespondingNurbs ()
 
int DtkDynamicType (const int &inId)
 downcasting More...
 
virtual void dump (FILE *file=stdout)
 
Dtk_NurbsCurvePtr ForceG1Continuity () const
 
Dtk_InfoPtr get_info () const
 
type_detk get_type_detk () const
 Return Curve type. More...
 
Dtk_UInt32 GetDegree () const
 return degree More...
 
Dtk_Size_t GetDimension () const
 Return 2 or 3. More...
 
virtual Dtk_ErrorStatus GetDomain (Dtk_Double64 &outUmin, Dtk_Double64 &outUmax) const
 Get Curve Parametrisation. More...
 
const Dtk_IDGetID () const
 Get Internal UniqueID. More...
 
Dtk_UInt32 GetKnotMultiplicity (const Dtk_Size_t &inIndex) const
 return knot multiplicity at inIndex place More...
 
Dtk_Double64 GetKnotValue (const Dtk_Size_t &inIndex) const
 return knot value at inIndex place More...
 
Dtk_Size_t GetNumKnots () const
 return number of different knot value More...
 
Dtk_Size_t GetNumPoints () const
 return Num Control points More...
 
virtual Dtk_Size_t GetSize () const
 
Dtk_pnt GetTrimEndPoint () const
 Return last trim point. More...
 
Dtk_pnt GetTrimStartPoint () const
 Return first trim point. More...
 
Dtk_Double64 GetTrimUMax () const
 Get end Trim parameter. More...
 
Dtk_Double64 GetTrimUMin () const
 Get start Trim parameter. More...
 
type_detk GetTypeBeforeConversion () const
 
Dtk_Double64GetUnpackedKnot () const
 
Dtk_Double64 GetWeight (const Dtk_Size_t &inIndex) const
 return weight More...
 
Dtk_InfoPtrinfo ()
 
virtual Dtk_ErrorStatus InverseTrim ()
 
Dtk_bool IsBezier () const
 return DTK_TRUE if bezier More...
 
Dtk_bool IsClosed (Dtk_Double64 inTol=DTK_TOLERANCE) const
 return DTK_TRUE if nurbs is closed More...
 
Dtk_bool IsLine ()
 return True if Curve is a line More...
 
Dtk_bool IsLine () const
 return DTK_TRUE if nurbs is line More...
 
virtual Dtk_bool IsPeriodic () const
 return DTK_TRUE if nurbs is periodic More...
 
Dtk_bool IsRationnal () const
 return DTK_TRUE if one weight != 1 More...
 
Dtk_bool IsTrimmed () const
 Return DTK_TRUE if Curve Is trimmed by point or parameter value. More...
 
Dtk_bool IsUniform () const
 return DTK_TRUE if knots are uniform More...
 
virtual void Normalize ()
 Normalize Curve. More...
 
Dtk_pntPoint (const Dtk_Size_t &inIndex)
 
const Dtk_pntPoint (const Dtk_Size_t &inIndex) const
 return the point at place inIndex More...
 
virtual void PrepareTransfo ()
 
Dtk_ErrorStatus Reparam (const Dtk_Double64 &inUmin, const Dtk_Double64 &inUmax)
 Set Curve parametrisation domain. More...
 
virtual void Reverse ()
 Reverse Curve. More...
 
void SetDimension (const Dtk_Size_t &inDimension)
 Set curve dimension (2 or 3) More...
 
void SetIsClosed (const Dtk_bool &inIsClosed)
 sets is_closed field to DTK_TRUE or DTK_FALSE More...
 
void SetIsPeriodic (const Dtk_bool &inIsPeriodic)
 sets is_closed field to DTK_TRUE or DTK_FALSE More...
 
virtual Dtk_ErrorStatus SetTrimmingParameters (const Dtk_Double64 &inUmin, const Dtk_Double64 &inUmax)
 Set Trim parameter for curve. More...
 
void SetTrimPoints (const Dtk_pnt &inStartPoint, const Dtk_pnt &inEndPoint)
 Set Trim points for curve. More...
 
void SetTypeBeforeConversion (const type_detk &inType)
 
Dtk_ErrorStatus Split (Dtk_Double64 inTrimDom[2], Dtk_Double64 inTolerance=DTK_TOLERANCE)
 
virtual Dtk_NurbsCurvePtr ToNurbs () const
 Convert Curve to nurbs. More...
 
virtual Dtk_PolylinePtr ToPolyline (const int &inMinPoint, const Dtk_Double64 &inTolerance) const
 Convert Curve to polyline. More...
 
Dtk_ErrorStatus Transform (const Dtk_transfo &inTransfo)
 Transform Curve. More...
 

Static Public Member Functions

static Dtk_NurbsCurvePtr Create (const Dtk_NurbsCurve &s)
 constructors returning Smart pointers More...
 
static Dtk_NurbsCurvePtr Create (const Dtk_NurbsCurvePtr &s, const Dtk_tab< Dtk_Double64 > &inKnotsValues, const Dtk_tab< Dtk_UChar8 > &inKnotsMultiplicities)
 
static Dtk_NurbsCurvePtr Create (const Dtk_tab< Dtk_CurvePtr > &inCurvesToMerge, Dtk_Double64 stichtol=DTK_TOLERANCE, Dtk_bool LengthParameter=DTK_FALSE)
 
static Dtk_NurbsCurvePtr Create (const Dtk_UInt32 &inDegree, const Dtk_tab< Dtk_Double64 > &inKnots, const Dtk_tab< Dtk_pnt > &inControlPoints, const Dtk_tab< Dtk_Double64 > &inWeights=Dtk_tab< Dtk_Double64 >())
 
static Dtk_NurbsCurvePtr Create (const Dtk_UInt32 &inDegree, const Dtk_tab< Dtk_Double64 > &inKnotsValues, const Dtk_tab< Dtk_UChar8 > &inKnotsMultiplicities, const Dtk_tab< Dtk_pnt > &inControlPoints, const Dtk_tab< Dtk_Double64 > &inWeights=Dtk_tab< Dtk_Double64 >())
 
static Dtk_NurbsCurveDtkDynamicCast (Dtk_Object *inObject)
 

Protected Types

enum  { _typeID = DTK_TYPE_OBJECT }
 
enum  { _typeID = DTK_TYPE_CURVE }
 
enum  { _typeID = DTK_TYPE_NURBS_CURVE }
 

Protected Member Functions

void _Copy (const Dtk_Curve &s)
 
void _copy (const Dtk_Entity &s)
 
void _copy (const Dtk_Object &s)
 
void _init ()
 
void _reset ()
 
virtual Dtk_ObjectClone ()
 
 Dtk_NurbsCurve ()
 
 Dtk_NurbsCurve (const Dtk_NurbsCurve &s)
 
 Dtk_NurbsCurve (const Dtk_tab< Dtk_CurvePtr > &inCurvesToMerge, Dtk_Double64 stichtol, Dtk_bool LengthParameter)
 
 Dtk_NurbsCurve (const Dtk_UInt32 &inDegree, const Dtk_tab< Dtk_Double64 > &inKnots, const Dtk_tab< Dtk_pnt > &inControlPoints, const Dtk_tab< Dtk_Double64 > &inWeights=Dtk_tab< Dtk_Double64 >())
 
 Dtk_NurbsCurve (const Dtk_UInt32 &inDegree, const Dtk_tab< Dtk_Double64 > &inKnotsValues, const Dtk_tab< Dtk_UChar8 > &inKnotsMultiplicities, const Dtk_tab< Dtk_pnt > &inControlPoints, const Dtk_tab< Dtk_Double64 > &inWeights=Dtk_tab< Dtk_Double64 >())
 
 Dtk_NurbsCurve (const Dtk_UInt32 &inDegree, const Dtk_tab< Dtk_pnt > &inControlPoints)
 
virtual ~Dtk_NurbsCurve ()
 

Protected Attributes

Dtk_Handle * _Private
 
unsigned long count_
 

Friends

class Dtk_SmartPtr< Dtk_NurbsCurve >
 

Detailed Description

This is the Nurbs Class. It is part of the Dtk_Curve entity.

Warning
Please use the Dtk_NurbsCurvePtr class to handle it...

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 
91 { _typeID = DTK_TYPE_CURVE };

◆ anonymous enum

anonymous enum
protected
Enumerator
_typeID 

Constructor & Destructor Documentation

◆ Dtk_NurbsCurve() [1/6]

Dtk_NurbsCurve::Dtk_NurbsCurve ( )
protected

◆ Dtk_NurbsCurve() [2/6]

Dtk_NurbsCurve::Dtk_NurbsCurve ( const Dtk_NurbsCurve s)
protected

◆ ~Dtk_NurbsCurve()

virtual Dtk_NurbsCurve::~Dtk_NurbsCurve ( )
protectedvirtual

◆ Dtk_NurbsCurve() [3/6]

Dtk_NurbsCurve::Dtk_NurbsCurve ( const Dtk_UInt32 inDegree,
const Dtk_tab< Dtk_pnt > &  inControlPoints 
)
protected

◆ Dtk_NurbsCurve() [4/6]

Dtk_NurbsCurve::Dtk_NurbsCurve ( const Dtk_UInt32 inDegree,
const Dtk_tab< Dtk_Double64 > &  inKnots,
const Dtk_tab< Dtk_pnt > &  inControlPoints,
const Dtk_tab< Dtk_Double64 > &  inWeights = Dtk_tabDtk_Double64 >() 
)
protected

◆ Dtk_NurbsCurve() [5/6]

Dtk_NurbsCurve::Dtk_NurbsCurve ( const Dtk_UInt32 inDegree,
const Dtk_tab< Dtk_Double64 > &  inKnotsValues,
const Dtk_tab< Dtk_UChar8 > &  inKnotsMultiplicities,
const Dtk_tab< Dtk_pnt > &  inControlPoints,
const Dtk_tab< Dtk_Double64 > &  inWeights = Dtk_tabDtk_Double64 >() 
)
protected

◆ Dtk_NurbsCurve() [6/6]

Dtk_NurbsCurve::Dtk_NurbsCurve ( const Dtk_tab< Dtk_CurvePtr > &  inCurvesToMerge,
Dtk_Double64  stichtol,
Dtk_bool  LengthParameter 
)
protected

Member Function Documentation

◆ _ComputeAnyDerivative()

virtual Dtk_ErrorStatus Dtk_NurbsCurve::_ComputeAnyDerivative ( Dtk_Double64  inUvalue,
int  inUdiff,
Dtk_dir outdir,
int  exttype 
) const
virtual

Compute any derivative for an U value.

Parameters
[in]inUvalue: the U value
[in]inUdiff: wanted derivative (0 = point, 1 = Udir or tangent, 2 = second derivative, etc.)
[out]outdir: the computed derivative
[in]exttype: for internal use

Reimplemented from Dtk_Curve.

◆ _ComputeAnyDerivativeExtended()

Dtk_ErrorStatus Dtk_NurbsCurve::_ComputeAnyDerivativeExtended ( Dtk_Double64  inUvalue,
int  inUdiff,
Dtk_dir outdir,
int  exttype 
) const

Compute any derivative for an U value outside of the curve definition.

Parameters
[in]inUvalue: the U value
[in]inUdiff: wanted derivative (0 = point, 1 = Udir or tangent, 2 = second derivative, etc.)
[out]outdir: the computed derivative
[in]exttype: for internal use

◆ _ComputeWeight()

Dtk_Double64 Dtk_NurbsCurve::_ComputeWeight ( Dtk_Double64  inUvalue,
int  exttype 
) const

◆ _Copy()

void Dtk_Curve::_Copy ( const Dtk_Curve s)
protectedinherited

◆ _copy() [1/2]

void Dtk_Entity::_copy ( const Dtk_Entity s)
protectedinherited

◆ _copy() [2/2]

void Dtk_Object::_copy ( const Dtk_Object s)
protectedinherited

◆ _DegreeElevation()

Dtk_ErrorStatus Dtk_NurbsCurve::_DegreeElevation ( const Dtk_Size_t inDegreeElevation)

◆ _init()

void Dtk_Entity::_init ( )
protectedinherited

◆ _KnotInsertion()

Dtk_ErrorStatus Dtk_NurbsCurve::_KnotInsertion ( const Dtk_Double64 inUparameter,
const Dtk_Size_t inOccurence,
Dtk_Double64  inTolerance = DTK_TOLERANCE 
)

◆ _KnotRemoval()

int Dtk_NurbsCurve::_KnotRemoval ( const Dtk_Double64 inU,
const int &  inNum,
const Dtk_Double64 inTolerance 
)

◆ _reset()

void Dtk_Entity::_reset ( )
protectedinherited

◆ _Store()

virtual Dtk_ErrorStatus Dtk_NurbsCurve::_Store ( void *  )
virtual

Reimplemented from Dtk_Curve.

◆ CanHaveDiscontinuity()

Dtk_bool Dtk_NurbsCurve::CanHaveDiscontinuity ( ) const

return DTK_TRUE if nurbs can have discontinuity

◆ Clone()

virtual Dtk_Object* Dtk_NurbsCurve::Clone ( )
protectedvirtual

Implements Dtk_Curve.

201 { return new Dtk_NurbsCurve(*this); }

◆ ComputeBoundingBox()

Dtk_ErrorStatus Dtk_NurbsCurve::ComputeBoundingBox ( Dtk_pnt outMin,
Dtk_pnt outMax,
Dtk_bool  inMorePrecise = 0 
)
virtual

Compute Bounding Box.

Reimplemented from Dtk_Curve.

◆ ComputeEndPoint()

virtual Dtk_pnt Dtk_NurbsCurve::ComputeEndPoint ( ) const
virtual

Return Last point.

Implements Dtk_Curve.

◆ ComputeLength()

Dtk_Double64 Dtk_Curve::ComputeLength ( )
inherited

return curve Length

◆ ComputeOffset()

Dtk_NurbsCurvePtr Dtk_Curve::ComputeOffset ( Dtk_Double64  inOffset,
Dtk_dir  inOffsetDirection 
)
inherited

Compute offset curve and convert it to nurbs.

◆ ComputeOrientedBoundingBox()

virtual Dtk_ErrorStatus Dtk_Curve::ComputeOrientedBoundingBox ( Dtk_pnt outMin,
Dtk_pnt outMax,
const Dtk_transfo inLocal 
)
virtualinherited

Compute Oriented Bounding Box.

◆ ComputeParameter()

virtual Dtk_ErrorStatus Dtk_NurbsCurve::ComputeParameter ( const Dtk_pnt inPoint,
Dtk_Double64 outParameter 
) const
virtual

Compute pparameter.

Implements Dtk_Curve.

◆ ComputeStartPoint()

virtual Dtk_pnt Dtk_NurbsCurve::ComputeStartPoint ( ) const
virtual

Return First point.

Implements Dtk_Curve.

◆ ComputeUDir()

virtual Dtk_ErrorStatus Dtk_NurbsCurve::ComputeUDir ( const Dtk_Double64 inU,
Dtk_dir outDir 
) const
virtual

Compute dir on U parameter.

Reimplemented from Dtk_Curve.

◆ ComputeUPoint()

virtual Dtk_ErrorStatus Dtk_NurbsCurve::ComputeUPoint ( const Dtk_Double64 inU,
Dtk_pnt outPoint 
) const
virtual

Compute point on U parameter.

Implements Dtk_Curve.

◆ ComputeUPointDir()

Dtk_ErrorStatus Dtk_NurbsCurve::ComputeUPointDir ( const Dtk_Double64 inU,
Dtk_pnt outPoint,
Dtk_dir outDir 
) const
virtual

Compute point and dir on U parameter.

Reimplemented from Dtk_Curve.

◆ Create() [1/5]

static Dtk_NurbsCurvePtr Dtk_NurbsCurve::Create ( const Dtk_NurbsCurve s)
static

constructors returning Smart pointers

◆ Create() [2/5]

static Dtk_NurbsCurvePtr Dtk_NurbsCurve::Create ( const Dtk_NurbsCurvePtr s,
const Dtk_tab< Dtk_Double64 > &  inKnotsValues,
const Dtk_tab< Dtk_UChar8 > &  inKnotsMultiplicities 
)
static

◆ Create() [3/5]

static Dtk_NurbsCurvePtr Dtk_NurbsCurve::Create ( const Dtk_tab< Dtk_CurvePtr > &  inCurvesToMerge,
Dtk_Double64  stichtol = DTK_TOLERANCE,
Dtk_bool  LengthParameter = DTK_FALSE 
)
static

◆ Create() [4/5]

static Dtk_NurbsCurvePtr Dtk_NurbsCurve::Create ( const Dtk_UInt32 inDegree,
const Dtk_tab< Dtk_Double64 > &  inKnots,
const Dtk_tab< Dtk_pnt > &  inControlPoints,
const Dtk_tab< Dtk_Double64 > &  inWeights = Dtk_tabDtk_Double64 >() 
)
static

◆ Create() [5/5]

static Dtk_NurbsCurvePtr Dtk_NurbsCurve::Create ( const Dtk_UInt32 inDegree,
const Dtk_tab< Dtk_Double64 > &  inKnotsValues,
const Dtk_tab< Dtk_UChar8 > &  inKnotsMultiplicities,
const Dtk_tab< Dtk_pnt > &  inControlPoints,
const Dtk_tab< Dtk_Double64 > &  inWeights = Dtk_tabDtk_Double64 >() 
)
static

◆ DeleteCorrespondingNurbs()

void Dtk_Curve::DeleteCorrespondingNurbs ( )
inherited

◆ DtkDynamicCast()

static Dtk_NurbsCurve* Dtk_NurbsCurve::DtkDynamicCast ( Dtk_Object inObject)
static

◆ DtkDynamicType()

int Dtk_NurbsCurve::DtkDynamicType ( const int &  inId)
virtual

downcasting

Reimplemented from Dtk_Curve.

◆ dump()

virtual void Dtk_Object::dump ( FILE *  file = stdout)
virtualinherited

◆ ForceG1Continuity()

Dtk_NurbsCurvePtr Dtk_NurbsCurve::ForceG1Continuity ( ) const

◆ get_info()

Dtk_InfoPtr Dtk_Entity::get_info ( ) const
inherited

◆ get_type_detk()

type_detk Dtk_NurbsCurve::get_type_detk ( ) const
virtual

Return Curve type.

Implements Dtk_Entity.

◆ GetDegree()

Dtk_UInt32 Dtk_NurbsCurve::GetDegree ( ) const

return degree

◆ GetDimension()

Dtk_Size_t Dtk_Curve::GetDimension ( ) const
inherited

Return 2 or 3.

◆ GetDomain()

virtual Dtk_ErrorStatus Dtk_NurbsCurve::GetDomain ( Dtk_Double64 outUmin,
Dtk_Double64 outUmax 
) const
virtual

Get Curve Parametrisation.

Implements Dtk_Curve.

◆ GetID()

const Dtk_ID& Dtk_Entity::GetID ( ) const
inherited

Get Internal UniqueID.

Returns
InternalID

◆ GetKnotMultiplicity()

Dtk_UInt32 Dtk_NurbsCurve::GetKnotMultiplicity ( const Dtk_Size_t inIndex) const

return knot multiplicity at inIndex place

◆ GetKnotValue()

Dtk_Double64 Dtk_NurbsCurve::GetKnotValue ( const Dtk_Size_t inIndex) const

return knot value at inIndex place

◆ GetNumKnots()

Dtk_Size_t Dtk_NurbsCurve::GetNumKnots ( ) const

return number of different knot value

◆ GetNumPoints()

Dtk_Size_t Dtk_NurbsCurve::GetNumPoints ( ) const

return Num Control points

◆ GetSize()

virtual Dtk_Size_t Dtk_NurbsCurve::GetSize ( ) const
virtual

Reimplemented from Dtk_Curve.

◆ GetTrimEndPoint()

Dtk_pnt Dtk_Curve::GetTrimEndPoint ( ) const
inherited

Return last trim point.

◆ GetTrimStartPoint()

Dtk_pnt Dtk_Curve::GetTrimStartPoint ( ) const
inherited

Return first trim point.

◆ GetTrimUMax()

Dtk_Double64 Dtk_Curve::GetTrimUMax ( ) const
inherited

Get end Trim parameter.

◆ GetTrimUMin()

Dtk_Double64 Dtk_Curve::GetTrimUMin ( ) const
inherited

Get start Trim parameter.

◆ GetTypeBeforeConversion()

type_detk Dtk_NurbsCurve::GetTypeBeforeConversion ( ) const

◆ GetUnpackedKnot()

Dtk_Double64* Dtk_NurbsCurve::GetUnpackedKnot ( ) const

◆ GetWeight()

Dtk_Double64 Dtk_NurbsCurve::GetWeight ( const Dtk_Size_t inIndex) const

return weight

◆ info()

Dtk_InfoPtr& Dtk_Entity::info ( )
inherited

◆ InverseTrim()

virtual Dtk_ErrorStatus Dtk_Curve::InverseTrim ( )
virtualinherited

◆ IsBezier()

Dtk_bool Dtk_NurbsCurve::IsBezier ( ) const

return DTK_TRUE if bezier

◆ IsClosed()

Dtk_bool Dtk_NurbsCurve::IsClosed ( Dtk_Double64  inTol = DTK_TOLERANCE) const
virtual

return DTK_TRUE if nurbs is closed

Reimplemented from Dtk_Curve.

◆ IsLine() [1/2]

Dtk_bool Dtk_Curve::IsLine ( )
inherited

return True if Curve is a line

◆ IsLine() [2/2]

Dtk_bool Dtk_NurbsCurve::IsLine ( ) const

return DTK_TRUE if nurbs is line

◆ IsPeriodic()

virtual Dtk_bool Dtk_NurbsCurve::IsPeriodic ( ) const
virtual

return DTK_TRUE if nurbs is periodic

Reimplemented from Dtk_Curve.

◆ IsRationnal()

Dtk_bool Dtk_NurbsCurve::IsRationnal ( ) const

return DTK_TRUE if one weight != 1

◆ IsTrimmed()

Dtk_bool Dtk_Curve::IsTrimmed ( ) const
inherited

Return DTK_TRUE if Curve Is trimmed by point or parameter value.

◆ IsUniform()

Dtk_bool Dtk_NurbsCurve::IsUniform ( ) const

return DTK_TRUE if knots are uniform

◆ Normalize()

virtual void Dtk_Curve::Normalize ( )
virtualinherited

Normalize Curve.

Reimplemented in Dtk_Line.

◆ Point() [1/2]

Dtk_pnt& Dtk_NurbsCurve::Point ( const Dtk_Size_t inIndex)

◆ Point() [2/2]

const Dtk_pnt& Dtk_NurbsCurve::Point ( const Dtk_Size_t inIndex) const

return the point at place inIndex

◆ PrepareTransfo()

virtual void Dtk_Entity::PrepareTransfo ( )
virtualinherited

Reimplemented in Dtk_OffsetSurface.

◆ Reparam()

Dtk_ErrorStatus Dtk_NurbsCurve::Reparam ( const Dtk_Double64 inUmin,
const Dtk_Double64 inUmax 
)

Set Curve parametrisation domain.

◆ Reverse()

virtual void Dtk_NurbsCurve::Reverse ( )
virtual

Reverse Curve.

Implements Dtk_Curve.

◆ SetDimension()

void Dtk_Curve::SetDimension ( const Dtk_Size_t inDimension)
inherited

Set curve dimension (2 or 3)

◆ SetIsClosed()

void Dtk_NurbsCurve::SetIsClosed ( const Dtk_bool inIsClosed)

sets is_closed field to DTK_TRUE or DTK_FALSE

◆ SetIsPeriodic()

void Dtk_NurbsCurve::SetIsPeriodic ( const Dtk_bool inIsPeriodic)

sets is_closed field to DTK_TRUE or DTK_FALSE

◆ SetTrimmingParameters()

virtual Dtk_ErrorStatus Dtk_Curve::SetTrimmingParameters ( const Dtk_Double64 inUmin,
const Dtk_Double64 inUmax 
)
virtualinherited

Set Trim parameter for curve.

◆ SetTrimPoints()

void Dtk_Curve::SetTrimPoints ( const Dtk_pnt inStartPoint,
const Dtk_pnt inEndPoint 
)
inherited

Set Trim points for curve.

◆ SetTypeBeforeConversion()

void Dtk_NurbsCurve::SetTypeBeforeConversion ( const type_detk inType)

◆ Split()

Dtk_ErrorStatus Dtk_NurbsCurve::Split ( Dtk_Double64  inTrimDom[2],
Dtk_Double64  inTolerance = DTK_TOLERANCE 
)

◆ ToNurbs()

virtual Dtk_NurbsCurvePtr Dtk_NurbsCurve::ToNurbs ( ) const
virtual

Convert Curve to nurbs.

Implements Dtk_Curve.

◆ ToPolyline()

virtual Dtk_PolylinePtr Dtk_NurbsCurve::ToPolyline ( const int &  inMinPoint,
const Dtk_Double64 inTolerance 
) const
virtual

Convert Curve to polyline.

Implements Dtk_Curve.

◆ Transform()

Dtk_ErrorStatus Dtk_NurbsCurve::Transform ( const Dtk_transfo inTransfo)
virtual

Transform Curve.

Reimplemented from Dtk_Curve.

Friends And Related Function Documentation

◆ Dtk_SmartPtr< Dtk_NurbsCurve >

friend class Dtk_SmartPtr< Dtk_NurbsCurve >
friend

Field Documentation

◆ _Private

Dtk_Handle* Dtk_NurbsCurve::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited
Dtk_Curve::_typeID
@ _typeID
Definition: util_geom_dtk.hpp:91
DTK_TYPE_OBJECT
@ DTK_TYPE_OBJECT
Definition: define.h:464
DTK_TYPE_NURBS_CURVE
@ DTK_TYPE_NURBS_CURVE
Definition: define.h:494
Dtk_NurbsCurve::Dtk_NurbsCurve
Dtk_NurbsCurve()
DTK_TYPE_CURVE
@ DTK_TYPE_CURVE
Definition: define.h:67
Dtk_NurbsCurve::_typeID
@ _typeID
Definition: util_geom_dtk.hpp:193
Dtk_Object::_typeID
@ _typeID
Definition: dtk_object.hpp:13