DATAKIT API  V2025.1
utilwriter.h File Reference

Go to the source code of this file.

Functions

int dtk_AddBasisSurface (int inFaceNumber, int inUDegree, int inVDegree, Dtk_tab< double > &inUKnots, Dtk_tab< double > &inVKnots, Dtk_tab< double > &inWeights, Dtk_tab< Dtk_pnt > &inControlPoints)
 Construct basis surface(Nurbs Surface) for face. More...
 
int dtk_AddSegmentInBoundary (int inFaceNumber, int inNumBoundary, int inNumSegment, int inDegree, Dtk_tab< double > &inKnots, Dtk_tab< double > &inWeights, Dtk_tab< Dtk_pnt > &inControlPoints)
 Add a segment for Boundaries. More...
 
void dtk_DumpFaceToWrite (Dtk_string inFileName, int inFaceNumber)
 Dump a Face into binary file to send us if writing fails. More...
 
void dtk_FreeCurveToWrite (int inCurveNumber)
 Free memory allocated by dtk_InitCurveToWrite. More...
 
void dtk_FreeFaceToWrite (int inFaceNumber)
 Free memory allocated by dtk_InitFaceToWrite. More...
 
void dtk_FreePointToWrite (int inPointNumber)
 Free memory allocated by dtk_InitPointToWrite. More...
 
Dtk_EntityPtr dtk_GetCurveToWrite (int inCurveNumber)
 Return the pointer to write. More...
 
Dtk_EntityPtr dtk_GetFaceToWrite (int inFaceNumber)
 Return the pointer to write. More...
 
Dtk_EntityPtr dtk_GetPointToWrite (int inPointNumber)
 Return the pointer to write. More...
 
int dtk_InitCurveToWrite (Dtk_string inCurveName, int inLayer, Dtk_RGB inColour, const Dtk_pnt &inCenterPoint, const Dtk_dir &inNormal, const Dtk_dir &inReference, const Dtk_Double64 &inMajorRadius, const Dtk_Double64 &inMinorRadius, const Dtk_Double64 inUTrimMin, const Dtk_Double64 inUTrimMax)
 Create a Ellipse or Circle entity and return its Id. More...
 
int dtk_InitCurveToWrite (Dtk_string inCurveName, int inLayer, Dtk_RGB inColour, const Dtk_pnt &inFirstPoint, const Dtk_pnt &inLastPoint)
 Create a Line entity and return its Id. More...
 
int dtk_InitCurveToWrite (Dtk_string inCurveName, int inLayer, Dtk_RGB inColour, int inDegree, Dtk_tab< double > &inKnots, Dtk_tab< double > &inWeights, Dtk_tab< Dtk_pnt > &inControlPoints)
 Create a NURBS Curve entity and return its Id. More...
 
int dtk_InitFaceToWrite (Dtk_string inFaceName, int inLayer, Dtk_RGB inColour, Dtk_tab< int > &inNumSegmentIntoUVBoudaries)
 Create a Face entity and returns its Id. More...
 
int dtk_InitPointToWrite (Dtk_string inPointName, int inLayer, Dtk_RGB inColour, Dtk_pnt inPoint)
 Create a point entity and return its Id. More...
 

Function Documentation

◆ dtk_AddBasisSurface()

int dtk_AddBasisSurface ( int  inFaceNumber,
int  inUDegree,
int  inVDegree,
Dtk_tab< double > &  inUKnots,
Dtk_tab< double > &  inVKnots,
Dtk_tab< double > &  inWeights,
Dtk_tab< Dtk_pnt > &  inControlPoints 
)

Construct basis surface(Nurbs Surface) for face.

Parameters
[in]inFaceNumber: Face number given by dtk_InitFaceToWrite
[in]inUDegree:
[in]inVDegree:
[in]inUKnots:
[in]inVKnots:
[in]inWeights:
[in]inControlPoints:
Returns
int Sample:

◆ dtk_AddSegmentInBoundary()

int dtk_AddSegmentInBoundary ( int  inFaceNumber,
int  inNumBoundary,
int  inNumSegment,
int  inDegree,
Dtk_tab< double > &  inKnots,
Dtk_tab< double > &  inWeights,
Dtk_tab< Dtk_pnt > &  inControlPoints 
)

Add a segment for Boundaries.

Parameters
[in]inFaceNumber: Face number given by dtk_InitFaceToWrite
[in]inNumBoundary:
[in]inNumSegment:
[in]inDegree:
[in]inKnots:
[in]inWeights:
[in]inControlPoints:
Returns
int Sample:

◆ dtk_DumpFaceToWrite()

void dtk_DumpFaceToWrite ( Dtk_string  inFileName,
int  inFaceNumber 
)

Dump a Face into binary file to send us if writing fails.

Parameters
[in]inFileName: Name for Dump File
[in]inFaceNumber: id for Face to dump
Returns
void Sample:

◆ dtk_FreeCurveToWrite()

void dtk_FreeCurveToWrite ( int  inCurveNumber)

Free memory allocated by dtk_InitCurveToWrite.

