DATAKIT SDK  V2026.3
Through Data

Dtk_Node represents the construction tree and can be connected
Sample to browse a Dtk_Node
Sample to browse a Dtk_NodeConnector

Node has several type :
Sample to browse a Dtk_AxisSystem
Sample to browse a Dtk_Body
Sample to browse a Dtk_Camera
Sample to browse a Dtk_ColorInfosSet
Sample to browse a Dtk_ConstraintPtr
Sample to browse a Dtk_Drawing
Sample to browse a Dtk_Fdt
Sample to browse a Dtk_Feature
Sample to browse a Dtk_LayerInfosSet
Sample to browse a Dtk_mesh
Sample to browse a Dtk_MetaData
Sample to browse a Dtk_ModelDisplay
Sample to browse a Dtk_Preview
Sample to browse Dtk_Info

Sample to browse a Dtk_Node

#include "datakit.h"
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "WriteNode.hpp"
//This function is a sample on how to write node
//Dtk_node can be an Body, Mesh , Drawing, Fdt, AxisPlacement and/or have children (recursive function)
//It represent construction tree for Model
{
//GetName
Dtk_string NodeName = inNode->Name();
// You can Get Preview if you want to handle it
Dtk_PreviewPtr TmpPreview = inNode->GetPreview();
if( TmpPreview.IsNotNULL() )
{
Dtk_Int32 size = TmpPreview->GetStreamSize();
char *jpgimage = TmpPreview->GetStream();
Dtk_string Preview_name = "NodePreview.jpg";
FILE *jpg = Preview_name.OpenFile( "wb" );
if( jpg )
{
fwrite( jpgimage, sizeof( char ), size, jpg );
fclose( jpg );
}
}
//See Dtk_InfoPtr methods for others attributes in infos (color, layer...)
if( xmlDumpFile )
{
}
{
Dtk_ID pdfID;
pdfID = PdfInitNode(inNode);
}
//Get The node Blanked Status
// -1 = undefined, 0 = Visible, 1=Invisible, 2=Construction Geometry
int NodeBlankedStatus = inNode->GetInfos()->GetBlankedStatus();
Dtk_Node::FullType NodeType = inNode->GetNodeFullType();
//In this sample we read and treat only visible node - change this test if you want to read invisible and/or construction node
if( NodeBlankedStatus == 0 )
{
//You have many types for Node Data :
// BodyType for 3D geometry (solid and wireframe)
// MeshType for 3D tessellated geometry
// FdtType for FDT
// DrawingType for 2D
// KinematicsType for Kinematics
// AxisSystemType for AxisPlacement
// LayerInfosSetType for LayerInfos
// MetaDataType for Additional informations
// CameraType for Camera
// ModelDisplayType for ModelDisplay
// VirtualType just for containing children
switch( NodeType.PrimaryType() )
{
{
WriteBody( inNode );
break;
}
{
WriteFdt( inNode );
break;
}
{
WriteDrawing( inNode );
break;
}
{
WriteMesh( inNode );
break;
}
{
WriteAxisSystem( inNode );
break;
}
{
WriteKinematics( inNode );
break;
}
{
WriteLayerFilter( inNode );
break;
}
{
break;
}
{
WriteMetaData( inNode );
break;
}
{
WriteCamera( inNode );
break;
}
{
WriteModelDisplay( inNode );
break;
}
{
WriteConstraints( inNode );
break;
}
default:
{
break;
}
}
}
//Treat recursive TreeNode for Visible and Construction node
// NodeBlankedStatus : -1 = undefined, 0 = Visible, 1=Invisible, 2=Construction Geometry
//remove this test if you want to treat invisible entities
if( NodeBlankedStatus != 1 || NodeType.PrimaryType() == Dtk_Node::BodyType )
//invisible body can have visible children
{
Dtk_Size_t i, NumChildren;
NumChildren = inNode->GetNumChildren();
for( i = 0; i < NumChildren; i++ )
{
WriteNode( inNode->GetChild( i ) );
}
}
// Write Feature associated if you want to handle it
WriteFeature( inNode );
//Write NodeConnector if you want to handle it
WriteNodeConnector( inNode );
if( xmlDumpFile )
{
}
{
}
return dtkNoError;
}

Sample to browse a Dtk_NodeConnector

#include "datakit.h"
{
Dtk_tab< Dtk_NodeConnectorPtr > AssociatedEntities;
inNode->GetAssociatedEntities(AssociatedEntities);
Dtk_Size_t i, NumAssoc = AssociatedEntities.size();
for (i = 0; i < NumAssoc; i++)
{
if (xmlDumpFile)
{
Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_NodeConnector(xmlDumpFile, AssociatedEntities[i]);
}
}
}

Sample to browse a Dtk_AxisSystem

#include "datakit.h"
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
enum type_detk subtype;
subtype = inNode->GetNodeSubType();
// subtype can be DTK_TYPE_VIEW or DTK_TYPE_AXIS_SYSTEM
Dtk_AxisSystemPtr TmpAxis = inNode->GetDtk_AxisSystemPtr();
if (TmpAxis.IsNotNULL() )
{
Dtk_string SystemName = TmpAxis->get_info()->GetName();
// Used to write an XML File
{
}
// Used to write a Pdf File
{
}
}
}

Sample to browse a Dtk_Body

#include "datakit.h"
#include "tess/tess.h"
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
using namespace std;
void WriteDtk_Mesh(const Dtk_MeshPtr& inMeshToWrite);
void WriteBody(Dtk_NodePtr inNode)
{
// Get if the node represent infinite geometry
// 1 = Infinite, 0 = Finite
int NodeInfiniteGeometry = inNode->GetInfos()->GetInfiniteGeometryFlag();
if (NodeInfiniteGeometry == 0)
{
//Calling both methods GetDtk_MeshPtr() and GetDtk_BodyPtr() on BodyNode will give you the same result
//Choose the one you need in order to avoid duplicated data
const Dtk_BodyPtr TmpBody = inNode->GetDtk_BodyPtr();
if (TmpBody.IsNotNULL())
{
// Used to write an XML File
{
XmlWriteBody(TmpBody);
}
}
// Some CAD formats store also faceted data besides B-Rep.
// So you can get faceted data corresponding to the body using the following method
const Dtk_MeshPtr TmpFacetedBody = inNode->GetDtk_MeshPtr();
if (TmpFacetedBody.IsNotNULL())
{
TmpFacetedBody->Transform(CurrentMatrix);
WriteDtk_Mesh(TmpFacetedBody);
}
// If there is no mesh data associated to the current body, you can tessellate (and if init of tessellation engine is successful)
if (TmpFacetedBody.IsNULL() && TmpBody.IsNotNULL() && GetTesselationStatus() == dtkNoError)
{
// Change this variable to true if you want to tessellate wireframe contained in the body
bool tesselWireframe = true;
int err_tess = tess_BodyToMeshes(TmpBody, meshes, isclosed, tesselWireframe );
if( inNode->Name().len() > 0 )
cout << "NodeName = " << inNode->Name().c_str() << ";";
cout << "err_tess = " << dtkTypeError( err_tess ).c_str() << endl ;
if (err_tess == 0)
{
Dtk_Size_t i, nbmeshes = meshes.size();
for (i = 0; i < nbmeshes; i++)
{
meshes[i]->Transform(CurrentMatrix);
WriteDtk_Mesh(meshes[i]);
}
}
if (IsPdfDumpActivated() && TmpBody->HasWire())
{// handling wire / points
}
}
}
}

Sample to browse a Dtk_Camera

#include "datakit.h"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
Dtk_CameraPtr TmpCamera = inNode->GetDtk_CameraPtr();
if (TmpCamera.IsNotNULL())
{
// Used to write an XML File
{
XmlWriteCamera(TmpCamera);
}
}
}

Sample to browse a Dtk_ColorInfosSet

#include "datakit.h"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
Dtk_ColorInfosSetPtr TmpColorInfos = inNode->GetDtk_ColorInfosSetPtr();
if (TmpColorInfos.IsNotNULL())
{
// Used to write an XML File
{
XmlWriteColorPalette(TmpColorInfos);
}
}
}

Sample to browse a Dtk_ConstraintPtr

#include "datakit.h"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
Dtk_ConstraintPtr TmpConstraint = inNode->GetDtk_ConstraintPtr();
if( TmpConstraint.IsNotNULL() )
{
// Used to write an XML File
{
XmlWriteConstraint(TmpConstraint);
}
}
}

Sample to browse a Dtk_Drawing

#include "datakit.h"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
Dtk_DrawingPtr TmpDrawing = inNode->GetDtk_DrawingPtr();
if (TmpDrawing.IsNotNULL())
{
// Used to write an XML File
{
XmlWriteDrawing(TmpDrawing);
}
}
}

Sample to browse a Dtk_Fdt

#include "datakit.h"
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
void WriteFdt(Dtk_NodePtr inNode)
{
enum type_detk subtype;
subtype = inNode->GetNodeSubType();
// subtype can be DTK_TYPE_MEASURE or DTK_TYPE_FDT
Dtk_FdtPtr TmpFdt = inNode->GetDtk_FdtPtr();
if (TmpFdt.IsNotNULL())
{
// Used to write an XML File
{
XmlWriteFdt(TmpFdt);
}
// Used to write an PDF File
{
}
}
}

Sample to browse a Dtk_Feature

#include "datakit.h"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
void ActivateFeatureDump(Dtk_bool inDumpFeature)
{
toDumpFeatures = inDumpFeature;
}
{
return;
// Get the Feature associated to the current node, if exists,
// otherwise a NULL pointer is returned
Dtk_FeaturePtr TmpFeature = inNode->GetDtk_FeaturePtr();
if (TmpFeature.IsNotNULL())
{
// Used to write an XML File
{
XmlWriteFeature(TmpFeature);
}
}
}

Sample to browse a Dtk_LayerInfosSet

#include "datakit.h"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
Dtk_LayerInfosSetPtr TmpLayerInfosSet = inNode->GetDtk_LayerInfosSetPtr();
if (TmpLayerInfosSet.IsNotNULL())
{
Dtk_Size_t NumLayerFilters = TmpLayerInfosSet->GetNumLayerFilters();
Dtk_Size_t CurrentLayer, DefaultLayerFilter;
TmpLayerInfosSet->GetCurrentLayer( CurrentLayer );
TmpLayerInfosSet->GetDefaultLayerFilter(DefaultLayerFilter);
auto const& layers = TmpLayerInfosSet->GetLayers();
for ( Dtk_LayerInfosSet::Layer layer : layers )
{
Dtk_string LayerName = layer.GetName();
Dtk_ID LayerID = layer.GetID();
DTK_UNUSED( LayerName );
DTK_UNUSED( LayerID );
}
for ( Dtk_Size_t i = 0; i < NumLayerFilters; i++)
{
Dtk_LayerFilterInfosPtr TmpLayerFilter = TmpLayerInfosSet->GetLayerFilterByPos(i);
Dtk_tab< Dtk_Size_t > SelectedLayers;
TmpLayerFilter->GetSelectedLayers(SelectedLayers);
Dtk_string LayerFilterName;
TmpLayerFilter->GetName(LayerFilterName);
}
{
XmlWriteLayerFilter(TmpLayerInfosSet);
}
}
}

Sample to browse a Dtk_mesh

#include "datakit.h"
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
void WriteDtk_Mesh(const Dtk_MeshPtr& inMeshToWrite)
{
// convert triangles-strip, fans, polygons into simple triangles
inMeshToWrite->explode();
// Used to write a PDF File
{
}
// Used to write an XML File
{
XmlWriteMesh(inMeshToWrite);
}
Dtk_RGB rgb = inMeshToWrite->get_mesh_color(); // mesh global color.
// vertices :
Dtk_Size_t nbvertices = inMeshToWrite->get_nb_vertices();
Dtk_Size_t i, j;
for (i = 0; i < nbvertices; i++)
{
Dtk_pnt pnt;
Dtk_dir dir;
Dtk_RGB color;
float u, v;
u = v = 0.0;
inMeshToWrite->get_vertex(i, &pnt); // coordinates of the vertices
if (inMeshToWrite->has_normals())
inMeshToWrite->get_normal(i, &dir); // vertex normal (if enabled)
if (inMeshToWrite->has_colors())
inMeshToWrite->get_color(i, &color); // vertex color (if enabled)
if (inMeshToWrite->has_texcoords())
{
u = inMeshToWrite->GetUTexture(i); // vertex u,v texture coordinate (if enabled)
v = inMeshToWrite->GetVTexture(i);
}
}
// mesh_faces
Dtk_Size_t k, m, nbmeshfaces = inMeshToWrite->get_nb_mesh_face();
for (i = 0; i < nbmeshfaces; i++)
{
Dtk_mesh_face* mf = inMeshToWrite->get_mesh_face(i);
Dtk_Size_t nbtriangles = mf->get_nbtriangles();
Dtk_Int32 trianglesindices[3];
for (j = 0; j < nbtriangles; j++)
{
const Dtk_UInt32* tri = mf->get_triangle_indices(j);
trianglesindices[0] = tri[0];
trianglesindices[1] = tri[1];
trianglesindices[2] = tri[2];
// id of vertex in vertices table you read in the first step of this function
}
//face boundaries
Dtk_Size_t nbpolyline = mf->get_nbpolylines();
for (j = 0; j < nbpolyline; j++)
{
const Dtk_tab<Dtk_UInt32> *pnt;
pnt = mf->get_polyline_indices(j);
Dtk_Size_t nbvertex = pnt->size();
for (k = 0; k < nbvertex; k++)
{
m = (*pnt)[k]; // id of vertex in vertices table
Dtk_pnt pt = inMeshToWrite->get_vertex(m);
}
}
}
}
void WriteMesh(Dtk_NodePtr inNode)
{
Dtk_MeshPtr TmpMesh = inNode->GetDtk_MeshPtr();
if (TmpMesh.IsNotNULL())
{
TmpMesh->Transform(CurrentMatrix);
WriteDtk_Mesh(TmpMesh);
}
}

Sample to browse a Dtk_MetaData

#include "datakit.h"
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
{
enum type_detk subtype;
subtype = inNode->GetNodeSubType();
// subtype can be DTK_TYPE_PUBLICATION, DTK_TYPE_MEASURE or DTK_TYPE_METADATA
Dtk_MetaDataPtr TmpMetaData = inNode->GetDtk_MetaDataPtr();
if (TmpMetaData.IsNotNULL())
{
if (xmlDumpFile)
{
}
{
tabMetadata.push_back(TmpMetaData);
PdfWriteMetaData(tabMetadata);
}
}
}

Sample to browse a Dtk_ModelDisplay

#include "datakit.h"
{
Dtk_ModelDisplayPtr TmpModelDisplay = inNode->GetDtk_ModelDisplayPtr();
if (TmpModelDisplay.IsNotNULL())
{
if (xmlDumpFile)
{
}
}
//To get the entities attached to this model display use the connector
Dtk_tab< Dtk_NodeConnectorPtr > AssociatedEntities;
inNode->GetAssociatedEntities(AssociatedEntities);
// Already done in WriteNode
// Dtk_Size_t i, NumAssoc = AssociatedEntities.size();
// for ( i = 0; i < NumAssoc; i++ )
// {
// if (xmlDumpFile)
// {
// Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_NodeConnector(xmlDumpFile,AssociatedEntities[i]);
// }
// }
}

Sample to browse a Dtk_Preview

#include "datakit.h"
// Writes the image stream of a Dtk_Preview to a file on disk.
void WritePreview( const Dtk_PreviewPtr& inPreview, const Dtk_string& inName )
{
if( inPreview.IsNULL() )
return;
Dtk_Int32 size = inPreview->GetStreamSize();
char* imageData = inPreview->GetStream();
if( size <= 0 || imageData == nullptr )
return;
Dtk_string previewExt;
switch( inPreview->GetType() )
{
previewExt = "jpg";
break;
previewExt = "bmp";
break;
previewExt = "png";
break;
previewExt = "cgm";
break;
previewExt = "gif";
break;
previewExt = "tiff";
break;
previewExt = "ico";
break;
previewExt = "emf";
break;
default:
previewExt = "jpg"; // Default to jpg if type is unknown
break;
}
Dtk_string previewName = inName + "_Preview." + previewExt;
FILE* previewPtr = previewName.OpenFile( "wb" );
if( previewPtr )
{
fwrite( imageData, sizeof( char ), size, previewPtr );
fclose( previewPtr );
//std::cout << "Writing Preview " << previewName.c_str() << std::endl;
}
}
WriteColorPalette
void WriteColorPalette(Dtk_NodePtr inNode)
Definition: WriteColorPalette.cpp:5
WriteModelDisplay
void WriteModelDisplay(Dtk_NodePtr inNode)
Definition: WriteModelDisplay.cpp:5
Dtk_ID
uint32_t Dtk_ID
Definition: define.h:688
Dtk_transfo
This is the Transformation dedicated class.
Definition: dtk_transfo.hpp:19
PdfWriteEntity
void PdfWriteEntity(Dtk_EntityPtr inEntity)
Definition: PdfWrite.cpp:176
Dtk_mesh_face
This is a high level face class.
Definition: util_mesh_dtk.hpp:865
Dtk_DumpXml_Dtk_MetadataPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MetadataPtr(FILE *F, const Dtk_MetaDataPtr &inObject)
Definition: util_xml_dtk.cpp:4991
Dtk_Node::FdtType
@ FdtType
Definition: dtk_maindoc.hpp:257
XmlWriteMesh
void XmlWriteMesh(const Dtk_MeshPtr &inMeshToWrite)
Definition: XmlWrite.cpp:63
PREVIEW_TYPE_DETK_TIFF
@ PREVIEW_TYPE_DETK_TIFF
Definition: define.h:638
Dtk_SmartPtr::IsNotNULL
Dtk_bool IsNotNULL() const
Definition: util_ptr_dtk.hpp:119
util_xml_dtk.hpp
XmlWriteDrawing
void XmlWriteDrawing(const Dtk_DrawingPtr &inDrawing)
Definition: XmlWrite.cpp:94
Dtk_LayerInfosSet::Layer
Definition: util_ent_dtk.hpp:519
toDumpFeatures
Dtk_bool toDumpFeatures
Definition: WriteFeature.cpp:5
WriteDtk_Mesh
void WriteDtk_Mesh(const Dtk_MeshPtr &inMeshToWrite)
Definition: WriteMesh.cpp:8
XmlWriteFeature
void XmlWriteFeature(const Dtk_FeaturePtr &inFeature)
Definition: XmlWrite.cpp:112
PdfWriteMetaData
void PdfWriteMetaData(Dtk_ComponentPtr inComponent)
Definition: PdfWrite.cpp:120
Dtk_Node::ModelDisplayType
@ ModelDisplayType
Definition: dtk_maindoc.hpp:264
WriteDrawing
void WriteDrawing(Dtk_NodePtr inNode)
Definition: WriteDrawing.cpp:4
Dtk_UInt32
uint32_t Dtk_UInt32
Definition: define.h:687
Dtk_string
This is a high level string class.
Definition: dtk_string.hpp:53
Dtk_Size_t
size_t Dtk_Size_t
Definition: define.h:711
PREVIEW_TYPE_DETK_GIF
@ PREVIEW_TYPE_DETK_GIF
Definition: define.h:637
Dtk_Node::KinematicsType
@ KinematicsType
Definition: dtk_maindoc.hpp:259
Dtk_mesh_face::get_polyline_indices
const Dtk_tab< Dtk_UInt32 > * get_polyline_indices(Dtk_Size_t inI) const
Get inI-th polygon.
XmlWriteConstraint
void XmlWriteConstraint(const Dtk_ConstraintPtr &inConstraint)
Definition: XmlWrite.cpp:74
Dtk_DumpXml_Dtk_NodePtr_End
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr_End(FILE *F)
Definition: util_xml_dtk.cpp:4773
toDumpPDF
Dtk_bool toDumpPDF
Definition: PdfWrite.cpp:18
PREVIEW_TYPE_DETK_JPG
@ PREVIEW_TYPE_DETK_JPG
Definition: define.h:633
ActivateFeatureDump
void ActivateFeatureDump(Dtk_bool inDumpFeature)
Definition: WriteFeature.cpp:7
Dtk_Node::BodyType
@ BodyType
Definition: dtk_maindoc.hpp:254
Dtk_Node::CameraType
@ CameraType
Definition: dtk_maindoc.hpp:265
DTK_FALSE
#define DTK_FALSE
Definition: define.h:727
Dtk_bool
char Dtk_bool
Definition: define.h:724
Dtk_string::OpenFile
FILE * OpenFile(const Dtk_string &inRights) const
File Utility : Open a file with the given rights.
PREVIEW_TYPE_DETK_PNG
@ PREVIEW_TYPE_DETK_PNG
Definition: define.h:635
PdfEndNode
void PdfEndNode()
Definition: PdfWrite.cpp:171
Dtk_DumpXml_Dtk_NodePtr_Init
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr_Init(FILE *F, const Dtk_NodePtr &inObject)
Definition: util_xml_dtk.cpp:4674
WriteFeature
void WriteFeature(Dtk_NodePtr inNode)
Definition: WriteFeature.cpp:13
WriteMesh
void WriteMesh(Dtk_NodePtr inNode)
Definition: WriteMesh.cpp:80
Dtk_DumpXml_Dtk_NodeConnector
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodeConnector(FILE *inFile, const Dtk_NodeConnectorPtr &inNodeConnector)
Definition: util_xml_dtk.cpp:6968
Dtk_mesh_face::get_nbpolylines
Dtk_Size_t get_nbpolylines() const
Get the number of polylines kept in the class instance.
WriteConstraints
void WriteConstraints(Dtk_NodePtr inNode)
Definition: WriteConstraints.cpp:5
XmlWriteFdt
void XmlWriteFdt(const Dtk_FdtPtr &inFdt)
Definition: XmlWrite.cpp:106
WriteMetaData
void WriteMetaData(Dtk_NodePtr inNode)
Definition: WriteMetaData.cpp:8
PREVIEW_TYPE_DETK_CGM
@ PREVIEW_TYPE_DETK_CGM
Definition: define.h:636
PREVIEW_TYPE_DETK_BMP
@ PREVIEW_TYPE_DETK_BMP
Definition: define.h:634
WriteFdt
void WriteFdt(Dtk_NodePtr inNode)
Definition: WriteFdt.cpp:7
WriteCamera
void WriteCamera(Dtk_NodePtr inNode)
Definition: WriteCamera.cpp:5
WriteKinematics
void WriteKinematics(Dtk_NodePtr inNode)
Definition: WriteKinematics.cpp:5
PdfInitNode
Dtk_ID PdfInitNode(Dtk_NodePtr inNode)
Definition: PdfWrite.cpp:159
tess_BodyToMeshes
Dtk_ErrorStatus tess_BodyToMeshes(const Dtk_BodyPtr &inBodyToWrite, Dtk_tab< Dtk_MeshPtr > &outMeshes, Dtk_tab< Dtk_Int32 > &outIsSolid, Dtk_bool inTessWireframe=DTK_FALSE, Dtk_bool inApplyRenderInfos=DTK_FALSE)
Tesselate a body. Generates one mesh per shell in the body.
Dtk_Int32
int32_t Dtk_Int32
Definition: define.h:686
Dtk_Node::FullType
This is the Node FullType Class The Dtk_Node::FullType object is used to retrieve the full informatio...
Definition: dtk_maindoc.hpp:275
XmlWriteAxisSystem
void XmlWriteAxisSystem(const Dtk_AxisSystemPtr &inAxis)
Definition: XmlWrite.cpp:88
Dtk_Node::MetaDataType
@ MetaDataType
Definition: dtk_maindoc.hpp:263
PREVIEW_TYPE_DETK_EMF
@ PREVIEW_TYPE_DETK_EMF
Definition: define.h:640
Dtk_mesh_face::get_triangle_indices
const Dtk_UInt32 * get_triangle_indices(Dtk_Size_t inI) const
Get pointer of triangle indices of i-th triangle.
Dtk_DumpXml_GetFile
FILE * Dtk_DumpXml_GetFile()
Definition: util_xml_dtk.cpp:5124
Dtk_Node::ConstraintType
@ ConstraintType
Definition: dtk_maindoc.hpp:267
PREVIEW_TYPE_DETK_ICO
@ PREVIEW_TYPE_DETK_ICO
Definition: define.h:639
Dtk_SmartPtr< Dtk_Entity >::DtkDynamicCast
static Dtk_SmartPtr< Dtk_Entity > DtkDynamicCast(const Dtk_SmartPtr< T2 > &p)
Definition: util_ptr_dtk.hpp:101
PREVIEW_TYPE_DETK_UNKNOWN
@ PREVIEW_TYPE_DETK_UNKNOWN
Definition: define.h:632
Dtk_ErrorStatus
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
Dtk_SmartPtr::IsNULL
Dtk_bool IsNULL() const
Definition: util_ptr_dtk.hpp:118
CurrentMatrix
Dtk_transfo CurrentMatrix
Definition: WritePrototype.cpp:13
Dtk_Node::LayerInfosSetType
@ LayerInfosSetType
Definition: dtk_maindoc.hpp:261
Dtk_SmartPtr
Definition: util_ptr_dtk.hpp:37
dtkTypeError
Dtk_string dtkTypeError(Dtk_Int32 errNumero)
catiav5w::NodeType
NodeType
Type of Specification Tree Node used into a CATPart file.
Definition: catiav5w.hpp:424
Dtk_string::c_str
const char * c_str() const
Retrieve the ASCII conversion string.
XmlWriteBody
void XmlWriteBody(const Dtk_BodyPtr &inBody)
Definition: XmlWrite.cpp:118
tess.h
Dtk_pnt
This is a mathematical point class.
Definition: dtk_pnt.hpp:20
type_detk
type_detk
Definition: define.h:21
datakit.h
GetTesselationStatus
int GetTesselationStatus()
Definition: TesselationEngine.cpp:11
Dtk_mesh_face::get_nbtriangles
Dtk_Size_t get_nbtriangles() const
Get the number of simple triangles kept in the class instance.
WritePreview
void WritePreview(const Dtk_PreviewPtr &inPreview, const Dtk_string &inName)
Definition: WritePreview.cpp:4
WriteNodeConnector
void WriteNodeConnector(Dtk_NodePtr inNode)
Definition: WriteNodeConnector.cpp:5
Dtk_tab< Dtk_NodeConnectorPtr >
WriteLayerFilter
void WriteLayerFilter(Dtk_NodePtr inNode)
Definition: WriteLayerFilter.cpp:5
Dtk_tab::size
Dtk_Size_t size() const
Returns the size of the array.
Definition: util_stl_dtk.hpp:503
Dtk_Node::ColorInfosSetType
@ ColorInfosSetType
Definition: dtk_maindoc.hpp:262
IsXmlDumpActivated
Dtk_bool IsXmlDumpActivated()
Definition: XmlWrite.cpp:17
WriteAxisSystem
void WriteAxisSystem(Dtk_NodePtr inNode)
Definition: WriteAxisSystem.cpp:8
XmlWriteColorPalette
void XmlWriteColorPalette(const Dtk_ColorInfosSetPtr &inColorInfos)
Definition: XmlWrite.cpp:81
dtkNoError
@ dtkNoError
Definition: error_dtk.hpp:151
Dtk_tab::push_back
void push_back(const T &x)
Inserts an element at the end of the array.
Definition: util_stl_dtk.hpp:416
WriteNode
Dtk_ErrorStatus WriteNode(Dtk_NodePtr inNode)
Definition: WriteNode.cpp:16
Dtk_RGB
Definition: dtk_rgb.hpp:7
Dtk_Node::DrawingType
@ DrawingType
Definition: dtk_maindoc.hpp:258
WriteBody
void WriteBody(Dtk_NodePtr inNode)
Definition: WriteBody.cpp:13
DTK_UNUSED
#define DTK_UNUSED(a)
Definition: define.h:729
Dtk_Node::AxisSystemType
@ AxisSystemType
Definition: dtk_maindoc.hpp:260
XmlWriteCamera
void XmlWriteCamera(const Dtk_CameraPtr &inCamera)
Definition: XmlWrite.cpp:100
WriteNode.hpp
Dtk_dir
This is a mathematical direction class.
Definition: dtk_dir.hpp:14
IsPdfDumpActivated
Dtk_bool IsPdfDumpActivated()
Definition: PdfWrite.cpp:29
Dtk_Node::MeshType
@ MeshType
Definition: dtk_maindoc.hpp:255
XmlWriteLayerFilter
void XmlWriteLayerFilter(const Dtk_LayerInfosSetPtr &inLayerInfos)
Definition: XmlWrite.cpp:136
Dtk_DumpXml_Dtk_ModelDisplayPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ModelDisplayPtr(FILE *F, const Dtk_ModelDisplayPtr &inVal)
Definition: util_xml_dtk.cpp:3166