 |
DATAKIT SDK
V2026.3
|
|
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 "../../WritingSample/PdfWrite/PdfWrite.hpp"
{
{
Dtk_Int32 size = TmpPreview->GetStreamSize();
char *jpgimage = TmpPreview->GetStream();
FILE *jpg = Preview_name.
OpenFile(
"wb" );
if( jpg )
{
fwrite( jpgimage, sizeof( char ), size, jpg );
fclose( jpg );
}
}
if( xmlDumpFile )
{
}
{
}
int NodeBlankedStatus = inNode->GetInfos()->GetBlankedStatus();
if( NodeBlankedStatus == 0 )
{
{
{
break;
}
{
break;
}
{
break;
}
{
break;
}
{
break;
}
{
break;
}
{
break;
}
{
break;
}
{
break;
}
{
break;
}
{
break;
}
{
break;
}
default:
{
break;
}
}
}
{
NumChildren = inNode->GetNumChildren();
for( i = 0; i < NumChildren; i++ )
{
}
}
if( xmlDumpFile )
{
}
{
}
}
Sample to browse a Dtk_NodeConnector
{
inNode->GetAssociatedEntities(AssociatedEntities);
for (i = 0; i < NumAssoc; i++)
{
if (xmlDumpFile)
{
}
}
}
Sample to browse a Dtk_AxisSystem
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
subtype = inNode->GetNodeSubType();
{
Dtk_string SystemName = TmpAxis->get_info()->GetName();
{
}
{
}
}
}
Sample to browse a Dtk_Body
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
using namespace std;
{
int NodeInfiniteGeometry = inNode->GetInfos()->GetInfiniteGeometryFlag();
if (NodeInfiniteGeometry == 0)
{
{
{
}
}
const Dtk_MeshPtr TmpFacetedBody = inNode->GetDtk_MeshPtr();
{
}
{
bool tesselWireframe = true;
if( inNode->Name().len() > 0 )
cout << "NodeName = " << inNode->Name().c_str() << ";";
if (err_tess == 0)
{
for (i = 0; i < nbmeshes; i++)
{
}
}
{
}
}
}
}
Sample to browse a Dtk_Camera
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
{
{
}
}
}
Sample to browse a Dtk_ColorInfosSet
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
{
{
}
}
}
Sample to browse a Dtk_ConstraintPtr
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
{
{
}
}
}
Sample to browse a Dtk_Drawing
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
{
{
}
}
}
Sample to browse a Dtk_Fdt
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
subtype = inNode->GetNodeSubType();
{
{
}
{
}
}
}
Sample to browse a Dtk_Feature
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
}
{
return;
{
{
}
}
}
Sample to browse a Dtk_LayerInfosSet
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
{
Dtk_Size_t NumLayerFilters = TmpLayerInfosSet->GetNumLayerFilters();
TmpLayerInfosSet->GetCurrentLayer( CurrentLayer );
TmpLayerInfosSet->GetDefaultLayerFilter(DefaultLayerFilter);
auto const& layers = TmpLayerInfosSet->GetLayers();
{
Dtk_ID LayerID = layer.GetID();
}
{
TmpLayerFilter->GetSelectedLayers(SelectedLayers);
TmpLayerFilter->GetName(LayerFilterName);
}
{
}
}
}
Sample to browse a Dtk_mesh
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
#include "../../WritingSample/XmlWrite/XmlWrite.hpp"
{
inMeshToWrite->explode();
{
}
{
}
Dtk_RGB rgb = inMeshToWrite->get_mesh_color();
Dtk_Size_t nbvertices = inMeshToWrite->get_nb_vertices();
for (i = 0; i < nbvertices; i++)
{
float u, v;
u = v = 0.0;
inMeshToWrite->get_vertex(i, &pnt);
if (inMeshToWrite->has_normals())
inMeshToWrite->get_normal(i, &dir);
if (inMeshToWrite->has_colors())
inMeshToWrite->get_color(i, &color);
if (inMeshToWrite->has_texcoords())
{
u = inMeshToWrite->GetUTexture(i);
v = inMeshToWrite->GetVTexture(i);
}
}
Dtk_Size_t k, m, nbmeshfaces = inMeshToWrite->get_nb_mesh_face();
for (i = 0; i < nbmeshfaces; i++)
{
for (j = 0; j < nbtriangles; j++)
{
trianglesindices[0] = tri[0];
trianglesindices[1] = tri[1];
trianglesindices[2] = tri[2];
}
for (j = 0; j < nbpolyline; j++)
{
for (k = 0; k < nbvertex; k++)
{
m = (*pnt)[k];
Dtk_pnt pt = inMeshToWrite->get_vertex(m);
}
}
}
}
{
{
}
}
Sample to browse a Dtk_MetaData
#include "../../WritingSample/PdfWrite/PdfWrite.hpp"
{
subtype = inNode->GetNodeSubType();
{
if (xmlDumpFile)
{
}
{
}
}
}
Sample to browse a Dtk_ModelDisplay
{
{
if (xmlDumpFile)
{
}
}
inNode->GetAssociatedEntities(AssociatedEntities);
}
Sample to browse a Dtk_Preview
{
return;
char* imageData = inPreview->GetStream();
if( size <= 0 || imageData == nullptr )
return;
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";
break;
}
Dtk_string previewName = inName +
"_Preview." + previewExt;
FILE* previewPtr = previewName.
OpenFile(
"wb" );
if( previewPtr )
{
fwrite( imageData, sizeof( char ), size, previewPtr );
fclose( previewPtr );
}
}
void WriteColorPalette(Dtk_NodePtr inNode)
Definition: WriteColorPalette.cpp:5
void WriteModelDisplay(Dtk_NodePtr inNode)
Definition: WriteModelDisplay.cpp:5
uint32_t Dtk_ID
Definition: define.h:688
This is the Transformation dedicated class.
Definition: dtk_transfo.hpp:19
void PdfWriteEntity(Dtk_EntityPtr inEntity)
Definition: PdfWrite.cpp:176
This is a high level face class.
Definition: util_mesh_dtk.hpp:865
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MetadataPtr(FILE *F, const Dtk_MetaDataPtr &inObject)
Definition: util_xml_dtk.cpp:4991
@ FdtType
Definition: dtk_maindoc.hpp:257
void XmlWriteMesh(const Dtk_MeshPtr &inMeshToWrite)
Definition: XmlWrite.cpp:63
@ PREVIEW_TYPE_DETK_TIFF
Definition: define.h:638
Dtk_bool IsNotNULL() const
Definition: util_ptr_dtk.hpp:119
void XmlWriteDrawing(const Dtk_DrawingPtr &inDrawing)
Definition: XmlWrite.cpp:94
Definition: util_ent_dtk.hpp:519
Dtk_bool toDumpFeatures
Definition: WriteFeature.cpp:5
void WriteDtk_Mesh(const Dtk_MeshPtr &inMeshToWrite)
Definition: WriteMesh.cpp:8
void XmlWriteFeature(const Dtk_FeaturePtr &inFeature)
Definition: XmlWrite.cpp:112
void PdfWriteMetaData(Dtk_ComponentPtr inComponent)
Definition: PdfWrite.cpp:120
@ ModelDisplayType
Definition: dtk_maindoc.hpp:264
void WriteDrawing(Dtk_NodePtr inNode)
Definition: WriteDrawing.cpp:4
uint32_t Dtk_UInt32
Definition: define.h:687
This is a high level string class.
Definition: dtk_string.hpp:53
size_t Dtk_Size_t
Definition: define.h:711
@ PREVIEW_TYPE_DETK_GIF
Definition: define.h:637
@ KinematicsType
Definition: dtk_maindoc.hpp:259
const Dtk_tab< Dtk_UInt32 > * get_polyline_indices(Dtk_Size_t inI) const
Get inI-th polygon.
void XmlWriteConstraint(const Dtk_ConstraintPtr &inConstraint)
Definition: XmlWrite.cpp:74
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr_End(FILE *F)
Definition: util_xml_dtk.cpp:4773
Dtk_bool toDumpPDF
Definition: PdfWrite.cpp:18
@ PREVIEW_TYPE_DETK_JPG
Definition: define.h:633
void ActivateFeatureDump(Dtk_bool inDumpFeature)
Definition: WriteFeature.cpp:7
@ BodyType
Definition: dtk_maindoc.hpp:254
@ CameraType
Definition: dtk_maindoc.hpp:265
#define DTK_FALSE
Definition: define.h:727
char Dtk_bool
Definition: define.h:724
FILE * OpenFile(const Dtk_string &inRights) const
File Utility : Open a file with the given rights.
@ PREVIEW_TYPE_DETK_PNG
Definition: define.h:635
void PdfEndNode()
Definition: PdfWrite.cpp:171
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr_Init(FILE *F, const Dtk_NodePtr &inObject)
Definition: util_xml_dtk.cpp:4674
void WriteFeature(Dtk_NodePtr inNode)
Definition: WriteFeature.cpp:13
void WriteMesh(Dtk_NodePtr inNode)
Definition: WriteMesh.cpp:80
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodeConnector(FILE *inFile, const Dtk_NodeConnectorPtr &inNodeConnector)
Definition: util_xml_dtk.cpp:6968
Dtk_Size_t get_nbpolylines() const
Get the number of polylines kept in the class instance.
void WriteConstraints(Dtk_NodePtr inNode)
Definition: WriteConstraints.cpp:5
void XmlWriteFdt(const Dtk_FdtPtr &inFdt)
Definition: XmlWrite.cpp:106
@ PREVIEW_TYPE_DETK_CGM
Definition: define.h:636
@ PREVIEW_TYPE_DETK_BMP
Definition: define.h:634
void WriteFdt(Dtk_NodePtr inNode)
Definition: WriteFdt.cpp:7
void WriteCamera(Dtk_NodePtr inNode)
Definition: WriteCamera.cpp:5
void WriteKinematics(Dtk_NodePtr inNode)
Definition: WriteKinematics.cpp:5
Dtk_ID PdfInitNode(Dtk_NodePtr inNode)
Definition: PdfWrite.cpp:159
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.
int32_t Dtk_Int32
Definition: define.h:686
This is the Node FullType Class The Dtk_Node::FullType object is used to retrieve the full informatio...
Definition: dtk_maindoc.hpp:275
void XmlWriteAxisSystem(const Dtk_AxisSystemPtr &inAxis)
Definition: XmlWrite.cpp:88
@ MetaDataType
Definition: dtk_maindoc.hpp:263
@ PREVIEW_TYPE_DETK_EMF
Definition: define.h:640
const Dtk_UInt32 * get_triangle_indices(Dtk_Size_t inI) const
Get pointer of triangle indices of i-th triangle.
FILE * Dtk_DumpXml_GetFile()
Definition: util_xml_dtk.cpp:5124
@ ConstraintType
Definition: dtk_maindoc.hpp:267
@ PREVIEW_TYPE_DETK_ICO
Definition: define.h:639
static Dtk_SmartPtr< Dtk_Entity > DtkDynamicCast(const Dtk_SmartPtr< T2 > &p)
Definition: util_ptr_dtk.hpp:101
@ PREVIEW_TYPE_DETK_UNKNOWN
Definition: define.h:632
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
Dtk_bool IsNULL() const
Definition: util_ptr_dtk.hpp:118
Dtk_transfo CurrentMatrix
Definition: WritePrototype.cpp:13
@ LayerInfosSetType
Definition: dtk_maindoc.hpp:261
Definition: util_ptr_dtk.hpp:37
Dtk_string dtkTypeError(Dtk_Int32 errNumero)
NodeType
Type of Specification Tree Node used into a CATPart file.
Definition: catiav5w.hpp:424
const char * c_str() const
Retrieve the ASCII conversion string.
void XmlWriteBody(const Dtk_BodyPtr &inBody)
Definition: XmlWrite.cpp:118
This is a mathematical point class.
Definition: dtk_pnt.hpp:20
type_detk
Definition: define.h:21
int GetTesselationStatus()
Definition: TesselationEngine.cpp:11
Dtk_Size_t get_nbtriangles() const
Get the number of simple triangles kept in the class instance.
void WritePreview(const Dtk_PreviewPtr &inPreview, const Dtk_string &inName)
Definition: WritePreview.cpp:4
void WriteNodeConnector(Dtk_NodePtr inNode)
Definition: WriteNodeConnector.cpp:5
void WriteLayerFilter(Dtk_NodePtr inNode)
Definition: WriteLayerFilter.cpp:5
Dtk_Size_t size() const
Returns the size of the array.
Definition: util_stl_dtk.hpp:503
@ ColorInfosSetType
Definition: dtk_maindoc.hpp:262
Dtk_bool IsXmlDumpActivated()
Definition: XmlWrite.cpp:17
void WriteAxisSystem(Dtk_NodePtr inNode)
Definition: WriteAxisSystem.cpp:8
void XmlWriteColorPalette(const Dtk_ColorInfosSetPtr &inColorInfos)
Definition: XmlWrite.cpp:81
@ dtkNoError
Definition: error_dtk.hpp:151
void push_back(const T &x)
Inserts an element at the end of the array.
Definition: util_stl_dtk.hpp:416
Dtk_ErrorStatus WriteNode(Dtk_NodePtr inNode)
Definition: WriteNode.cpp:16
Definition: dtk_rgb.hpp:7
@ DrawingType
Definition: dtk_maindoc.hpp:258
void WriteBody(Dtk_NodePtr inNode)
Definition: WriteBody.cpp:13
#define DTK_UNUSED(a)
Definition: define.h:729
@ AxisSystemType
Definition: dtk_maindoc.hpp:260
void XmlWriteCamera(const Dtk_CameraPtr &inCamera)
Definition: XmlWrite.cpp:100
This is a mathematical direction class.
Definition: dtk_dir.hpp:14
Dtk_bool IsPdfDumpActivated()
Definition: PdfWrite.cpp:29
@ MeshType
Definition: dtk_maindoc.hpp:255
void XmlWriteLayerFilter(const Dtk_LayerInfosSetPtr &inLayerInfos)
Definition: XmlWrite.cpp:136
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ModelDisplayPtr(FILE *F, const Dtk_ModelDisplayPtr &inVal)
Definition: util_xml_dtk.cpp:3166