Parameters
[in]inCurveNumber: Curve number given by dtk_InitCurveToWrite
Returns
void Sample:

◆ dtk_FreeFaceToWrite()

void dtk_FreeFaceToWrite ( int  inFaceNumber)

Free memory allocated by dtk_InitFaceToWrite.

Parameters
[in]inFaceNumber: Face number given by dtk_InitFaceToWrite
Returns
void Sample:

◆ dtk_FreePointToWrite()

void dtk_FreePointToWrite ( int  inPointNumber)

Free memory allocated by dtk_InitPointToWrite.

Parameters
[in]inPointNumber: Point number given by dtk_InitPointToWrite
Returns
void Sample:

◆ dtk_GetCurveToWrite()

Dtk_EntityPtr dtk_GetCurveToWrite ( int  inCurveNumber)

Return the pointer to write.

Parameters
[in]inCurveNumber: Curve number given by dtk_InitCurveToWrite
Returns
Dtk_EntityPtr Sample:

◆ dtk_GetFaceToWrite()

Dtk_EntityPtr dtk_GetFaceToWrite ( int  inFaceNumber)

Return the pointer to write.

Parameters
[in]inFaceNumber: Face number given by dtk_InitFaceToWrite
Returns
Dtk_EntityPtr Sample:

◆ dtk_GetPointToWrite()

Dtk_EntityPtr dtk_GetPointToWrite ( int  inPointNumber)

Return the pointer to write.

Parameters
[in]inPointNumber: Point number given by dtk_InitPointToWrite
Returns
Dtk_EntityPtr Sample:

◆ dtk_InitCurveToWrite() [1/3]

int dtk_InitCurveToWrite ( Dtk_string  inCurveName,
int  inLayer,
Dtk_RGB  inColour,
const Dtk_pnt inCenterPoint,
const Dtk_dir inNormal,
const Dtk_dir inReference,
const Dtk_Double64 inMajorRadius,
const Dtk_Double64 inMinorRadius,
const Dtk_Double64  inUTrimMin,
const Dtk_Double64  inUTrimMax 
)

Create a Ellipse or Circle entity and return its Id.

Parameters
[in]inCurveName: Name
[in]inLayer: Layer
[in]inColour: Colour
[in]inCenterPoint: CenterPoint
[in]inNormal: Normal vector
[in]inReference: Direction for parameter U=0
[in]inMajorRadius: Major radius for ellipse
[in]inMinorRadius: Minor radius for ellipse if Major = Minor —> Circle
[in]inUTrimMin: first trim parameter 0<inUTrimMin<inUTrimMax<2*Pi .If out of range --> full ellipse
[in]inUTrimMax: last trim parameter 0<inUTrimMin<inUTrimMax<2*Pi
Returns
int Curve Id or -1 if failed Sample:

◆ dtk_InitCurveToWrite() [2/3]

int dtk_InitCurveToWrite ( Dtk_string  inCurveName,
int  inLayer,
Dtk_RGB  inColour,
const Dtk_pnt inFirstPoint,
const Dtk_pnt inLastPoint 
)

Create a Line entity and return its Id.

Parameters
[in]inCurveName: Name
[in]inLayer: Layer
[in]inColour: Colour
[in]inFirstPoint: FirstPoint of line
[in]inLastPoint: LastPoint of line
Returns
int Curve Id or -1 if failed Sample:

◆ dtk_InitCurveToWrite() [3/3]

int dtk_InitCurveToWrite ( Dtk_string  inCurveName,
int  inLayer,
Dtk_RGB  inColour,
int  inDegree,
Dtk_tab< double > &  inKnots,
Dtk_tab< double > &  inWeights,
Dtk_tab< Dtk_pnt > &  inControlPoints 
)

Create a NURBS Curve entity and return its Id.

Parameters
[in]inCurveName: Name
[in]inLayer: Layer
[in]inColour: Colour
[in]inDegree: degree
[in]inKnots: knots vector
[in]inWeights: weight if rationnal or empty Dtk_tab
[in]inControlPoints: Control points for nurbs
Returns
int Curve Id or -1 if failed Sample:

◆ dtk_InitFaceToWrite()

int dtk_InitFaceToWrite ( Dtk_string  inFaceName,
int  inLayer,
Dtk_RGB  inColour,
Dtk_tab< int > &  inNumSegmentIntoUVBoudaries 
)

Create a Face entity and returns its Id.

Parameters
[in]inFaceName: Name for face
[in]inLayer: Layer for Face
[in]inColour: Colour For Face
[in]inNumSegmentIntoUVBoudaries: Number of segment for each boundaries (outer first)
Returns
int Id of face Sample:

◆ dtk_InitPointToWrite()

int dtk_InitPointToWrite ( Dtk_string  inPointName,
int  inLayer,
Dtk_RGB  inColour,
Dtk_pnt  inPoint 
)

Create a point entity and return its Id.

Parameters
[in]inPointName: Name for point
[in]inLayer: Layer for point
[in]inColour: Colour for point
[in]inPoint: coordinates
Returns
int Sample: