 |
DATAKIT API
V2025.4
|
|
#ifdef WIN32
#include <windows.h>
#endif
{
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
cube1->info()->SetName("FirstCube");
cube2->info()->SetName("SecondCube");
Dtk_transfo translate(
Dtk_dir(1, 0, 0),
Dtk_dir(0, 1, 0),
Dtk_dir(0, 0, 1),
Dtk_pnt(200, 0, 0));
cube2->Transform(translate);
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
CubeMesh->info()->SetName("MyMesh");
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
axis->SetName("MyAxisSystem");
axis->info()->AddAttribute(
"NXNAME",
Dtk_Val(
"ANOTHERAXISSYSTEM"));
axis->info()->SetColor(255, 255, 0);
axis->SetMatrix(t);
return axis;
}
{
body->info()->SetName("MyReferencePlane");
body->info()->AddAttribute(
"NXNAME",
Dtk_Val(
"MYPLANE"));
body->info()->SetColor(0, 255, 255);
body->AddOpenShell(shell);
return body;
}
{
body->info()->SetName("MyFixedRefPlane");
body->info()->AddAttribute(
"NXNAME",
Dtk_Val(
"ANOTHERFIXEDPLANENAME"));
body->info()->SetColor(0, 0, 255);
body->AddOpenShell(shell);
double trim[] = { -10,10,-10,10 };
plane->SetTrimUVBox(trim);
return body;
}
{
body->info()->SetName("MyRefAxis");
body->info()->AddAttribute(
"NXNAME",
Dtk_Val(
"ANOTHERAXISNAME"));
body->info()->SetColor(0, 255, 0);
body->AddOpenShell(shell);
shell->AddWire(tab);
return body;
}
{
body->info()->SetName("MyRefPoint");
body->info()->SetColor(255, 100, 0);
body->AddOpenShell(shell);
shell->AddWire(tab);
return body;
}
{
cube->info()->SetName("MyCube");
cube->info()->AddAttribute(
"NXNAME",
Dtk_Val(
"SOLIDBODYNAME"));
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
if (!F)
{
std::cout <<
"error : " << parasolidfic.
c_str() <<
" does not exist" << endl;
}
fseek(F, 0, SEEK_END);
fseek(F, 0, SEEK_SET);
fread(&flux[0], 1, flux.
size(), F);
fclose(F);
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
if (!F)
{
std::cout <<
"error : " << jtfic.
c_str() <<
" does not exist" << endl;
}
fseek(F, 0, SEEK_END);
fseek(F, 0, SEEK_SET);
fread(&flux[0], 1, flux.
size(), F);
fclose(F);
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
const int maxlayer = 257;
selectable.
resize(maxlayer, 1);
int i;
for (i = 1; i < maxlayer; i++)
{
visible[i] = (i % 2);
selectable[i] = ((i % 3) != 0);
}
filter456->SelectLayers(lay456);
filter678->SelectLayers(lay678);
lay->SetDefaultLayer(12);
return lay;
}
{
Dtk_transfo translatescale(
Dtk_dir(20, 0, 0),
Dtk_dir(0, 20, 0),
Dtk_dir(0, 0, 20),
Dtk_pnt(150, 0, 0));
CylMesh->Transform(translatescale);
CubeBody->info()->SetLayer(5);
CylMesh->info()->SetLayer(6);
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
cube1->info()->SetName("FirstCube");
cube2->info()->SetName("SecondCube");
Dtk_transfo translate(
Dtk_dir(1, 0, 0),
Dtk_dir(0, 1, 0),
Dtk_dir(0, 0, 1),
Dtk_pnt(200, 0, 0));
cube2->Transform(translate);
CylMesh->info()->SetName("OneMesh");
Dtk_transfo translatescale(
Dtk_dir(10, 0, 0),
Dtk_dir(0, 10, 0),
Dtk_dir(0, 0, 10),
Dtk_pnt(-100, 0, 0));
CylMesh->Transform(translatescale);
WireBody->Transform(translatescale);
cube1->info()->AddAttribute(
"NXGROUPS",
Dtk_Val(
"GroupRoot\\Sub1\\"));
cube2->info()->AddAttribute(
"NXGROUPS",
Dtk_Val(
"GroupRoot\\Sub1\\\\GroupRoot\\Sub2\\"));
CylMesh->info()->AddAttribute(
"NXGROUPS",
Dtk_Val(
"GroupRoot\\Sub2\\"));
WireBody->info()->AddAttribute(
"NXGROUPS",
Dtk_Val(
"GroupRoot\\Sub2\\"));
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
cube1->info()->SetName("FirstCube");
cube2->info()->SetName("SecondCube");
Dtk_transfo translate(
Dtk_dir(1, 0, 0),
Dtk_dir(0, 1, 0),
Dtk_dir(0, 0, 1),
Dtk_pnt(200, 0, 0));
cube2->Transform(translate);
cube1->info()->AddAttribute(
"NXREFERENCESET",
Dtk_Val(
"MyRef1\\MyRef2\\MyRef3\\"));
cube2->info()->AddAttribute(
"NXREFERENCESET",
Dtk_Val(
"MyRef1\\MyRef3\\"));
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
meta->SetCategory(category);
return meta;
}
{
def.
unit = Ugw::DefaultParameters::Unit::inch;
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
for (int i = 0; i < 217; i++)
{
}
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
if (!visible)
if (layer != -1)
return infos;
}
{
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
#ifdef USE_NX_READER
extern void nxreader_GetData(
const Dtk_string&,
void*&);
#define NX_RETRIEVE_ASSEMBLYDATA nxreader_GetData
#else
#define NX_RETRIEVE_ASSEMBLYDATA NULL
#endif
{
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
symb->Texts() = compotext;
double arrowlength = 5.5;
leader->GetInfo()->SetColor(
Dtk_RGB(0, 0, 255));
leader->GetInfo()->SetCurveThickNessInMM(0.7);
leader->GetInfo()->AddAttribute("NX_TextToLineGap", 10.0);
leader->GetInfo()->AddAttribute("NX_TextOverStubFactor", 0.1);
leader->GetInfo()->AddAttribute("NX_StubLength", 20.0);
leader->GetInfo()->AddAttribute("NX_StubSide", 1);
leader->GetInfo()->AddAttribute("NX_TextAlignment", 1);
leader->GetArrowHead().GetInfo()->AddAttribute("NX_ArrowAngle", 30.0);
leader->GetArrowHead().GetInfo()->AddAttribute("NX_DotDiameter", 1.5);
leader->GetArrowHead().GetInfo()->SetColor(
Dtk_RGB(255, 0, 255));
leader->GetArrowHead().GetInfo()->SetCurveThickNessInMM(2.0);
leader->GetArrowHead().GetInfo()->SetCurveLineType(
DTK_SOLIDLINE);
symb->AddLeader(leader);
pmi->info()->SetName("MyAnnot");
return pmi;
}
{
std::cout <<
"=> " << outputFileName.
c_str() << endl;
}
{
outputFileName = outputDirectory + L"simplebody.prt";
outputFileName = outputDirectory + L"twobodies.prt";
outputFileName = outputDirectory + L"mesh.prt";
errStatus =
UgwMesh(outputFileName, version);
outputFileName = outputDirectory + L"wire.prt";
errStatus =
UgwWire(outputFileName, version);
outputFileName = outputDirectory + L"refs.prt";
outputFileName = outputDirectory + L"extparasolid.prt";
errStatus =
UgwExternParasolid(outputFileName,
"../SampleFiles/Parasolid/extparasolid.x_b", version);
outputFileName = outputDirectory + L"extjt.prt";
errStatus =
UgwExternJTMesh(outputFileName,
"../SampleFiles/JT/externjt.jt", version);
outputFileName = outputDirectory + L"layers.prt";
errStatus =
UgwLayers(outputFileName, version);
outputFileName = outputDirectory + L"groups.prt";
errStatus =
UgwGroups(outputFileName, version);
outputFileName = outputDirectory + L"refsets.prt";
outputFileName = outputDirectory + L"meta.prt";
errStatus =
UgwMeta(outputFileName, version);
outputFileName = outputDirectory + L"colors.prt";
errStatus =
UgwColors(outputFileName, version);
outputFileName = outputDirectory + L"asm.prt";
errStatus =
UgwAsm(outputFileName, version);
outputFileName = outputDirectory + L"externasm.prt";
outputFileName = outputDirectory + L"annot.prt";
errStatus =
UgwAnnot(outputFileName, version);
return errStatus;
}
{
std::cout << endl << "----------------------------------------------" << endl;
std::cout << "Ug Write start" << endl;
nxDirectory = inResultDirectory + L"NX-Unigraphics/";
outputDirectory = inResultDirectory + L"NX-Unigraphics/nx5/";
outputDirectory = inResultDirectory + L"NX-Unigraphics/nx1980/";
outputDirectory = inResultDirectory + L"NX-Unigraphics/nx2212/";
std::cout << "Ug Write end" << endl;
return errStatus;
}
Dtk_ErrorStatus UgwGroups(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:336
Dtk_Double64 & Ratio()
Retrieves the text ratio - get/set -.
Dtk_InfoPtr MakeInstanceData(const Dtk_string &instancename, const Dtk_RGB &col, bool visible, int layer)
Definition: testlibugwrite.cpp:492
Dtk_ErrorStatus UgwRefSets(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:395
Dtk_SmartPtr< Dtk_Info > Dtk_InfoPtr
Handles a Dtk_Info object.
Definition: util_ptr_dtk.hpp:310
Dtk_ErrorStatus UgwExternParasolid(const Dtk_string &outputFileName, const Dtk_string ¶solidfic, int version)
Definition: testlibugwrite.cpp:208
Dtk_ErrorStatus UgwExternAsm(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:569
This is the Transformation dedicated class.
Definition: dtk_transfo.hpp:19
Dtk_ErrorStatus WriteAxisSystem(const Dtk_AxisSystemPtr &inAxisSystem)
Add an axis system into the current node.
Dtk_BodyPtr MakeRefAxis()
Definition: testlibugwrite.cpp:151
Dtk_ErrorStatus UgwColors(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:467
TextJustificationEnum & Justification()
Retrieves the text justification - get/set -.
Dtk_ErrorStatus AddAttribute(Dtk_string name, Dtk_Val val)
@ JustificationLeft
Definition: util_draw_dtk.hpp:292
ObjectPreferences objectpreferences
Definition: ugw.hpp:47
static Dtk_PlaneSurfacePtr Create(const Dtk_pnt &inOrigin, const Dtk_dir &inNormal, const Dtk_dir &inUDirection, const Dtk_dir &inVDirection=Dtk_dir())
Create an infinite plane surface.
Dtk_ErrorStatus SetName(Dtk_string inName)
Dtk_ErrorStatus UgwLayers(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:305
Dtk_ErrorStatus SetColorInTable(size_t inIth, const Dtk_RGB &inColor, const Dtk_string &inColorname)
Replace color value and color name on the palette.
This is the text_style. This class gathers information about text style.
Definition: util_draw_dtk.hpp:253
@ dtkErrorFileNotExist
Definition: error_dtk.hpp:99
Dtk_BodyPtr MakeRefPlane()
Definition: testlibugwrite.cpp:117
Dtk_ErrorStatus UgwMeta(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:434
Dtk_ErrorStatus AddExternInstance(const Dtk_string &inProtoFileName, const Dtk_transfo &inTrans, Dtk_InfoPtr inInfos, void(*innxread_getdata)(const Dtk_string &, void *&))
Open an extern file to add as instance in current assembly, inProtoFileName must be in the output dir...
int UgWriteSample(const Dtk_string &inResultDirectory)
Definition: testlibugwrite.cpp:765
#define DTK_TRUE
Definition: define.h:729
#define DTK_UGW_VERSION_NX5
Definition: ugw.hpp:7
@ dtk_text_type_value
Definition: str_def.h:14
This is a high level string class.
Definition: dtk_string.hpp:58
Dtk_ErrorStatus WriteReferenceGeometry(const Dtk_BodyPtr &inRefgeom)
Add a reference geometry into the current node.
Dtk_ErrorStatus UgwAnnot(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:669
Dtk_ErrorStatus WriteExternJtMesh(const char *inFlux, size_t inSize, const Dtk_InfoPtr &inInf)
Add a JT file as lightweight body inside the file.
This is the base text class. It's part of Dtk_CompositeText. It's used into a lot of 2D Entities It c...
Definition: util_draw_dtk.hpp:1112
static Dtk_SmartPtr< Dtk_AxisSystem > create()
Calls default constructor to allocate a new object.
static Dtk_BodyPtr Create()
Create a body.
Dtk_ErrorStatus WriteBody(const Dtk_BodyPtr &inBody)
Add a body inside the file.
FILE * OpenFile(const Dtk_string &inRights) const
File Utility : Open a file with the given rights.
Dtk_BodyPtr MakeFixedRefPlane()
Definition: testlibugwrite.cpp:133
Dtk_ErrorStatus UgwSimpleBody(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:17
@ DTK_SOLIDLINE
Definition: util_ent_dtk.hpp:49
static Dtk_SymbolPtr Create()
Calls default constructor to allocate a new object.
Dtk_ErrorStatus SetLayerData(const Dtk_LayerInfosSetPtr &inLayerDataSet, const Dtk_tab< Dtk_Int32 > &inVisibles=Dtk_tab< Dtk_Int32 >(), const Dtk_tab< Dtk_Int32 > &inSelectables=Dtk_tab< Dtk_Int32 >())
define Data for layers
Dtk_ErrorStatus SetBlankedStatus(const Dtk_Int32 &inBlankedStatus)
void add_int(const int integer, int force_unsigned_int=0)
concat an int to the Dtk_string (convert the int to Dtk_string)
Definition: dtk_val.hpp:67
Dtk_ErrorStatus UgwMesh(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:74
static Dtk_FacePtr Create(const Dtk_BodyPtr &inParentBody)
Create a face in a body.
Dtk_FdtPtr UGW_Sample_MakePMI()
Definition: testlibugwrite.cpp:603
Dtk_AxisSystemPtr MakeAxisSystem()
Definition: testlibugwrite.cpp:105
double distance_tolerance
Definition: ugw.hpp:23
void resize(Dtk_Size_t n, const T &t)
Resizes the array.
Definition: util_stl_dtk.hpp:605
Dtk_ErrorStatus WritePMI(const Dtk_FdtPtr &inPmi)
Add a pmi inside the file.
Dtk_ErrorStatus WriteExternParasolidBody(const char *inFlux, size_t inSize, const Dtk_InfoPtr &inInf)
Add a Parasolid file as body inside the file.
Dtk_ErrorStatus CloseLastInstance()
Close the last instance.
Dtk_RGB background_color_top
Definition: ugw.hpp:36
@ DTK_PHANTOM
Definition: util_ent_dtk.hpp:53
Dtk_ErrorStatus SetGroupDatas(const Dtk_string &inGroupName, Dtk_InfoPtr inInfos)
define Visibility for a specific group
static Dtk_SmartPtr< T > DtkDynamicCast(const Dtk_SmartPtr< T2 > &p)
Definition: util_ptr_dtk.hpp:101
Dtk_ErrorStatus SetCurveThickNessInMM(const Dtk_Double64 inCurveThickNessInMM)
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
General def
Definition: ugw.hpp:45
static Dtk_FdtPtr Create()
Calls default constructor to allocate a new object.
#define CHECK_OK(X)
Definition: testwriters.h:9
Definition: util_ptr_dtk.hpp:37
const char * c_str() const
Retrieve the ASCII conversion string.
static Dtk_PointPtr Create(const Dtk_Point &in)
Calls copy constructor to allocate a new object.
Dtk_MeshPtr CreateMeshCylinder(int nbpoints)
Mesh Cylinder sample.
Definition: testcreatemesh.cpp:339
Dtk_ErrorStatus UgwTwoBodies(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:42
Dtk_RGB background_color_bottom
Definition: ugw.hpp:36
ModelingPreferences modelingpreferences
Definition: ugw.hpp:35
int mkdir() const
File Utility : Create a Directory.
Dtk_ErrorStatus SetLayer(const Dtk_Int32 &inLayer)
This is a mathematical point class.
Definition: dtk_pnt.hpp:22
Dtk_ErrorStatus UgWriteSampleVersion(const Dtk_string &outputDirectory, int version)
Definition: testlibugwrite.cpp:693
Dtk_ErrorStatus UgwAsm(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:504
Unit unit
Definition: ugw.hpp:19
void FixPathSeparator()
File Utility : Fixes path separator consistency. It lets you replace the '\' or '/' by the OS needed ...
This is the composite text class. It's basically a Dtk_Text Container. This class represents a group ...
Definition: util_draw_dtk.hpp:1536
double density
Definition: ugw.hpp:25
DensityUnit density_unit
Definition: ugw.hpp:30
@ lb_ft3
Definition: ugw.hpp:28
static Dtk_LeaderPtr Create()
Calls default constructor to allocate a new object.
Dtk_MetaDataPtr MakeMetaData(const Dtk_string &propname, const Dtk_string &value, const Dtk_string &category="")
Definition: testlibugwrite.cpp:427
static Dtk_LinePtr Create(const Dtk_Line &in)
Calls copy constructor to allocate a new object.
Dtk_Double64 & CharHeight()
Retrieves the char height - get/set -.
#define NX_RETRIEVE_ASSEMBLYDATA
Definition: testlibugwrite.cpp:565
This is a high level array class.
Definition: util_stl_dtk.hpp:85
Dtk_LayerInfosSetPtr CreateLayerInfosSet(Dtk_tab< Dtk_Int32 > &visible, Dtk_tab< Dtk_Int32 > &selectable)
Definition: testlibugwrite.cpp:276
Dtk_ErrorStatus WriteMesh(const Dtk_MeshPtr &inMesh)
Add a mesh inside the file.
void addTranslate(const Dtk_dir &V)
Translate the Dtk_transfo.
Dtk_BodyPtr CreateCube()
Definition: testcreatecube.cpp:1320
Dtk_Size_t size() const
Returns the size of the array.
Definition: util_stl_dtk.hpp:504
Dtk_ErrorStatus AddMetaData(const Dtk_MetaDataPtr &inMeta)
Add a MetaData in the current component.
#define DTK_UGW_VERSION_NX1980
Definition: ugw.hpp:8
Dtk_ErrorStatus InitFile(const Dtk_string &inFilename, int inVersiontowrite=45, const DefaultParameters &inDef=DefaultParameters())
Initialize UG Writer.
Dtk_ErrorStatus UgwWire(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:89
Dtk_ErrorStatus UgwReferences(const Dtk_string &outputFileName, int version)
Definition: testlibugwrite.cpp:182
Dtk_ErrorStatus OpenInstance(const Dtk_string &inInstanceName, const Dtk_string &inProtoFileName, Dtk_bool &outWasAlreadyInstancied, const Dtk_transfo &inTrans, const Dtk_RGB &inRgb)
deprecated
#define DTK_RB
Definition: dtk_string.hpp:40
double angle_tolerance
Definition: ugw.hpp:24
Dtk_ErrorStatus UgwExternJTMesh(const Dtk_string &outputFileName, const Dtk_string &jtfic, int version)
Definition: testlibugwrite.cpp:242
LeaderTerminatorTypeEnum
Internal leader terminator type.
Definition: util_draw_dtk.hpp:1966
Dtk_Double64 width
Definition: ugw.hpp:42
Dtk_BodyPtr CreateCurves()
Definition: testcreatecube.cpp:1361
static Dtk_LayerInfosSetPtr Create(const Dtk_Size_t inNumLayers)
Calls a constructor to allocate a new object.
@ dtkNoError
Definition: error_dtk.hpp:144
void push_back(const T &x)
Inserts an element at the end of the array.
Definition: util_stl_dtk.hpp:417
static Dtk_ShellPtr Create(const Dtk_BodyPtr &inParentBody)
Create a shell in a body.
Dtk_BodyPtr MakeRefPoint()
Definition: testlibugwrite.cpp:167
void AddText(Dtk_Text inText)
Adds a Dtk_Text to the Dtk_CompositeText.
Definition: dtk_rgb.hpp:7
Dtk_ErrorStatus SetColor(const int &R, const int &G, const int &B)
static Dtk_SmartPtr< Dtk_Info > create()
Calls default constructor to allocate a new object.
This is the base bounding box class. It's used into a lot of 2D Entities This class represents the ba...
Definition: util_draw_dtk.hpp:471
This is a mathematical direction class.
Definition: dtk_dir.hpp:15
#define DTK_UGW_VERSION_NX2212
Definition: ugw.hpp:9
@ TerminatorTypeFillArrow
Definition: util_draw_dtk.hpp:1974
Dtk_ErrorStatus EndFile()
Close the UG file.
#define DTK_PI
Definition: str_def.h:8