DATAKIT SDK  V2026.3
util_xml_dtk.hpp File Reference

Go to the source code of this file.

Macros

#define Dtk_DumpXMLNamespace
 

Enumerations

enum  XML_StringType { XMLElement = 0, XMLAttribute, XMLGenericString }
 

Functions

void Dtk_DumpXml_Body (FILE *inDump, const Dtk_BodyPtr &inBody)
 
void Dtk_DumpXml_ComponentTypeEnum (FILE *F, const Dtk_Component::ComponentTypeEnum &inEnum, const Dtk_string &inPropertyName)
 
Dtk_ErrorStatus Dtk_DumpXml_Drawing (const Dtk_DrawingPtr &)
 
void Dtk_DumpXml_Drawing (FILE *inDump, const Dtk_DrawingPtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_2dEntityPtr (FILE *F, const Dtk_2dEntityPtr &D, const int &compact=1)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_anchor_type (FILE *F, const Dtk_anchor_type &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_AxisSystemPtr (FILE *F, const Dtk_AxisSystemPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_BodyPtr (FILE *F, const Dtk_BodyPtr &inBody)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_bool (FILE *F, const Dtk_bool &B)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_CameraPtr (FILE *F, const Dtk_CameraPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ColorInfosSetPtr (FILE *F, const Dtk_ColorInfosSetPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr (FILE *F, const Dtk_ComponentPtr &inObject)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr_End (FILE *F)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr_Init (FILE *F, const Dtk_ComponentPtr &inObject)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ConstraintPtr (FILE *F, const Dtk_ConstraintPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_CurvePtr (FILE *F, const Dtk_CurvePtr &inCurve)
 
Dtk_ErrorStatus Dtk_DumpXml_DTK_DATUM_COMPOSING_RULE (FILE *F, const DTK_DATUM_COMPOSING_RULE &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_DatumTargetPtr (FILE *F, const Dtk_DatumTargetPtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_dir (FILE *F, const Dtk_dir &D, const char *b="Dir")
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_DrawingPtr (FILE *, const Dtk_DrawingPtr &, const int &compact=1)
 
Dtk_ErrorStatus Dtk_DumpXml_DTK_FDT_MODIFIER (FILE *F, const DTK_FDT_MODIFIER &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_FdtDataSet (FILE *F, const Dtk_ComponentPtr &inObject)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_FdtPtr (FILE *F, const Dtk_FdtPtr &D, const int &compact=1)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_FeaturePtr (FILE *F, const Dtk_FeaturePtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_GeometricalTolerancePtr (FILE *F, const Dtk_GeometricalTolerancePtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_GraphicalDataPtr (FILE *F, const Dtk_GraphicalDataPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_GridPtr (FILE *F, const Dtk_GridPtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_info (FILE *F, const Dtk_InfoPtr &I)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsCommand (FILE *inFile, const Dtk_KinCommandPtr &inCommand, Dtk_bool simplified)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsConstraint (FILE *inFile, const Dtk_KinConstraintPtr &inConstraint, Dtk_bool simplified)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsCurve (FILE *inFile, const Dtk_KinCurvePtr &inCurve)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsFixPart (FILE *inFile, const Dtk_KinFixPartPtr &inFixPart)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsFormula (FILE *inFile, const Dtk_KinFormulaPtr &inFormula)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsJoint (FILE *inFile, const Dtk_KinJointPtr &inJoint, Dtk_bool simplified)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsLaw (FILE *inFile, const Dtk_KinLawPtr &inLaw)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsMechanism (FILE *inFile, const Dtk_KinMechanismPtr &inKinMechanism)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsNamedValue (FILE *inFile, const Dtk_KinNamedValuePtr &inNamedValue)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsParameter (FILE *inFile, const Dtk_KinParameterPtr &inParameter, Dtk_bool simplified=DTK_FALSE)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsProduct (FILE *inFile, const Dtk_KinProductPtr &inKinProduct, int &inKinProductIndex)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsPtr (FILE *inFile, const Dtk_KinematicPtr &inKinematic)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsSpeedAcceleration (FILE *inFile, const Dtk_KinSpeedAccelerationPtr &inSpeedAcceleration)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_LayerInfosSetPtr (FILE *F, const Dtk_LayerInfosSetPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_LayerInfosSetPtr_Deprecated (FILE *F, const Dtk_LayerInfosSetPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_LeaderPtr (FILE *F, const Dtk_LeaderPtr &L)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MainDocPtr (FILE *F, const Dtk_MainDocPtr &inObject)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MeshPtr (FILE *F, const Dtk_MeshPtr &inMesh)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MetadataGroupPtr (FILE *F, const Dtk_MetaDataGroupPtr &inObject)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MetadataPtr (FILE *F, const Dtk_MetaDataPtr &inObject)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ModelDisplayPtr (FILE *F, const Dtk_ModelDisplayPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodeConnector (FILE *inFile, const Dtk_NodeConnectorPtr &inNodeConnector)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr (FILE *F, const Dtk_NodePtr &inObject)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr_End (FILE *F)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr_Init (FILE *F, const Dtk_NodePtr &inObject)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_OLEObjectPtr (FILE *F, const Dtk_OLEObjectPtr &O)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_OneCell (FILE *F, Dtk_OneCell &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_PlaneSurfacePtr (FILE *F, const Dtk_PlaneSurfacePtr &inSurf)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_pnt (FILE *F, const Dtk_pnt &P, const char *b="Pnt")
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ReferenceBlockPtr (FILE *F, const Dtk_ReferenceBlockPtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ReferenceFramePtr (FILE *F, const Dtk_ReferenceFramePtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_obtention_type (FILE *F, const Dtk_Roughness::ObtentionTypeEnum &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_rough_mode (FILE *F, const Dtk_Roughness::RoughModeEnum &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_roughness_applyto (FILE *F, const Dtk_Roughness::ApplyToEnum &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_RoughnessPtr (FILE *F, const Dtk_RoughnessPtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_SelectionDataSet (FILE *F, const Dtk_GlobalDataSetPtr &ptrGlobalDataSet)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_StreamPtr (FILE *F, const Dtk_StreamPtr &inVal)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_TablePtr (FILE *F, const Dtk_TablePtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_Text (FILE *F, const Dtk_Text &T)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtr (FILE *F, const Dtk_ToleranceSpecificationContainerPtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtrType (FILE *F, const Dtk_ToleranceSpecificationContainer::TypeEnum &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationPtr (FILE *F, const Dtk_ToleranceSpecificationPtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_transfo (FILE *F, const Dtk_transfo &V)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ViewPtr (FILE *F, const Dtk_ViewPtr &V)
 
Dtk_ErrorStatus Dtk_DumpXml_Dtk_WeldingPtr (FILE *F, const Dtk_WeldingPtr &D)
 
Dtk_ErrorStatus Dtk_DumpXml_End ()
 
Dtk_ErrorStatus Dtk_DumpXml_End (FILE *F)
 
Dtk_ErrorStatus Dtk_DumpXml_Fdt (const Dtk_FdtPtr &D)
 
Dtk_string Dtk_DumpXml_FormatDtk_string (const Dtk_string &inString, const XML_StringType inXmlStringType=XMLGenericString)
 
FILE * Dtk_DumpXml_GetFeaturesDumpFile ()
 
FILE * Dtk_DumpXml_GetFile ()
 
FILE * Dtk_DumpXml_GetParametersDumpFile ()
 
Dtk_ErrorStatus Dtk_DumpXml_Init (const Dtk_string &xml_file)
 
Dtk_ErrorStatus Dtk_DumpXml_LineTypeDefinitionTable (FILE *F)
 
Dtk_ErrorStatus Dtk_DumpXml_PhysicalMaterialInfosTable (FILE *F)
 
Dtk_ErrorStatus Dtk_DumpXml_RenderInfosTable (FILE *F)
 
Dtk_ErrorStatus Dtk_DumpXml_Value (FILE *inFile, const Dtk_string &inLabel, const char *inFormat,...)
 
Dtk_ErrorStatus Dtk_DumpXml_Value (FILE *inFile, const Dtk_string &inLabel, const Dtk_bool &inValue)
 
Dtk_ErrorStatus Dtk_DumpXml_Value (FILE *inFile, const Dtk_string &inLabel, const Dtk_Double64 &inValue, const char *inFormat="%lf")
 
Dtk_ErrorStatus Dtk_DumpXml_Value (FILE *inFile, const Dtk_string &inLabel, const Dtk_Int64 &inValue)
 
Dtk_ErrorStatus Dtk_DumpXml_Value (FILE *inFile, const Dtk_string &inLabel, const Dtk_string &inValue)
 
Dtk_ErrorStatus Dtk_DumpXml_Value (FILE *inFile, const Dtk_string &inLabel, const Dtk_UInt64 &inValue)
 
template<typename ValueType >
Dtk_ErrorStatus Dtk_DumpXml_Value (FILE *inFile, const Dtk_string &inLabel, const ValueType &inValue)
 
Dtk_ErrorStatus Dtk_End_Dump_Files (const Dtk_string &inComponentFullName)
 
Dtk_ErrorStatus Dtk_Init_Dump_Files (const Dtk_string &inDumpFileName, Dtk_bool dumpFeatures=0)
 
Dtk_string DtkReaderTypeEnumToString (const DtkReaderType &inReaderTypeEnum)
 

Macro Definition Documentation

◆ Dtk_DumpXMLNamespace

#define Dtk_DumpXMLNamespace

Enumeration Type Documentation

◆ XML_StringType

Enumerator
XMLElement 
XMLAttribute 
XMLGenericString 
92 {
93  XMLElement = 0,
96 };

Function Documentation

◆ Dtk_DumpXml_Body()

void Dtk_DumpXml_Body ( FILE *  inDump,
const Dtk_BodyPtr inBody 
)

◆ Dtk_DumpXml_ComponentTypeEnum()

void Dtk_DumpXml_ComponentTypeEnum ( FILE *  F,
const Dtk_Component::ComponentTypeEnum inEnum,
const Dtk_string inPropertyName 
)
685  {
687  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, inPropertyName, EnumToStr );
688  }

◆ Dtk_DumpXml_Drawing() [1/2]

Dtk_ErrorStatus Dtk_DumpXml_Drawing ( const Dtk_DrawingPtr )
5145  {
5147  }

◆ Dtk_DumpXml_Drawing() [2/2]

void Dtk_DumpXml_Drawing ( FILE *  inDump,
const Dtk_DrawingPtr D 
)

◆ Dtk_DumpXml_Dtk_2dEntityPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_2dEntityPtr ( FILE *  F,
const Dtk_2dEntityPtr D,
const int &  compact = 1 
)
2803  {
2804  int unused;
2805  unused = compact;
2806  fprintf( F, "\n<Dtk_2dEntityPtr>\n" );
2807  enum type_detk type = D->get_type_detk();
2809 #ifdef Convert2dEntitiesToSymbol
2810  {
2811  Dtk_SymbolPtr Converted = Dtk_Symbol::Create( D );
2812  if( Converted.IsNotNULL() )
2813  {
2815  }
2816  else
2817  {
2818  fprintf( F, "Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_2dEntityPtr : Unknow type (%d)\n", type );
2819  }
2820  }
2821 #else //#ifdef Convert2dEntitiesToSymbol
2822  switch( type )
2823  {
2824  case DTK_TYPE_TABLE:
2826  break;
2827  case DTK_TYPE_SYMBOL:
2829  break;
2830  case DTK_TYPE_DIMENSION:
2832  break;
2833  case DTK_TYPE_GEOM_TOL:
2835  break;
2836  case DTK_TYPE_ROUGHNESS:
2838  break;
2839  case DTK_TYPE_WELDING:
2841  break;
2842  case DTK_TYPE_DATUM_TARGET:
2844  break;
2845  case DTK_TYPE_GRID:
2847  break;
2848  case DTK_TYPE_REGION:
2850  break;
2853  break;
2854  default:
2855  fprintf( F, "Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_2dEntityPtr : Unknow type (%d)\n", type );
2856  }
2857 #endif //#ifdef Convert2dEntitiesToSymbol
2858  const Dtk_CompositeText &CompoText = D->GetAdditionnalTexts();
2859  if( CompoText.GetNumTexts() > 0 )
2860  {
2861  fprintf( F, "<AdditionnalTexts>\n" );
2863  fprintf( F, "</AdditionnalTexts>\n" );
2864  }
2865 
2866  const Dtk_tab< Dtk_EntityPtr > &AdditionnalGeometries = D->GetAdditionnalGeometries();
2867  Dtk_Size_t nbgeoms = AdditionnalGeometries.size();
2868  if( nbgeoms > 0 )
2869  {
2870  Dtk_Size_t i;
2871  fprintf( F, "<AdditionnalGeometries size=\"" XmlFormat( "u" )"\">\n", nbgeoms );
2872  for( i = 0; i < nbgeoms; i++ )
2873  {
2874  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_EntityPtr( F, AdditionnalGeometries[ i ] );
2875  }
2876  fprintf( F, "</AdditionnalGeometries>\n" );
2877  }
2878 
2879  fprintf( F, "</Dtk_2dEntityPtr>\n" );
2880  return dtkNoError;
2881  }

◆ Dtk_DumpXml_Dtk_anchor_type()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_anchor_type ( FILE *  F,
const Dtk_anchor_type D 
)
1181  {
1182  fprintf( F, "<Dtk_anchor_type>" );
1183  switch( D )
1184  {
1185  case DTK_ANCHOR_TOP_LEFT: fprintf( F, "DTK_ANCHOR_TOP_LEFT" ); break;
1186  case DTK_ANCHOR_TOP_CENTER: fprintf( F, "DTK_ANCHOR_TOP_CENTER" ); break;
1187  case DTK_ANCHOR_TOP_RIGHT: fprintf( F, "DTK_ANCHOR_TOP_RIGHT" ); break;
1188  case DTK_ANCHOR_MIDDLE_LEFT: fprintf( F, "DTK_ANCHOR_MIDDLE_LEFT" ); break;
1189  case DTK_ANCHOR_MIDDLE_CENTER: fprintf( F, "DTK_ANCHOR_MIDDLE_CENTER" ); break;
1190  case DTK_ANCHOR_MIDDLE_RIGHT: fprintf( F, "DTK_ANCHOR_MIDDLE_RIGHT" ); break;
1191  case DTK_ANCHOR_BOTTOM_LEFT: fprintf( F, "DTK_ANCHOR_BOTTOM_LEFT" ); break;
1192  case DTK_ANCHOR_BOTTOM_CENTER: fprintf( F, "DTK_ANCHOR_BOTTOM_CENTER" ); break;
1193  case DTK_ANCHOR_BOTTOM_RIGHT: fprintf( F, "DTK_ANCHOR_BOTTOM_RIGHT" ); break;
1194  default: fprintf( F, "Undefined" ); break;
1195  }
1196  fprintf( F, "</Dtk_anchor_type>\n" );
1197  return dtkNoError;
1198  }

◆ Dtk_DumpXml_Dtk_AxisSystemPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_AxisSystemPtr ( FILE *  F,
const Dtk_AxisSystemPtr inVal 
)
3290  {
3291  fprintf( F, "<Dtk_AxisSystemPtr>\n" );
3292  if( inVal.IsNotNULL() )
3293  {
3294  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inVal->get_info() );
3295 
3296 
3297  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"AxisName", inVal->GetName() );
3298  fprintf( F, "<IsDefault> %s </IsDefault>\n", inVal->IsDefault() ? "True" : "False" );
3299  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_transfo( F, inVal->GetMatrix() );
3300  }
3301  else
3302  {
3303  fprintf( F, "Null" );
3304  }
3305  fprintf( F, "</Dtk_AxisSystemPtr>\n" );
3306 
3307  return dtkNoError;
3308  }

◆ Dtk_DumpXml_Dtk_BodyPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_BodyPtr ( FILE *  F,
const Dtk_BodyPtr inBody 
)
6671  {
6672  Dtk_Size_t numLump, i, j;
6673 
6674  fprintf( F, "<Dtk_BodyPtr>" );
6675  fprintf( F, "<Status>%d</Status>", inBody->GetBodyStatus() );
6676  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inBody->get_info() );
6677  // fprintf(F,"<Id>%d</Id>",inBody->GetID());
6678  numLump = inBody->GetNumLumps();
6679  for( i = 0; i < numLump; i++ )
6680  {
6681  Dtk_LumpPtr lump;
6682  inBody->GetLump( i, lump );
6684 
6685  }
6686  Dtk_ShellPtr myshell;
6687  Dtk_Size_t m, NumOpenshell = inBody->GetNumOpenShells();
6688 
6689  for( m = 0; m < NumOpenshell; m++ )
6690  {
6691  inBody->GetOpenShell( m, myshell );
6692  if( myshell.IsNotNULL() )
6693  {
6694  fprintf( F, "<Dtk_OpenShellPtr>" );
6695  if( myshell->info().IsNotNULL() )
6696  {
6697  fprintf( F, "<Id>%d</Id>", myshell->info()->GetId() );
6698  }
6699 
6700  Dtk_Size_t NumFaces = myshell->GetNumFaces();
6701  for( i = 0; i < NumFaces; i++ )
6702  {
6703  Dtk_FacePtr FacePtr;
6704  Dtk_bool Orientation;
6705  myshell->GetFace( i, FacePtr, Orientation );
6706  fprintf( F, "<orientation>%d</orientation>", Orientation );
6708  }
6709  Dtk_Size_t nbWires = myshell->GetNumWireSet();
6710  if( nbWires != 0 )
6711  {
6712  fprintf( F, "<Wireframe>" );
6713  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, myshell->get_info() );
6714  for( i = 0; i < nbWires; i++ )
6715  {
6716  fprintf( F, "<WireSet>" );
6717 
6718  Dtk_tab<Dtk_EntityPtr> wireSet;
6719  Dtk_tab<Dtk_bool> orientation;
6720  Dtk_bool looporientation = -1;
6721  myshell->GetWireSetTopo( i, wireSet , orientation, looporientation);
6722  fprintf(F, "<WireLoopOrientation>%d</WireLoopOrientation>", looporientation);
6723  for( j = 0; j < wireSet.size(); j++ )
6724  {
6725  if( wireSet[ j ]->get_type_detk() != DTK_TYPE_VERTEX )
6726  {
6727  fprintf(F, "<WireEdgeOrientation>%d</WireEdgeOrientation>", orientation[j]);
6729  }
6730  else
6731  {
6733  }
6734  }
6735  fprintf( F, "</WireSet>" );
6736  }
6737  fprintf( F, "</Wireframe>" );
6738  }
6739  fprintf( F, "</Dtk_OpenShellPtr>" );
6740  }
6741  }
6742  Dtk_Size_t numStream = inBody->GetNumStream();
6743  for( i = 0; i < numStream; i++ )
6744  {
6745  Dtk_StreamPtr stream;
6746  stream = inBody->GetStream( i );
6748 
6749  }
6750 
6751  fprintf( F, "</Dtk_BodyPtr>" );
6752 
6753  return dtkNoError;
6754  }

◆ Dtk_DumpXml_Dtk_bool()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_bool ( FILE *  F,
const Dtk_bool B 
)
1273  {
1274  Dtk_string str( "" );
1275 
1276  if( B == DTK_TRUE )
1277  {
1278  str = "DTK_TRUE";
1279  }
1280  else
1281  {
1282  str = "DTK_FALSE";
1283  }
1284  fprintf( F, "%s", str.c_str() );
1285  return dtkNoError;
1286  }

◆ Dtk_DumpXml_Dtk_CameraPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_CameraPtr ( FILE *  F,
const Dtk_CameraPtr inVal 
)
3134  {
3135  fprintf( F, "<Dtk_Camera>\n" );
3136  if( inVal.IsNotNULL() )
3137  {
3138  //info
3140  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_pnt( F, inVal->OriginPoint(), "OriginPoint" );
3141  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, inVal->TargetPoint(), "TargetPoint" );
3142  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, inVal->UpVector(), "UpVector" );
3143  fprintf( F, "<Angle>%f</Angle>\n", inVal->Angle() );
3144  fprintf( F, "<Focus>%f</Focus>\n", inVal->Focus() );
3145  fprintf( F, "<ZoomFactor>%f</ZoomFactor>\n", inVal->ZoomFactor() );
3146  fprintf( F, "<ZoomFitMode>%i</ZoomFitMode>\n", inVal->GetZoomFitMode() );
3147 
3148  Dtk_Double64 front, back;
3149  inVal->GetClippingDistance( front, back );
3150  if( front != 0.0 || back != 0.0 )
3151  {
3152  fprintf( F, "<FrontClippingDistance>%f</FrontClippingDistance>\n", front );
3153  fprintf( F, "<BackClippingDistance>%f</BackClippingDistance>\n", back );
3154  }
3155 
3156 
3158  }
3159  else
3160  {
3161  fprintf( F, "Null" );
3162  }
3163  fprintf( F, "</Dtk_Camera>\n" );
3164  return dtkNoError;
3165  }

◆ Dtk_DumpXml_Dtk_ColorInfosSetPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ColorInfosSetPtr ( FILE *  F,
const Dtk_ColorInfosSetPtr inVal 
)
3311  {
3312  fprintf( F, "<Dtk_ColorInfosSet>\n" );
3313  if( inVal.IsNotNULL() )
3314  {
3315  Dtk_Size_t i;
3316  Dtk_Size_t NumColors = inVal->GetNumColors();
3317  Dtk_Int32 DefaultColor;
3318 
3319  inVal->GetDefaultColor( DefaultColor );
3320  fprintf( F, "<Colors Num=\"" XmlFormat( "u" )"\" DefaultColor=\" %d\">\n", NumColors, DefaultColor );
3321  for( i = 0; i < NumColors; i++ )
3322  {
3323  Dtk_string ColorName;
3324  Dtk_ID ColorReadId;
3325  Dtk_RGB ColorDef;
3326  Dtk_ErrorStatus errd = inVal->GetColorDefinition( i, ColorDef );
3327  Dtk_ErrorStatus errn = inVal->GetColorName( i, ColorName );
3328  Dtk_ErrorStatus erri = inVal->GetColorID( i, ColorReadId );
3329  if( errn == dtkNoError && erri == dtkNoError )
3330  {
3332  fprintf( F, "<__%d__ Name=\"%S\"", ColorReadId, ColorName.w_str() );
3333  }
3334  else
3335  {
3336  if( erri == dtkNoError )
3337  fprintf( F, "<__%d__ Name=\"\"", ColorReadId );
3338  else
3339  fprintf( F, "<__" XmlFormat( "u" )"__ Name=\"\"", i );
3340 
3341  }
3342  if( errd == dtkNoError )
3343  {
3344  //Dtk_DumpXml_Dtk_RGB(F, ColorDef);
3345  if( ColorDef.IndexReader() >= 0 )
3346  {
3347  fprintf( F, " RGBA=\"%d %d %d %d %d \" ", ColorDef[ 0 ], ColorDef[ 1 ], ColorDef[ 2 ], ColorDef[ 3 ], ColorDef.IndexReader() );
3348  }
3349  else
3350  {
3351  fprintf( F, " RGBA=\"%d %d %d %d\" ", ColorDef[ 0 ], ColorDef[ 1 ], ColorDef[ 2 ], ColorDef[ 3 ] );
3352  }
3353  }
3354  fprintf( F, "/>\n" );
3355  }
3356  fprintf( F, "</Colors>\n" );
3357  }
3358  else
3359  {
3360  fprintf( F, "Null" );
3361  }
3362  fprintf( F, "</Dtk_ColorInfosSet>\n" );
3363 
3364  return dtkNoError;
3365  }

◆ Dtk_DumpXml_Dtk_ComponentPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr ( FILE *  F,
const Dtk_ComponentPtr inObject 
)
4803  {
4805  Dtk_Size_t NumChildren = inObject->GetNumChildren();
4806  for( Dtk_Size_t i = 0; i < NumChildren; i++ )
4807  {
4808  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_ComponentPtr( F, inObject->GetChild( i ) );
4809  }
4810 
4812  /*fprintf( F, "<Dtk_ComponentPtr>\n" );
4813  if( inObject.IsNotNULL() )
4814  {
4815  Dtk_Size_t i, NumChildren, NumFathers = inObject->GetNumFathers();
4816  Dtk_MaterialPtr mat = NULL;
4817  fprintf( F, "<ComponentID>%u</ComponentID>\n", inObject->GetID() );
4818  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inObject->GetInfos() );
4819  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Name", inObject->Name() );
4820  Dtk_ID readid;
4821  inObject->GetReadID( readid );
4822  if( readid > 0 )
4823  fprintf( F, "<ReadID>%d</ReadID>\n", readid );
4824  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"FullPathName", inObject->FullPathName() );
4825  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"InstanceName", inObject->InstanceName() );
4826  if( inObject->GetFileVersion().icmp( L"" ) != 0 )
4827  {
4828  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"FileVersion", inObject->GetFileVersion() );
4829  }
4830  fprintf( F, "<ComponentUnitScale>%f</ComponentUnitScale>\n", inObject->GetConceptionUnitScale() );
4831  for( i = 0; i < NumFathers; i++ )
4832  fprintf( F, "<FatherID>%u</FatherID>\n", inObject->GetFatherID( i ) );
4833  Dtk_DumpXMLNamespace::Dtk_DumpXml_DtkReaderType( F, inObject->GetAssociatedModuleType(), L"AssociatedModule" );
4834  Dtk_DumpXMLNamespace::Dtk_DumpXml_ComponentTypeEnum( F, inObject->ComponentType(), L"ComponentType" );
4835  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_transfo( F, inObject->TransformationMatrix() );
4836  // mat = inObject->GetMaterial();
4837  // Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_material(F,mat);
4838 
4839 
4840  NumChildren = inObject->GetNumChildren();
4841  for( i = 0; i < NumChildren; i++ )
4842  {
4843  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_ComponentPtr( F, inObject->GetChild( i ) );
4844  }
4845 
4846  }
4847  else
4848  {
4849  fprintf( F, "'Null'" );
4850  }
4851  fprintf( F, "</Dtk_ComponentPtr>\n" );*/
4852  return dtkNoError;
4853  }

◆ Dtk_DumpXml_Dtk_ComponentPtr_End()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr_End ( FILE *  F)
4979  {
4980  if( F == NULL )
4981  {
4982  return dtkErrorNullPointer;
4983  }
4984 
4985  fprintf( F, "</Dtk_ComponentPtr>\n" );
4986  return dtkNoError;
4987  }

◆ Dtk_DumpXml_Dtk_ComponentPtr_Init()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr_Init ( FILE *  F,
const Dtk_ComponentPtr inObject 
)
4886  {
4887  if( F == NULL )
4888  {
4889  return dtkErrorNullPointer;
4890  }
4891 
4892  fprintf( F, "<Dtk_ComponentPtr>\n" );
4893  if( inObject.IsNotNULL() )
4894  {
4895  Dtk_Size_t i;
4896  Dtk_MaterialPtr mat = NULL;
4897  fprintf( F, "<ComponentID>%u</ComponentID>\n", inObject->GetID() );
4898  fprintf( F, "<IsAssembly>%d</IsAssembly>\n", inObject->IsAssembly() );
4899  if( inObject->ComponentType() == Dtk_Component::PrototypeComponentType )
4900  {
4902  }
4903  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inObject->GetInfos() );
4904  if( inObject->Name().len() > 0 )
4905  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Name", inObject->Name() );
4906 
4907  Dtk_ID readid;
4908  inObject->GetReadID( readid );
4909  if( readid > 0 )
4910  fprintf( F, "<ReadID>%d</ReadID>\n", readid );
4911 
4912  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"FullPathName", inObject->FullPathName() );
4913  if( inObject->OriginalPathName().len() > 0 )
4914  {
4915  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"OriginalPathName", inObject->OriginalPathName() );
4916  }
4917  if( inObject->InstanceName().len() > 0 )
4918  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"InstanceName", inObject->InstanceName() );
4919  if( inObject->GetFileVersion().len() > 0 )
4920  {
4921  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"FileVersion", inObject->GetFileVersion() );
4922  }
4923  Dtk_Double64 UnitScale;
4924  inObject->GetConceptionUnitScale( UnitScale );
4925  fprintf( F, "<ComponentUnitScale>%f</ComponentUnitScale>\n", UnitScale );
4926  Dtk_ID FatherID = inObject->GetFatherID( 0 );
4927  if( FatherID )
4928  fprintf( F, "<FatherID>%u</FatherID>\n", FatherID );
4929  Dtk_DumpXMLNamespace::Dtk_DumpXml_DtkReaderType( F, inObject->GetAssociatedModuleType(), L"AssociatedModule" );
4930  Dtk_DumpXMLNamespace::Dtk_DumpXml_ComponentTypeEnum( F, inObject->ComponentType(), L"ComponentType" );
4931 
4932  Dtk_PreviewPtr preview = inObject->GetPreview();
4933  if( preview.IsNotNULL() )
4934  {
4935  Dtk_Size_t size = preview->GetStreamSize();
4936  fprintf( F, "<PreviewSize>\"" XmlFormat( "u" )"\"</PreviewSize>", size );
4937  }
4938 
4939  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_transfo( F, inObject->TransformationMatrix() );
4940  // mat = inObject->GetMaterial();
4941  // Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_material(F,mat);
4942 
4943  Dtk_Size_t NumMetaData;
4944  NumMetaData = inObject->GetNumMetaData();
4945  if( NumMetaData )
4946  {
4947  fprintf( F, "<Dtk_MetaData Num=\'" XmlFormat( "u" ) "\'>\n", NumMetaData );
4948  for( i = 0; i < NumMetaData; i++ )
4949  {
4950  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_MetadataPtr( F, inObject->GetMetaData( i ) );
4951  }
4952  fprintf( F, "</Dtk_MetaData>\n" );
4953  }
4954 
4955 #ifdef XML_GROUP_METADATA
4956  Dtk_Size_t NumMetaDataGroup;
4957  NumMetaDataGroup = inObject->GetNumMetaDataGroup();
4958  if( NumMetaDataGroup )
4959  {
4960  fprintf( F, "<Dtk_MetaDataGroup Num=\'" XmlFormat( "u" ) "\'>\n", NumMetaDataGroup );
4961  for( i = 0; i < NumMetaDataGroup; i++ )
4962  {
4963  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_MetadataGroupPtr( F, inObject->GetMetaDataGroup( i ) );
4964  }
4965  fprintf( F, "</Dtk_MetaDataGroup>\n" );
4966  }
4967 #endif
4968  }
4969  else
4970  {
4971  fprintf( F, "'Null'" );
4972  }
4973 
4974  return dtkNoError;
4975  }

◆ Dtk_DumpXml_Dtk_ConstraintPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ConstraintPtr ( FILE *  F,
const Dtk_ConstraintPtr inVal 
)
8582  {
8583  fprintf( F, "<Dtk_ConstraintPtr>\n" );
8584  if( inVal.IsNULL() == DTK_TRUE )
8585  fprintf( F, "Null" );
8586  else
8587  {
8588  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inVal->get_info() );
8589  Dtk_DumpXMLNamespace::Dtk_DumpXml_ConstraintTypeEnum( F, inVal->GetConstraintType(), L"ConstraintType" );
8590 
8591  const Dtk_Size_t nbConstraintValues = inVal->GetNumberOfConstraintValues();
8592  for( Dtk_Size_t i = 0; i < nbConstraintValues; ++i )
8593  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Constraint_ConstraintValue( F, inVal->GetConstraintValue( i ) );
8594 
8595  const Dtk_Size_t nbConstraintReferences = inVal->GetNumberOfConstraintReferences();
8596  for( Dtk_Size_t i = 0; i < nbConstraintReferences; ++i )
8597  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_ConstraintReferencePtr( F, inVal->GetConstraintReference( i ) );
8598  }
8599  fprintf( F, "</Dtk_ConstraintPtr>\n" );
8600  return dtkNoError;
8601  }

◆ Dtk_DumpXml_Dtk_CurvePtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_CurvePtr ( FILE *  F,
const Dtk_CurvePtr inCurve 
)
5972  {
5973  type_detk type;
5974  if( inCurve.IsNULL() )
5975  {
5976  return dtkErrorNullPointer;
5977  }
5978  fprintf( F, "<Dtk_CurvePtr>" );
5979  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inCurve->get_info() );
5980  // fprintf(F,"<Id>%d</Id>",inCurve->GetID());
5981 
5982  if( inCurve->IsTrimmed() )
5983  {
5984  fprintf( F, "<Domain>" );
5985 
5986  fprintf( F, "<UMin>%f</UMin>", inCurve->GetTrimUMin() );
5987  fprintf( F, "<UMax>%f</UMax>", inCurve->GetTrimUMax() );
5988 
5989  fprintf( F, "</Domain>" );
5990  }
5991 
5992 
5993 
5994  type = inCurve->get_type_detk();
5995  switch( type )
5996  {
5997  case DTK_TYPE_LINE:
5998  {
6000  break;
6001  }
6002  case DTK_TYPE_POLYLINE:
6003  {
6005  break;
6006  }
6007  case DTK_TYPE_NURBS_CURVE:
6008  {
6010  break;
6011  }
6012  case DTK_TYPE_HYPERBOLA:
6013  {
6015  break;
6016  }
6017  case DTK_TYPE_PARABOLA:
6018  {
6020  break;
6021  }
6022  case DTK_TYPE_CIRCLE:
6023  case DTK_TYPE_ELLIPSE:
6024  {
6026  break;
6027  }
6029  case DTK_TYPE_SPCURVE:
6030  {
6031  //Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_IntersectCurvePtr( F, Dtk_IntersectCurvePtr::DtkDynamicCast( inCurve ) );
6032  type = type;
6033  break;
6034  }
6035  default:
6036  {
6038  break;
6039  }
6040  }
6041  fprintf( F, "</Dtk_CurvePtr>" );
6042  return dtkNoError;
6043  }

◆ Dtk_DumpXml_DTK_DATUM_COMPOSING_RULE()

Dtk_ErrorStatus Dtk_DumpXml_DTK_DATUM_COMPOSING_RULE ( FILE *  F,
const DTK_DATUM_COMPOSING_RULE D 
)
2603  {
2604  fprintf( F, "<DTK_DATUM_COMPOSING_RULE>" );
2605  switch( D )
2606  {
2607  default:
2608  case DTK_UNKNOWN:
2609  fprintf( F, "DTK_UNKNOWN" );
2610  break;
2611  case DTK_WITH_HIERARCHY:
2612  fprintf( F, "DTK_WITH_HIERARCHY" );
2613  break;
2614  case DTK_WITHOUT_HIERARCHY:
2615  fprintf( F, "DTK_WITHOUT_HIERARCHY" );
2616  break;
2618  fprintf( F, "DTK_INDIFFERENT_HIERARCHY" );
2619  break;
2620  }
2621  fprintf( F, "</DTK_DATUM_COMPOSING_RULE>\n" );
2622  return dtkNoError;
2623  }

◆ Dtk_DumpXml_Dtk_DatumTargetPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_DatumTargetPtr ( FILE *  F,
const Dtk_DatumTargetPtr D 
)
2082  {
2083  Dtk_Val value;
2084  Dtk_Int32 i = 0;
2085 
2086  fprintf( F, "<Dtk_DatumTargetPtr>\n" );
2088 
2089  fprintf( F, "<DatumTargetType>%s</DatumTargetType>\n", Dtk_DatumTarget::DatumTargetTypeEnumToString( D->GetDatumTargetType() ).c_str() );
2090 
2091  for( i = 0; i < Dtk_DatumTarget::NumValues; i++ )
2092  {
2093  if( D->GetParameterValue( ( Dtk_DatumTarget::DatumTargetValueEnum )i, value ) == dtkNoError )
2094  {
2098  }
2099  }
2100 
2101  if( D->GetFrame().GetFrameType() != DTK_FRAME_TYPE_NONE )
2102  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Frame( F, D->GetFrame() );
2103 
2104  if( D->GetDatumTargetMovableStatus() != Dtk_DatumTarget::NonMovable )
2105  {
2106  Dtk_tab<Dtk_CurvePtr> &movable_geom = D->GetDatumTargetMovableStatusRelatedGeom();
2107  Dtk_Size_t size = movable_geom.size();
2108  fprintf( F, "<MovableStatus>%ls</MovableStatus>\n", Dtk_DatumTarget::DatumTargetMovableStatusEnumToString( D->GetDatumTargetMovableStatus() ).w_str() );
2109  fprintf( F, "<MovableRelatedGeom Num=\"" XmlFormat( "u" )"\">\n", size );
2110  for( Dtk_Size_t ii = 0; ii < size; ++ii )
2111  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CurvePtr( F, movable_geom[ ii ] );
2112  fprintf( F, "</MovableRelatedGeom>\n" );
2113  }
2114 
2115  fprintf( F, "<TopText>\n" );
2117  fprintf( F, "</TopText>\n" );
2118 
2119  if( D->GetOptionnalTopTextLeader() )
2120  {
2121  fprintf( F, "<TopTextLeader>\n" );
2122  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_LeaderPtr( F, D->GetOptionnalTopTextLeader() );
2123  fprintf( F, "</TopTextLeader>\n" );
2124  }
2125 
2126  fprintf( F, "<BottomText>\n" );
2128  fprintf( F, "</BottomText>\n" );
2129 
2130  if( D->GetOptionnalBottomTextLeader() )
2131  {
2132  fprintf( F, "<BottomTextLeader>\n" );
2133  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_LeaderPtr( F, D->GetOptionnalBottomTextLeader() );
2134  fprintf( F, "</BottomTextLeader>\n" );
2135  }
2136 
2137  fprintf( F, "</Dtk_DatumTargetPtr>\n" );
2138  return dtkNoError;
2139  }

◆ Dtk_DumpXml_Dtk_dir()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_dir ( FILE *  F,
const Dtk_dir D,
const char *  b = "Dir" 
)
4352  {
4353  fprintf( F, "<%s>(%f %f %f)</%s>\n", b, D[ 0 ], D[ 1 ], D[ 2 ], b );
4354  return dtkNoError;
4355  }

◆ Dtk_DumpXml_Dtk_DrawingPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_DrawingPtr ( FILE *  ,
const Dtk_DrawingPtr ,
const int &  compact = 1 
)
3040  {
3041  if( F == NULL )
3042  {
3043  return dtkErrorNullPointer;
3044  }
3045  Dtk_Size_t i;
3046  fprintf( F, "<Dtk_DrawingPtr>\n" );
3047  Dtk_DumpXml_Dtk_info( F, D->get_info() );
3048  fprintf( F, "<Width>%f</Width><Height>%f</Height>\n", D->Width(), D->Height() );
3049  fprintf( F, "<Views><Number>" XmlFormat( "u" )"</Number>\n", D->GetNumViews() );
3050  for( i = 0; i < D->GetNumViews(); i++ )
3051  {
3052  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_pnt( F, D->GetOrigin( i ), "Origin" );
3053  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_ViewPtr( F, D->GetView( i ), compact );
3054  }
3055  fprintf( F, "</Views>\n" );
3056  fprintf( F, "</Dtk_DrawingPtr>\n" );
3057  return dtkNoError;
3058  }

◆ Dtk_DumpXml_DTK_FDT_MODIFIER()

Dtk_ErrorStatus Dtk_DumpXml_DTK_FDT_MODIFIER ( FILE *  F,
const DTK_FDT_MODIFIER D 
)
2625  {
2626  fprintf( F, "<DTK_FDT_MODIFIER>" );
2627  switch( D )
2628  {
2629  default:
2631  fprintf( F, "DTK_FDT_MODIFIER_NOT_SET" );
2632  break;
2634  fprintf( F, "DTK_FDT_MODIFIER_MAX_MATERIAL" );
2635  break;
2637  fprintf( F, "DTK_FDT_MODIFIER_LEAST_MATERIAL" );
2638  break;
2640  fprintf( F, "DTK_FDT_MODIFIER_REGARDLESS_OF_FEATURE_SIZE" );
2641  break;
2642  case DTK_FDT_MODIFIER_NONE:
2643  fprintf( F, "DTK_FDT_MODIFIER_NONE" );
2644  break;
2645  }
2646  fprintf( F, "</DTK_FDT_MODIFIER>\n" );
2647  return dtkNoError;
2648  }

◆ Dtk_DumpXml_Dtk_FdtDataSet()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_FdtDataSet ( FILE *  F,
const Dtk_ComponentPtr inObject 
)

◆ Dtk_DumpXml_Dtk_FdtPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_FdtPtr ( FILE *  F,
const Dtk_FdtPtr D,
const int &  compact = 1 
)
3063  {
3064  fprintf( F, "<Dtk_FdtPtr>\n" );
3065  if( D.IsNotNULL() )
3066  {
3068 
3069  if( D->info().IsNotNULL() )
3070  {
3071  D->Sub2DEntity()->info()->SetBlankedStatus( D->info()->GetBlankedStatus() );
3072  }
3073 
3074 
3075  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_transfo( F, D->TransformationMatrix() );
3076  Dtk_Fdt::ScreenDisplayEnum ScreenDisplayAttribute = D->GetScreenDisplayAttribute();
3077 
3078  if( ScreenDisplayAttribute != Dtk_Fdt::Default )
3079  {
3080  fprintf( F, "<ScreenDisplayAttribute>%s</ScreenDisplayAttribute>\n", Dtk_Fdt::ScreenDisplayEnumToString( ScreenDisplayAttribute ).c_str() );
3081  }
3082  fprintf( F, "<IsZoomable>%s</IsZoomable>\n", D->GetIsZoomableAttribute() == true ? "True" : "False" );
3083 
3084  Dtk_Int32 ColorIdData = -1;
3085  if ( D->GetDisplayBackgroundColorId(ColorIdData) == dtkNoError )
3086  {
3087  fprintf(F, "<DisplayBackgroundColor>\n");
3088  Dtk_RGB rgb;
3089  Dtk_API::GetAPI()->GetColorInTable(ColorIdData, rgb);
3090  Dtk_DumpXml_Dtk_RGB(F, rgb);
3091  fprintf(F, "</DisplayBackgroundColor>\n");
3092  }
3093 
3094  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_2dEntityPtr( F, D->Sub2DEntity(), compact );
3095 
3096  }
3097  else
3098  {
3099  fprintf( F, "Null" );
3100  }
3101  fprintf( F, "</Dtk_FdtPtr>\n" );
3102  return dtkNoError;
3103  }

◆ Dtk_DumpXml_Dtk_FeaturePtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_FeaturePtr ( FILE *  F,
const Dtk_FeaturePtr inVal 
)
8401  {
8402  fprintf( f, "<Dtk_FeaturePtr>\n" );
8403  fprintf( f, "<FeatId>%d</FeatId>\n", inToWrite->GetId() );
8404  if( inToWrite->name.len() )
8405  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( f, L"Name", inToWrite->GetName() );
8406  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( f, L"Type", inToWrite->GetTypeAsString() );
8407  fprintf( f, "<IsActive>%d</IsActive>\n", inToWrite->IsActive() );
8408 
8409  Dtk_DumpXml_FeatGeometry( f, inToWrite->GetInputGeometry(), "InputGeometry" );
8410  Dtk_DumpXml_FeatGeometry( f, inToWrite->GetOutputGeometry(), "OutputGeometry" );
8411  Dtk_DumpXml_FeatGeometry( f, inToWrite->GetAssociatedGeometry(), "AssociatedGeometry" );
8412  Dtk_DumpXml_FeatGeometry( f, inToWrite->GetFinalAssociatedGeometry(), "FinalAssociatedGeometry" );
8413 
8414  switch( inToWrite->GetType() )
8415  {
8416  case DTK_FEAT_HOLE:
8417  Dtk_DumpXml_FeatHole( f, inToWrite->GetHole() );
8418  break;
8419  // case DTK_FEAT_HOLE_SERIES :
8420  // Dtk_DumpXml_FeatHoleSeries(f,inToWrite->GetHoleSeries());
8421  // break;
8422  // case DTK_FEAT_UDF :
8423  // Dtk_DumpXml_FeatUDF(f,inToWrite->GetUdf());
8424  // break;
8425  case DTK_FEAT_THREAD:
8426  Dtk_DumpXml_FeatThread( f, inToWrite->GetThread() );
8427  break;
8428  // case DTK_FEAT_PRISM :
8429  // Dtk_DumpXml_FeatPrism(f, inToWrite->GetPrism());
8430  // break;
8431  // case DTK_FEAT_REVOL :
8432  // Dtk_DumpXml_FeatRevol (f, inToWrite->GetRevol());
8433  // break;
8434  // case DTK_FEAT_SHELL:
8435  // Dtk_DumpXml_FeatShell (f, inToWrite->GetRevol());
8436  // break;
8437  // case DTK_FEAT_FILLET:
8438  // Dtk_DumpXml_FeatFillet (f, inToWrite->GetRevol());
8439  // break;
8440  // case DTK_FEAT_SWEEP:
8441  // Dtk_DumpXml_FeatSweep (f, inToWrite->GetRevol());
8442  // break;
8443  // case DTK_FEAT_CHAMFER:
8444  // Dtk_DumpXml_FeatChamfer (f, inToWrite->GetRevol());
8445  // break;
8446  // case DTK_FEAT_SPLIT_SURF:
8447  // Dtk_DumpXml_FeatSplitSurf (f, inToWrite->GetRevol());
8448  // break;
8449  // case DTK_FEAT_THICK_SURF:
8450  // Dtk_DumpXml_FeatThickSurf (f, inToWrite->GetRevol());
8451  // break;
8452  // case DTK_FEAT_SEW_SURF:
8453  // Dtk_DumpXml_FeatSewSurf (f, inToWrite->GetRevol());
8454  // break;
8455  // case DTK_FEAT_CLOSE_SURF:
8456  // Dtk_DumpXml_FeatCloseSurf(f, inToWrite->GetRevol());
8457  // break;
8458  case DTK_FEAT_PATTERN:
8459  Dtk_DumpXml_FeatPattern( f, inToWrite->GetPattern() );
8460  break;
8461  // case DTK_FEAT_USER_PATTERN:
8462  // Dtk_DumpXml_FeatUserPattern (f, inToWrite->GetRevol());
8463  // break;
8464  // case DTK_FEAT_MIRROR:
8465  // Dtk_DumpXml_FeatMirror(f, inToWrite->GetRevol());
8466  // break;
8467  // case DTK_FEAT_DRAFT :
8468  // Dtk_DumpXml_FeatDraft(f, inToWrite->GetRevol());
8469  // break;
8470  // case DTK_FEAT_TRANSLATE:
8471  // break;
8472  // case DTK_FEAT_ROTATE:
8473  // break;
8474  // case DTK_FEAT_REMOVE_FACE :
8475  // break;
8476  // case DTK_FEAT_STIFFENER:
8477  // break;
8478  // case DTK_FEAT_FACE_FILLET:
8479  // break;
8480  // case DTK_FEAT_TRITANGENT_FILLET:
8481  // break;
8482  // case DTK_FEAT_MULTI_PAD:
8483  // break;
8484  // case DTK_FEAT_MULTI_POCKET:
8485  // break;
8486  // case DTK_FEAT_LOFT:
8487  // break;
8488  // case DTK_FEAT_THICKNESS:
8489  // break;
8490  // case DTK_FEAT_SCALING:
8491  // break;
8492  // case DTK_FEAT_USER_DEFINED:
8493  // Dtk_DumpXml_FeatUserDefined (f, inToWrite->GetUserDefined());
8494  // break;
8495  // case DTK_FEAT_PIPE:
8496  // Dtk_DumpXml_FeatPipe (f, inToWrite->GetPipe());
8497  // break;
8498  // case DTK_FEAT_SPOT_POINT:
8499  // Dtk_DumpXml_FeatSpotPoint(f, inToWrite->GetSpotPoint());
8500  // break;
8501 
8502  default:
8503  break;
8504  }
8505  fprintf( f, "</Dtk_FeaturePtr>\n" );
8506  return dtkNoError;
8507  }

◆ Dtk_DumpXml_Dtk_GeometricalTolerancePtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_GeometricalTolerancePtr ( FILE *  F,
const Dtk_GeometricalTolerancePtr D 
)
2551  {
2552  fprintf( F, "<Dtk_GeometricalTolerancePtr>\n" );
2554 
2555  Dtk_Size_t i, TolSpecContNb;
2556  TolSpecContNb = D->GetToleranceSpecificationContainerNb();
2557  fprintf( F, "<TolSpecConts TolSpecContNb = \"" XmlFormat( "u" )"\">\n", TolSpecContNb );
2558  for( i = 0; i < TolSpecContNb; i++ )
2559  {
2561  }
2562  fprintf( F, "</TolSpecConts>\n" );
2563  fprintf( F, "</Dtk_GeometricalTolerancePtr>\n" );
2564  return dtkNoError;
2565  }

◆ Dtk_DumpXml_Dtk_GraphicalDataPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_GraphicalDataPtr ( FILE *  F,
const Dtk_GraphicalDataPtr inVal 
)
8604  {
8605  if( inGraphicalData.IsNULL() )
8606  return dtkErrorNullPointer;
8607  int nbt = 0;
8608  int i, nb = ( int )inGraphicalData->GetNumMeshes();
8609  for( i = 0; i < nb; i++ )
8610  {
8611  Dtk_MeshPtr me = inGraphicalData->GetMesh( i );
8612  Dtk_DumpXml_Dtk_MeshPtr( F, me );
8613  }
8614  nbt = nb;
8615  nb = ( int )inGraphicalData->GetNumDrawings();
8616  nbt += nb;
8617  for( i = 0; i < nb; i++ )
8618  {
8619  Dtk_DrawingPtr dr = inGraphicalData->GetDrawing( i );
8620  Dtk_DumpXml_Dtk_DrawingPtr( F, dr );
8621  }
8622  Dtk_CameraPtr defcam = inGraphicalData->GetDefaultCamera();
8623  if( defcam.IsNotNULL() )
8624  {
8625  Dtk_DumpXml_Dtk_CameraPtr( F, defcam );
8626  }
8627  if( nbt == 0 )
8629  else
8630  return dtkNoError;
8631  }

◆ Dtk_DumpXml_Dtk_GridPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_GridPtr ( FILE *  F,
const Dtk_GridPtr D 
)
2393  {
2394  Dtk_string majorStyle, minorStyle;
2395  fprintf( F, "<Dtk_Grid>\n" );
2396 
2398  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Oriented2dBBox( F, D->GetBoundingBox() );
2399  fprintf( F, "<uSpacing>%f</uSpacing>\n", D->GetUSpacing() );
2400  fprintf( F, "<vSpacing>%f</vSpacing>\n", D->GetVSpacing() );
2401  fprintf( F, "<uMinorPerMajor>%d</uMinorPerMajor>\n", D->GetUMinorPerMajor() );
2402  fprintf( F, "<vMinorPerMajor>%d</vMinorPerMajor>\n", D->GetVMinorPerMajor() );
2403  Dtk_DumpXml_Dtk_FontLineTypeEnum( F, D->GetMajorLineStyle(), "majorLineStyle" );
2404  Dtk_DumpXml_Dtk_FontLineTypeEnum( F, D->GetMinorLineStyle(), "minorLineStyle" );
2405  fprintf( F, "<majorLineWidth>%f</majorLineWidth>\n", D->GetMajorLineWidth() );
2406  fprintf( F, "<minorLineWidth>%f</minorLineWidth>\n", D->GetMinorLineWidth() );
2407  fprintf( F, "<displayGridOption>%d</displayGridOption>\n", D->GetDisplayGridOption() );
2408  fprintf( F, "<displayOnTopOption>%d</displayOnTopOption>\n", D->GetDisplayOnTopOption() );
2409  fprintf( F, "<displayMajorLinesOption>%d</displayMajorLinesOption>\n", D->GetDisplayMajorLinesOption() );
2410  Dtk_DumpXml_Dtk_Grid_ShowLabelOptionEnum( F, D->GetDisplayShowLabelOption(), "displayShowLabelOption" );
2411  Dtk_DumpXml_Dtk_Grid_OriginReferenceOptionEnum( F, D->GetDisplayOriginReferenceOption(), "displayOriginReferenceOption" );
2412 
2413  fprintf( F, "</Dtk_Grid>\n" );
2414  return dtkNoError;
2415  }

◆ Dtk_DumpXml_Dtk_info()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_info ( FILE *  F,
const Dtk_InfoPtr I 
)
                else if( lst[ i ] == "Dtk_CurveThickNess" )
                {

int index = I->GetColorId(); fprintf( F, "<Dtk_CurveThickNess>\n<int>%d</int>\n</Dtk_CurveThickNess>\n", I->GetCurveThickNess() ); } /*

4117  {
4118  Dtk_status st;
4119  Dtk_MaterialPtr material = NULL;
4120 
4121  if( I.IsNULL() )
4122  return dtkNoError;
4123 
4124  Dtk_tab<Dtk_string> lst;
4125  I->ListAllAttributes( lst );
4126  Dtk_Size_t i;
4127  const Dtk_Size_t size = lst.size();
4128  {
4129  fprintf( F, "<Dtk_Info>\n" );
4130 
4131  fprintf( F, "<Dtk_ID>%i</Dtk_ID>\n", I->GetId() );
4132 
4133 #if 0 // dump Referenceset : (UG & JT)
4134  Dtk_tab<Dtk_string> array;
4135  I->GetReferenceSet( array, DTK_TRUE );
4136  if( array.size() > 0 )
4137  {
4138  fprintf(F, "<GetReferenceSet>\n");
4139  fprintf(F, "<size>%i</size>\n", array.size());
4140 
4141  for ( i = 0; i < array.size(); i++ )
4142  {
4143  fprintf(F, "%ls,", array[i].w_str());
4144  }
4145  fprintf(F, "</GetReferenceSet>\n");
4146  }
4147 #endif
4148  Dtk_tab<Dtk_MetaDataPtr> array_metadata;
4149  I->GetMetaData(array_metadata);
4150  Dtk_Size_t NumMetaData;
4151  NumMetaData = array_metadata.size();
4152  if ( NumMetaData )
4153  {
4154  fprintf(F, "<Dtk_MetaData Num=\'" XmlFormat("u") "\'>\n", NumMetaData);
4155  for ( i = 0; i < NumMetaData; i++ )
4156  {
4158  }
4159  fprintf(F, "</Dtk_MetaData>\n");
4160  }
4161 
4162  for( i = 0; i < size; i++ )
4163  {
4164  Dtk_Val v;
4165  if( lst[ i ] == "Dtk_Render" )
4166  {
4167  //int index = I->GetColorId();
4168  Dtk_RenderInfosPtr color = I->GetRenderInfos();
4169  //shader type
4171  shadertype = color->GetShaderType();
4172  //
4174  if( color->GetLightMap().IsNotNULL() )
4175  {
4176  if( shadertype != Dtk_RenderInfos::Unknown )
4177  {
4178  Dtk_RGB ambient = color->GetLightMap()->GetAmbientColor();
4179  fprintf( F, "<Dtk_Render><id>%d</id><name>%s</name><shadertype>%d</shadertype><ambientR>%d</ambientR><ambientG>%d</ambientG><ambientB>%d</ambientB><ambientA>%d</ambientA></Dtk_Render>\n",
4180  I->GetRenderInfosId(), colorName.c_str(), shadertype, ambient[ 0 ], ambient[ 1 ], ambient[ 2 ], ambient[ 3 ] );
4181 
4182  }
4183  else
4184  {
4185  Dtk_RGB ambient = color->GetLightMap()->GetAmbientColor();
4186  fprintf( F, "<Dtk_Render><id>%d</id><name>%s</name><ambientR>%d</ambientR><ambientG>%d</ambientG><ambientB>%d</ambientB><ambientA>%d</ambientA></Dtk_Render>\n",
4187  I->GetRenderInfosId(), colorName.c_str(), ambient[ 0 ], ambient[ 1 ], ambient[ 2 ], ambient[ 3 ] );
4188  }
4189  }
4190  else
4191  {
4192  if( shadertype != Dtk_RenderInfos::Unknown )
4193  {
4194  fprintf( F, "<Dtk_Render><id>%d</id><name>%s</name><shadertype>%d</shadertype></Dtk_Render>\n",
4195  I->GetRenderInfosId(), colorName.c_str(), shadertype ); // render sans lightmap (texture possible)
4196  }
4197  else
4198  {
4199  fprintf( F, "<Dtk_Render><id>%d</id><name>%s</name></Dtk_Render>\n",
4200  I->GetRenderInfosId(), colorName.c_str() ); // render sans lightmap (texture possible)
4201  }
4202  }
4203  }
4204  else if( lst[ i ] == "Dtk_ColorId" )
4205  {
4206  //int index = I->GetColorId();
4207  Dtk_RGB color = I->GetColor();
4208  fprintf( F, "<Dtk_Color><r>%d</r><g>%d</g><b>%d</b><a>%d</a>", color[ 0 ], color[ 1 ], color[ 2 ], color[ 3 ] );
4209  if( color.IndexReader() >= 0 )
4210  {
4211  fprintf( F, "<IndexReader>%d</IndexReader>", color.IndexReader() );
4212  }
4213  fprintf( F, "</Dtk_Color>\n" );
4214 
4215 
4216 
4217  }
4218  else if( lst[ i ] == "Dtk_CurveThickNessInMM" )
4219  {
4220  double bval = I->GetCurveThickNessInMM();
4221  fprintf( F, "<Dtk_CurveThickNessInMM><double>%f</double></Dtk_CurveThickNessInMM>\n", bval );
4222  }
4223  /**
4224  else if( lst[ i ] == "Dtk_CurveThickNess" )
4225  {
4226  //int index = I->GetColorId();
4227  fprintf( F, "<Dtk_CurveThickNess>\n<int>%d</int>\n</Dtk_CurveThickNess>\n", I->GetCurveThickNess() );
4228  }
4229  /**/
4230  else if( lst[ i ] == "Dtk_Uuid" )
4231  {
4232  Dtk_UUID uuid;
4233  uuid = I->GetUuid();
4234  fprintf(F, "<Dtk_uuid>\n");
4235 
4236 
4237  char data0[33];
4238  std::snprintf(data0, sizeof(data0), "%X%X%X%X", uuid[0], uuid[1], uuid[2], uuid[3]);
4239  char data[39];
4240  int cpt = 0;
4241  for ( size_t j = 0; j < 16; j++ )
4242  {
4243  data[cpt] = data0[2 * j]; cpt++;
4244  data[cpt] = data0[2 * j + 1]; cpt++;
4245  if ( cpt == 8 || cpt == 13 || cpt == 18 || cpt == 23 )
4246  {
4247  data[cpt] = '-'; cpt++;
4248  }
4249  }
4250  data[cpt] = '\0';
4251  Dtk_string string(data);
4253 
4254  for ( Dtk_Size_t j = 0; j < 4; j++ )
4255  {
4256 
4258  }
4259  fprintf(F, "</Dtk_uuid>\n");
4260  }
4261  else if( lst[ i ] == "Dtk_CurveLineTypeDefinition" )
4262  {
4263  bool couldNotSpecialDump = true;
4264 
4265  const Dtk_ID curveLineDefinitionId = I->GetCurveLineTypeDefinitionId();
4266  const Dtk_API *const dtkAPI = Dtk_API::GetAPI();
4267  if( dtkAPI )
4268  {
4269  const Dtk_LineTypeDefinitionPtr &lineTypeDefinition = dtkAPI->GetCurveLineTypeDefinitionInTable( curveLineDefinitionId );
4270  if( lineTypeDefinition.IsNotNULL() )
4271  {
4272  const Dtk_string name = Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( lineTypeDefinition->GetName(), XMLGenericString );
4273  const Dtk_string dtkFontLineTypeEnum = Dtk_ConvertFontLineTypeEnumToString( lineTypeDefinition->GetClosestAppearanceInFontLineTypeEnumeration() );
4274  const Dtk_Size_t nbPatterns = lineTypeDefinition->GetPatternLength();
4275 
4276  const bool isNameNull = name.is_NULL();
4277 
4279  const Dtk_string printFDef = "<int>%d (=> Name: " +
4280  Dtk_string( isNameNull ? "(null)" : "&quot;%s&quot;" ) +
4281  " - ClosestDtk_FontLineType: &quot;%s&quot; - PatternLength: " XmlFormat( "u" ) ")</int> \n";
4282 
4283  fprintf( F, "<%s>\n", xmlTitle.c_str() );
4284  if( isNameNull )
4285  {
4286  fprintf( F,
4287  printFDef.c_str(),
4288  curveLineDefinitionId,
4289  dtkFontLineTypeEnum.c_str(),
4290  nbPatterns );
4291  }
4292  else
4293  {
4294  fprintf( F,
4295  printFDef.c_str(),
4296  curveLineDefinitionId,
4297  name.c_str(),
4298  dtkFontLineTypeEnum.c_str(),
4299  nbPatterns );
4300  }
4301  fprintf( F, "</%s>\n", xmlTitle.c_str() );
4302 
4303  couldNotSpecialDump = false;
4304  }
4305  }
4306 
4307  // If could not dump correctly, use usual dump (Should not happen).
4308  if( couldNotSpecialDump )
4309  {
4310  I->FindAttribute( lst[ i ], v );
4312 
4313  fprintf( F, "<%s>\n", title.c_str() );
4315  fprintf( F, "</%s>\n", title.c_str() );
4316  }
4317  }
4318  else
4319  {
4320  I->FindAttribute( lst[ i ], v );
4322 
4323  fprintf( F, "<%s>\n", title.c_str() );
4325  fprintf( F, "</%s>\n", title.c_str() );
4326  }
4327  }
4328 
4329  //Usefull if you want to handle NX referenceSet
4330  /*
4331  Dtk_tab <Dtk_string> refset;
4332  I->GetReferenceSet(refset,DTK_TRUE);
4333  for (i = 0; i < refset.size(); i++)
4334  fprintf(F, "<Dtk_ReferenceSet_%u>%S</Dtk_ReferenceSet_%u>\n", i, refset[i].w_str(), i);
4335  */
4336 
4337  fprintf( F, "</Dtk_Info>\n" );
4338  }
4339 
4340  return dtkNoError;
4341  }

◆ Dtk_DumpXml_Dtk_KinematicsCommand()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsCommand ( FILE *  inFile,
const Dtk_KinCommandPtr inCommand,
Dtk_bool  simplified 
)
7641  {
7642  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7643  if( inFile == NULL )
7644  return dtkErrorNullPointer;
7645 
7646  fprintf( inFile, "<command name=\"%s\" id=\"%d\">\n", inCommand->getName().c_str(), inCommand->getId() );
7647  if( simplified == DTK_FALSE )
7648  {
7649  fprintf( inFile, "<attributCommand type=\"%d\" value=\"%f\"/>\n", inCommand->getType(), inCommand->getValue() );
7650  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsJoint( inFile, inCommand->getJoint(), DTK_TRUE );
7651  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inCommand->getParameter() );
7652  }
7653  fprintf( inFile, "</command>\n" );
7654 
7655  return dtkErrorStatus;
7656  }

◆ Dtk_DumpXml_Dtk_KinematicsConstraint()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsConstraint ( FILE *  inFile,
const Dtk_KinConstraintPtr inConstraint,
Dtk_bool  simplified 
)
7433  {
7434  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7435  if( inFile == NULL )
7436  return dtkErrorNullPointer;
7437 
7438  Dtk_Size_t i, nbVal;
7439 
7440  const Dtk_string inConstraintName = Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( inConstraint->getName() );
7441  fprintf( inFile, "<constraint name=\"%s\" id=\"%d\">\n", inConstraintName.c_str(), inConstraint->getId() );
7442  if( simplified == DTK_FALSE )
7443  {
7444  if( inConstraint->hasAttribute( inConstraint->_MODE_INTEGER ) ||
7445  inConstraint->hasAttribute( inConstraint->_VALUE ) ||
7446  inConstraint->hasAttribute( inConstraint->_ORIENTATION ) ||
7447  inConstraint->hasAttribute( inConstraint->_REFERENCE ) ||
7448  inConstraint->hasAttribute( inConstraint->_POSITION ) )
7449  {
7450  fprintf( inFile, "<attributConstraint" );
7451  if( inConstraint->hasAttribute( inConstraint->_MODE_INTEGER ) )
7452  {
7453  fprintf( inFile, " modeInteger=\"%d\"", inConstraint->getModeInteger() );
7454  }
7455  if( inConstraint->hasAttribute( inConstraint->_VALUE ) )
7456  {
7457  fprintf( inFile, " value=\"%f\"", inConstraint->getValue()->getNamedValue()->getValue() );
7458  }
7459  if( inConstraint->hasAttribute( inConstraint->_ORIENTATION ) )
7460  {
7461  fprintf( inFile, " orientation=\"%f\"", inConstraint->getOrientation()->getNamedValue()->getValue() );
7462  }
7463  if( inConstraint->hasAttribute( inConstraint->_REFERENCE ) )
7464  {
7465  fprintf( inFile, " fixInSpace=\"%.0f\"", inConstraint->getReference()->getNamedValue()->getValue() );
7466  }
7467  fprintf( inFile, ">\n" );
7468  if( inConstraint->hasAttribute( inConstraint->_POSITION ) )
7469  {
7470  fprintf( inFile, "<matricePosition nbValue=\"12\"" );
7471  DumpTransfo( inFile, inConstraint->getPosition() );
7472  fprintf( inFile, "/>\n" );
7473  }
7474  fprintf( inFile, "</attributConstraint>\n" );
7475  }
7476  nbVal = inConstraint->getConnectorSize();
7477  if( nbVal > 0 )
7478  {
7479  fprintf( inFile, "<connectors>\n" );
7480  for( i = 0; i < nbVal; i++ )
7481  {
7482  Dtk_DumpXml_Dtk_NodeConnector( inFile, inConstraint->getConnector( i ) );
7483  }
7484  fprintf( inFile, "</connectors>\n" );
7485  }
7486  }
7487  fprintf( inFile, "</constraint>\n" );
7488 
7489  return dtkErrorStatus;
7490  }

◆ Dtk_DumpXml_Dtk_KinematicsCurve()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsCurve ( FILE *  inFile,
const Dtk_KinCurvePtr inCurve 
)
7374  {
7375  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7376  if( inFile == NULL )
7377  return dtkErrorNullPointer;
7378 
7379  fprintf( inFile, "<curve fileName=\"%s\" idBlock=\"%d\"/>\n", inCurve->getFileName().c_str(), inCurve->getIdBlock() );
7380 
7381  return dtkErrorStatus;
7382  }

◆ Dtk_DumpXml_Dtk_KinematicsFixPart()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsFixPart ( FILE *  inFile,
const Dtk_KinFixPartPtr inFixPart 
)
7659  {
7660  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7661  if( inFile == NULL )
7662  return dtkErrorNullPointer;
7663 
7664  fprintf( inFile, "<fixPart name=\"%s\" id=\"%d\">\n", inFixPart->getName().c_str(), inFixPart->getId() );
7665  if( inFixPart->getConstraint().IsNotNULL() )
7666  {
7667  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsConstraint( inFile, inFixPart->getConstraint(), DTK_TRUE );
7668  }
7669  if( inFixPart->getPart().IsNotNULL() )
7670  {
7671  Dtk_DumpXml_Dtk_ComponentPtr( inFile, inFixPart->getPart() );
7672  }
7673  fprintf( inFile, "</fixPart>\n" );
7674 
7675  return dtkErrorStatus;
7676  }

◆ Dtk_DumpXml_Dtk_KinematicsFormula()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsFormula ( FILE *  inFile,
const Dtk_KinFormulaPtr inFormula 
)
7385  {
7386  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7387  if( inFile == NULL )
7388  return dtkErrorNullPointer;
7389 
7390  fprintf( inFile, "<formula name=\"%s\" id=\"%d\">\n", inFormula->getName().c_str(), inFormula->getId() );
7391  fprintf( inFile, "<attributFormula" );
7392  fprintf( inFile, " comment=\"%s\"", inFormula->getComment().c_str() );
7393  fprintf( inFile, " formula=\"%s\"", inFormula->getFormula().c_str() );
7394  fprintf( inFile, " parameter=\"%s\"/>\n", inFormula->getParam().c_str() );
7395  fprintf( inFile, "</formula>\n" );
7396 
7397  return dtkErrorStatus;
7398  }

◆ Dtk_DumpXml_Dtk_KinematicsJoint()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsJoint ( FILE *  inFile,
const Dtk_KinJointPtr inJoint,
Dtk_bool  simplified 
)
7493  {
7494  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7495  if( inFile == NULL )
7496  return dtkErrorNullPointer;
7497 
7498  Dtk_Size_t i, nb;
7499  Dtk_KinConstraintPtr constraint;
7500 
7501  fprintf( inFile, "<joint name=\"%s\" id=\"%d\">\n", inJoint->getName().c_str(), inJoint->getId() );
7502  if( simplified == DTK_FALSE )
7503  {
7504  fprintf( inFile, "<attributJoint type=\"%d\"", inJoint->getType() );
7505  if( inJoint->hasAttribute( L"_compoundType" ) )
7506  {
7507  fprintf( inFile, " compoundType=\"%d\"", inJoint->getCompoundType() );
7508  }
7509  if( inJoint->hasAttribute( inJoint->_PARAMETER1 ) )
7510  {
7511  fprintf( inFile, " parameter1=\"%f\"", inJoint->getParameter1() );
7512  }
7513  if( inJoint->hasAttribute( inJoint->_PARAMETER2 ) )
7514  {
7515  fprintf( inFile, " parameter2=\"%f\"", inJoint->getParameter2() );
7516  }
7517  if( inJoint->hasAttribute( inJoint->_RATIO ) )
7518  {
7519  fprintf( inFile, " ratio=\"%f\"", inJoint->getRatio() );
7520  }
7521  fprintf( inFile, ">\n" );
7522  if( inJoint->hasAttribute( inJoint->_UPPER_LIMIT1 ) ||
7523  inJoint->hasAttribute( inJoint->_LOWER_LIMIT1 ) ||
7524  inJoint->hasAttribute( inJoint->_UPPER_LIMIT2 ) ||
7525  inJoint->hasAttribute( inJoint->_LOWER_LIMIT2 ) )
7526  {
7527  fprintf( inFile, "<limit" );
7528  if( inJoint->hasAttribute( inJoint->_UPPER_LIMIT1 ) )
7529  {
7530  fprintf( inFile, " upperLimit1=\"%f\"", inJoint->getUpperLimit1() );
7531  }
7532  if( inJoint->hasAttribute( inJoint->_LOWER_LIMIT1 ) )
7533  {
7534  fprintf( inFile, " lowerLimit1=\"%f\"", inJoint->getLowerLimit1() );
7535  }
7536  if( inJoint->hasAttribute( inJoint->_UPPER_LIMIT2 ) )
7537  {
7538  fprintf( inFile, " upperLimit2=\"%f\"", inJoint->getUpperLimit2() );
7539  }
7540  if( inJoint->hasAttribute( inJoint->_LOWER_LIMIT2 ) )
7541  {
7542  fprintf( inFile, " lowerLimit2=\"%f\"", inJoint->getLowerLimit2() );
7543  }
7544  fprintf( inFile, "/>\n" );
7545  }
7546  fprintf( inFile, "<localFrame1 nbValue=\"12\"" );
7547  DumpTransfo( inFile, inJoint->getLocalFrame1() );
7548  fprintf( inFile, "/>\n" );
7549  fprintf( inFile, "<localFrame2 nbValue=\"12\"" );
7550  DumpTransfo( inFile, inJoint->getLocalFrame2() );
7551  fprintf( inFile, "/>\n" );
7552  if( inJoint->hasAttribute( inJoint->_LOCAL_FRAME3 ) )
7553  {
7554  fprintf( inFile, "<localFrame3 nbValue=\"12\"" );
7555  DumpTransfo( inFile, inJoint->getLocalFrame3() );
7556  fprintf( inFile, "/>\n" );
7557  }
7558  if( inJoint->hasAttribute( inJoint->_LOCAL_FRAME4 ) )
7559  {
7560  fprintf( inFile, "<localFrame4 nbValue=\"12\"" );
7561  DumpTransfo( inFile, inJoint->getLocalFrame4() );
7562  fprintf( inFile, "/>\n" );
7563  }
7564  if( inJoint->hasAttribute( inJoint->_ABSOLUT_POS1 ) )
7565  {
7566  fprintf( inFile, "<absolutePos1 nbValue=\"12\"" );
7567  DumpTransfo( inFile, inJoint->getAbsolutPos1() );
7568  fprintf( inFile, "/>\n" );
7569  }
7570  if( inJoint->hasAttribute( inJoint->_ABSOLUT_POS2 ) )
7571  {
7572  fprintf( inFile, "<absolutePos2 nbValue=\"12\"" );
7573  DumpTransfo( inFile, inJoint->getAbsolutPos2() );
7574  fprintf( inFile, "/>\n" );
7575  }
7576  fprintf( inFile, "</attributJoint>\n" );
7577  fprintf( inFile, "<parts>\n" );
7578  if( inJoint->hasAttribute( L"_part1" ) )
7579  {
7580  Dtk_DumpXml_Dtk_ComponentPtr( inFile, inJoint->getPart1() );
7581  }
7582  if( inJoint->hasAttribute( L"_part2" ) )
7583  {
7584  Dtk_DumpXml_Dtk_ComponentPtr( inFile, inJoint->getPart2() );
7585  }
7586  if( inJoint->hasAttribute( inJoint->_PART3 ) )
7587  {
7588  Dtk_DumpXml_Dtk_ComponentPtr( inFile, inJoint->getPart3() );
7589  }
7590  fprintf( inFile, "</parts>\n" );
7591  if( inJoint->hasAttribute( inJoint->_CONSTRAINT ) )
7592  {
7593  fprintf( inFile, "<constraints>\n" );
7594  nb = inJoint->getConstraintSize();
7595  for( i = 0; i < nb; i++ )
7596  {
7597  constraint = inJoint->getConstraint( i );
7598  Dtk_DumpXml_Dtk_KinematicsConstraint( inFile, constraint, DTK_TRUE );
7599  }
7600  fprintf( inFile, "</constraints>\n" );
7601  }
7602  if( inJoint->hasAttribute( inJoint->_CONNECTOR ) )
7603  {
7604  fprintf( inFile, "<connectors>\n" );
7605  nb = inJoint->getConnectorSize();
7606  for( i = 0; i < nb; i++ )
7607  {
7608  Dtk_DumpXml_Dtk_NodeConnector( inFile, inJoint->getConnector( i ) );
7609  }
7610  fprintf( inFile, "</connectors>\n" );
7611  }
7612  if( inJoint->hasAttribute( inJoint->_FIX_TOGETHER ) )
7613  {
7614  fprintf( inFile, "<fixTogether>\n" );
7615  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsConstraint( inFile, inJoint->getFixTogether(), DTK_TRUE );
7616  fprintf( inFile, "</fixTogether>\n" );
7617  }
7618  if( inJoint->hasAttribute( inJoint->_RATIO_PARAMETER ) )
7619  {
7620  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inJoint->getRatioParameter() );
7621  }
7622  if( inJoint->hasAttribute( inJoint->_JOINT1 ) || inJoint->hasAttribute( inJoint->_JOINT2 ) )
7623  {
7624  fprintf( inFile, "<joints>\n" );
7625  if( inJoint->hasAttribute( inJoint->_JOINT1 ) )
7626  {
7627  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsJoint( inFile, inJoint->getJoint1(), DTK_TRUE );
7628  }
7629  if( inJoint->hasAttribute( inJoint->_JOINT2 ) )
7630  {
7631  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsJoint( inFile, inJoint->getJoint2(), DTK_TRUE );
7632  }
7633  fprintf( inFile, "</joints>\n" );
7634  }
7635  }
7636  fprintf( inFile, "</joint>\n" );
7637  return dtkNoError;
7638  }

◆ Dtk_DumpXml_Dtk_KinematicsLaw()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsLaw ( FILE *  inFile,
const Dtk_KinLawPtr inLaw 
)
7401  {
7402  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7403  if( inFile == NULL )
7404  return dtkErrorNullPointer;
7405 
7406  Dtk_Size_t i, nb;
7407 
7408  fprintf( inFile, "<law name=\"%s\" id=\"%d\">\n", inLaw->getName().c_str(), inLaw->getId() );
7409  fprintf( inFile, "<attributLaw comment=\"%s\" synchrone=\"%d\" active=\"%d\" algo=\"%d\"/>\n", inLaw->getComment().c_str(), inLaw->getSynchrone(), inLaw->getActive(), inLaw->getAlgo() );
7410  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsFormula( inFile, inLaw->getExpression() );
7411 
7412  if( inLaw->getCurveSize() + inLaw->getParameter().size() > 0 )
7413  {
7414  fprintf( inFile, "<parameters>\n" );
7415  nb = inLaw->getCurveSize();
7416  for( i = 0; i < nb; i++ )
7417  {
7418  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsCurve( inFile, inLaw->getCurve( i ) );
7419  }
7420  nb = inLaw->getParameter().size();
7421  for( i = 0; i < nb; i++ )
7422  {
7423  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inLaw->getParameter().at( i ), DTK_TRUE );
7424  }
7425  fprintf( inFile, "</parameters>\n" );
7426  }
7427  fprintf( inFile, "</law>\n" );
7428 
7429  return dtkNoError;
7430  }

◆ Dtk_DumpXml_Dtk_KinematicsMechanism()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsMechanism ( FILE *  inFile,
const Dtk_KinMechanismPtr inKinMechanism 
)
7743  {
7744  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7745  if( inFile == NULL )
7746  return dtkErrorNullPointer;
7747 
7748  Dtk_Size_t i, nbElt;
7749  Dtk_KinJointPtr joint;
7750  Dtk_KinCommandPtr cmd;
7751  Dtk_KinFixPartPtr fixPart;
7752 
7753  fprintf( inFile, "<mechanism name=\"%s\" id=\"%d\" version=\"%s\">\n", inKinMechanism->getName().c_str(), inKinMechanism->getId(), inKinMechanism->getVersion().c_str() );
7754 
7755  // Dump Mechanism joints
7756  fprintf( inFile, "<joints>\n" );
7757  nbElt = inKinMechanism->getJointSize();
7758  for( i = 0; i < nbElt; i++ )
7759  {
7760  joint = inKinMechanism->getJoint( i );
7761  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsJoint( inFile, joint, DTK_TRUE );
7762  }
7763  fprintf( inFile, "</joints>\n" );
7764 
7765  // Dump Mechanism commands
7766  fprintf( inFile, "<commands>\n" );
7767  nbElt = inKinMechanism->getCommandSize();
7768  for( i = 0; i < nbElt; i++ )
7769  {
7770  cmd = inKinMechanism->getCommand( i );
7771  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsCommand( inFile, cmd, DTK_TRUE );
7772  }
7773  fprintf( inFile, "</commands>\n" );
7774 
7775  // Dump Mechanism fix part
7776  fixPart = inKinMechanism->getFixPart();
7777  if( fixPart.IsNotNULL() )
7778  {
7779  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsFixPart( inFile, fixPart );
7780  }
7781 
7782  // Dump Mechanism time parameter
7783  fprintf( inFile, "<paramTime>\n" );
7784  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inKinMechanism->getParamTime() );
7785  fprintf( inFile, "</paramTime>\n" );
7786 
7787  // Dump Mechanism laws
7788  nbElt = inKinMechanism->getLawSize();
7789  if( nbElt > 0 )
7790  {
7791  fprintf( inFile, "<laws>\n" );
7792  for( i = 0; i < nbElt; i++ )
7793  {
7794  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsLaw( inFile, inKinMechanism->getLaw( i ) );
7795  }
7796  fprintf( inFile, "</laws>\n" );
7797  }
7798 
7799  // Dump Mechanism Speed Acceleration
7800  nbElt = inKinMechanism->getSpeedAccelerationSize();
7801  if( nbElt > 0 )
7802  {
7803  fprintf( inFile, "<speedsAccelerations>\n" );
7804  for( i = 0; i < nbElt; i++ )
7805  {
7806  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsSpeedAcceleration( inFile, inKinMechanism->getSpeedAcceleration( i ) );
7807  }
7808  fprintf( inFile, "</speedsAccelerations>\n" );
7809  }
7810  fprintf( inFile, "</mechanism>\n" );
7811 
7812  return dtkErrorStatus;
7813  }

◆ Dtk_DumpXml_Dtk_KinematicsNamedValue()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsNamedValue ( FILE *  inFile,
const Dtk_KinNamedValuePtr inNamedValue 
)
7140  {
7141  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7142  if( inFile == NULL )
7143  return dtkErrorNullPointer;
7144 
7145  fprintf( inFile, "<namedValue name=\"%s\" value=\"%f\"/>\n", inNamedValue->getName().c_str(), inNamedValue->getValue() );
7146  return dtkErrorStatus;
7147  }

◆ Dtk_DumpXml_Dtk_KinematicsParameter()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsParameter ( FILE *  inFile,
const Dtk_KinParameterPtr inParameter,
Dtk_bool  simplified = DTK_FALSE 
)
7150  {
7151  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7152  if( inFile == NULL )
7153  return dtkErrorNullPointer;
7154 
7155  int i;
7156 
7157  fprintf( inFile, "<parameter name=\"%s\" id=\"%d\"", inParameter->getName().c_str(), inParameter->getId() );
7158  if( simplified == DTK_TRUE )
7159  {
7160  Dtk_string tmp;
7161  switch( inParameter->getParentType() )
7162  {
7163  case DTK_KIN_TYPE_COMMAND:
7164  tmp.convert_from_int( ( ( Dtk_KinCommand * )inParameter->getParentElement() )->getId() );
7165  tmp += L"_COMMAND";
7166  break;
7167  case DTK_KIN_TYPE_JOINT:
7168  tmp.convert_from_int( ( ( Dtk_KinJoint * )inParameter->getParentElement() )->getId() );
7169  tmp += L"_JOINT";
7170  break;
7172  tmp.convert_from_int( ( ( Dtk_KinMechanism * )inParameter->getParentElement() )->getId() );
7173  tmp += L"_MECHANISM";
7174  break;
7175  case DTK_KIN_TYPE_LAW:
7176  tmp.convert_from_int( ( ( Dtk_KinLaw * )inParameter->getParentElement() )->getId() );
7177  tmp += L"_LAW";
7178  break;
7180  tmp.convert_from_int( ( ( Dtk_KinSpeedAcceleration * )inParameter->getParentElement() )->getId() );
7181  tmp += L"_SPEED_ACCELERATION";
7182  break;
7183  default:
7184  tmp = L"DTK_UNKNOWN";
7185  break;
7186  }
7187  fprintf( inFile, " parent=\"%s\"", tmp.c_str() );
7188  }
7189  fprintf( inFile, ">\n" );
7190  if( simplified == DTK_FALSE )
7191  {
7192  if( inParameter->hasAttribute( inParameter->_RANGE ) )
7193  {
7194  fprintf( inFile, "<range nbValue=\"4\"" );
7195  for( i = 0; i < 4; i++ )
7196  {
7197  fprintf( inFile, " _%d=\"%f\"", i + 1, inParameter->getRange( i ) );
7198  }
7199  fprintf( inFile, "/>\n" );
7200  }
7201  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsNamedValue( inFile, inParameter->getNamedValue() );
7202  }
7203  fprintf( inFile, "</parameter>\n" );
7204 
7205  return dtkErrorStatus;
7206  }

◆ Dtk_DumpXml_Dtk_KinematicsProduct()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsProduct ( FILE *  inFile,
const Dtk_KinProductPtr inKinProduct,
int &  inKinProductIndex 
)
7679  {
7680  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7681  if( inFile == NULL )
7682  return dtkErrorNullPointer;
7683 
7684  Dtk_Size_t i, nb;
7685  Dtk_KinPartPtr part;
7686  Dtk_KinProductPtr prod;
7687  Dtk_string xmlName, productName, instanceName, fileName;
7688  Dtk_status tempDst;
7689 
7690  fprintf( inFile, "<product" );
7691  productName = inKinProduct->name();
7692  if( productName.is_not_NULL() )
7693  {
7694  xmlName = productName;
7695  tempDst = validate_xml_string( xmlName );
7696  fprintf( inFile, " name=\"%s\"", xmlName.c_str() );
7697  }
7698  fprintf( inFile, " id=\"%d\"", inKinProduct->id() );
7699 
7700  instanceName = inKinProduct->instanceName();
7701  if( instanceName.is_not_NULL() )
7702  {
7703  xmlName = instanceName;
7704  tempDst = validate_xml_string( xmlName );
7705  fprintf( inFile, " instanceName=\"%s\"", xmlName.c_str() );
7706  }
7707  fileName = inKinProduct->fileName();
7708  if( fileName.is_not_NULL() )
7709  {
7710  xmlName = fileName;
7711  tempDst = validate_xml_string( xmlName );
7712  fprintf( inFile, " fileName=\"%s\"", xmlName.c_str() );
7713  }
7714 
7715  fprintf( inFile, ">\n<components>\n" );
7716  nb = inKinProduct->getNbPart();
7717  nb += inKinProduct->getNbProduct();
7718  part = NULL;
7719  prod = NULL;
7720  for( i = 0; i < nb; i++ )
7721  {
7722  inKinProductIndex++;
7723  prod = inKinProduct->searchProductByNumChild( inKinProductIndex );
7724  if( part.IsNotNULL() )
7725  {
7726  Dtk_DumpXml_Dtk_ComponentPtr( inFile, part );
7727  part = NULL;
7728  }
7729  if( prod.IsNotNULL() )
7730  {
7731  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsProduct( inFile, prod, inKinProductIndex );
7732  prod = NULL;
7733  }
7734  }
7735 
7736  fprintf( inFile, "</components>\n" );
7737  fprintf( inFile, "</product>\n" );
7738 
7739  return dtkNoError;
7740  }

◆ Dtk_DumpXml_Dtk_KinematicsPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsPtr ( FILE *  inFile,
const Dtk_KinematicPtr inKinematic 
)
7816  {
7817  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7818  if( inFile == NULL )
7819  return dtkErrorNullPointer;
7820 
7821  Dtk_Size_t size, i;
7822  Dtk_KinPartPtr part;
7823  Dtk_KinConstraintPtr constraint;
7824  Dtk_KinJointPtr joint;
7825  Dtk_KinCommandPtr command;
7826  Dtk_KinMechanismPtr mechanism;
7827  Dtk_status dstat;
7828 
7829  fprintf( inFile, "<kinematics>\n" );
7830 
7831  // Dump Kinematics Product
7832  if( inKinematic->getProduct().IsNotNULL() )
7833  {
7834  int iProductIndex = 0;
7835  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsProduct( inFile, inKinematic->getProduct(), iProductIndex );
7836  }
7837 
7838  // Dump Kinematics Parts
7839  fprintf( inFile, "<parts>\n" );
7840  size = inKinematic->getPartSize();
7841  for( i = 0; i < size; i++ )
7842  {
7843  part = inKinematic->getPart( i );
7844  Dtk_DumpXml_Dtk_ComponentPtr( inFile, part );
7845  if( dstat.isNotOK() )
7846  {
7847  return dtkErrorUnspecified;
7848  }
7849  }
7850  fprintf( inFile, "</parts>\n" );
7851 
7852  // Dump kinematics Constraints
7853  fprintf( inFile, "<constraints>\n" );
7854  size = inKinematic->getConstraintSize();
7855  for( i = 0; i < size; i++ )
7856  {
7857  constraint = inKinematic->getConstraint( i );
7858  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsConstraint( inFile, constraint, DTK_FALSE );
7859  if( dtkErrorStatus != dtkNoError )
7860  {
7861  return dtkErrorStatus;
7862  }
7863  }
7864  fprintf( inFile, "</constraints>\n" );
7865 
7866  // Dump kinematics Joints
7867  fprintf( inFile, "<joints>\n" );
7868  size = inKinematic->getJointSize();
7869  for( i = 0; i < size; i++ )
7870  {
7871  joint = inKinematic->getJoint( i );
7872  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsJoint( inFile, joint, DTK_FALSE );
7873  if( dtkErrorStatus != dtkNoError )
7874  {
7875  return dtkErrorStatus;
7876  }
7877  }
7878  fprintf( inFile, "</joints>\n" );
7879 
7880  // Dump kinematics commands
7881  fprintf( inFile, "<commands>\n" );
7882  size = inKinematic->getCommandSize();
7883  for( i = 0; i < size; i++ )
7884  {
7885  command = inKinematic->getCommand( i );
7886  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsCommand( inFile, command, DTK_FALSE );
7887  if( dtkErrorStatus != dtkNoError )
7888  {
7889  return dtkErrorStatus;
7890  }
7891  }
7892  fprintf( inFile, "</commands>\n" );
7893 
7894  // Dump kinematics commands
7895  fprintf( inFile, "<mechanisms>\n" );
7896  size = inKinematic->getMechanismSize();
7897  for( i = 0; i < size; i++ )
7898  {
7899  mechanism = inKinematic->getMechanism( i );
7900  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsMechanism( inFile, mechanism );
7901  if( dtkErrorStatus != dtkNoError )
7902  {
7903  return dtkErrorStatus;
7904  }
7905  }
7906  fprintf( inFile, "</mechanisms>\n" );
7907 
7908  fprintf( inFile, "</kinematics>\n" );
7909  return dtkErrorStatus;
7910  }

◆ Dtk_DumpXml_Dtk_KinematicsSpeedAcceleration()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsSpeedAcceleration ( FILE *  inFile,
const Dtk_KinSpeedAccelerationPtr inSpeedAcceleration 
)
7209  {
7210  Dtk_ErrorStatus dtkErrorStatus = dtkNoError;
7211  if( inFile == NULL )
7212  return dtkErrorNullPointer;
7213 
7214  fprintf( inFile, "<speedAcceleration name=\"%s\" id=\"%d\">\n", inSpeedAcceleration->getName().c_str(), inSpeedAcceleration->getId() );
7215 
7216  if( inSpeedAcceleration->getRefProd().IsNotNULL() )
7217  {
7218  fprintf( inFile, "<refProd>\n" );
7219  Dtk_DumpXml_Dtk_ComponentPtr( inFile, inSpeedAcceleration->getRefProd() );
7220  fprintf( inFile, "</refProd>\n" );
7221  }
7222  if( inSpeedAcceleration->getPoint().IsNotNULL() )
7223  {
7224  fprintf( inFile, "<point>\n" );
7225  Dtk_DumpXml_Dtk_NodeConnector( inFile, inSpeedAcceleration->getPoint() );
7226  fprintf( inFile, "</point>\n" );
7227  }
7228 
7229  if( inSpeedAcceleration->getPtX().IsNotNULL() )
7230  {
7231  fprintf( inFile, "<pointX>\n" );
7232  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getPtX() );
7233  fprintf( inFile, "</pointX>\n" );
7234  }
7235  if( inSpeedAcceleration->getPtY().IsNotNULL() )
7236  {
7237  fprintf( inFile, "<pointY>\n" );
7238  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getPtY() );
7239  fprintf( inFile, "</pointY>\n" );
7240  }
7241  if( inSpeedAcceleration->getPtZ().IsNotNULL() )
7242  {
7243  fprintf( inFile, "<pointZ>\n" );
7244  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getPtZ() );
7245  fprintf( inFile, "</pointZ>\n" );
7246  }
7247 
7248  if( inSpeedAcceleration->getLinearSpeedX().IsNotNULL() )
7249  {
7250  fprintf( inFile, "<linearSpeedX>\n" );
7251  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getLinearSpeedX() );
7252  fprintf( inFile, "</linearSpeedX>\n" );
7253  }
7254  if( inSpeedAcceleration->getLinearSpeedY().IsNotNULL() )
7255  {
7256  fprintf( inFile, "<linearSpeedY>\n" );
7257  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getLinearSpeedY() );
7258  fprintf( inFile, "</linearSpeedY>\n" );
7259  }
7260  if( inSpeedAcceleration->getLinearSpeedZ().IsNotNULL() )
7261  {
7262  fprintf( inFile, "<linearSpeedZ>\n" );
7263  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getLinearSpeedZ() );
7264  fprintf( inFile, "</linearSpeedZ>\n" );
7265  }
7266  if( inSpeedAcceleration->getLinearSpeed().IsNotNULL() )
7267  {
7268  fprintf( inFile, "<linearSpeed>\n" );
7269  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getLinearSpeed() );
7270  fprintf( inFile, "</linearSpeed>\n" );
7271  }
7272 
7273  if( inSpeedAcceleration->getLinearAccelerationX().IsNotNULL() )
7274  {
7275  fprintf( inFile, "<linearAccelerationX>\n" );
7276  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getLinearAccelerationX() );
7277  fprintf( inFile, "</linearAccelerationX>\n" );
7278  }
7279  if( inSpeedAcceleration->getLinearAccelerationY().IsNotNULL() )
7280  {
7281  fprintf( inFile, "<linearAccelerationY>\n" );
7282  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getLinearAccelerationY() );
7283  fprintf( inFile, "</linearAccelerationY>\n" );
7284  }
7285  if( inSpeedAcceleration->getLinearAccelerationZ().IsNotNULL() )
7286  {
7287  fprintf( inFile, "<linearAccelerationZ>\n" );
7288  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getLinearAccelerationZ() );
7289  fprintf( inFile, "</linearAccelerationZ>\n" );
7290  }
7291  if( inSpeedAcceleration->getLinearAcceleration().IsNotNULL() )
7292  {
7293  fprintf( inFile, "<linearAcceleration>\n" );
7294  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getLinearAcceleration() );
7295  fprintf( inFile, "</linearAcceleration>\n" );
7296  }
7297 
7298  if( inSpeedAcceleration->getAngularSpeedX().IsNotNULL() )
7299  {
7300  fprintf( inFile, "<angularSpeedX>\n" );
7301  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getAngularSpeedX() );
7302  fprintf( inFile, "</angularSpeedX>\n" );
7303  }
7304  if( inSpeedAcceleration->getAngularSpeedY().IsNotNULL() )
7305  {
7306  fprintf( inFile, "<angularSpeedY>\n" );
7307  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getAngularSpeedY() );
7308  fprintf( inFile, "</angularSpeedY>\n" );
7309  }
7310  if( inSpeedAcceleration->getAngularSpeedZ().IsNotNULL() )
7311  {
7312  fprintf( inFile, "<angularSpeedZ>\n" );
7313  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getAngularSpeedZ() );
7314  fprintf( inFile, "</angularSpeedZ>\n" );
7315  }
7316  if( inSpeedAcceleration->getAngularSpeed().IsNotNULL() )
7317  {
7318  fprintf( inFile, "<angularSpeed>\n" );
7319  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getAngularSpeed() );
7320  fprintf( inFile, "</angularSpeed>\n" );
7321  }
7322 
7323  if( inSpeedAcceleration->getAngularAccelerationX().IsNotNULL() )
7324  {
7325  fprintf( inFile, "<angularAccelerationX>\n" );
7326  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getAngularAccelerationX() );
7327  fprintf( inFile, "</angularAccelerationX>\n" );
7328  }
7329  if( inSpeedAcceleration->getAngularAccelerationY().IsNotNULL() )
7330  {
7331  fprintf( inFile, "<angularAccelerationY>\n" );
7332  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getAngularAccelerationY() );
7333  fprintf( inFile, "</angularAccelerationY>\n" );
7334  }
7335  if( inSpeedAcceleration->getAngularAccelerationZ().IsNotNULL() )
7336  {
7337  fprintf( inFile, "<angularAccelerationZ>\n" );
7338  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getAngularAccelerationZ() );
7339  fprintf( inFile, "</angularAccelerationZ>\n" );
7340  }
7341  if( inSpeedAcceleration->getAngularAcceleration().IsNotNULL() )
7342  {
7343  fprintf( inFile, "<angularAcceleration>\n" );
7344  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getAngularAcceleration() );
7345  fprintf( inFile, "</angularAcceleration>\n" );
7346  }
7347 
7348  if( inSpeedAcceleration->getCirX().IsNotNULL() )
7349  {
7350  fprintf( inFile, "<cirX>\n" );
7351  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getCirX() );
7352  fprintf( inFile, "</cirX>\n" );
7353  }
7354  if( inSpeedAcceleration->getCirY().IsNotNULL() )
7355  {
7356  fprintf( inFile, "<cirY>\n" );
7357  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getCirY() );
7358  fprintf( inFile, "</cirY>\n" );
7359  }
7360  if( inSpeedAcceleration->getCirZ().IsNotNULL() )
7361  {
7362  fprintf( inFile, "<cirZ>\n" );
7363  dtkErrorStatus = Dtk_DumpXml_Dtk_KinematicsParameter( inFile, inSpeedAcceleration->getCirZ() );
7364  fprintf( inFile, "</cirZ>\n" );
7365  }
7366 
7367  fprintf( inFile, "</speedAcceleration>\n" );
7368 
7369  return dtkNoError;
7370  }

◆ Dtk_DumpXml_Dtk_LayerInfosSetPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_LayerInfosSetPtr ( FILE *  F,
const Dtk_LayerInfosSetPtr inVal 
)
3368  {
3369  fprintf( F, "<Dtk_LayerInfosSet>\n" );
3370  if( inVal.IsNotNULL() )
3371  {
3372  Dtk_Size_t LayerIdx = 0;
3373  Dtk_Size_t NumLayers = inVal->GetNumLayers();
3374  Dtk_Size_t CurrentLayer;
3375 
3376  inVal->GetCurrentLayer( CurrentLayer );
3377  fprintf( F, "<Layers Num=\"" XmlFormat( "u" )"\" CurrentLayer=\"" XmlFormat( "d" )"\">\n", NumLayers, CurrentLayer );
3378  auto const& layers = inVal->GetLayers();
3379  for( Dtk_LayerInfosSet::Layer const& layer : layers )
3380  {
3381  if( layer.GetName().len() > 0 )
3382  {
3383  auto LayerName = Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( layer.GetName(), XMLGenericString);
3384  fprintf( F, "<__" XmlFormat( "u" ) "__ ID= \"%d\" Name=\"%S\" ", LayerIdx, layer.GetID(), LayerName.w_str());
3385  }
3386  else
3387  {
3388  fprintf( F, "<__" XmlFormat( "u" ) "__ ID= \"%d\" Name=\"\" ", LayerIdx, layer.GetID() );
3389 
3390  //fprintf( F, "<__%d__ Name=\"\"", layer.GetID() );
3391  }
3392  if( layer.GetFatherID() != static_cast< Dtk_ID >( -1 ) )
3393  fprintf( F, " FatherID= \"%d\"", layer.GetFatherID() );
3394  if( !layer.IsFlaggedAs( Dtk_LayerInfosSet::Layer::Status::Visible ) )
3395  fprintf( F, " Visible=\"false\"");
3396  if( !layer.IsFlaggedAs( Dtk_LayerInfosSet::Layer::Status::Selectable ) )
3397  fprintf( F, " Selectable=\"false\"" );
3398 
3399  fprintf( F, "/>\n");
3400  LayerIdx++;
3401  }
3402  fprintf( F, "</Layers>\n" );
3403 
3404  Dtk_Size_t LayerFiltersIdx;
3405  Dtk_Size_t NumLayersFilters = inVal->GetNumLayerFilters();
3406  Dtk_Size_t DefaultLayerFilter; inVal->GetDefaultLayerFilter( DefaultLayerFilter );
3407  Dtk_LayerFilterInfosPtr CurrentLayerFilterInfo = inVal->GetLayerFilterByPos( DefaultLayerFilter );
3408  Dtk_string CurrentLayerFilterName = L"None";
3409  if( CurrentLayerFilterInfo.IsNotNULL() )
3410  {
3411  Dtk_string LayerFilterName;
3412  CurrentLayerFilterInfo->GetName( LayerFilterName );
3413  CurrentLayerFilterName = Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( LayerFilterName, XMLGenericString );
3414  }
3415  fprintf( F, "<LayerFilters Num=\"" XmlFormat( "u" )"\" DefaultLayerFilter=\"%s\">\n", NumLayersFilters, CurrentLayerFilterName.c_str() );
3416  for( LayerFiltersIdx = 0; LayerFiltersIdx < NumLayersFilters; LayerFiltersIdx++ )
3417  {
3418  Dtk_LayerFilterInfosPtr TmpLayerFilterInfo = inVal->GetLayerFilterByPos( LayerFiltersIdx );
3419  if( TmpLayerFilterInfo.IsNotNULL() )
3420  {
3421  Dtk_string LayerFilterName, LayerFilterDescription;
3422  Dtk_tab< Dtk_Size_t > SelectedLayers;
3423  TmpLayerFilterInfo->GetName( LayerFilterName );
3424  LayerFilterName = Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( LayerFilterName, XMLGenericString );
3425  TmpLayerFilterInfo->GetDescription( LayerFilterDescription );
3426  TmpLayerFilterInfo->GetSelectedLayers( SelectedLayers );
3427  Dtk_Size_t SelectedLayersIdx, NumSelectedLayers = SelectedLayers.size();
3428 
3429  fprintf( F, "<LayerFilterInfo Name=\"%S\">\n", LayerFilterName.w_str() );
3430  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Description", LayerFilterDescription );
3431  fprintf( F, "<SelectedLayers Num=\"" XmlFormat( "u" )"\">\n", NumSelectedLayers );
3432  for( SelectedLayersIdx = 0; SelectedLayersIdx < NumSelectedLayers; SelectedLayersIdx++ )
3433  {
3434  // Dtk_ID layerId, layerIndex;
3435  // layerIndex = SelectedLayers[ SelectedLayersIdx ];
3436  // layerId = layers.subspan( layerIndex ).begin()->GetID();
3437  // fprintf( F, "<__" XmlFormat( "u" ) "__ ID= \"%d\" />\n ", layerIndex, layerId );
3438  fprintf( F, "<__" XmlFormat( "u" )"__/>\n", SelectedLayers[ SelectedLayersIdx ] );
3439  }
3440  fprintf( F, "</SelectedLayers>\n" );
3441  fprintf( F, "</LayerFilterInfo>\n" );
3442  }
3443  }
3444  fprintf( F, "</LayerFilters>\n" );
3445  }
3446  else
3447  {
3448  fprintf( F, "Null" );
3449  }
3450  fprintf( F, "</Dtk_LayerInfosSet>\n" );
3451 
3452  return dtkNoError;
3453  }

◆ Dtk_DumpXml_Dtk_LayerInfosSetPtr_Deprecated()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_LayerInfosSetPtr_Deprecated ( FILE *  F,
const Dtk_LayerInfosSetPtr inVal 
)
3456  {
3457  fprintf( F, "<Dtk_LayerInfosSet>\n" );
3458  if( inVal.IsNotNULL() )
3459  {
3460  Dtk_Size_t LayerIdx;
3461  Dtk_Size_t NumLayers = inVal->GetNumLayers();
3462  Dtk_Size_t DefaultLayer;
3463 
3464  inVal->GetDefaultLayer( DefaultLayer );
3465  fprintf( F, "<Layers Num=\"" XmlFormat( "u" )"\" DefaultLayer=\"" XmlFormat( "d" )"\">\n", NumLayers, DefaultLayer );
3466  for( LayerIdx = 0; LayerIdx < NumLayers; LayerIdx++ )
3467  {
3468  Dtk_string LayerName;
3469  Dtk_ID LayerId;
3470  Dtk_ErrorStatus errn = inVal->GetLayerName( LayerIdx, LayerName );
3471  Dtk_ErrorStatus erri = inVal->GetLayerID( LayerIdx, LayerId );
3472  if( errn == dtkNoError && erri == dtkNoError )
3473  {
3475  fprintf( F, "<__" XmlFormat( "u" ) "__ ID= \"%d\" Name=\"%S\"/>\n", LayerIdx, LayerId ,LayerName.w_str() );
3476  }
3477  else
3478  {
3479  if( erri == dtkNoError )
3480  fprintf( F, "<__%d__ Name=\"\"/>\n", LayerId );
3481  else
3482  fprintf( F, "<__" XmlFormat( "u" )"__ Name=\"\"/>\n", LayerIdx );
3483 
3484  }
3485  }
3486  fprintf( F, "</Layers>\n" );
3487 
3488  Dtk_Size_t LayerFiltersIdx;
3489  Dtk_Size_t NumLayersFilters = inVal->GetNumLayerFilters();
3490  Dtk_Size_t DefaultLayerFilter; inVal->GetDefaultLayerFilter( DefaultLayerFilter );
3491  Dtk_LayerFilterInfosPtr CurrentLayerFilterInfo = inVal->GetLayerFilterByPos( DefaultLayerFilter );
3492  Dtk_string CurrentLayerFilterName = L"None";
3493  if( CurrentLayerFilterInfo.IsNotNULL() )
3494  {
3495  Dtk_string LayerFilterName;
3496  CurrentLayerFilterInfo->GetName( LayerFilterName );
3497  CurrentLayerFilterName = Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( LayerFilterName, XMLGenericString );
3498  }
3499  fprintf( F, "<LayerFilters Num=\"" XmlFormat( "u" )"\" DefaultLayerFilter=\"%s\">\n", NumLayersFilters, CurrentLayerFilterName.c_str() );
3500  for( LayerFiltersIdx = 0; LayerFiltersIdx < NumLayersFilters; LayerFiltersIdx++ )
3501  {
3502  Dtk_LayerFilterInfosPtr TmpLayerFilterInfo = inVal->GetLayerFilterByPos( LayerFiltersIdx );
3503  if( TmpLayerFilterInfo.IsNotNULL() )
3504  {
3505  Dtk_string LayerFilterName, LayerFilterDescription;
3506  Dtk_tab< Dtk_Size_t > SelectedLayers;
3507  TmpLayerFilterInfo->GetName( LayerFilterName );
3508  LayerFilterName = Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( LayerFilterName, XMLGenericString );
3509  TmpLayerFilterInfo->GetDescription( LayerFilterDescription );
3510  TmpLayerFilterInfo->GetSelectedLayers( SelectedLayers );
3511  Dtk_Size_t SelectedLayersIdx, NumSelectedLayers = SelectedLayers.size();
3512 
3513  fprintf( F, "<LayerFilterInfo Name=\"%S\">\n", LayerFilterName.w_str() );
3514  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Description", LayerFilterDescription );
3515  fprintf( F, "<SelectedLayers Num=\"" XmlFormat( "u" )"\">\n", NumSelectedLayers );
3516  for( SelectedLayersIdx = 0; SelectedLayersIdx < NumSelectedLayers; SelectedLayersIdx++ )
3517  {
3518  fprintf( F, "<__" XmlFormat( "u" )"__/>\n", SelectedLayers[ SelectedLayersIdx ] );
3519  }
3520  fprintf( F, "</SelectedLayers>\n" );
3521  fprintf( F, "</LayerFilterInfo>\n" );
3522  }
3523  }
3524  fprintf( F, "</LayerFilters>\n" );
3525  }
3526  else
3527  {
3528  fprintf( F, "Null" );
3529  }
3530  fprintf( F, "</Dtk_LayerInfosSet>\n" );
3531 
3532  return dtkNoError;
3533  }

◆ Dtk_DumpXml_Dtk_LeaderPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_LeaderPtr ( FILE *  F,
const Dtk_LeaderPtr L 
)
1289  {
1290  /*char* arrowtype[] = {"DTK_LDT_NONE","DTK_LDT_OPEN_ARROW","DTK_LDT_CLOSE_ARROW","DTK_LDT_FILL_ARROW",
1291  "DTK_LDT_CROSS_ARROW","DTK_LDT_CIRCLE","DTK_LDT_FILL_CIRCLE","DTK_LDT_SQUARE","DTK_LDT_FILL_SQUARE",
1292  "DTK_LDT_SLASH","DTK_LDT_CROSS_CIRCLE","DTK_LDT_X_CIRCLE","DTK_LDT_TRIANGLE","DTK_LDT_FILL_TRIANGLE",
1293  "DTK_LDT_PLUS","DTK_LDT_X_CROSS"};*/
1294  fprintf( F, "<Dtk_LeaderPtr>\n" );
1295  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, L->GetInfo() );
1296 
1297  switch( L->GetLeaderType() )
1298  {
1299  default:
1300  case Dtk_Leader::TypeUnknown: fprintf( F, "<LeaderType>TypeUnknown</LeaderType>\n" ); break;
1301  case Dtk_Leader::TypeLinear: fprintf( F, "<LeaderType>TypeLinear</LeaderType>\n" ); break;
1302  case Dtk_Leader::TypeAngular: fprintf( F, "<LeaderType>TypeAngular</LeaderType>\n" ); break;
1303  }
1304 
1305  //ArrowHead
1306  {
1307  fprintf( F, "<Arrow>\n" );
1308  double width, height;
1309  const Dtk_Leader::ArrowHead &LeaderArrowHead = L->GetArrowHead();
1310  LeaderArrowHead.GetWidthHeight( width, height );
1311  Dtk_dir ArrowHeaderRefDir, ArrowHeaderAxisDir;
1312  LeaderArrowHead.GetDirections( ArrowHeaderRefDir, ArrowHeaderAxisDir );
1313 
1314  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, LeaderArrowHead.GetInfo() );
1315  //L->RetrieveLeader_terminator_infos( width, height, location, type );
1316  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_pnt( F, LeaderArrowHead.GetArrowLocation(), "Location" );
1317  fprintf( F, "<width>%f</width>\n", width );
1318  fprintf( F, "<height>%f</height>\n", height );
1319  Dtk_DumpXMLNamespace::Dtk_DumpXml_LeaderTerminatorTypeEnum( F, LeaderArrowHead.GetType(), L"TerminatorType" );
1320  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, ArrowHeaderRefDir, "RefDir" );
1321  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, ArrowHeaderAxisDir, "AxisDir" );
1322  fprintf( F, "</Arrow>\n" );
1323  }
1324  fprintf( F, "<ApplicationZoneType>%s</ApplicationZoneType>\n", Dtk_Leader::ApplicationZone::ApplicationZoneEnumToString( L->GetApplicationZoneType() ).c_str() );
1325 
1326  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CurvePtr( F, L->GetLeaderCurve() );
1327 
1328  //ExtensionLine
1329  {
1330  Dtk_PolylinePtr ExtLine = L->GetExtensionLine();
1331  if( ExtLine.IsNotNULL() )
1332  {
1333  fprintf( F, "<ExtensionLine>\n" );
1334  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, ExtLine->get_info() );
1336  fprintf( F, "</ExtensionLine>\n" );
1337  }
1338  }
1339 
1340  fprintf( F, "<allAroundEnabled>" );
1341  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool( F, L->GetAllAroundSet() );
1342  fprintf( F, "</allAroundEnabled>\n" );
1343 
1344  fprintf( F, "<StubDelta>%f</StubDelta>\n", L->GetStubDelta() );
1345  fprintf( F, "</Dtk_LeaderPtr>\n" );
1346  return dtkNoError;
1347  }

◆ Dtk_DumpXml_Dtk_MainDocPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_MainDocPtr ( FILE *  F,
const Dtk_MainDocPtr inObject 
)
4583  {
4584  fprintf( F, "<Dtk_MainDocPtr>\n" );
4585  if( inObject.IsNotNULL() )
4586  {
4587  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_ComponentPtr( F, inObject->RootComponent() );
4588  }
4589  else
4590  {
4591  fprintf( F, "Null" );
4592  }
4593  fprintf( F, "</Dtk_MainDocPtr>\n" );
4594  return dtkNoError;
4595  }

◆ Dtk_DumpXml_Dtk_MeshPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_MeshPtr ( FILE *  F,
const Dtk_MeshPtr inMesh 
)
6812  {
6813  Dtk_ID id = 0;
6814  if( inMesh->get_info().IsNotNULL() )
6815  id = inMesh->get_info()->GetId();
6816 
6817  fprintf( F, "<Dtk_MeshPtr>\n" );
6818  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inMesh->info() );
6819 
6820  Dtk_Size_t iVert, NbVert = inMesh->get_nb_vertices();
6821 
6822  fprintf( F, "<Vertices nb = \"" XmlFormat( "u" )"\">\n", NbVert );
6823  for( iVert = 0; iVert < NbVert; iVert++ )
6824  {
6825  Dtk_pnt pt = inMesh->get_vertex( iVert );
6826  fprintf( F, "<Vertex id = \"" XmlFormat( "u" )"\" X = \"%lf\" Y = \"%lf\" Z = \"%lf\">", iVert, pt[ 0 ], pt[ 1 ], pt[ 2 ] );
6827  fprintf( F, "</Vertex>\n" );
6828  }
6829  fprintf( F, "</Vertices>\n" );
6830 
6831 
6832  Dtk_Size_t NbMeshFaces = inMesh->get_nb_mesh_face();
6833  fprintf( F, "<MeshFaces nb =\"" XmlFormat( "u" )"\">\n", NbMeshFaces );
6834 
6835  for( Dtk_Size_t iMeshFace = 0; iMeshFace < NbMeshFaces; iMeshFace++ )
6836  {
6837  const Dtk_UInt32 *pnt;
6838  Dtk_mesh_face *curMeshFace = inMesh->get_mesh_face( iMeshFace );
6839  Dtk_Size_t NbTriangles = curMeshFace->get_nbtriangles();
6840  fprintf( F, "<Dtk_mesh_face>\n" );
6841  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, curMeshFace->info() );
6842  if( NbTriangles > 0 )
6843  {
6844  fprintf( F, "<Triangles nb = \"" XmlFormat( "u" )"\">\n", NbTriangles );
6845  for( Dtk_Size_t iTriangle = 0; iTriangle < NbTriangles; iTriangle++ )
6846  {
6847  pnt = curMeshFace->get_triangle_indices( iTriangle );
6848  fprintf( F, "<Triangle id = \"" XmlFormat( "u" )"\" vertices = \"%d , %d , %d\" >", iTriangle, pnt[ 0 ], pnt[ 1 ], pnt[ 2 ] );
6849  fprintf( F, "</Triangle>\n" );
6850  }
6851  fprintf( F, "</Triangles>\n" );
6852  }
6853 
6854  Dtk_Size_t NbTriFan = curMeshFace->get_nbtriangle_fans();
6855  if( NbTriFan > 0 )
6856  {
6857 
6858  fprintf( F, "<TriFans nb = \"" XmlFormat( "u" )"\">\n", NbTriFan );
6859  for( Dtk_Size_t iTriFanIdx = 0; iTriFanIdx < NbTriFan; iTriFanIdx++ )
6860  {
6861  const Dtk_tab<Dtk_ID> *tabIndices;
6862  tabIndices = curMeshFace->get_triangle_fan_indices( iTriFanIdx );
6863  fprintf( F, "<TriFan id = \"" XmlFormat( "u" )"\" indices = \" ", iTriFanIdx );
6864  for( int iIndex = 0; iIndex < tabIndices->size(); iIndex++ )
6865  {
6866  fprintf( F, "%d", ( *tabIndices )[ iIndex ] );
6867  if( iIndex < tabIndices->size() - 1 )
6868  {
6869  fprintf( F, " , " );
6870  }
6871  }
6872  fprintf( F, " \" >" );
6873  fprintf( F, "</TriFan>\n" );
6874  }
6875  fprintf( F, "</TriFans>\n" );
6876  }
6877 
6878  Dtk_Size_t NbTriStrip = curMeshFace->get_nbtriangle_strips();
6879  if( NbTriStrip > 0 )
6880  {
6881 
6882  fprintf( F, "<TriStrips nb = \"" XmlFormat( "u" )"\">\n", NbTriStrip );
6883  for( Dtk_Size_t iTriStripIdx = 0; iTriStripIdx < NbTriStrip; iTriStripIdx++ )
6884  {
6885  const Dtk_tab<Dtk_ID> *tabIndices;
6886  tabIndices = curMeshFace->get_triangle_strip_indices( iTriStripIdx );
6887  fprintf( F, "<TriStrip id = \"" XmlFormat( "u" )"\" indices = \" ", iTriStripIdx );
6888  for( int iIndex = 0; iIndex < tabIndices->size(); iIndex++ )
6889  {
6890  fprintf( F, "%d", ( *tabIndices )[ iIndex ] );
6891  if( iIndex < tabIndices->size() - 1 )
6892  {
6893  fprintf( F, " , " );
6894  }
6895  }
6896  fprintf( F, " \" >" );
6897  fprintf( F, "</TriStrip>\n" );
6898  }
6899  fprintf( F, "</TriStrips>\n" );
6900  }
6901 
6902  Dtk_Size_t NbPoly = curMeshFace->get_nbpolylines();
6903  if( NbPoly > 0 )
6904  {
6905  fprintf( F, "<Polylines nb =\"" XmlFormat( "u" )"\">\n", NbPoly );
6906  for( Dtk_Size_t iPoly = 0; iPoly < NbPoly; iPoly++ )
6907  {
6908  Dtk_Val dtk_val;
6909  int topoid = 0;
6910  if( curMeshFace->get_nbsubinfos() > 0 )
6911  {
6912  Dtk_InfoPtr inf = curMeshFace->get_subinfo( iPoly );
6914  if( inf->FindAttribute( "TOPO_ID_EDGE", dtk_val ) == dtkNoError )
6915  topoid = dtk_val.GetInt();
6916  }
6917 
6918  const Dtk_tab<Dtk_UInt32> *pntpol;
6919  pntpol = curMeshFace->get_polyline_indices( iPoly );
6920  Dtk_Size_t nbpnt;
6921  nbpnt = pntpol->size();
6922 
6923  fprintf( F, "<Polyline id = \"" XmlFormat( "u" )"\" idtopo = \"%i\" vertices = \"", iPoly, topoid );
6924  for( Dtk_Size_t j = 0; j < nbpnt; j++ )
6925  {
6926  fprintf( F, " %d , ", ( *pntpol )[ j ] );
6927  }
6928  fprintf( F, "\"></Polyline>\n" );
6929  }
6930  fprintf( F, "</Polylines>\n" );
6931  }
6932 
6933  fprintf( F, "</Dtk_mesh_face>\n" );
6934 
6935  }
6936  fprintf( F, "</MeshFaces>\n" );
6937 
6938  Dtk_StreamPtr stream;
6939  stream = inMesh->GetStream();
6940  if( stream.IsNotNULL() )
6941  {
6942  Dtk_Val val;
6943  if( inMesh->get_info()->FindAttribute( L"Dtk_NxIndexColor", val ) == dtkNoError )
6944  {
6945  Dtk_tab<Dtk_Int32> ArrayColor = val.GetIntArray();
6946 
6947  fprintf( F, "<Dtk_NxIndexColor Num=\'" XmlFormat( "u" ) "\'>\n", ArrayColor.size() );
6948 
6949  for( size_t i = 0; i < ArrayColor.size(); i++ )
6950  {
6951  Dtk_RGB rgb;
6952  Dtk_API::GetAPI()->GetColorInTable( ArrayColor[ i ], rgb );
6953  Dtk_DumpXml_Dtk_RGB( F, rgb );
6954  }
6955  fprintf( F, "</Dtk_NxIndexColor>\n" );
6956 
6957  }
6959  }
6960 
6961  fprintf( F, "</Dtk_MeshPtr>\n" );
6962 
6963  return dtkNoError;
6964 
6965  }

◆ Dtk_DumpXml_Dtk_MetadataGroupPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_MetadataGroupPtr ( FILE *  F,
const Dtk_MetaDataGroupPtr inObject 
)
5055  {
5056  if( F == NULL )
5057  {
5058  return dtkErrorOpenFiles;
5059  }
5060 
5061 
5062  fprintf( F, "<Dtk_MetaDataGroupPtr>\n" );
5063 
5064  if( inObject.IsNULL() )
5065  {
5066  fprintf( F, "'Null'" );
5067  fprintf( F, "</Dtk_MetaDataGroupPtr>\n" );
5068  return dtkNoError;
5069  }
5070 
5071  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"GroupName", inObject->GetGroupName() );
5072 
5073  Dtk_tab<Dtk_MetaDataPtr> list_metadata = inObject->GetListOfMetadatas();
5074 
5075  Dtk_Size_t size = list_metadata.size();
5076 
5077  for( Dtk_Size_t i = 0; i < size; ++i )
5078  {
5079  Dtk_DumpXml_Dtk_MetadataPtr( F, list_metadata[ i ] );
5080  }
5081 
5082  fprintf( F, "</Dtk_MetaDataGroupPtr>\n" );
5083 
5084  return dtkNoError;
5085  }

◆ Dtk_DumpXml_Dtk_MetadataPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_MetadataPtr ( FILE *  F,
const Dtk_MetaDataPtr inObject 
)
4992  {
4993  if( F == NULL )
4994  {
4995  return dtkErrorOpenFiles;
4996  }
4997 
4998  fprintf( F, "<Dtk_MetaDataPtr>\n" );
4999  if( inObject.IsNotNULL() )
5000  {
5001  Dtk_string outFormula;
5002  Dtk_string outEstimatedValue;
5003  Dtk_string outTitle;
5004  Dtk_string outResultType;
5005 
5006  Dtk_MetaData::MetaDataTypeEnum MetaDataType = inObject->MetaDataType();
5007  Dtk_DumpXMLNamespace::Dtk_DumpXml_MetaDataTypeEnum( F, MetaDataType, L"MetaDataType" );
5008  if( inObject->GetFormula( outFormula, outEstimatedValue, outTitle, outResultType ) == dtkNoError )
5009  {
5010  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Formula", outFormula );
5011  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"EstimatedValue", outEstimatedValue );
5012  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Title", outTitle );
5013  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"ResultType", outResultType );
5014  }
5015  else
5016  {
5017  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Title", inObject->GetTitle() );
5018 
5019  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Type", inObject->GetType() );
5020  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Value", inObject->GetValue() );
5021 
5022  Dtk_string unit;
5023  Dtk_ErrorStatus err = inObject->GetUnits( unit );
5024  if( err == dtkNoError )
5025  {
5026  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Units", unit );
5027  }
5028  if( inObject->GetCategory().len() > 0 )
5029  {
5030  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Category", inObject->GetCategory() );
5031  }
5032  //if (inObject->IsTime_t())
5033  //{
5034  // Dtk_string val = inObject->GetValue();
5035  // int timeint = atoi(val.c_str());
5036  // time_t time;
5037  // time = (time_t)timeint;
5038  // char buffer[100];
5039  // memset(buffer, 0, sizeof(buffer));
5040  // ctime_s(buffer, 100, &time);
5041  // Dtk_DumpXMLNamespace::Dtk_DumpXml_Value(F, L"TIME_T", Dtk_string(buffer));
5042 
5043  //}
5044  }
5045  }
5046  else
5047  {
5048  fprintf( F, "'Null'" );
5049  }
5050  fprintf( F, "</Dtk_MetaDataPtr>\n" );
5051  return dtkNoError;
5052  }

◆ Dtk_DumpXml_Dtk_ModelDisplayPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ModelDisplayPtr ( FILE *  F,
const Dtk_ModelDisplayPtr inVal 
)
3167  {
3168  fprintf( F, "<Dtk_ModelDisplay>\n" );
3169  if( inVal.IsNotNULL() )
3170  {
3171  fprintf( F, "<IsActivated>%s</IsActivated>\n", inVal->IsActivated() == DTK_TRUE ? "True" : "False" );
3172  if( inVal->GetIsStandardView() )
3173  {
3174  fprintf( F, "<StandardView>True</StandardView>\n" );
3175  } //info
3176  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inVal->info() );
3177  //Camera
3178  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CameraPtr( F, inVal->GetCamera() );
3179  //Clipping Plane
3180  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_EntityPtr( F, inVal->GetClippingEntity() );
3181 
3182  Dtk_ModelDisplay::RenderingModeEnum renderingmode = inVal->GetRenderingMode();
3183 
3184  switch( renderingmode )
3185  {
3187  {
3188  fprintf( F, "<RenderingModeEnum>rendering_mode_shaded_only</RenderingModeEnum>\n" );
3189  break;
3190  }
3192  {
3193  fprintf( F, "<RenderingModeEnum>rendering_mode_shaded_with_visible_edges</RenderingModeEnum>\n" );
3194  break;
3195  }
3197  {
3198  fprintf( F, "<RenderingModeEnum>rendering_mode_studio</RenderingModeEnum>\n" );
3199  break;
3200  }
3202  {
3203  fprintf( F, "<RenderingModeEnum>rendering_mode_wireframe_with_all_edges</RenderingModeEnum>\n" );
3204  break;
3205  }
3207  {
3208  fprintf( F, "<RenderingModeEnum>rendering_mode_wireframe_with_only_visible_edges</RenderingModeEnum>\n" );
3209  break;
3210  }
3212  {
3213  fprintf( F, "<RenderingModeEnum>rendering_mode_static_wireframe</RenderingModeEnum>\n" );
3214  break;
3215  }
3217  {
3218  fprintf( F, "<RenderingModeEnum>rendering_mode_wireframe_face_analysis</RenderingModeEnum>\n" );
3219  break;
3220  }
3222  {
3223  fprintf( F, "<RenderingModeEnum>rendering_mode_wireframe_partially_shade</RenderingModeEnum>\n" );
3224  break;
3225  }
3226  default:
3227  break;
3228  }
3229 
3230 
3232  Dtk_Int32 IsLocked = DTK_FALSE;
3233  Dtk_Double64 Thickness = 0.0;
3234 
3235  inVal->GetSectionInformation( SectionType, IsLocked, Thickness );
3236  if( SectionType != Dtk_ModelDisplay::SectionPlane )
3237  {
3238  if( SectionType == Dtk_ModelDisplay::SectionParallelePlane )
3239  {
3240  fprintf( F, "<SectionType>SectionParallelePlane</SectionType>\n" );
3241  fprintf( F, "<Thickness>%f</Thickness>\n", Thickness );
3242  }
3243  else
3244  {
3245  if( SectionType == Dtk_ModelDisplay::SectionBox )
3246  {
3247  fprintf( F, "<SectionType>SectionBox</SectionType>\n" );
3248  }
3249  else
3250  {
3251  if( SectionType == Dtk_ModelDisplay::SectionBody )
3252  {
3253  fprintf( F, "<SectionType>SectionBody</SectionType>\n" );
3254  }
3255  else
3256  {
3257  if( SectionType == Dtk_ModelDisplay::SectionPlaneList )
3258  {
3259  fprintf( F, "<SectionType>SectionPlaneList</SectionType>\n" );
3260  }
3261  }
3262  }
3263  }
3264  }
3265  Dtk_tab<Dtk_Int32> VisibleLayers;
3266  inVal->GetVisibleLayers( VisibleLayers );
3267  if( VisibleLayers.size() > 0 )
3268  {
3269  fprintf( F, "<VisibleLayers>\n" );
3270 
3271  for( Dtk_Size_t i = 0; i < VisibleLayers.size(); i++ )
3272  {
3273  if( VisibleLayers[ i ] == 1 )
3274  {
3275  fprintf( F, "\"" XmlFormat( "u" )"\",\n", i );
3276  }
3277  }
3278  fprintf( F, "</VisibleLayers>\n" );
3279  }
3280  }
3281  else
3282  {
3283  fprintf( F, "Null" );
3284  }
3285  fprintf( F, "</Dtk_ModelDisplay>\n" );
3286  return dtkNoError;
3287  }

◆ Dtk_DumpXml_Dtk_NodeConnector()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodeConnector ( FILE *  inFile,
const Dtk_NodeConnectorPtr inNodeConnector 
)
6969  {
6970 
6972  Dtk_string ConnectorType;
6973 
6974  if( inNodeConnector.IsNULL() )
6975  {
6976  return dtkErrorNullPointer;
6977  }
6978 
6980  Dtk_tab<Dtk_ID> ComponentPathId;
6981  Dtk_ID NodeId = inNodeConnector->GetNodeId();
6982  inNodeConnector->GetSubEntities( SubEntities );
6983  inNodeConnector->GetAssociatedPathComponentID( ComponentPathId );
6984  Dtk_Node::FullType NodeFullType = inNodeConnector->GetPointingEntityType();
6985  Dtk_Size_t NumSubEntities = SubEntities.size();
6986  Dtk_Size_t NumComp = ComponentPathId.size();
6987 
6988 
6989  if( NumComp <= 1 ) //if only 1 component => Local Component or Prototype
6990  {
6991  ConnectorType = L"Prototype";
6992  }
6993  else
6994  {
6995  ConnectorType = L"ComponentPathId";
6996  }
6997  if( NodeId > 0 )
6998  {
6999  ConnectorType += L" + Node";
7000  }
7001  if( NumSubEntities > 0 )
7002  {
7003  ConnectorType += L" + SubEntities";
7004  }
7005 
7006  fprintf( inFile, "<Dtk_NodeConnector Type=\"%s\">\n", ConnectorType.c_str() );
7007 
7009  Dtk_NodeConnector::ReasonLinkEnum ReasonLink = inNodeConnector->GetReasonLink( ReasonCategory );
7010  fprintf( inFile, "<ReasonLink>\"%s\"</ReasonLink>\n", Dtk_NodeConnector::ReasonLinkEnumToString( ReasonLink ).c_str() );
7011  // fprintf(inFile, "<ReasonCategory>\"%s\"</ReasonCategory>\n", Dtk_NodeConnector::ReasonCategoryEnumToString( ReasonCategory ).c_str() );
7012 
7013  if( ReasonLink == Dtk_NodeConnector::ForceColor )
7014  {
7015  fprintf( inFile, "<ColorId>%d</ColorId>\n", inNodeConnector->GetColorId() );
7016  }
7017  if( ReasonLink == Dtk_NodeConnector::ForceRender )
7018  {
7019  fprintf( inFile, "<RenderId>%d</RenderId>\n", inNodeConnector->GetRenderId() );
7020  }
7021 
7022  fprintf( inFile, "<PathCompId>" );
7023  if( NumComp > 0 )
7024  {
7025  Dtk_Size_t i;
7026  for( i = 0; i < NumComp; i++ ) fprintf( inFile, "%d ", ComponentPathId[ i ] );
7027  }
7028  else
7029  {
7030  fprintf( inFile, "LocalComponent" );
7031  }
7032  fprintf( inFile, "</PathCompId>\n" );
7033 
7034 
7035  if( NodeId > 0 )
7036  fprintf( inFile, "<NodeID>%d</NodeID>\n", NodeId );
7037  Dtk_DumpXMLNamespace::Dtk_DumpXml_NodeFullType( inFile, NodeFullType, L"PointingEntityType" );
7038  fprintf( inFile, "<PointedEntityType>%s</PointedEntityType>\n", typedetkToDtk_string( inNodeConnector->GetPointedEntityType() ).c_str() );
7039  //SubEntities
7040  if( NumSubEntities )
7041  {
7042  fprintf( inFile, "<SubEntities Num=\"" XmlFormat( "u" )"\">", NumSubEntities );
7043  for( Dtk_Size_t i = 0; i < NumSubEntities; i++ )
7044  {
7045  Dtk_NodeConnector::SubEntity TmpSub = SubEntities[ i ];
7046  fprintf( inFile, "<SubEntity id=\"%d\" type=\"%s\" ></SubEntity>\n",
7047  TmpSub.GetSubEntityId(),
7049  }
7050  fprintf( inFile, "</SubEntities>\n" );
7051  }
7052  fprintf( inFile, "</Dtk_NodeConnector>\n" );
7053  return dst;
7054  }

◆ Dtk_DumpXml_Dtk_NodePtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr ( FILE *  F,
const Dtk_NodePtr inObject 
)
4599  {
4600 
4601  fprintf( F, "<Dtk_NodePtr>\n" );
4602  if( inObject.IsNotNULL() )
4603  {
4604  Dtk_Node::NodeDataTypeEnum NodeType = inObject->GetNodeType();
4605  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Name", inObject->Name() );
4607  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"NodeSubType", typedetkToDtk_string( inObject->GetNodeSubType() ) );
4608 
4609  fprintf( F, "<NodeID>%u</NodeID>\n", inObject->GetID() );
4610  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inObject->GetInfos() );
4611  Dtk_StoredInfoPtr sti = inObject->GetStoredInfos();
4612  if( sti.IsNotNULL() )
4613  {
4614  fprintf( F, "<StoredInfos>\n" );
4616  fprintf( F, "</StoredInfos>\n" );
4617  }
4618 
4619  Dtk_Size_t i, NumChildren;
4620  NumChildren = inObject->GetNumChildren();
4621 
4622  for( i = 0; i < NumChildren; i++ )
4623  {
4624  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_NodePtr( F, inObject->GetChild( i ) );
4625  }
4626  Dtk_Size_t NumMetaData;
4627  NumMetaData = inObject->GetNumMetaData();
4628  if( NumMetaData )
4629  {
4630  fprintf( F, "<Dtk_MetaData Num=\'" XmlFormat( "u" ) "\'>\n", NumMetaData );
4631  for( i = 0; i < NumMetaData; i++ )
4632  {
4633  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_MetadataPtr( F, inObject->GetMetaData( i ) );
4634  }
4635  fprintf( F, "</Dtk_MetaData>\n" );
4636 
4637  }
4638 #ifdef XML_GROUP_METADATA
4639  Dtk_Size_t NumMetaDataGroup;
4640  NumMetaDataGroup = inObject->GetNumMetaDataGroup();
4641  if( NumMetaDataGroup )
4642  {
4643  fprintf( F, "<Dtk_MetaDataGroup Num=\'" XmlFormat( "u" ) "\'>\n", NumMetaDataGroup );
4644  for( i = 0; i < NumMetaDataGroup; i++ )
4645  {
4646  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_MetadataGroupPtr( F, inObject->GetMetaDataGroup( i ) );
4647  }
4648  fprintf( F, "</Dtk_MetaDataGroup>\n" );
4649  }
4650 #endif
4651  Dtk_tab< Dtk_NodeConnectorPtr > AssociatedEntities;
4652  inObject->GetAssociatedEntities( AssociatedEntities );
4653  Dtk_Size_t NumConnector = AssociatedEntities.size();
4654  if( NumConnector )
4655  {
4656  fprintf( F, "<NodeConnectors Num=\'" XmlFormat( "u" ) "\'>\n", NumConnector );
4657 
4658  for( i = 0; i < NumConnector; i++ )
4659  {
4660  Dtk_DumpXml_Dtk_NodeConnector( F, AssociatedEntities[ i ] );
4661  }
4662  fprintf( F, "</NodeConnectors>\n" );
4663 
4664  }
4665  }
4666  else
4667  {
4668  fprintf( F, "<Null></Null>\n" );
4669  }
4670  fprintf( F, "</Dtk_NodePtr>\n" );
4671  return dtkNoError;
4672  }

◆ Dtk_DumpXml_Dtk_NodePtr_End()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr_End ( FILE *  F)
4774  {
4775  if( F == NULL )
4776  {
4777  return dtkErrorNullPointer;
4778  }
4779  fprintf( F, "</Dtk_NodePtr>\n" );
4780  return dtkNoError;
4781  }

◆ Dtk_DumpXml_Dtk_NodePtr_Init()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr_Init ( FILE *  F,
const Dtk_NodePtr inObject 
)
4675  {
4676  if( F == NULL )
4677  {
4678  return dtkErrorNullPointer;
4679  }
4680  Dtk_Size_t i = 0;
4681  fprintf( F, "<Dtk_NodePtr>\n" );
4682  if( inObject.IsNotNULL() )
4683  {
4684  fprintf( F, "<NodeID>%u</NodeID>\n", inObject->GetID() );
4685  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_info( F, inObject->GetInfos() );
4686  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Name", inObject->Name() );
4687  Dtk_ID FatherID = inObject->GetFatherID( 0 );
4688  if( FatherID )
4689  fprintf( F, "<FatherID>%u</FatherID>\n", FatherID );
4690 
4691  Dtk_Node::NodeDataTypeEnum NodeType = inObject->GetNodeType();
4693  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"NodeSubType", typedetkToDtk_string( inObject->GetNodeSubType() ) );
4694  if( inObject->NodeHasAxis() )
4695  fprintf( F, "<HasAxis>1</HasAxis>\n" );
4696  if( inObject->NodeHasPoints() )
4697  fprintf( F, "<HasPoints>1</HasPoints>\n" );
4698  if( inObject->NodeHasCurves() )
4699  fprintf( F, "<HasCurves>1</HasCurves>\n" );
4700  if( inObject->NodeHasSurfaces() )
4701  fprintf( F, "<HasSurfaces>1</HasSurfaces>\n" );
4702  if( inObject->NodeHasSolids() )
4703  fprintf( F, "<HasSolids>1</HasSolids>\n" );
4704  if( inObject->NodeHasMesh() )
4705  fprintf( F, "<HasMesh>1</HasMesh>\n" );
4706  if( inObject->NodeHasMeshSurfaces() )
4707  fprintf( F, "<HasMeshSurfaces>1</HasMeshSurfaces>\n" );
4708 
4709  Dtk_StoredInfoPtr sti = inObject->GetStoredInfos();
4710  if( sti.IsNotNULL() )
4711  {
4712  fprintf( F, "<StoredInfos>\n" );
4714  fprintf( F, "</StoredInfos>\n" );
4715  }
4716 
4717  Dtk_Size_t NumMetaData;
4718  NumMetaData = inObject->GetNumMetaData();
4719  if( NumMetaData )
4720  {
4721  fprintf( F, "<Dtk_MetaData Num=\'" XmlFormat( "u" ) "\'>\n", NumMetaData );
4722  for( i = 0; i < NumMetaData; i++ )
4723  {
4724  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_MetadataPtr( F, inObject->GetMetaData( i ) );
4725  }
4726  fprintf( F, "</Dtk_MetaData>\n" );
4727  }
4728 #ifdef XML_GROUP_METADATA
4729  Dtk_Size_t NumMetaDataGroup;
4730  NumMetaDataGroup = inObject->GetNumMetaDataGroup();
4731  if( NumMetaDataGroup )
4732  {
4733  fprintf( F, "<Dtk_MetaDataGroup Num=\'" XmlFormat( "u" ) "\'>\n", NumMetaDataGroup );
4734  for( i = 0; i < NumMetaDataGroup; i++ )
4735  {
4736  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_MetadataGroupPtr( F, inObject->GetMetaDataGroup( i ) );
4737  }
4738  fprintf( F, "</Dtk_MetaDataGroup>\n" );
4739  }
4740 #endif
4741  // Dtk_MaterialPtr mat = inObject->GetMaterial();
4742  // Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_material(F,mat);
4743 
4744  Dtk_tab< Dtk_NodeConnectorPtr > AssociatedEntities;
4745  inObject->GetAssociatedEntities( AssociatedEntities );
4746  Dtk_Size_t NumConnector = AssociatedEntities.size();
4747  if( NumConnector )
4748  {
4749  fprintf( F, "<NodeConnectors Num=\'" XmlFormat( "u" ) "\'>\n", NumConnector );
4750 
4751  for( i = 0; i < NumConnector; i++ )
4752  {
4753  Dtk_DumpXml_Dtk_NodeConnector( F, AssociatedEntities[ i ] );
4754  }
4755  fprintf( F, "</NodeConnectors>\n" );
4756 
4757  }
4758  Dtk_PreviewPtr preview = inObject->GetPreview();
4759  if( preview.IsNotNULL() )
4760  {
4761  Dtk_Size_t size = preview->GetStreamSize();
4762  fprintf( F, "<PreviewSize>\"" XmlFormat( "u" )"\"</PreviewSize>", size );
4763  }
4764  }
4765  else
4766  {
4767  //fprintf(F,"'Null'");
4768  fprintf( F, "<Null></Null>\n" );
4769  }
4770  return dtkNoError;
4771  }

◆ Dtk_DumpXml_Dtk_OLEObjectPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_OLEObjectPtr ( FILE *  F,
const Dtk_OLEObjectPtr O 
)
8634  {
8635  fprintf( F, "<Dtk_OLEObjectPtr>\n" );
8636  if( O )
8637  {
8638  Dtk_InfoPtr inf = O->get_info();
8639  if( inf.IsNotNULL() )
8640  {
8642  }
8643  fprintf( F, "<BinaryContentSize>" XmlFormat( "u" ) "</BinaryContentSize>\n", O->GetBinaryContentSize() );
8644  fprintf( F, "<ViewingAspect>%s</ViewingAspect>\n", Dtk_OLEObject::Dtk_OLEObjectViewingAspectToString( O->GetViewingAspect() ).c_str() );
8646  fprintf( F, "<Scale>%lf</Scale>\n", O->GetScale() );
8647  }
8648  else
8649  {
8650  fprintf( F, "Empty" );
8651  }
8652  fprintf( F, "</Dtk_OLEObjectPtr>\n" );
8653  return dtkNoError;
8654  }

◆ Dtk_DumpXml_Dtk_OneCell()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_OneCell ( FILE *  F,
Dtk_OneCell D 
)
2232  {
2233  fprintf( F, "<Dtk_OneCell>\n" );
2234 
2235  fprintf( F, "<_Height>%f</_Height>\n", D.getHeight() );
2236  fprintf( F, "<_Width>%f</_Width>\n", D.getWidth() );
2237  fprintf( F, "<nbCells_Left_Right>%u</nbCells_Left_Right>\n", D.getnbCells_Left_Right() );
2238  fprintf( F, "<nbCells_Top_Bottom>%u</nbCells_Top_Bottom>\n", D.getnbCells_Top_Bottom() );
2239 
2241  {
2242  fprintf( F, "<BorderColor>\n" );
2243 
2244  fprintf( F, "<Top>" );
2246  fprintf( F, "</Top>\n" );
2247 
2248  fprintf( F, "<Bottom>" );
2250  fprintf( F, "</Bottom>\n" );
2251 
2252  fprintf( F, "<Left>" );
2254  fprintf( F, "</Left>\n" );
2255 
2256  fprintf( F, "<Right>" );
2258  fprintf( F, "</Right>\n" );
2259 
2260  fprintf( F, "</BorderColor>\n" );
2261  }
2262 
2264  {
2265  fprintf( F, "<BorderBlanked>\n" );
2266  fprintf( F, "<Top>%d</Top>\n", D.GetBorderTopBlanked() );
2267  fprintf( F, "<Bottom>%d</Bottom>\n", D.GetBorderBottomBlanked() );
2268  fprintf( F, "<Lef>%d</Lef>\n", D.GetBorderLeftBlanked() );
2269  fprintf( F, "<Right>%d</Right>\n", D.GetBorderRightBlanked() );
2270  fprintf( F, "</BorderBlanked>\n" );
2271  }
2272 
2273  const Dtk_tab< Dtk_EntityPtr > &additionnalgeometries = D.GetAdditionnalGeometries();
2274  Dtk_Size_t k, sizek = additionnalgeometries.size();
2275  if( sizek > 0 )
2276  {
2277  fprintf( F, "<AdditionnalGeometries>\n" );
2278  for( k = 0; k < sizek; k++ )
2279  {
2280  Dtk_DumpXml_Dtk_EntityPtr( F, additionnalgeometries[ k ] );
2281  }
2282  fprintf( F, "</AdditionnalGeometries>\n" );
2283  }
2284 
2285  fprintf( F, "</Dtk_OneCell>\n" );
2286  return dtkNoError;
2287  }

◆ Dtk_DumpXml_Dtk_PlaneSurfacePtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_PlaneSurfacePtr ( FILE *  F,
const Dtk_PlaneSurfacePtr inSurf 
)
6134  {
6135  fprintf( F, "<Dtk_PlaneSurfacePtr>" );
6136 
6137  if( inSurf.IsNotNULL() )
6138  {
6139  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_pnt( F, inSurf->GetOrigin(), "Origin" );
6140  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, inSurf->GetNormal(), "Normal" );
6141  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, inSurf->GetUDirection(), "UDir" );
6142  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, inSurf->GetVDirection(), "VDir" );
6143  }
6144  else
6145  {
6146  fprintf( F, "Null" );
6147  }
6148 
6149  fprintf( F, "</Dtk_PlaneSurfacePtr>" );
6150  return dtkNoError;
6151  }

◆ Dtk_DumpXml_Dtk_pnt()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_pnt ( FILE *  F,
const Dtk_pnt P,
const char *  b = "Pnt" 
)
4346  {
4347  fprintf( F, "<%s>(%f %f %f)</%s>\n", b, P[ 0 ], P[ 1 ], P[ 2 ], b );
4348  return dtkNoError;
4349  }

◆ Dtk_DumpXml_Dtk_ReferenceBlockPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ReferenceBlockPtr ( FILE *  F,
const Dtk_ReferenceBlockPtr D 
)
2567  {
2568  Dtk_Size_t i;
2569  Dtk_Size_t NumReferences = D->GetNumReferences();
2570 
2571  fprintf( F, "<Dtk_ReferenceBlockPtr NumReferences=\"" XmlFormat( "u" )"\">\n", NumReferences );
2572  for( i = 0; i < NumReferences; i++ )
2573  {
2574  fprintf( F, "<Dtk_Reference>\n" );
2575  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"label", D->GetReferenceLabel( i ) );
2576  //Dtk_DumpXMLNamespace::Dtk_DumpXml_DTK_FDT_MODIFIER(F, D->GetMaterialModifier(i));
2577  fprintf( F, "</Dtk_Reference>\n" );
2578 
2579  }
2580  fprintf( F, "</Dtk_ReferenceBlockPtr>\n" );
2581  return dtkNoError;
2582  }

◆ Dtk_DumpXml_Dtk_ReferenceFramePtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ReferenceFramePtr ( FILE *  F,
const Dtk_ReferenceFramePtr D 
)
2585  {
2586  if( D.IsNotNULL() )
2587  {
2588  Dtk_Size_t nb_refs = D->GetNumReferences();
2589  fprintf( F, "<Dtk_ReferenceFramePtr NumReferencesBlocks = \"" XmlFormat( "u" )"\">\n", nb_refs );
2590 
2592  Ref = D->FirstReference();
2594  Ref = D->SecondReference();
2596  Ref = D->ThirdReference();
2598  fprintf( F, "</Dtk_ReferenceFramePtr>\n" );
2599  }
2600  return dtkNoError;
2601  }

◆ Dtk_DumpXml_Dtk_roughness_obtention_type()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_obtention_type ( FILE *  F,
const Dtk_Roughness::ObtentionTypeEnum D 
)
1496  {
1497  fprintf( F, "<Dtk_roughness_obtention_type>" );
1498  switch( D )
1499  {
1500  default:
1502  fprintf( F, "DTK_ROUGHNESS_NOT_DEFINED" );
1503  break;
1505  fprintf( F, "DTK_ROUGHNESS_MACHINING_MANDATORY" );
1506  break;
1508  fprintf( F, "DTK_ROUGHNESS_MACHINING_FORBIDEN" );
1509  break;
1510  }
1511  fprintf( F, "</Dtk_roughness_obtention_type>\n" );
1512  return dtkNoError;
1513  }

◆ Dtk_DumpXml_Dtk_roughness_rough_mode()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_rough_mode ( FILE *  F,
const Dtk_Roughness::RoughModeEnum D 
)
1539  {
1540  fprintf( F, "<Dtk_roughness_rough_mode>" );
1541  switch( D )
1542  {
1543  default:
1545  fprintf( F, "DTK_ROUGHNESS_MODE_NONE" );
1546  break;
1548  fprintf( F, "DTK_ROUGHNESS_MODE_MULTIDIRECTIONAL" );
1549  break;
1551  fprintf( F, "DTK_ROUGHNESS_MODE_CIRCULAR" );
1552  break;
1554  fprintf( F, "DTK_ROUGHNESS_MODE_RADIAL" );
1555  break;
1557  fprintf( F, "DTK_ROUGHNESS_MODE_PARTICULAR" );
1558  break;
1560  fprintf( F, "DTK_ROUGHNESS_MODE_WITH_ANGLES" );
1561  break;
1563  fprintf( F, "DTK_ROUGHNESS_MODE_PARALLEL" );
1564  break;
1566  fprintf( F, "DTK_ROUGHNESS_MODE_PERPENDICULAR" );
1567  break;
1568  }
1569  fprintf( F, "</Dtk_roughness_rough_mode>\n" );
1570  return dtkNoError;
1571  }

◆ Dtk_DumpXml_Dtk_roughness_roughness_applyto()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_roughness_applyto ( FILE *  F,
const Dtk_Roughness::ApplyToEnum D 
)
1516  {
1517  fprintf( F, "<Dtk_roughness_roughness_applyto>" );
1518  switch( D )
1519  {
1520  default:
1522  fprintf( F, "DTK_ROUGHNESS_SPECIFIED_SURFACE" );
1523  break;
1525  fprintf( F, "DTK_ROUGHNESS_SURROUNDING_SURFACES" );
1526  break;
1528  fprintf( F, "DTK_ROUGHNESS_BASIC_SURFACE" );
1529  break;
1531  fprintf( F, "DTK_ROUGHNESS_ALL_PART_SURFACES" );
1532  break;
1533  }
1534  fprintf( F, "</Dtk_roughness_roughness_applyto>\n" );
1535  return dtkNoError;
1536  }

◆ Dtk_DumpXml_Dtk_RoughnessPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_RoughnessPtr ( FILE *  F,
const Dtk_RoughnessPtr D 
)
1574  {
1575  fprintf( F, "<Dtk_RoughnessPtr>\n" );
1577 
1578  //we dump each of 6 texts
1579  fprintf( F, "<TopLeftText>\n" );
1580  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetTopLeftText() );
1581  fprintf( F, "</TopLeftText>\n" );
1582 
1583  fprintf( F, "<MiddleLeftText>\n" );
1584  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetMiddleLeftText() );
1585  fprintf( F, "</MiddleLeftText>\n" );
1586 
1587  fprintf( F, "<BottomLeftText>\n" );
1588  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetBottomLeftText() );
1589  fprintf( F, "</BottomLeftText>\n" );
1590 
1591  fprintf( F, "<TopRightText>\n" );
1592  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetTopRightText() );
1593  fprintf( F, "</TopRightText>\n" );
1594 
1595  fprintf( F, "<MiddleRightText>\n" );
1596  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetMiddleRightText() );
1597  fprintf( F, "</MiddleRightText>\n" );
1598 
1599  fprintf( F, "<BottomRightText>\n" );
1600  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetBottomRightText() );
1601  fprintf( F, "</BottomRightText>\n" );
1602 
1603  fprintf( F, "<OtherRequirement>\n" );
1604  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetOtherRequirement() );
1605  fprintf( F, "</OtherRequirement>\n" );
1606 
1607  fprintf( F, "<CutOff>\n" );
1608  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetCutOff() );
1609  fprintf( F, "</CutOff>\n" );
1610 
1611 
1612  //fprintf(F,"<ObtentionType>");
1614  //fprintf(F,"</ObtentionType>");
1615  //fprintf(F,"<RoughnessMode>");
1617  //fprintf(F,"</RoughnessMode>");
1618  //fprintf(F,"<ApplyTo>");
1620  //fprintf(F,"</ApplyTo>");
1621  if( D->GetInvertText() )
1622  {
1623  fprintf( F, "<InvertText>DTK_TRUE</InvertText>\n" );
1624  }
1625 
1626  fprintf( F, "</Dtk_RoughnessPtr>\n" );
1627  return dtkNoError;
1628  }

◆ Dtk_DumpXml_Dtk_SelectionDataSet()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_SelectionDataSet ( FILE *  F,
const Dtk_GlobalDataSetPtr ptrGlobalDataSet 
)
7101  {
7102  if( F == NULL )
7103  {
7104  return dtkErrorNullPointer;
7105  }
7106  Dtk_Size_t i = 0;
7107 
7108  //Dtk_GlobalDataSetPtr ptrGlobalDataSet = inObject->GetGlobalDataSet();
7109  if( ptrGlobalDataSet.IsNotNULL() )
7110  {
7111  Dtk_SelectionDataSetPtr ptrSelectionDataSet = ptrGlobalDataSet->GetSelectionDataSet();
7112  if( ptrSelectionDataSet.IsNULL() )
7113  {
7114  return dtkErrorNullPointer;
7115  }
7116  Dtk_Size_t ptrSelectionDataSetNb = ptrSelectionDataSet->GetNumSelectionSets();
7117  if( ptrSelectionDataSetNb > 0 )
7118  {
7119  fprintf( F, "<Dtk_SelectionDataSet>\n" );
7120  }
7121  for( i = 0; i < ptrSelectionDataSetNb; i++ )
7122  {
7123  Dtk_SelectionSetPtr curSelectionSet = ptrSelectionDataSet->GetSelectionSetByPos( i );
7124  if( curSelectionSet.IsNotNULL() )
7125  Dtk_DumpXml_Dtk_SelectionSet( F, curSelectionSet );
7126  }
7127  if( ptrSelectionDataSetNb > 0 )
7128  {
7129  fprintf( F, "</Dtk_SelectionDataSet>\n" );
7130  }
7131  }
7132 
7133  return dtkNoError;
7134  }

◆ Dtk_DumpXml_Dtk_StreamPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_StreamPtr ( FILE *  F,
const Dtk_StreamPtr inVal 
)
8739  {
8740  fprintf( F, "<Dtk_StreamPtr>\n" );
8741  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"Name", inVal->GetName() );
8742  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"StreamType", inVal->GetStreamType() );
8743  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"StreamSize", inVal->GetBinaryContentSize() );
8744  fprintf( F, "</Dtk_StreamPtr>\n" );
8745  return dtkNoError;
8746  }

◆ Dtk_DumpXml_Dtk_TablePtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_TablePtr ( FILE *  F,
const Dtk_TablePtr D 
)
2291  {
2292  Dtk_Size_t nbLine, nbCol, i, j;
2293  fprintf( F, "<Dtk_Table>\n" );
2294 
2296  fprintf( F, "<nbRows>" XmlFormat( "u" )"</nbRows>\n", D->getNbrows() );
2297  fprintf( F, "<nbCols>" XmlFormat( "u" )"</nbCols>\n", D->getNbcols() );
2298  nbLine = D->getNbrows();
2299  nbCol = D->getNbcols();
2300  for( i = 0; i < nbLine; i++ )
2301  {
2302  fprintf( F, "<nbCells_in_Line" XmlFormat( "u" )">" XmlFormat( "u" )"</nbCells_in_Line" XmlFormat( "u" )">\n", i, D->Cell_Line( i ), i );
2303  }
2304  for( i = 0; i < nbCol; i++ )
2305  {
2306  fprintf( F, "<nbCells_in_Col" XmlFormat( "u" )">" XmlFormat( "u" )"</nbCells_in_Col" XmlFormat( "u" )">\n", i, D->Cell_Col( i ), i );
2307  }
2308  for( i = 0; i < nbLine; i++ )
2309  {
2310  fprintf( F, "<LineNum" XmlFormat( "u" )">\n", i + 1 );
2311 
2312  for( j = 0; j < nbCol; j++ )
2313  {
2314  fprintf( F, "<ColNum" XmlFormat( "u" )">\n", j + 1 );
2315  if( D->getCell( i, j ).HasText() == DTK_TRUE )
2317  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_OneCell( F, D->getCell( i, j ) );
2318  fprintf( F, "</ColNum" XmlFormat( "u" )">\n", j + 1 );
2319  }
2320  fprintf( F, "</LineNum" XmlFormat( "u" )">\n", i + 1 );
2321  }
2322 
2323  fprintf( F, "</Dtk_Table>\n" );
2324  return dtkNoError;
2325  }

◆ Dtk_DumpXml_Dtk_Text()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_Text ( FILE *  F,
const Dtk_Text T 
)
1219  {
1220  Dtk_string str = T.Text();
1221 
1222  fprintf( F, "<Dtk_Text>\n" );
1223  if( str.len() )
1224  {
1228  Dtk_Frame TmpFrame;
1229  T.GetFrame( TmpFrame );
1232  Dtk_DumpXMLNamespace::Dtk_DumpXml_Value( F, L"text", str );
1235  }
1236  else
1237  {
1238  fprintf( F, "Empty" );
1239  }
1240 
1241  fprintf( F, "</Dtk_Text>\n" );
1242  return dtkNoError;
1243  }

◆ Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtr ( FILE *  F,
const Dtk_ToleranceSpecificationContainerPtr D 
)
2525  {
2526  fprintf( F, "<Dtk_ToleranceSpecificationContainerPtr>\n" );
2527  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtrType( F, D->ToleranceSpecificationContainerType() );
2528  //We retrieve the TolType BBoxes
2529  Dtk_Oriented2dBBox TmpBBox;
2530  D->GetToleranceTypeOuterBoundingBox( TmpBBox );
2531  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Oriented2dBBox( F, TmpBBox, L"TopSpecContTypeOuterBBox" );
2532  D->GetToleranceTypeInnerBoundingBox( TmpBBox );
2533  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Oriented2dBBox( F, TmpBBox, L"TopSpecContTypeInnerBBox" );
2534  fprintf( F, "<TopText>\n" ); Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CompositeText( F, D->TopTextAsCompositeText() ); fprintf( F, "</TopText>\n" );
2535  fprintf( F, "<BottomText>\n" ); Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CompositeText( F, D->BottomTextAsCompositeText() ); fprintf( F, "</BottomText>\n" );
2536  fprintf( F, "<RightText>\n" ); Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CompositeText( F, D->RightTextAsCompositeText() ); fprintf( F, "</RightText>\n" );
2537  fprintf( F, "<LeftText>\n" ); Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CompositeText( F, D->LeftTextAsCompositeText() ); fprintf( F, "</LeftText>\n" );
2538 
2539  Dtk_Size_t i, nbtolspecs;
2540  nbtolspecs = D->GetNumToleranceSpecifications();
2541  fprintf( F, "<tol_specs num_tol_specs = \"" XmlFormat( "u" )"\">\n", nbtolspecs );
2542  for( i = 0; i < nbtolspecs; i++ )
2543  {
2544  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_ToleranceSpecificationPtr( F, D->GetToleranceSpecification( i ) );
2545  }
2546  fprintf( F, "</tol_specs>\n" );
2547  fprintf( F, "</Dtk_ToleranceSpecificationContainerPtr>\n" );
2548  return dtkNoError;
2549  }

◆ Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtrType()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtrType ( FILE *  F,
const Dtk_ToleranceSpecificationContainer::TypeEnum D 
)
2651  {
2652  fprintf( F, "<ToleranceSpecificationContainerType>" );
2653  switch( D )
2654  {
2655  default:
2657  fprintf( F, "TypeUnknown" );
2658  break;
2660  fprintf( F, "TypeStraightness" );
2661  break;
2663  fprintf( F, "TypeFlatness" );
2664  break;
2666  fprintf( F, "TypeCircularity" );
2667  break;
2669  fprintf( F, "TypeCylindricity" );
2670  break;
2672  fprintf( F, "TypeLineProfile" );
2673  break;
2675  fprintf( F, "TypeSurfaceProfile" );
2676  break;
2678  fprintf( F, "TypeAngularity" );
2679  break;
2681  fprintf( F, "TypePerpendicularity" );
2682  break;
2684  fprintf( F, "TypeParallelism" );
2685  break;
2687  fprintf( F, "TypePosition" );
2688  break;
2690  fprintf( F, "TypeConcentricity" );
2691  break;
2693  fprintf( F, "TypeSymmetry" );
2694  break;
2696  fprintf( F, "TypeCircularRunout" );
2697  break;
2699  fprintf( F, "TypeTotalRunout" );
2700  break;
2702  fprintf( F, "TypeAxisIntersection" );
2703  break;
2704  }
2705  fprintf( F, "</ToleranceSpecificationContainerType>\n" );
2706  return dtkNoError;
2707  }

◆ Dtk_DumpXml_Dtk_ToleranceSpecificationPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationPtr ( FILE *  F,
const Dtk_ToleranceSpecificationPtr D 
)
2709  {
2710  fprintf( F, "<Dtk_ToleranceSpecificationPtr>\n" );
2711 
2713 
2715  //Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir(F, D->GetXAxis(), "X_axis");
2716  //Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir(F, D->GetYAxis(), "Y_axis");
2717  Dtk_DumpXMLNamespace::Dtk_DumpXml_DTK_FDT_MODIFIER( F, D->GetMaterialModifier() );
2718  fprintf( F, "<FreeStateModifier>" );
2719  if( D->HasFreeStateModifier() == DTK_TRUE )
2720  fprintf( F, "Present" );
2721  else
2722  fprintf( F, "Not Present" );
2723  fprintf( F, "</FreeStateModifier>" );
2724  for( Dtk_Size_t i = 0; i < D->GetNumIndicators(); ++i )
2725  {
2726  Dtk_DumpXml_Dtk_FCFFeatureIndicatorPtr( F, D->GetIndicator( i ) );
2727  }
2728  fprintf( F, "</Dtk_ToleranceSpecificationPtr>\n" );
2729  return dtkNoError;
2730  }

◆ Dtk_DumpXml_Dtk_transfo()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_transfo ( FILE *  F,
const Dtk_transfo V 
)
4358  {
4359  fprintf( F, "<Transfo_matrix>\n" );
4360  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, T.getXdir(), "X" );
4361  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, T.getYdir(), "Y" );
4362  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_dir( F, T.getZdir(), "Z" );
4363  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_pnt( F, T.getOrigin(), "Origin" );
4364  fprintf( F, "<Scale>%f</Scale>\n", T.getScale() );
4365  fprintf( F, "</Transfo_matrix>\n" );
4366  return dtkNoError;
4367  }

◆ Dtk_DumpXml_Dtk_ViewPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_ViewPtr ( FILE *  F,
const Dtk_ViewPtr V 
)

◆ Dtk_DumpXml_Dtk_WeldingPtr()

Dtk_ErrorStatus Dtk_DumpXml_Dtk_WeldingPtr ( FILE *  F,
const Dtk_WeldingPtr D 
)
1794  {
1795  fprintf( F, "<Dtk_WeldingPtr>\n" );
1797 
1798  // We dump all texts
1799  fprintf( F, "<SizeTextOtherSide>\n" );
1800  if( D->GetOtherSideSizeText().GetNumTexts() > 1 )
1801  {
1802  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CompositeText( F, D->GetOtherSideSizeText() );
1803  }
1804  else
1805  {
1806  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetSizeTextOtherSide() );
1807  }
1808  fprintf( F, "</SizeTextOtherSide>\n" );
1809 
1810  fprintf( F, "<AngleTextOtherSide>\n" );
1811  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetAngleTextOtherSide() );
1812  fprintf( F, "</AngleTextOtherSide>\n" );
1813 
1814  fprintf( F, "<NumWeldsTextOtherSide>\n" );
1815  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetNumWeldsTextOtherSide() );
1816  fprintf( F, "</NumWeldsTextOtherSide>\n" );
1817 
1818  fprintf( F, "<LengthTextOtherSide>\n" );
1819  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetLengthTextOtherSide() );
1820  fprintf( F, "</LengthTextOtherSide>\n" );
1821 
1822  Dtk_CompositeText tmpText;
1823  tmpText = D->GetOtherSideDepthText();
1824 
1825  if( tmpText.GetNumTexts() > 0 )
1826  {
1827  fprintf( F, "<DepthTextOtherSide>\n" );
1829  fprintf( F, "</DepthTextOtherSide>\n" );
1830  }
1831 
1832  tmpText = D->GetOtherSideClearanceText();
1833 
1834  if( tmpText.GetNumTexts() > 0 )
1835  {
1836  fprintf( F, "<ClearanceTextOtherSide>\n" );
1838  fprintf( F, "</ClearanceTextOtherSide>\n" );
1839  }
1840 
1841  tmpText = D->GetOtherSideSecondFilletSizeText();
1842 
1843  if( tmpText.GetNumTexts() > 0 )
1844  {
1845  fprintf( F, "<SecondFiletSizeTextOtherSide>\n" );
1847  fprintf( F, "</SecondFiletSizeTextOtherSide>\n" );
1848  }
1849 
1850  tmpText = D->GetOtherSideSecondFilletLengthText();
1851 
1852  if( tmpText.GetNumTexts() > 0 )
1853  {
1854  fprintf( F, "<SecondFiletLengthTextOtherSide>\n" );
1856  fprintf( F, "</SecondFiletLengthTextOtherSide>\n" );
1857  }
1858 
1859  tmpText = D->GetOtherSideOpeningText();
1860 
1861  if( tmpText.GetNumTexts() > 0 )
1862  {
1863  fprintf( F, "<OpeningTextOtherSide>\n" );
1865  fprintf( F, "</OpeningTextOtherSide>\n" );
1866  }
1867 
1868  tmpText = D->GetOtherSideWeldSymbolText();
1869 
1870  if( tmpText.GetNumTexts() > 0 )
1871  {
1872  fprintf( F, "<WeldSymbolTextOtherSide>\n" );
1874  fprintf( F, "</WeldSymbolTextOtherSide>\n" );
1875  }
1876 
1877  tmpText = D->GetOtherSideUndefinedText();
1878 
1879  if( tmpText.GetNumTexts() > 0 )
1880  {
1881  fprintf( F, "<UndefinedTextOtherSide>\n" );
1883  fprintf( F, "</UndefinedTextOtherSide>\n" );
1884  }
1885 
1886  if( D->GetBrazingOtherSide() )
1887  {
1888  fprintf( F, "<WeldBrazingOtherSideActivated>" );
1889  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool( F, D->GetBrazingOtherSide() );
1890  fprintf( F, "</WeldBrazingOtherSideActivated>\n" );
1891  }
1892 
1893  fprintf( F, "<TailText>\n" );
1895  fprintf( F, "</TailText>\n" );
1896 
1897  fprintf( F, "<SizeTextArrowSide>\n" );
1898  if( D->GetArrowSideSizeText().GetNumTexts() > 1 )
1899  {
1900  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_CompositeText( F, D->GetArrowSideSizeText() );
1901  }
1902  else
1903  {
1904  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetSizeTextArrowSide() );
1905  }
1906 
1907  fprintf( F, "</SizeTextArrowSide>\n" );
1908 
1909  fprintf( F, "<AngleTextArrowSide>\n" );
1910  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetAngleTextArrowSide() );
1911  fprintf( F, "</AngleTextArrowSide>\n" );
1912 
1913  fprintf( F, "<NumWeldsTextArrowSide>\n" );
1914  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetNumWeldsTextArrowSide() );
1915  fprintf( F, "</NumWeldsTextArrowSide>\n" );
1916 
1917  fprintf( F, "<LengthTextArrowSide>\n" );
1918  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_Text( F, D->GetLengthTextArrowSide() );
1919  fprintf( F, "</LengthTextArrowSide>\n" );
1920 
1921  tmpText = D->GetArrowSideDepthText();
1922 
1923  if( tmpText.GetNumTexts() > 0 )
1924  {
1925  fprintf( F, "<DepthTextArrowSide>\n" );
1927  fprintf( F, "</DepthTextArrowSide>\n" );
1928  }
1929 
1930  tmpText = D->GetArrowSideClearanceText();
1931 
1932  if( tmpText.GetNumTexts() > 0 )
1933  {
1934  fprintf( F, "<ClearanceTextArrowSide>\n" );
1936  fprintf( F, "</ClearanceTextArrowSide>\n" );
1937  }
1938 
1939  tmpText = D->GetArrowSideSecondFilletSizeText();
1940 
1941  if( tmpText.GetNumTexts() > 0 )
1942  {
1943  fprintf( F, "<SecondFiletSizeTextArrowSide>\n" );
1945  fprintf( F, "</SecondFiletSizeTextArrowSide>\n" );
1946  }
1947 
1948  tmpText = D->GetArrowSideSecondFilletLengthText();
1949 
1950  if( tmpText.GetNumTexts() > 0 )
1951  {
1952  fprintf( F, "<SecondFiletLengthTextArrowSide>\n" );
1954  fprintf( F, "</SecondFiletLengthTextArrowSide>\n" );
1955  }
1956 
1957  tmpText = D->GetArrowSideOpeningText();
1958 
1959  if( tmpText.GetNumTexts() > 0 )
1960  {
1961  fprintf( F, "<OpeningTextArrowSide>\n" );
1963  fprintf( F, "</OpeningTextArrowSide>\n" );
1964  }
1965 
1966  tmpText = D->GetArrowSideWeldSymbolText();
1967 
1968  if( tmpText.GetNumTexts() > 0 )
1969  {
1970  fprintf( F, "<WeldSymbolTextArrowSide>\n" );
1972  fprintf( F, "</WeldSymbolTextArrowSide>\n" );
1973  }
1974 
1975  tmpText = D->GetArrowSideUndefinedText();
1976 
1977  if( tmpText.GetNumTexts() > 0 )
1978  {
1979  fprintf( F, "<UndefinedTextArrowSide>\n" );
1981  fprintf( F, "</UndefinedTextArrowSide>\n" );
1982  }
1983 
1984  if( D->GetBrazingArrowSide() )
1985  {
1986  fprintf( F, "<WeldBrazingArrowSideActivated>" );
1987  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool( F, D->GetBrazingArrowSide() );
1988  fprintf( F, "</WeldBrazingArrowSideActivated>\n" );
1989  }
1990 
1991  fprintf( F, "<Dtk_welding_symbol_other_side>" );
1992  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_welding_symbol( F, D->GetWeldingSymbolOtherSide() );
1993  fprintf( F, "</Dtk_welding_symbol_other_side>\n" );
1994 
1995  fprintf( F, "<Dtk_welding_complementary_symbol_other_side>" );
1997  D->GetComplementarySymbolOtherSide() );
1998  fprintf( F, "</Dtk_welding_complementary_symbol_other_side>\n" );
1999 
2000  fprintf( F, "<Dtk_welding_finish_symbol_other_side>" );
2001  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_welding_finish_symbol( F, D->GetFinishSymbolOtherSide() );
2002  fprintf( F, "</Dtk_welding_finish_symbol_other_side>\n" );
2003 
2004  fprintf( F, "<Dtk_welding_symbol_arrow_side>" );
2005  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_welding_symbol( F, D->GetWeldingSymbolArrowSide() );
2006  fprintf( F, "</Dtk_welding_symbol_arrow_side>\n" );
2007 
2008  fprintf( F, "<Dtk_welding_complementary_symbol_arrow_side>" );
2010  D->GetComplementarySymbolArrowSide() );
2011  fprintf( F, "</Dtk_welding_complementary_symbol_arrow_side>\n" );
2012 
2013  fprintf( F, "<Dtk_welding_finish_symbol_arrow_side>" );
2014  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_welding_finish_symbol( F, D->GetFinishSymbolArrowSide() );
2015  fprintf( F, "</Dtk_welding_finish_symbol_arrow_side>\n" );
2016 
2017  fprintf( F, "<Dtk_welding_field_weld_activated>" );
2018  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool( F, D->GetFieldWeldActivated() );
2019  fprintf( F, "</Dtk_welding_field_weld_activated>\n" );
2020 
2021  // fprintf(F,"<Dtk_welding_weld_all_around_activated>");
2022  // Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool(F,D->GetWeldAllAroundActivated());
2023  // fprintf(F,"</Dtk_welding_weld_all_around_activated>\n");
2024 
2025  // fprintf(F,"<Dtk_welding_weld_text_side_down>");
2026  // Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool(F,D->GetWeldTextSideDown());
2027  // fprintf(F,"</Dtk_welding_weld_text_side_down>\n");
2028 
2029  fprintf( F, "<Dtk_welding_indent_line_side_down>" );
2030  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool( F, D->GetIndentLineFlag() );
2031  fprintf( F, "</Dtk_welding_indent_line_side_down>\n" );
2032 
2033  fprintf( F, "<Dtk_welding_weld_tail_activated>" );
2034  Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool( F, D->GetWeldTailActivated() );
2035  fprintf( F, "</Dtk_welding_weld_tail_activated>\n" );
2036 
2037  // fprintf(F,"<Dtk_welding_reference>");
2038  // Dtk_DumpXMLNamespace::Dtk_DumpXml_Dtk_bool(F,D->GetReference());
2039  // fprintf(F,"</Dtk_welding_reference>\n");
2040 
2041  Dtk_tab<Dtk_EntityPtr> array = D->GetGeometries( DTK_TRUE, DTK_FALSE, DTK_FALSE );
2042  Dtk_Size_t k, sizek = array.size();
2043  if( sizek > 0 )
2044  {
2045  fprintf( F, "<BodyGeometries>\n" );
2046  for( k = 0; k < sizek; k++ )
2047  {
2048  Dtk_DumpXml_Dtk_EntityPtr( F, array[ k ] );
2049  }
2050  fprintf( F, "</BodyGeometries>\n" );
2051  }
2052 
2053  array = D->GetGeometries( DTK_FALSE, DTK_TRUE, DTK_FALSE );
2054  sizek = array.size();
2055  if( sizek > 0 )
2056  {
2057  fprintf( F, "<OtherGeometries>\n" );
2058  for( k = 0; k < sizek; k++ )
2059  {
2060  Dtk_DumpXml_Dtk_EntityPtr( F, array[ k ] );
2061  }
2062  fprintf( F, "</OtherGeometries>\n" );
2063  }
2064 
2065  array = D->GetGeometries( DTK_FALSE, DTK_FALSE, DTK_TRUE );
2066  sizek = array.size();
2067  if( sizek > 0 )
2068  {
2069  fprintf( F, "<ArrowGeometries>\n" );
2070  for( k = 0; k < sizek; k++ )
2071  {
2072  Dtk_DumpXml_Dtk_EntityPtr( F, array[ k ] );
2073  }
2074  fprintf( F, "</ArrowGeometries>\n" );
2075  }
2076 
2077  fprintf( F, "</Dtk_WeldingPtr>\n" );
2078  return dtkNoError;
2079  }

◆ Dtk_DumpXml_End() [1/2]

Dtk_ErrorStatus Dtk_DumpXml_End ( )
5109  {
5110  if( dump_file == NULL )
5111  return dtkErrorUnspecified;
5112  fprintf( dump_file, "</root>\n" );
5113  fclose( dump_file );
5114  return dtkNoError;
5115  }

◆ Dtk_DumpXml_End() [2/2]

Dtk_ErrorStatus Dtk_DumpXml_End ( FILE *  F)
5117  {
5118  if( F == NULL )
5119  return dtkErrorUnspecified;
5120  fprintf( F, "</root>\n" );
5121  fclose( F );
5122  return dtkNoError;
5123  }

◆ Dtk_DumpXml_Fdt()

Dtk_ErrorStatus Dtk_DumpXml_Fdt ( const Dtk_FdtPtr D)
5091  {
5093  }

◆ Dtk_DumpXml_FormatDtk_string()

Dtk_string Dtk_DumpXml_FormatDtk_string ( const Dtk_string inString,
const XML_StringType  inXmlStringType = XMLGenericString 
)
4468  {
4469  //if( inString.c_str() != NULL )
4470  {
4471  int StrLen = inString.len();
4472  if( StrLen > 0 )
4473  {
4474  int Idx = 0;
4475  Dtk_string Res;
4476  switch( inXmlStringType )
4477  {
4478  case XMLAttribute:
4479  case XMLElement:
4480  {
4481  //XMLElement
4482  if( isascii( inString[ 0 ] ) == 0 || isdigit( inString[ 0 ] ) )
4483  {
4484  //we add an additional underscore char because an anchor can't start with a digit
4485  Res = L"_" + inString;
4486  Idx++; //we increment the index
4487  }
4488  else
4489  {
4490  Res = inString;
4491  }
4492 
4493  for( int i = 0; i < StrLen; i++, Idx++ )
4494  {
4495  unsigned int Val = ( unsigned int )inString[ i ];
4496  if( Val > 0x007F || Val < 0x002C )
4497  {
4498  Res[ Idx ] = '_';
4499  }
4500  else
4501  {
4502  switch( Val )
4503  {
4504  case 0x002F: //'/'
4505  case 0x003A: //':'
4506  case 0x003B: //';'
4507  case 0x003C: //'<'
4508  case 0x003D: //'='
4509  case 0x003E: //'>'
4510  case 0x003F: //'?'
4511  case 0x0040: //'@'
4512  case 0x005B: //'['
4513  case 0x005C: //'\\'
4514  case 0x005D: //']'
4515  case 0x005E: //'^'
4516  case 0x0060: //'`'
4517  case 0x007B: //'{'
4518  case 0x007C: //'|'
4519  case 0x007D: //'}'
4520  case 0x007E: //'~'
4521  {
4522  Res[ Idx ] = '_';
4523  break;
4524  }
4525  default:
4526  {
4527  break;
4528  }
4529  }
4530 
4531  }
4532  }
4533  break;
4534  }
4535  case XMLGenericString:
4536  {
4537  //XMLGenericString
4538  std::string fast;
4539  fast.reserve( StrLen );
4540  for( int i = 0; i < StrLen; i++ )
4541  {
4542  char buf[ 10 ] = { 0 };
4543  unsigned int Val = ( unsigned int )inString[ i ];
4544  if( Val > 127
4545  || Val == 0x0022 //'"' => this char is valid but could be ugly if we encapsulate with quotes
4546  || Val == 0x0026 //'&'
4547  || Val == 0x003C //'<'
4548  || Val == 0x003E //'>'
4549  || Val == 0x000A //'line feed'
4550  || Val == 0x000D //'carriage return'
4551  )
4552  {
4553  Dtk_StandardTools::sprintf_dtk( buf, 10, "&#x%X;", Val );
4554  }
4555  else if( Val >= 0x0020 ) //we remove ascii character prior 'space'
4556  {
4557  Dtk_StandardTools::sprintf_dtk( buf, 10, "%c", ( char )Val );
4558  }
4559  else
4560  {
4561  Dtk_StandardTools::sprintf_dtk( buf, 10, "_" ); //if control char => underscore
4562  }
4563  fast += buf;
4564  }
4565  Res += fast.c_str();
4566  break;
4567  }
4568  default:
4569  {
4570  break;
4571  }
4572  }
4573  return Res;
4574  }
4575  }
4576  return inString; //same string by default - error -
4577  }

◆ Dtk_DumpXml_GetFeaturesDumpFile()

FILE* Dtk_DumpXml_GetFeaturesDumpFile ( )
5130  {
5131  return FeaturesDumpFile;
5132  }

◆ Dtk_DumpXml_GetFile()

FILE* Dtk_DumpXml_GetFile ( )
5125  {
5126  return dump_file;
5127  }

◆ Dtk_DumpXml_GetParametersDumpFile()

FILE* Dtk_DumpXml_GetParametersDumpFile ( )

◆ Dtk_DumpXml_Init()

Dtk_ErrorStatus Dtk_DumpXml_Init ( const Dtk_string xml_file)
5096  {
5097  Dtk_string xmlFileOut;
5098 
5099  xmlFileOut = xml_file;
5100 
5101  dump_file = xmlFileOut.OpenFile( DTK_W );
5102  if( dump_file == NULL )
5103  return dtkErrorUnspecified;
5104  // dump_file = fopen(xml_file.c_str(),"w");
5105  fprintf( dump_file, "<root>\n" );
5106  return dtkNoError;
5107  }

◆ Dtk_DumpXml_LineTypeDefinitionTable()

Dtk_ErrorStatus Dtk_DumpXml_LineTypeDefinitionTable ( FILE *  F)
4087  {
4088  Dtk_ErrorStatus outDtkStatus = dtkNoError;
4089 
4090  const Dtk_API *const api = Dtk_API::GetAPI();
4091  if( api )
4092  {
4093  const Dtk_Size_t nbDefinitions = api->GetNumCurveLineTypeDefinitionsInTable();
4094 
4095  if( nbDefinitions > 0 )
4096  {
4097  fprintf( F, "<LineTypeDefinitionTable>\n" );
4098 
4099  for( Dtk_Size_t i_def = 1; i_def <= nbDefinitions; ++i_def )
4100  {
4102  api->GetCurveLineTypeDefinitionInTable( ( Dtk_ID )i_def ) );
4103  }
4104 
4105  fprintf( F, "</LineTypeDefinitionTable>\n" );
4106  }
4107  }
4108  else
4109  {
4110  outDtkStatus = dtkErrorNullPointer;
4111  }
4112 
4113  return outDtkStatus;
4114  }

◆ Dtk_DumpXml_PhysicalMaterialInfosTable()

Dtk_ErrorStatus Dtk_DumpXml_PhysicalMaterialInfosTable ( FILE *  F)
4004  {
4005  Dtk_API *api = Dtk_API::GetAPI();
4007  if( nb )
4008  fprintf( F, "<PhysicalMaterialInfosTable>\n" );
4009  for( i = 0; i < nb; i++ )
4010  {
4013  }
4014  if( nb )
4015  fprintf( F, "</PhysicalMaterialInfosTable>\n" );
4016 
4017  return dtkNoError;
4018  }

◆ Dtk_DumpXml_RenderInfosTable()

Dtk_ErrorStatus Dtk_DumpXml_RenderInfosTable ( FILE *  F)
3968  {
3969  Dtk_API *api = Dtk_API::GetAPI();
3970  Dtk_ID i, nb = ( Dtk_ID )api->GetNumRenderInfosInTable();
3971  if( nb )
3972  fprintf( F, "<RenderInfosTable>\n" );
3973  for( i = 0; i < nb; i++ )
3974  {
3975  Dtk_RenderInfosPtr mat = api->GetRenderInfosInTable( i + 1 );
3976  Dtk_DumpXml_Dtk_RenderInfos( F, mat );
3977  }
3978  if( nb )
3979  fprintf( F, "</RenderInfosTable>\n" );
3980 
3981  return dtkNoError;
3982  }

◆ Dtk_DumpXml_Value() [1/7]

Dtk_ErrorStatus Dtk_DumpXml_Value ( FILE *  inFile,
const Dtk_string inLabel,
const char *  inFormat,
  ... 
)
4369  {
4370  Dtk_string Value;
4371  {
4372  va_list ap;
4373  va_start( ap, inFormat );
4374  char buffer[ 512 ] = { 0 };
4375  Dtk_StandardTools::vsprintf_dtk( buffer, 512, inFormat, ap );
4376  va_end( ap );
4377  Value = buffer;
4378  }
4379 
4380  Dtk_string Title = ( inLabel.len() > 0 ) ? Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( inLabel, XMLElement ) : L"Value";
4381  const char *TitleCharStr = Title.c_str();
4382 
4383  Value = ( Value.len() > 0 ) ? Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( Value, XMLGenericString ) : L"Undefined.";
4384  fprintf( inFile, "<%s>%s</%s>\n",
4385  TitleCharStr,
4386  Value.c_str(),
4387  TitleCharStr );
4388 
4389  return dtkNoError;
4390  }

◆ Dtk_DumpXml_Value() [2/7]

Dtk_ErrorStatus Dtk_DumpXml_Value ( FILE *  inFile,
const Dtk_string inLabel,
const Dtk_bool inValue 
)
4407  {
4408  //we check if the label is present - label overload -
4409  Dtk_string Title = ( inLabel.len() > 0 ) ? Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( inLabel, XMLElement ) : L"Dtk_bool";
4410  const char *TitleCharStr = Title.c_str();
4411 
4412  fprintf( inFile, "<%s>%s</%s>\n",
4413  TitleCharStr,
4414  ( inValue == DTK_FALSE ) ? "DTK_FALSE" : "DTK_TRUE",
4415  TitleCharStr );
4416  return dtkNoError;
4417  }

◆ Dtk_DumpXml_Value() [3/7]

Dtk_ErrorStatus Dtk_DumpXml_Value ( FILE *  inFile,
const Dtk_string inLabel,
const Dtk_Double64 inValue,
const char *  inFormat = "%lf" 
)
4393  {
4394  //we check if the label is present - label overload -
4395  Dtk_string Title = ( inLabel.len() > 0 ) ? Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( inLabel, XMLElement ) : L"Dtk_Double64";
4396  const char *TitleCharStr = Title.c_str();
4397 
4398  char MyFormat[ 128 ] = { 0 };
4399  Dtk_StandardTools::sprintf_dtk( MyFormat, 128, "<%%s>%s</%%s>\n", inFormat );
4400  fprintf( inFile, MyFormat,
4401  TitleCharStr,
4402  inValue,
4403  TitleCharStr );
4404  return dtkNoError;
4405  }

◆ Dtk_DumpXml_Value() [4/7]

Dtk_ErrorStatus Dtk_DumpXml_Value ( FILE *  inFile,
const Dtk_string inLabel,
const Dtk_Int64 inValue 
)
4419  {
4420  //we check if the label is present - label overload -
4421  Dtk_string Title = ( inLabel.len() > 0 ) ? Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( inLabel, XMLElement ) : L"Dtk_Int64";
4422  const char *TitleCharStr = Title.c_str();
4423 
4424  fprintf( inFile, "<%s>\'" XmlFormat( "d" ) "\"</%s>\n",
4425  TitleCharStr,
4426  inValue,
4427  TitleCharStr );
4428  return dtkNoError;
4429  }

◆ Dtk_DumpXml_Value() [5/7]

Dtk_ErrorStatus Dtk_DumpXml_Value ( FILE *  inFile,
const Dtk_string inLabel,
const Dtk_string inValue 
)
4443  {
4444  //we check if the label is present - label overload -
4445  Dtk_string Title = ( inLabel.len() > 0 ) ? Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( inLabel, XMLElement ) : L"Dtk_string";
4446  const char *TitleCharStr = Title.c_str();
4447 
4448  if( inValue.len() > 0 )
4449  {
4450 
4452 
4453  fprintf( inFile, "<%s>&quot;%s&quot;</%s>\n",
4454  TitleCharStr,
4455  Value.c_str(),
4456  TitleCharStr );
4457  }
4458  else
4459  {
4460  fprintf( inFile, "<%s>(null)</%s>\n",
4461  TitleCharStr,
4462  TitleCharStr );
4463  }
4464  return dtkNoError;
4465  }

◆ Dtk_DumpXml_Value() [6/7]

Dtk_ErrorStatus Dtk_DumpXml_Value ( FILE *  inFile,
const Dtk_string inLabel,
const Dtk_UInt64 inValue 
)
4431  {
4432  //we check if the label is present - label overload -
4433  Dtk_string Title = ( inLabel.len() > 0 ) ? Dtk_DumpXMLNamespace::Dtk_DumpXml_FormatDtk_string( inLabel, XMLElement ) : L"Dtk_UInt64";
4434  const char *TitleCharStr = Title.c_str();
4435 
4436  fprintf( inFile, "<%s>\'" XmlFormat( "u" ) "\"</%s>\n",
4437  TitleCharStr,
4438  inValue,
4439  TitleCharStr );
4440  return dtkNoError;
4441  }

◆ Dtk_DumpXml_Value() [7/7]

template<typename ValueType >
Dtk_ErrorStatus Dtk_DumpXml_Value ( FILE *  inFile,
const Dtk_string inLabel,
const ValueType &  inValue 
)
101 {
102  //we check if the label is present - label overload -
103  Dtk_string Title = ( inLabel.len() > 0 ) ? Dtk_DumpXml_FormatDtk_string( inLabel, XMLElement ) : L"Value";
104  std::wstringstream sstream; sstream << inValue;
105  Dtk_string Value = ( sstream.str().length() > 0 ) ? Dtk_DumpXml_FormatDtk_string( sstream.str().c_str(), XMLGenericString ) : L"Undefined.";
106 
107  const char *titleStr = Title.c_str();
108  fprintf( inFile, "<%s>%s</%s>\n",
109  titleStr,
110  Value.c_str(),
111  titleStr );
112 
113  return dtkNoError;
114 }

◆ Dtk_End_Dump_Files()

Dtk_ErrorStatus Dtk_End_Dump_Files ( const Dtk_string inComponentFullName)
7927  {
7928  Dtk_string str_fic_param, str_fic_feat;
7929 
7930  if( FeaturesDumpFile )
7931  {
7932  str_fic_feat = inComponentFullName + Dtk_string( ".feat.log" );
7933  fclose( FeaturesDumpFile );
7934  FeaturesDumpFile = NULL;
7935  }
7936 
7937  return dtkNoError;
7938 
7939  }

◆ Dtk_Init_Dump_Files()

Dtk_ErrorStatus Dtk_Init_Dump_Files ( const Dtk_string inDumpFileName,
Dtk_bool  dumpFeatures = 0 
)
7913  {
7914  if( dumpFeatures )
7915  {
7916  FeaturesDumpFile = inDumpFileName.OpenFile( DTK_WP );
7917  if( FeaturesDumpFile == NULL )
7918  {
7919  return dtkErrorOpenFiles;
7920  }
7921  }
7922 
7923  return dtkNoError;
7924  }

◆ DtkReaderTypeEnumToString()

Dtk_string DtkReaderTypeEnumToString ( const DtkReaderType inReaderTypeEnum)
719  {
720  Dtk_string EnumToStr;
721  switch( inReaderTypeEnum )
722  {
723  case V5ReaderModule: EnumToStr = L"V5ReaderModule"; break;
724  case VdaReaderModule: EnumToStr = L"VdaReaderModule"; break;
725  case InvReaderModule: EnumToStr = L"InvReaderModule"; break;
726  case V4ReaderModule: EnumToStr = L"V4ReaderModule"; break;
727  case UgReaderModule: EnumToStr = L"UgReaderModule"; break;
728  case XmtReaderModule: EnumToStr = L"XmtReaderModule"; break;
729  case SwReaderModule: EnumToStr = L"SwReaderModule"; break;
730  case SeReaderModule: EnumToStr = L"SeReaderModule"; break;
731  case IgesReaderModule: EnumToStr = L"IgesReaderModule"; break;
732  case StepReaderModule: EnumToStr = L"StepReaderModule"; break;
733  case PsReaderModule: EnumToStr = L"PsReaderModule"; break;
734  case ProeReaderModule: EnumToStr = L"ProeReaderModule"; break;
735  case SatReaderModule: EnumToStr = L"SatReaderModule"; break;
736  case JtReaderModule: EnumToStr = L"JtReaderModule"; break;
737  case CgrReaderModule: EnumToStr = L"CgrReaderModule"; break;
738  case CgmReaderModule: EnumToStr = L"CgmReaderModule"; break;
739  case CaddsReaderModule: EnumToStr = L"CaddsReaderModule"; break;
740  case DwgReaderModule: EnumToStr = L"DwgReaderModule"; break;
741  case DwgDtkReaderModule: EnumToStr = L"DwgDtkReaderModule"; break;
742  case AcisReaderModule: EnumToStr = L"AcisReaderModule"; break;
743  case ProCeraReaderModule: EnumToStr = L"ProCeraReaderModule"; break;
744  case CerconReaderModule: EnumToStr = L"CerconReaderModule"; break;
745  case CerecReaderModule: EnumToStr = L"CerecReaderModule"; break;
746  case DcmReaderModule: EnumToStr = L"DcmReaderModule"; break;
747  case _3dXmlReaderModule: EnumToStr = L"_3dXmlReaderModule"; break;
748  case XmlReaderModule: EnumToStr = L"XmlReaderModule"; break;
749  case V6ReaderModule: EnumToStr = L"V6ReaderModule"; break;
750  case DxfReaderModule: EnumToStr = L"DxfReaderModule"; break;
751  case PlmXmlReaderModule: EnumToStr = L"PlmXmlReaderModule"; break;
752  case RnXmlReaderModule: EnumToStr = L"RnXmlReaderModule"; break;
753  case FbxReaderModule: EnumToStr = L"FbxReaderModule"; break;
754  case GltfReaderModule: EnumToStr = L"GltfReaderModule"; break;
755  case SdnfReaderModule: EnumToStr = L"SdnfReaderModule"; break;
756  case F3dReaderModule: EnumToStr = L"F3dReaderModule"; break;
757  case PrcReaderModule: EnumToStr = L"PrcReaderModule"; break;
758  case ArtReaderModule: EnumToStr = L"ArtReaderModule"; break;
759  case SmgReaderModule: EnumToStr = L"SmgReaderModule"; break;
760  case DstvReaderModule: EnumToStr = L"DstvReaderModule"; break;
761  case NavisReaderModule: EnumToStr = L"NavisReaderModule"; break;
762  case QifReaderModule: EnumToStr = L"QifReaderModule"; break;
763  case Zw3dReaderModule: EnumToStr = L"Zw3dReaderModule"; break;
764  case UsdReaderModule: EnumToStr = L"UsdReaderModule"; break;
765  case StlReaderModule: EnumToStr = L"StlReaderModule"; break;
766  case IfcReaderModule: EnumToStr = L"IfcReaderModule"; break;
767  case RevitReaderModule: EnumToStr = L"RevitReaderModule"; break;
768  case MaxReaderModules: EnumToStr = L"MaxReaderModules"; break;
769  case UnknownModule: EnumToStr = L"UnknownModule"; break;
770  default:
771  EnumToStr = L"UnknownModule";
772  }
773  return EnumToStr;
774  }
Dtk_mesh_face::get_nbtriangle_fans
Dtk_Size_t get_nbtriangle_fans() const
Get the number of triangle fans kept in the class instance.
Dtk_DumpXml_Dtk_SymbolPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_SymbolPtr(FILE *F, const Dtk_SymbolPtr &D)
Definition: util_xml_dtk.cpp:2779
Dtk_DumpXml_Dtk_DatumTargetPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_DatumTargetPtr(FILE *F, const Dtk_DatumTargetPtr &D)
Definition: util_xml_dtk.cpp:2081
Dtk_KinLaw
Dtk_KinLaw represents a law associated at a command.
Definition: util_kinematics_dtk.hpp:2342
Dtk_DumpXml_Dtk_NodePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodePtr(FILE *F, const Dtk_NodePtr &inObject)
Definition: util_xml_dtk.cpp:4598
Dtk_KinJoint::getName
Dtk_string getName()
Returns the joint name.
Dtk_Camera::UpVector
const Dtk_dir & UpVector() const
Retrieves the up vector - read only -.
Dtk_KinJoint::getConstraint
Dtk_KinConstraintPtr getConstraint(Dtk_Size_t inPosition)
Returns Constraint at position inPosition.
Dtk_Info::FindAttribute
Dtk_ErrorStatus FindAttribute(const Dtk_string &name, Dtk_Val &val) const
Dtk_NodeConnector::ReasonLinkEnum
ReasonLinkEnum
Reason - Type of the Dtk_NodeConnector -. It's used to filter connectors to same elements.
Definition: dtk_maindoc.hpp:1102
DTK_FEAT_THREAD
@ DTK_FEAT_THREAD
Definition: str_feat_dtk.hpp:302
Dtk_KinJoint::_FIX_TOGETHER
Dtk_string _FIX_TOGETHER
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:934
Dtk_KinParameter::getParentType
DTK_KINEMATIC_TYPE getParentType()
Returns the node parent type of this parameter (joint, command or mechanism)
CaddsReaderModule
@ CaddsReaderModule
Definition: dtk_maindoc.hpp:45
Dtk_ToleranceSpecificationContainer::Typeunknown
@ Typeunknown
Definition: util_draw_dtk.hpp:6055
Dtk_DumpXml_Dtk_GeometricalTolerancePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_GeometricalTolerancePtr(FILE *F, const Dtk_GeometricalTolerancePtr &D)
Definition: util_xml_dtk.cpp:2550
RnXmlReaderModule
@ RnXmlReaderModule
Definition: dtk_maindoc.hpp:59
Dtk_DumpXml_Dtk_ComponentAvailability
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentAvailability(FILE *F, const Dtk_ComponentPtr &inObject)
Definition: util_xml_dtk.cpp:4854
UsdReaderModule
@ UsdReaderModule
Definition: dtk_maindoc.hpp:81
Dtk_DumpXml_Dtk_LeaderPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_LeaderPtr(FILE *F, const Dtk_LeaderPtr &L)
Definition: util_xml_dtk.cpp:1288
Dtk_Info::GetReferenceSet
Dtk_ErrorStatus GetReferenceSet(Dtk_tab< Dtk_string > &outArray, Dtk_Int32 inRemovePrefix=DTK_FALSE) const
Dtk_ID
uint32_t Dtk_ID
Definition: define.h:688
DTK_FDT_MODIFIER_NOT_SET
@ DTK_FDT_MODIFIER_NOT_SET
Definition: util_draw_dtk.hpp:55
Dtk_RenderInfos::GetLightMap
Dtk_LightMapPtr GetLightMap() const
Returns the render light map.
CerconReaderModule
@ CerconReaderModule
Definition: dtk_maindoc.hpp:48
Dtk_DumpXml_Dtk_roughness_obtention_type
Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_obtention_type(FILE *F, const Dtk_Roughness::ObtentionTypeEnum &D)
Definition: util_xml_dtk.cpp:1495
Dtk_mesh_face
This is a high level face class.
Definition: util_mesh_dtk.hpp:865
Dtk_Roughness::ApplyToSurroundingSurfaces
@ ApplyToSurroundingSurfaces
Definition: util_draw_dtk.hpp:2570
Dtk_Text::TextStyle
Dtk_TextStyle & TextStyle()
Retrieves the text text style - get/set -.
DTK_TYPE_GEOM_TOL
@ DTK_TYPE_GEOM_TOL
Definition: define.h:430
Dtk_KinJoint::_RATIO_PARAMETER
Dtk_string _RATIO_PARAMETER
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:973
Dtk_Camera::ZoomFactor
Dtk_Double64 ZoomFactor() const
Processes the X - width - zoom factor - read only -.
Definition: util_draw_dtk.hpp:7525
PlmXmlReaderModule
@ PlmXmlReaderModule
Definition: dtk_maindoc.hpp:55
Dtk_DumpXml_Dtk_dir
Dtk_ErrorStatus Dtk_DumpXml_Dtk_dir(FILE *F, const Dtk_dir &D, const char *b)
Definition: util_xml_dtk.cpp:4351
Dtk_DumpXml_Dtk_welding_finish_symbol
Dtk_ErrorStatus Dtk_DumpXml_Dtk_welding_finish_symbol(FILE *F, const Dtk_Welding::FinishSymbolEnum &D)
Definition: util_xml_dtk.cpp:1759
NavisReaderModule
@ NavisReaderModule
Definition: dtk_maindoc.hpp:77
Dtk_DumpXml_Dtk_MetadataPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MetadataPtr(FILE *F, const Dtk_MetaDataPtr &inObject)
Definition: util_xml_dtk.cpp:4991
Dtk_DumpXml_DTK_FDT_MODIFIER
Dtk_ErrorStatus Dtk_DumpXml_DTK_FDT_MODIFIER(FILE *F, const DTK_FDT_MODIFIER &D)
Definition: util_xml_dtk.cpp:2624
Dtk_DumpXml_Dtk_LinePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_LinePtr(FILE *F, const Dtk_LinePtr &inCurve)
Definition: util_xml_dtk.cpp:5150
Dtk_Leader::ArrowHead::GetType
const LeaderTerminatorTypeEnum GetType() const
Definition: util_draw_dtk.hpp:2125
Dtk_ModelDisplay::rendering_mode_wireframe_face_analysis
@ rendering_mode_wireframe_face_analysis
Definition: util_ent_dtk.hpp:997
XMLElement
@ XMLElement
Definition: util_xml_dtk.hpp:93
Dtk_status::isNotOK
Dtk_bool isNotOK() const
Dtk_API::GetNumCurveLineTypeDefinitionsInTable
Dtk_Size_t GetNumCurveLineTypeDefinitionsInTable() const
DTK_TYPE_DIMENSION
@ DTK_TYPE_DIMENSION
Definition: define.h:431
Dtk_Text::TextSubType
DTK_Text_subtype & TextSubType()
Retrieves the text subtype - get/set -.
Dtk_DatumTarget::NumValues
@ NumValues
Definition: util_draw_dtk.hpp:3752
Dtk_KinJoint
Dtk_KinJoint represents a joint to define a mechanism.
Definition: util_kinematics_dtk.hpp:867
Dtk_KinJoint::getJoint1
Dtk_KinJointPtr getJoint1()
Returns the first joint associated at the joint.
XMLGenericString
@ XMLGenericString
Definition: util_xml_dtk.hpp:95
Dtk_DumpXml_Dtk_KinematicsFixPart
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsFixPart(FILE *inFile, const Dtk_KinFixPartPtr &inFixPart)
Definition: util_xml_dtk.cpp:7658
DTK_WITH_HIERARCHY
@ DTK_WITH_HIERARCHY
Definition: util_draw_dtk.hpp:65
Dtk_NodeConnector::GetSubEntities
Dtk_ErrorStatus GetSubEntities(Dtk_tab< Dtk_ID > &outEntitiesIDs, Dtk_tab< type_detk > &outEntitiesTypes) const
Retrieves The connected SubEntities - IDs and types -.
Dtk_CompositeText::GetNumTexts
Dtk_Size_t GetNumTexts() const
Retrieves the texts number.
Dtk_Roughness::ApplyToAllSurfaces
@ ApplyToAllSurfaces
Definition: util_draw_dtk.hpp:2574
Dtk_DumpXml_FeatHole
Dtk_ErrorStatus Dtk_DumpXml_FeatHole(FILE *f, const Dtk_feat_hole *inToWrite)
Definition: util_xml_dtk.cpp:8089
Dtk_DumpXml_Dtk_2dEntityPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_2dEntityPtr(FILE *F, const Dtk_2dEntityPtr &D, const int &compact)
Definition: util_xml_dtk.cpp:2802
Dtk_KinJoint::_LOWER_LIMIT2
Dtk_string _LOWER_LIMIT2
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:952
Dtk_DumpXml_Dtk_KinematicsProduct
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsProduct(FILE *inFile, const Dtk_KinProductPtr &inKinProduct, int &inKinProductIndex)
Definition: util_xml_dtk.cpp:7678
Dtk_DatumTarget::DatumTargetValueEnumToString
static Dtk_string DatumTargetValueEnumToString(const DatumTargetValueEnum &inEnum)
Definition: util_draw_dtk.hpp:3755
DTK_FDT_MODIFIER_LEAST_MATERIAL
@ DTK_FDT_MODIFIER_LEAST_MATERIAL
Definition: util_draw_dtk.hpp:57
Dtk_DumpXml_Dtk_OneCell
Dtk_ErrorStatus Dtk_DumpXml_Dtk_OneCell(FILE *F, Dtk_OneCell &D)
Definition: util_xml_dtk.cpp:2231
Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtr(FILE *F, const Dtk_ToleranceSpecificationContainerPtr &D)
Definition: util_xml_dtk.cpp:2524
Dtk_RenderInfos::GetShaderType
RenderMappingShaderTypeEnum GetShaderType() const
Returns shader type.
PsReaderModule
@ PsReaderModule
Definition: dtk_maindoc.hpp:40
Dtk_SmartPtr::IsNotNULL
Dtk_bool IsNotNULL() const
Definition: util_ptr_dtk.hpp:119
Dtk_NodeConnector::GetColorId
Dtk_Int32 GetColorId() const
Retrieves the Color Id for ForceColor connectors.
Dtk_KinJoint::getParameter1
double getParameter1()
Returns the first parameter.
Dtk_DumpXml_Dtk_FacePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_FacePtr(FILE *F, const Dtk_FacePtr &inFace)
Definition: util_xml_dtk.cpp:6577
Dtk_NodeConnector::ForceColor
@ ForceColor
Definition: dtk_maindoc.hpp:1115
DTK_FDT_MODIFIER_NONE
@ DTK_FDT_MODIFIER_NONE
Definition: util_draw_dtk.hpp:59
Dtk_OneCell::GetBorderBottomColor
const Dtk_RGB & GetBorderBottomColor()
Gets BorderBottomColor of Bottom border.
Dtk_Roughness::ModePerpendicular
@ ModePerpendicular
Definition: util_draw_dtk.hpp:2592
Dtk_KinJoint::_LOCAL_FRAME3
Dtk_string _LOCAL_FRAME3
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:958
Dtk_DatumTarget::DatumTargetValueEnum
DatumTargetValueEnum
Definition: util_draw_dtk.hpp:3743
Dtk_ToleranceSpecificationContainer::TypeAxisIntersection
@ TypeAxisIntersection
Definition: util_draw_dtk.hpp:6085
DTK_TYPE_VERTEX
@ DTK_TYPE_VERTEX
Definition: define.h:116
Dtk_LayerInfosSet::Layer
Definition: util_ent_dtk.hpp:519
Dtk_OneCell::GetBorderRightColor
const Dtk_RGB & GetBorderRightColor()
Gets BorderRightColor of Right border.
Dtk_KinJoint::_CONSTRAINT
Dtk_string _CONSTRAINT
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:925
Dtk_KinFixPart::getName
Dtk_string getName()
Returns the fix part name.
Dtk_KinJoint::_PARAMETER1
Dtk_string _PARAMETER1
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:928
Dtk_DumpXml_Dtk_ComponentPtr_Init
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr_Init(FILE *F, const Dtk_ComponentPtr &inObject)
Definition: util_xml_dtk.cpp:4885
Dtk_Info::GetCurveThickNessInMM
Dtk_Double64 GetCurveThickNessInMM() const
Retrieves the curve thickness - if exists and relevant -.
Dtk_OneCell::GetBorderLeftColor
const Dtk_RGB & GetBorderLeftColor()
Gets BorderLeftColor of Left border.
Dtk_KinCommand
Dtk_KinCommand represents a command to simulate a mechanism.
Definition: util_kinematics_dtk.hpp:1340
Dtk_DumpXml_Dtk_VertexPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_VertexPtr(FILE *F, const Dtk_VertexPtr &inVertex)
Definition: util_xml_dtk.cpp:6473
Dtk_RGB::IndexReader
int & IndexReader()
Definition: dtk_rgb.hpp:46
Dtk_KinParameter::getRange
double getRange(int inPosition)
Get the range value at position inPosition.
Dtk_KinFixPart::getConstraint
Dtk_KinConstraintPtr getConstraint()
Returns the constraint associated to the fixed part.
CerecReaderModule
@ CerecReaderModule
Definition: dtk_maindoc.hpp:49
Dtk_DumpXml_Dtk_KinematicsParameter
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsParameter(FILE *inFile, const Dtk_KinParameterPtr &inParameter, Dtk_bool simplified)
Definition: util_xml_dtk.cpp:7149
Dtk_DumpXml_ComponentTypeEnum
void Dtk_DumpXml_ComponentTypeEnum(FILE *F, const Dtk_Component::ComponentTypeEnum &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:681
Dtk_Roughness::ApplyToBasicSurface
@ ApplyToBasicSurface
Definition: util_draw_dtk.hpp:2572
Dtk_KinParameter::getId
int getId()
Retrun the parameter id.
Dtk_ToleranceSpecificationContainer::TypeFlatness
@ TypeFlatness
Definition: util_draw_dtk.hpp:6059
Dtk_Roughness::ModeMultiDirectional
@ ModeMultiDirectional
Definition: util_draw_dtk.hpp:2580
DTK_TYPE_POLYLINE
@ DTK_TYPE_POLYLINE
Definition: define.h:47
Dtk_DumpXml_Dtk_EllipsePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_EllipsePtr(FILE *F, const Dtk_EllipsePtr &inCurve)
Definition: util_xml_dtk.cpp:5281
DTK_TRUE
#define DTK_TRUE
Definition: define.h:726
Dtk_OneCell::getnbCells_Top_Bottom
Dtk_Int32 getnbCells_Top_Bottom() const
Gets the number of cells at the bottom or left of the Dtk_OneCell.
DTK_TYPE_REGION
@ DTK_TYPE_REGION
Definition: define.h:550
Dtk_Node::NodeDataTypeEnum
NodeDataTypeEnum
Definition: dtk_maindoc.hpp:252
PrcReaderModule
@ PrcReaderModule
Definition: dtk_maindoc.hpp:73
V5ReaderModule
@ V5ReaderModule
Definition: dtk_maindoc.hpp:30
Dtk_KinJoint::_UPPER_LIMIT1
Dtk_string _UPPER_LIMIT1
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:943
Dtk_KinFixPart::getId
int getId()
Retrun the fix part id.
dtkErrorUnspecified
@ dtkErrorUnspecified
Definition: error_dtk.hpp:17
Dtk_Roughness::ObtentionTypeMachiningForbidden
@ ObtentionTypeMachiningForbidden
Definition: util_draw_dtk.hpp:2563
Dtk_LayerInfosSet::Layer::Status::Selectable
@ Selectable
SatReaderModule
@ SatReaderModule
Definition: dtk_maindoc.hpp:42
Dtk_DumpXml_Dtk_CameraPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_CameraPtr(FILE *F, const Dtk_CameraPtr &inVal)
Definition: util_xml_dtk.cpp:3133
Dtk_DumpXml_Dtk_Oriented2dBBox
Dtk_ErrorStatus Dtk_DumpXml_Dtk_Oriented2dBBox(FILE *F, const Dtk_Oriented2dBBox &BBox, const Dtk_string &inLabel=L"")
Definition: util_xml_dtk.cpp:915
Zw3dReaderModule
@ Zw3dReaderModule
Definition: dtk_maindoc.hpp:80
Dtk_KinJoint::_RATIO
Dtk_string _RATIO
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:970
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_ModelDisplay::rendering_mode_shaded_with_visible_edges
@ rendering_mode_shaded_with_visible_edges
Definition: util_ent_dtk.hpp:993
Dtk_mesh_face::get_triangle_fan_indices
const Dtk_tab< Dtk_UInt32 > * get_triangle_fan_indices(Dtk_Size_t inI) const
Get inI-th triangle fan.
Dtk_API::GetPhysicalMaterialInfosInTable
Dtk_PhysicalMaterialInfosPtr GetPhysicalMaterialInfosInTable(Dtk_ID inId) const
Dtk_ModelDisplay::rendering_mode_wireframe_with_all_edges
@ rendering_mode_wireframe_with_all_edges
Definition: util_ent_dtk.hpp:994
Dtk_KinParameter::_RANGE
Dtk_string _RANGE
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:329
DTK_ANCHOR_BOTTOM_LEFT
@ DTK_ANCHOR_BOTTOM_LEFT
Definition: util_draw_dtk.hpp:97
Dtk_DumpXml_Dtk_KinematicsLaw
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsLaw(FILE *inFile, const Dtk_KinLawPtr &inLaw)
Definition: util_xml_dtk.cpp:7400
Dtk_KinJoint::_CONNECTOR
Dtk_string _CONNECTOR
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:976
Dtk_Size_t
size_t Dtk_Size_t
Definition: define.h:711
Dtk_Info::GetColor
Dtk_RGB GetColor() const
Retrieves the entity color as Dtk_RGBA values.
Dtk_NodeConnector::SubEntity
Definition: dtk_maindoc.hpp:1238
Dtk_DumpXml_Dtk_LineTypeDefinitionPtr
void Dtk_DumpXml_Dtk_LineTypeDefinitionPtr(FILE *F, const Dtk_LineTypeDefinitionPtr &inLineTypeDefinition)
Definition: util_xml_dtk.cpp:4020
Dtk_DumpXml_Dtk_EdgePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_EdgePtr(FILE *F, const Dtk_EdgePtr &inEdge)
Definition: util_xml_dtk.cpp:6496
DTK_TYPE_COMPOSITE_ENTITY
@ DTK_TYPE_COMPOSITE_ENTITY
Definition: define.h:441
DTK_ANCHOR_TOP_CENTER
@ DTK_ANCHOR_TOP_CENTER
Definition: util_draw_dtk.hpp:92
Dtk_ToleranceSpecificationContainer::TypeStraightness
@ TypeStraightness
Definition: util_draw_dtk.hpp:6057
XmlReaderModule
@ XmlReaderModule
Definition: dtk_maindoc.hpp:52
Dtk_string::convert_from_int
void convert_from_int(const int integer, int force_unsigned_int=0)
affectation operator from a int
Dtk_Text::GetInfo
const Dtk_InfoPtr & GetInfo() const
Retrieves the text infos - read only -.
Dtk_mesh_face::get_polyline_indices
const Dtk_tab< Dtk_UInt32 > * get_polyline_indices(Dtk_Size_t inI) const
Get inI-th polygon.
Dtk_KinJoint::getConnectorSize
Dtk_Size_t getConnectorSize()
Return the attribute tab size.
DTK_WP
#define DTK_WP
Definition: dtk_string.hpp:39
Dtk_DumpXml_Dtk_val
Dtk_ErrorStatus Dtk_DumpXml_Dtk_val(FILE *F, const Dtk_Val &V)
Definition: util_xml_dtk.cpp:3550
Dtk_KinJoint::_JOINT2
Dtk_string _JOINT2
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:967
Dtk_DumpXml_Dtk_CompositeText
Dtk_ErrorStatus Dtk_DumpXml_Dtk_CompositeText(FILE *F, const Dtk_CompositeText &T)
Definition: util_xml_dtk.cpp:1245
Dtk_DumpXml_Dtk_welding_complementary_symbol
Dtk_ErrorStatus Dtk_DumpXml_Dtk_welding_complementary_symbol(FILE *F, const Dtk_Welding::ComplementarySymbolEnum &D)
Definition: util_xml_dtk.cpp:1731
Dtk_UUID
Definition: dtk_uuid.hpp:8
Dtk_Val::GetIntArray
Dtk_tab< Dtk_Int32 > GetIntArray(Dtk_status &st=Dtk_status::GetDefaultStatus()) const
DTK_ANCHOR_BOTTOM_CENTER
@ DTK_ANCHOR_BOTTOM_CENTER
Definition: util_draw_dtk.hpp:98
Dtk_DumpXml_Dtk_RoughnessPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_RoughnessPtr(FILE *F, const Dtk_RoughnessPtr &D)
Definition: util_xml_dtk.cpp:1573
UnknownModule
@ UnknownModule
Definition: dtk_maindoc.hpp:83
Dtk_DumpXml_Dtk_FontLineTypeEnum
void Dtk_DumpXml_Dtk_FontLineTypeEnum(FILE *F, const Dtk_FontLineType &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:2348
Dtk_Fdt::Default
@ Default
The annotation display isn't bound to the viewport.
Definition: util_draw_dtk.hpp:7220
Dtk_Roughness::ModeParticular
@ ModeParticular
Definition: util_draw_dtk.hpp:2586
Dtk_status
Definition: dtk_status.hpp:16
Dtk_KinJoint::getRatioParameter
Dtk_KinParameterPtr getRatioParameter()
Returns the Dtk_KinParameter ratio of the joint.
Dtk_KinJoint::getUpperLimit1
double getUpperLimit1()
Returns the upper limit 1.
Dtk_NodeConnector::GetPointingEntityType
Dtk_Node::FullType GetPointingEntityType() const
Retrieves the pointing entity FullType. Should be the FullType of the Dtk_Node containing the Dtk_Nod...
Dtk_Leader::ApplicationZone::ApplicationZoneEnumToString
static Dtk_string ApplicationZoneEnumToString(const ApplicationZoneEnum &inEnum)
Definition: util_draw_dtk.hpp:1832
DTK_TYPE_PARABOLA
@ DTK_TYPE_PARABOLA
Definition: define.h:52
Dtk_KinJoint::getId
int getId()
Retrun the joint id.
dtkWarningNoEntitiesWritten
@ dtkWarningNoEntitiesWritten
Definition: error_dtk.hpp:91
Dtk_DumpXml_FormatDtk_string
Dtk_string Dtk_DumpXml_FormatDtk_string(const Dtk_string &inString, const XML_StringType inXmlStringType)
Definition: util_xml_dtk.cpp:4467
Dtk_KinJoint::getAbsolutPos1
Dtk_transfo getAbsolutPos1()
Returns the part 1 absolute position.
F3dReaderModule
@ F3dReaderModule
Definition: dtk_maindoc.hpp:74
DTK_FEAT_PATTERN
@ DTK_FEAT_PATTERN
Definition: str_feat_dtk.hpp:317
DTK_FALSE
#define DTK_FALSE
Definition: define.h:727
Dtk_DumpXml_Dtk_ParabolaPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ParabolaPtr(FILE *F, const Dtk_ParabolaPtr &inCurve)
Definition: util_xml_dtk.cpp:5259
DTK_TYPE_NURBS_CURVE
@ DTK_TYPE_NURBS_CURVE
Definition: define.h:485
StlReaderModule
@ StlReaderModule
Definition: dtk_maindoc.hpp:67
DTK_TYPE_SYMBOL
@ DTK_TYPE_SYMBOL
Definition: define.h:400
Dtk_bool
char Dtk_bool
Definition: define.h:724
ProCeraReaderModule
@ ProCeraReaderModule
Definition: dtk_maindoc.hpp:47
Dtk_string::OpenFile
FILE * OpenFile(const Dtk_string &inRights) const
File Utility : Open a file with the given rights.
DTK_TYPE_DATUM_TARGET
@ DTK_TYPE_DATUM_TARGET
Definition: define.h:428
Dtk_DatumTarget::DatumTargetTypeEnumToString
static Dtk_string DatumTargetTypeEnumToString(const DatumTargetTypeEnum &inEnum)
Definition: util_draw_dtk.hpp:3710
Dtk_DumpXml_Dtk_PhysicalMaterialInfos
Dtk_ErrorStatus Dtk_DumpXml_Dtk_PhysicalMaterialInfos(FILE *F, const Dtk_PhysicalMaterialInfosPtr &inMaterial)
Definition: util_xml_dtk.cpp:3734
AcisReaderModule
@ AcisReaderModule
Definition: dtk_maindoc.hpp:46
Dtk_DumpXml_NodeTypeEnum
void Dtk_DumpXml_NodeTypeEnum(FILE *F, const Dtk_Node::NodeDataTypeEnum &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:690
Dtk_Symbol::Create
static Dtk_SymbolPtr Create()
Calls default constructor to allocate a new object.
Dtk_ModelDisplay::rendering_mode_wireframe_with_only_visible_edges
@ rendering_mode_wireframe_with_only_visible_edges
Definition: util_ent_dtk.hpp:995
DTK_ANCHOR_MIDDLE_CENTER
@ DTK_ANCHOR_MIDDLE_CENTER
Definition: util_draw_dtk.hpp:95
Dtk_RenderInfos::RenderMappingShaderTypeEnum
RenderMappingShaderTypeEnum
Definition: dtk_render.hpp:289
Dtk_mesh_face::get_subinfo
Dtk_InfoPtr & get_subinfo(Dtk_Size_t inI)
Dtk_RenderInfos::Unknown
@ Unknown
Definition: dtk_render.hpp:290
Dtk_Info::GetUuid
Dtk_UUID GetUuid() const
Retrieves the entity UniqueID if any.
Dtk_DumpXml_Dtk_NurbsCurvePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NurbsCurvePtr(FILE *F, const Dtk_NurbsCurvePtr &inCurve)
Definition: util_xml_dtk.cpp:5190
SwReaderModule
@ SwReaderModule
Definition: dtk_maindoc.hpp:36
Dtk_DumpXml_DtkReaderType
void Dtk_DumpXml_DtkReaderType(FILE *F, const DtkReaderType &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:799
Dtk_DumpXml_Dtk_NodeConnector
Dtk_ErrorStatus Dtk_DumpXml_Dtk_NodeConnector(FILE *inFile, const Dtk_NodeConnectorPtr &inNodeConnector)
Definition: util_xml_dtk.cpp:6968
Dtk_Double64
double Dtk_Double64
Definition: define.h:698
Dtk_DumpXml_Dtk_welding_symbol
Dtk_ErrorStatus Dtk_DumpXml_Dtk_welding_symbol(FILE *F, const Dtk_Welding::WeldingSymbolEnum &D)
Definition: util_xml_dtk.cpp:1630
Dtk_DumpXml_Dtk_TextStyle
Dtk_ErrorStatus Dtk_DumpXml_Dtk_TextStyle(FILE *F, const Dtk_TextStyle &T)
Definition: util_xml_dtk.cpp:957
Dtk_DumpXml_FeatThread
Dtk_ErrorStatus Dtk_DumpXml_FeatThread(FILE *f, const Dtk_feat_thread *inToWrite)
Definition: util_xml_dtk.cpp:8030
Dtk_mesh_face::get_nbpolylines
Dtk_Size_t get_nbpolylines() const
Get the number of polylines kept in the class instance.
Dtk_ModelDisplay::RenderingModeEnum
RenderingModeEnum
Definition: util_ent_dtk.hpp:991
Dtk_OneCell::GetAdditionnalGeometries
const Dtk_tab< Dtk_EntityPtr > & GetAdditionnalGeometries() const
Retrieves the additionnal geometries of the Dtk_OneCell.
Dtk_Camera::Focus
Dtk_Double64 Focus() const
Definition: util_draw_dtk.hpp:7529
DTK_KIN_TYPE_LAW
@ DTK_KIN_TYPE_LAW
Definition: util_kinematics_dtk.hpp:112
Dtk_DumpXml_Dtk_SelectionSet
Dtk_ErrorStatus Dtk_DumpXml_Dtk_SelectionSet(FILE *F, const Dtk_SelectionSetPtr &inSelectionSet)
Definition: util_xml_dtk.cpp:7056
Dtk_DumpXml_Value
Dtk_ErrorStatus Dtk_DumpXml_Value(FILE *inFile, const Dtk_string &inLabel, const char *inFormat,...)
Definition: util_xml_dtk.cpp:4368
XmlFormat
#define XmlFormat(inOldFormat)
Definition: util_xml_dtk.cpp:44
Dtk_KinJoint::_ABSOLUT_POS1
Dtk_string _ABSOLUT_POS1
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:937
DTK_ANCHOR_TOP_LEFT
@ DTK_ANCHOR_TOP_LEFT
Definition: util_draw_dtk.hpp:91
CgrReaderModule
@ CgrReaderModule
Definition: dtk_maindoc.hpp:44
Dtk_Fdt::ScreenDisplayEnum
ScreenDisplayEnum
Definition: util_draw_dtk.hpp:7219
DTK_W
#define DTK_W
Definition: dtk_string.hpp:38
Dtk_DumpXml_Dtk_KinematicsMechanism
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsMechanism(FILE *inFile, const Dtk_KinMechanismPtr &inKinMechanism)
Definition: util_xml_dtk.cpp:7742
Dtk_DumpXml_Dtk_KinematicsFormula
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsFormula(FILE *inFile, const Dtk_KinFormulaPtr &inFormula)
Definition: util_xml_dtk.cpp:7384
Dtk_string::is_not_NULL
Dtk_bool is_not_NULL() const
Dtk_ConvertFontLineTypeEnumToString
Dtk_string Dtk_ConvertFontLineTypeEnumToString(const Dtk_FontLineType &inEnum)
Definition: util_xml_dtk.cpp:2327
Dtk_DumpXml_Dtk_info
Dtk_ErrorStatus Dtk_DumpXml_Dtk_info(FILE *F, const Dtk_InfoPtr &I)
Definition: util_xml_dtk.cpp:4116
Dtk_KinJoint::getParameter2
double getParameter2()
Returns the second parameter.
Dtk_Val
Definition: dtk_val.hpp:67
Dtk_KinParameter::getNamedValue
Dtk_KinNamedValuePtr getNamedValue()
Returns the named value associated at the parameter.
Dtk_KinJoint::getLocalFrame3
Dtk_transfo getLocalFrame3()
Returns the local frame 3 value.
QifReaderModule
@ QifReaderModule
Definition: dtk_maindoc.hpp:78
Dtk_Info::GetMetaData
Dtk_ErrorStatus GetMetaData(Dtk_tab< Dtk_MetaDataPtr > &outArray) const
Dtk_Val::GetInt
int GetInt(Dtk_status &st=Dtk_status::GetDefaultStatus()) const
Dtk_DumpXml_Dtk_LumpPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_LumpPtr(FILE *F, const Dtk_LumpPtr &inLump)
Definition: util_xml_dtk.cpp:6651
Dtk_Text::Text
Dtk_string & Text()
Retrieves the text string - get/set -.
Dtk_Fdt::ScreenDisplayEnumToString
static Dtk_string ScreenDisplayEnumToString(const ScreenDisplayEnum &inEnum)
Definition: util_draw_dtk.hpp:7226
Dtk_ModelDisplay::SectionPlane
@ SectionPlane
Definition: util_ent_dtk.hpp:1003
Dtk_Leader::TypeUnknown
@ TypeUnknown
Definition: util_draw_dtk.hpp:2184
Dtk_API::GetAPI
static Dtk_API * GetAPI()
Get DATAKIT API.
Dtk_DumpXml_Dtk_transfo
Dtk_ErrorStatus Dtk_DumpXml_Dtk_transfo(FILE *F, const Dtk_transfo &T)
Definition: util_xml_dtk.cpp:4357
Dtk_OneCell::getHeight
Dtk_Double64 getHeight() const
Gets the height of the Dtk_OneCell.
Dtk_OLEObject::Dtk_OLEObjectViewingAspectToString
static Dtk_string Dtk_OLEObjectViewingAspectToString(const Dtk_OLEObjectViewingAspect &inEnum)
Definition: dtk_oleobject.hpp:32
Dtk_KinJoint::getLowerLimit2
double getLowerLimit2()
Returns the lower limit 2.
Dtk_ToleranceSpecificationContainer::TypeCylindricity
@ TypeCylindricity
Definition: util_draw_dtk.hpp:6063
Dtk_OneCell::GetBorderTopColor
const Dtk_RGB & GetBorderTopColor()
Gets BorderTopColor of Top border.
Dtk_DumpXml_MetaDataTypeEnum
void Dtk_DumpXml_MetaDataTypeEnum(FILE *F, const Dtk_MetaData::MetaDataTypeEnum &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:708
Dtk_DumpXml_Dtk_StreamPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_StreamPtr(FILE *F, const Dtk_StreamPtr &inVal)
Definition: util_xml_dtk.cpp:8738
Dtk_DumpXml_Dtk_WeldingPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_WeldingPtr(FILE *F, const Dtk_WeldingPtr &D)
Definition: util_xml_dtk.cpp:1793
Dtk_ModelDisplay::rendering_mode_wireframe_partially_shade
@ rendering_mode_wireframe_partially_shade
Definition: util_ent_dtk.hpp:998
DxfReaderModule
@ DxfReaderModule
Definition: dtk_maindoc.hpp:54
Dtk_OneCell::GetBorderLeftBlanked
Dtk_Int32 GetBorderLeftBlanked()
Gets BorderLeftBlanked of Left border.
Dtk_KinJoint::getLocalFrame1
Dtk_transfo getLocalFrame1()
Returns the local frame 1 value.
Dtk_DumpXml_Dtk_CurvePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_CurvePtr(FILE *F, const Dtk_CurvePtr &inCurve)
Definition: util_xml_dtk.cpp:5971
Dtk_DumpXml_Dtk_AnnotationPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_AnnotationPtr(FILE *F, const Dtk_AnnotationPtr &D)
Definition: util_xml_dtk.cpp:877
DTK_INDIFFERENT_HIERARCHY
@ DTK_INDIFFERENT_HIERARCHY
Definition: util_draw_dtk.hpp:67
Dtk_DumpXml_Dtk_DrawingPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_DrawingPtr(FILE *F, const Dtk_DrawingPtr &D, const int &compact)
Definition: util_xml_dtk.cpp:3039
IgesReaderModule
@ IgesReaderModule
Definition: dtk_maindoc.hpp:38
Dtk_ModelDisplay::rendering_mode_shaded_only
@ rendering_mode_shaded_only
Definition: util_ent_dtk.hpp:992
Dtk_NodeConnector::ReasonCategoryEnum
ReasonCategoryEnum
Reason Category. Global Category of the NodeConnector uesed to gather Reason into families.
Definition: dtk_maindoc.hpp:1211
_3dXmlReaderModule
@ _3dXmlReaderModule
Definition: dtk_maindoc.hpp:51
Dtk_ModelDisplay::SectionBox
@ SectionBox
Definition: util_ent_dtk.hpp:1006
Dtk_DumpXml_LeaderTerminatorTypeEnum
void Dtk_DumpXml_LeaderTerminatorTypeEnum(FILE *F, const Dtk_Leader::LeaderTerminatorTypeEnum &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:832
DTK_TYPE_INTERSECTION_CURVE
@ DTK_TYPE_INTERSECTION_CURVE
Definition: define.h:80
Dtk_Leader::TypeLinear
@ TypeLinear
Definition: util_draw_dtk.hpp:2185
V6ReaderModule
@ V6ReaderModule
Definition: dtk_maindoc.hpp:53
Dtk_KinJoint::getUpperLimit2
double getUpperLimit2()
Returns the upper limit 2.
SeReaderModule
@ SeReaderModule
Definition: dtk_maindoc.hpp:37
DcmReaderModule
@ DcmReaderModule
Definition: dtk_maindoc.hpp:50
MaxReaderModules
@ MaxReaderModules
Definition: dtk_maindoc.hpp:84
Dtk_Roughness::ModeParallel
@ ModeParallel
Definition: util_draw_dtk.hpp:2590
DTK_ANCHOR_TOP_RIGHT
@ DTK_ANCHOR_TOP_RIGHT
Definition: util_draw_dtk.hpp:93
DTK_FDT_MODIFIER_MAX_MATERIAL
@ DTK_FDT_MODIFIER_MAX_MATERIAL
Definition: util_draw_dtk.hpp:56
Dtk_DumpXml_Dtk_EntityPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_EntityPtr(FILE *inDumpFile, const Dtk_EntityPtr &inEntity)
Definition: util_xml_dtk.cpp:5302
Dtk_ModelDisplay::rendering_mode_static_wireframe
@ rendering_mode_static_wireframe
Definition: util_ent_dtk.hpp:996
Dtk_OneCell::getWidth
Dtk_Double64 getWidth() const
Gets the width of the Dtk_OneCell.
Dtk_DumpXml_Dtk_Grid_ShowLabelOptionEnum
void Dtk_DumpXml_Dtk_Grid_ShowLabelOptionEnum(FILE *F, const Dtk_Grid::ShowLabelOption &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:2357
RevitReaderModule
@ RevitReaderModule
Definition: dtk_maindoc.hpp:65
Dtk_Camera::ProjectionType
const Dtk_Camera::ProjectionTypeEnum & ProjectionType() const
Retrieves the projection type - read only -.
Dtk_NodeConnector::ReasonLinkEnumToString
static Dtk_string ReasonLinkEnumToString(const ReasonLinkEnum &inEnum)
Definition: dtk_maindoc.hpp:1157
DTK_TYPE_CIRCLE
@ DTK_TYPE_CIRCLE
Definition: define.h:49
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
ArtReaderModule
@ ArtReaderModule
Definition: dtk_maindoc.hpp:71
Dtk_Text::TextType
DTK_Text_type & TextType()
Retrieves the text type - get/set -.
Dtk_Roughness::ObtentionTypeNotDefined
@ ObtentionTypeNotDefined
Definition: util_draw_dtk.hpp:2559
Dtk_DumpXml_Dtk_RGB
Dtk_ErrorStatus Dtk_DumpXml_Dtk_RGB(FILE *F, const Dtk_RGB &RGB)
Definition: util_xml_dtk.cpp:3538
Dtk_NodeConnector::ForceRender
@ ForceRender
Definition: dtk_maindoc.hpp:1116
Dtk_KinJoint::_PARAMETER2
Dtk_string _PARAMETER2
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:931
Dtk_KinJoint::getLocalFrame4
Dtk_transfo getLocalFrame4()
Returns the local frame 4 value.
Dtk_ModelDisplay::rendering_mode_studio
@ rendering_mode_studio
Definition: util_ent_dtk.hpp:999
DTK_TYPE_GRID
@ DTK_TYPE_GRID
Definition: define.h:442
V4ReaderModule
@ V4ReaderModule
Definition: dtk_maindoc.hpp:33
Dtk_ToleranceSpecificationContainer::TypeSymmetry
@ TypeSymmetry
Definition: util_draw_dtk.hpp:6079
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_Dtk_TablePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_TablePtr(FILE *F, const Dtk_TablePtr &D)
Definition: util_xml_dtk.cpp:2290
Dtk_Leader::ArrowHead::GetArrowLocation
const Dtk_pnt & GetArrowLocation() const
Definition: util_draw_dtk.hpp:2124
Dtk_Component::ComponentTypeEnumToString
static Dtk_string ComponentTypeEnumToString(const ComponentTypeEnum &inEnum)
Definition: dtk_maindoc.hpp:597
Dtk_Leader::ArrowHead::GetWidthHeight
void GetWidthHeight(Dtk_Double64 &outWidth, Dtk_Double64 &outHeight) const
Definition: util_draw_dtk.hpp:2133
Dtk_KinSpeedAcceleration
Dtk_KinSpeedAcceleration represents a mechanism speed/acceleration.
Definition: util_kinematics_dtk.hpp:2511
DTK_TYPE_LINE
@ DTK_TYPE_LINE
Definition: define.h:46
StepReaderModule
@ StepReaderModule
Definition: dtk_maindoc.hpp:39
Dtk_ToleranceSpecificationContainer::TypeTotalRunout
@ TypeTotalRunout
Definition: util_draw_dtk.hpp:6083
DstvReaderModule
@ DstvReaderModule
Definition: dtk_maindoc.hpp:75
Dtk_API::GetColorInTable
Dtk_ErrorStatus GetColorInTable(const Dtk_Int32 inIndex, Dtk_RGB &outColor)
GetColor in API Lut form index.
Dtk_SmartPtr::DtkDynamicCast
static Dtk_SmartPtr< T > DtkDynamicCast(const Dtk_SmartPtr< T2 > &p)
Definition: util_ptr_dtk.hpp:101
Dtk_DumpXml_Dtk_Text_DTK_Text_subtype
Dtk_ErrorStatus Dtk_DumpXml_Dtk_Text_DTK_Text_subtype(FILE *F, const DTK_Text_subtype &subType)
Definition: util_xml_dtk.cpp:1018
Dtk_DumpXml_Dtk_ComponentPtr_End
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr_End(FILE *F)
Definition: util_xml_dtk.cpp:4978
Dtk_MetaData::MetaDataTypeEnum
MetaDataTypeEnum
Definition: dtk_metadata.hpp:26
Dtk_KinParameter::getParentElement
void * getParentElement()
Returns the parent element.
Dtk_ToleranceSpecificationContainer::TypeCircularRunout
@ TypeCircularRunout
Definition: util_draw_dtk.hpp:6081
Dtk_DumpXml_NodeFullType
void Dtk_DumpXml_NodeFullType(FILE *F, const Dtk_Node::FullType &inNodeFullType, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:699
Dtk_KinFixPart::getPart
Dtk_KinPartPtr getPart()
Returns the part fixed.
Dtk_ErrorStatus
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
Dtk_Roughness::ObtentionTypeMachiningMandatory
@ ObtentionTypeMachiningMandatory
Definition: util_draw_dtk.hpp:2561
Dtk_SmartPtr::IsNULL
Dtk_bool IsNULL() const
Definition: util_ptr_dtk.hpp:118
Dtk_DumpXml_Dtk_pnt
Dtk_ErrorStatus Dtk_DumpXml_Dtk_pnt(FILE *F, const Dtk_pnt &P, const char *b)
Definition: util_xml_dtk.cpp:4345
Dtk_KinJoint::getCompoundType
int getCompoundType()
Returns the compound type attribute.
SdnfReaderModule
@ SdnfReaderModule
Definition: dtk_maindoc.hpp:70
Dtk_Roughness::ModeNone
@ ModeNone
Definition: util_draw_dtk.hpp:2578
Dtk_Info::GetRenderInfos
Dtk_RenderInfosPtr GetRenderInfos() const
Retrieves the entity RenderInfos of the entity.
Dtk_KinJoint::getAbsolutPos2
Dtk_transfo getAbsolutPos2()
Returns the part 2 absolute position.
typedetkToDtk_string
Dtk_string typedetkToDtk_string(const type_detk &inVal)
Definition: util_xml_dtk.cpp:99
Dtk_NodeConnector::GetPointedEntityType
type_detk GetPointedEntityType() const
Retrieves the pointed entity Type.
Dtk_DumpXml_Dtk_RegionPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_RegionPtr(FILE *F, const Dtk_RegionPtr &D)
Definition: util_xml_dtk.cpp:2418
Dtk_DumpXml_Dtk_FCFFeatureIndicatorPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_FCFFeatureIndicatorPtr(FILE *F, const Dtk_FCFFeatureIndicatorPtr &D)
Definition: util_xml_dtk.cpp:2761
Dtk_StandardTools::sprintf_dtk
int sprintf_dtk(char *Buffer, size_t BufferCount, const char *Format,...)
XMLAttribute
@ XMLAttribute
Definition: util_xml_dtk.hpp:94
DTK_TYPE_SPCURVE
@ DTK_TYPE_SPCURVE
Definition: define.h:566
DTK_FRAME_TYPE_NONE
@ DTK_FRAME_TYPE_NONE
Definition: util_draw_dtk.hpp:125
Dtk_OneCell::GetBorderBottomBlanked
Dtk_Int32 GetBorderBottomBlanked()
Gets BorderBottomBlanked of Bottom border.
Dtk_ToleranceSpecificationContainer::TypeParallelism
@ TypeParallelism
Definition: util_draw_dtk.hpp:6073
DTK_KIN_TYPE_JOINT
@ DTK_KIN_TYPE_JOINT
Definition: util_kinematics_dtk.hpp:109
Dtk_KinJoint::getType
JOINT_TYPE getType()
Returns the joint type.
Dtk_Camera::OriginPoint
const Dtk_pnt & OriginPoint() const
Retrieves the origin point - read only -.
Dtk_DumpXml_Dtk_Text_DTK_Text_type
Dtk_ErrorStatus Dtk_DumpXml_Dtk_Text_DTK_Text_type(FILE *F, const DTK_Text_type &D)
Definition: util_xml_dtk.cpp:980
Dtk_SmartPtr
Definition: util_ptr_dtk.hpp:37
Dtk_DumpXml_Dtk_Frame
Dtk_ErrorStatus Dtk_DumpXml_Dtk_Frame(FILE *F, const Dtk_Frame &T)
Definition: util_xml_dtk.cpp:1200
Dtk_DumpXml_Dtk_DimensionPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_DimensionPtr(FILE *F, const Dtk_DimensionPtr &D)
Definition: util_xml_dtk.cpp:1425
Dtk_Leader::ArrowHead::GetInfo
const Dtk_InfoPtr & GetInfo() const
Definition: util_draw_dtk.hpp:2122
DTK_UNKNOWN
@ DTK_UNKNOWN
Definition: util_draw_dtk.hpp:64
Dtk_string::is_NULL
Dtk_bool is_NULL() const
DTK_ANCHOR_MIDDLE_LEFT
@ DTK_ANCHOR_MIDDLE_LEFT
Definition: util_draw_dtk.hpp:94
validate_xml_string
Dtk_status validate_xml_string(Dtk_string &inputString)
Definition: util_xml_dtk.cpp:638
Dtk_DatumTarget::NonMovable
@ NonMovable
Definition: util_draw_dtk.hpp:3729
Dtk_OneCell::GetBorderTopBlanked
Dtk_Int32 GetBorderTopBlanked()
Gets BorderTopBlanked of Top border.
catiav5w::NodeType
NodeType
Type of Specification Tree Node used into a CATPart file.
Definition: catiav5w.hpp:424
VdaReaderModule
@ VdaReaderModule
Definition: dtk_maindoc.hpp:31
Dtk_ModelDisplay::SectionParallelePlane
@ SectionParallelePlane
Definition: util_ent_dtk.hpp:1005
Dtk_string::c_str
const char * c_str() const
Retrieve the ASCII conversion string.
Dtk_mesh_face::get_nbsubinfos
Dtk_Size_t get_nbsubinfos() const
Dtk_RGB::IsFilled
bool IsFilled() const
Definition: dtk_rgb.hpp:32
Dtk_API::GetNumPhysicalMaterialInfosInTable
Dtk_Size_t GetNumPhysicalMaterialInfosInTable() const
Dtk_KinJoint::getPart1
Dtk_KinPartPtr getPart1()
Returns the first part associated at the joint.
Dtk_ToleranceSpecificationContainer::TypeSurfaceProfile
@ TypeSurfaceProfile
Definition: util_draw_dtk.hpp:6067
Dtk_Camera::Angle
Dtk_Double64 Angle() const
Definition: util_draw_dtk.hpp:7519
Dtk_Roughness::ApplyToSpecifiedSurface
@ ApplyToSpecifiedSurface
Definition: util_draw_dtk.hpp:2568
Dtk_KinJoint::_PART3
Dtk_string _PART3
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:955
Dtk_KinJoint::_ABSOLUT_POS2
Dtk_string _ABSOLUT_POS2
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:940
DumpTransfo
void DumpTransfo(FILE *inFile, Dtk_transfo transfo)
Dtk_pnt
This is a mathematical point class.
Definition: dtk_pnt.hpp:20
Dtk_KinJoint::getConnector
Dtk_KinConnectorPtr getConnector(Dtk_Size_t inPosition)
Returns Connector at position inPosition.
w_str
#define w_str
Definition: dtk_string.hpp:30
type_detk
type_detk
Definition: define.h:21
Dtk_KinJoint::getPart3
Dtk_KinPartPtr getPart3()
Returns the third part associated at the joint.
Dtk_DumpXml_Dtk_ComponentPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ComponentPtr(FILE *F, const Dtk_ComponentPtr &inObject)
Definition: util_xml_dtk.cpp:4802
Dtk_CompositeText
This is the composite text class. It's basically a Dtk_Text Container. This class represents a group ...
Definition: util_draw_dtk.hpp:1525
Dtk_API::GetCurveLineTypeDefinitionInTable
Dtk_LineTypeDefinitionPtr GetCurveLineTypeDefinitionInTable(const Dtk_ID inId) const
Dtk_ModelDisplay::SectionTypeEnum
SectionTypeEnum
Definition: util_ent_dtk.hpp:1002
Dtk_ToleranceSpecificationContainer::TypeCircularity
@ TypeCircularity
Definition: util_draw_dtk.hpp:6061
Dtk_DumpXml_Dtk_CompositeEntityPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_CompositeEntityPtr(FILE *F, const Dtk_CompositeEntityPtr &D)
Definition: util_xml_dtk.cpp:2479
Dtk_ToleranceSpecificationContainer::TypeConcentricity
@ TypeConcentricity
Definition: util_draw_dtk.hpp:6077
Dtk_DumpXml_Dtk_KinematicsCommand
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsCommand(FILE *inFile, const Dtk_KinCommandPtr &inCommand, Dtk_bool simplified)
Definition: util_xml_dtk.cpp:7640
Dtk_Info::ListAllAttributes
Dtk_ErrorStatus ListAllAttributes(Dtk_tab< Dtk_string > &tab_keys) const
Dtk_Frame
This is the frame class. It's used to gather all frame information.
Definition: util_draw_dtk.hpp:906
Dtk_Text::GetFrame
void GetFrame(Dtk_Frame &outFrame) const
Retrieves the Frame - read only -.
Dtk_Leader::ArrowHead
This class graphically represents a leader head.
Definition: util_draw_dtk.hpp:2059
Dtk_DumpXml_Dtk_ReferenceFramePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ReferenceFramePtr(FILE *F, const Dtk_ReferenceFramePtr &D)
Definition: util_xml_dtk.cpp:2584
Dtk_ModelDisplay::SectionBody
@ SectionBody
Definition: util_ent_dtk.hpp:1007
Dtk_mesh_face::get_nbtriangles
Dtk_Size_t get_nbtriangles() const
Get the number of simple triangles kept in the class instance.
Dtk_OneCell::GetBorderRightBlanked
Dtk_Int32 GetBorderRightBlanked()
Gets BorderRightBlanked of Right border.
Dtk_DumpXml_Dtk_RenderInfos
Dtk_ErrorStatus Dtk_DumpXml_Dtk_RenderInfos(FILE *F, const Dtk_RenderInfosPtr &inRender)
Definition: util_xml_dtk.cpp:3704
Dtk_Roughness::ModeWithAngles
@ ModeWithAngles
Definition: util_draw_dtk.hpp:2588
Dtk_KinMechanism
Dtk_KinMechanism represents a kinematic mechanism.
Definition: util_kinematics_dtk.hpp:1618
Dtk_NodeConnector::GetRenderId
Dtk_ID GetRenderId() const
Retrieves the Render Id for ForceRender connectors.
Dtk_Text::GetOuterBoundingBox
const Dtk_Oriented2dBBox & GetOuterBoundingBox() const
Processes the outer bounding box.
DTK_TYPE_TABLE
@ DTK_TYPE_TABLE
Definition: define.h:480
Dtk_Leader::ArrowHead::GetDirections
void GetDirections(Dtk_dir &outRefDir, Dtk_dir &outAxisDir) const
Definition: util_draw_dtk.hpp:2128
Dtk_Camera::TargetPoint
const Dtk_pnt & TargetPoint() const
Retrieves the target point - read only -.
Dtk_Camera::GetZoomFitMode
const Dtk_Camera::ZoomFitModeEnum & GetZoomFitMode() const
Retrieves the zoom fit mode - read only -.
Dtk_Roughness::ModeCircular
@ ModeCircular
Definition: util_draw_dtk.hpp:2582
DTK_FEAT_HOLE
@ DTK_FEAT_HOLE
Definition: str_feat_dtk.hpp:299
Dtk_API::GetRenderInfosInTable
Dtk_RenderInfosPtr GetRenderInfosInTable(Dtk_ID inId) const
Dtk_tab
This is a high level array class.
Definition: util_stl_dtk.hpp:84
Dtk_DumpXml_Dtk_ReferenceBlockPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ReferenceBlockPtr(FILE *F, const Dtk_ReferenceBlockPtr &D)
Definition: util_xml_dtk.cpp:2566
Dtk_KinParameter::hasAttribute
Dtk_bool hasAttribute(Dtk_string inAttributeName)
Test if an attribute name belong at the attribute table.
Dtk_KinJoint::getJoint2
Dtk_KinJointPtr getJoint2()
Returns the second joint associated at the joint.
Dtk_LayerInfosSet::Layer::Status::Visible
@ Visible
DwgDtkReaderModule
@ DwgDtkReaderModule
Definition: dtk_maindoc.hpp:79
Dtk_tab::size
Dtk_Size_t size() const
Returns the size of the array.
Definition: util_stl_dtk.hpp:503
Dtk_DumpXml_Dtk_HyperbolaPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_HyperbolaPtr(FILE *F, const Dtk_HyperbolaPtr &inCurve)
Definition: util_xml_dtk.cpp:5238
Dtk_ToleranceSpecificationContainer::TypePerpendicularity
@ TypePerpendicularity
Definition: util_draw_dtk.hpp:6071
Dtk_API::GetNumRenderInfosInTable
Dtk_Size_t GetNumRenderInfosInTable() const
Dtk_KinJoint::_JOINT1
Dtk_string _JOINT1
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:964
dump_file
FILE * dump_file
Definition: util_xml_dtk.cpp:58
DTK_TYPE_ELLIPSE
@ DTK_TYPE_ELLIPSE
Definition: define.h:50
Dtk_Roughness::ModeRadial
@ ModeRadial
Definition: util_draw_dtk.hpp:2584
Dtk_KinJoint::getConstraintSize
Dtk_Size_t getConstraintSize()
Return the attribute tab size.
Dtk_DumpXml_Dtk_MetadataGroupPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MetadataGroupPtr(FILE *F, const Dtk_MetaDataGroupPtr &inObject)
Definition: util_xml_dtk.cpp:5054
CgmReaderModule
@ CgmReaderModule
Definition: dtk_maindoc.hpp:69
Dtk_NodeConnector::GetReasonLink
Dtk_NodeConnector::ReasonLinkEnum GetReasonLink(ReasonCategoryEnum &outReasonCategory) const
Gets the Reason Link of the Dtk_NodeConnector to specify the reason of the connection.
Dtk_DumpXml_Dtk_bool
Dtk_ErrorStatus Dtk_DumpXml_Dtk_bool(FILE *F, const Dtk_bool &B)
Definition: util_xml_dtk.cpp:1272
Dtk_Leader::TypeAngular
@ TypeAngular
Definition: util_draw_dtk.hpp:2186
FbxReaderModule
@ FbxReaderModule
Definition: dtk_maindoc.hpp:68
Dtk_NodeConnector::GetNodeId
Dtk_ID GetNodeId() const
Returns the Node id referenced by the connector.
SmgReaderModule
@ SmgReaderModule
Definition: dtk_maindoc.hpp:72
Dtk_DumpXml_Dtk_KinematicsConstraint
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsConstraint(FILE *inFile, const Dtk_KinConstraintPtr &inConstraint, Dtk_bool simplified)
Definition: util_xml_dtk.cpp:7432
IfcReaderModule
@ IfcReaderModule
Definition: dtk_maindoc.hpp:63
Dtk_DumpXml_Dtk_roughness_roughness_applyto
Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_roughness_applyto(FILE *F, const Dtk_Roughness::ApplyToEnum &D)
Definition: util_xml_dtk.cpp:1515
Dtk_DumpXml_FormatDtk_string
Dtk_string Dtk_DumpXml_FormatDtk_string(const Dtk_string &inString, const XML_StringType inXmlStringType=XMLGenericString)
Definition: util_xml_dtk.cpp:4467
Dtk_mesh_face::get_nbtriangle_strips
Dtk_Size_t get_nbtriangle_strips() const
Get the number of triangle strips kept in the class instance.
Dtk_DumpXml_Dtk_ViewPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ViewPtr(FILE *F, const Dtk_ViewPtr &V, const int &compact)
Definition: util_xml_dtk.cpp:2957
Dtk_DumpXml_FeatGeometry
Dtk_ErrorStatus Dtk_DumpXml_FeatGeometry(FILE *f, const Dtk_feat_geometry *inToWrite, const char *inName)
Definition: util_xml_dtk.cpp:7944
Dtk_KinJoint::getLowerLimit1
double getLowerLimit1()
Returns the lower limit 1.
Dtk_Component::PrototypeComponentType
@ PrototypeComponentType
Definition: dtk_maindoc.hpp:575
DTK_KIN_TYPE_COMMAND
@ DTK_KIN_TYPE_COMMAND
Definition: util_kinematics_dtk.hpp:110
Dtk_OneCell::getnbCells_Left_Right
Dtk_Int32 getnbCells_Left_Right() const
Gets the Dtk_OneCell nbCells_Left_Right.
Dtk_DumpXml_ConstraintTypeEnum
void Dtk_DumpXml_ConstraintTypeEnum(FILE *F, const Dtk_Constraint::ConstraintTypeEnum &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:8509
Dtk_RenderInfos::GetName
Dtk_string GetName() const
Returns the texture name.
XmtReaderModule
@ XmtReaderModule
Definition: dtk_maindoc.hpp:35
Dtk_DumpXml_Dtk_roughness_rough_mode
Dtk_ErrorStatus Dtk_DumpXml_Dtk_roughness_rough_mode(FILE *F, const Dtk_Roughness::RoughModeEnum &D)
Definition: util_xml_dtk.cpp:1538
Dtk_DumpXml_Dtk_MeshPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_MeshPtr(FILE *F, const Dtk_MeshPtr &inMesh)
Definition: util_xml_dtk.cpp:6811
Dtk_ModelDisplay::SectionPlaneList
@ SectionPlaneList
Definition: util_ent_dtk.hpp:1004
Dtk_string::len
int len() const
Retrieve the length of the Dtk_string.
Dtk_DumpXml_FeatPattern
Dtk_ErrorStatus Dtk_DumpXml_FeatPattern(FILE *f, const Dtk_feat_pattern *inToWrite)
Definition: util_xml_dtk.cpp:8290
DTK_ANCHOR_BOTTOM_RIGHT
@ DTK_ANCHOR_BOTTOM_RIGHT
Definition: util_draw_dtk.hpp:99
InvReaderModule
@ InvReaderModule
Definition: dtk_maindoc.hpp:32
Dtk_KinJoint::_LOWER_LIMIT1
Dtk_string _LOWER_LIMIT1
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:946
Dtk_KinParameter::getName
Dtk_string getName()
Returns the parameter name.
FeaturesDumpFile
FILE * FeaturesDumpFile
Definition: util_xml_dtk.cpp:59
Dtk_DumpXml_Dtk_Grid_OriginReferenceOptionEnum
void Dtk_DumpXml_Dtk_Grid_OriginReferenceOptionEnum(FILE *F, const Dtk_Grid::OriginReferenceOption &inEnum, const Dtk_string &inPropertyName)
Definition: util_xml_dtk.cpp:2374
Dtk_DumpXml_Dtk_PolylinePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_PolylinePtr(FILE *F, const Dtk_PolylinePtr &inCurve)
Definition: util_xml_dtk.cpp:5170
Dtk_Info::GetCurveLineTypeDefinitionId
Dtk_ID GetCurveLineTypeDefinitionId() const
Retrieves the Id of Dtk_LineTypeDefinition of the entity in The Dtk_API table.
Dtk_KinJoint::getPart2
Dtk_KinPartPtr getPart2()
Returns the second part associated at the joint.
Dtk_DumpXml_Dtk_Text
Dtk_ErrorStatus Dtk_DumpXml_Dtk_Text(FILE *F, const Dtk_Text &T)
Definition: util_xml_dtk.cpp:1218
Dtk_NodeConnector::SubEntity::GetSubEntityType
type_detk GetSubEntityType() const
Definition: dtk_maindoc.hpp:1249
DTK_ANCHOR_MIDDLE_RIGHT
@ DTK_ANCHOR_MIDDLE_RIGHT
Definition: util_draw_dtk.hpp:96
Dtk_Info::GetRenderInfosId
Dtk_ID GetRenderInfosId() const
Retrieves the Id of RenderInfos of the entity in The Dtk_API table.
Dtk_tab::at
T & at(Dtk_Size_t k)
Definition: util_stl_dtk.hpp:397
dtkNoError
@ dtkNoError
Definition: error_dtk.hpp:151
Dtk_DumpXml_Dtk_ConstraintReferencePtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ConstraintReferencePtr(FILE *F, const Dtk_ConstraintReferencePtr &inVal)
Definition: util_xml_dtk.cpp:8560
JtReaderModule
@ JtReaderModule
Definition: dtk_maindoc.hpp:43
Dtk_KinJoint::getRatio
double getRatio()
Returns the joint ratio value.
Dtk_DumpXml_Dtk_ToleranceSpecificationPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationPtr(FILE *F, const Dtk_ToleranceSpecificationPtr &D)
Definition: util_xml_dtk.cpp:2708
Dtk_DumpXml_Dtk_KinematicsSpeedAcceleration
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsSpeedAcceleration(FILE *inFile, const Dtk_KinSpeedAccelerationPtr &inSpeedAcceleration)
Definition: util_xml_dtk.cpp:7208
Dtk_Text::GetInnerBoundingBox
const Dtk_Oriented2dBBox & GetInnerBoundingBox() const
Processes the inner bounding box.
Dtk_mesh_face::info
Dtk_InfoPtr & info()
acces to class info of mesh_face
Dtk_KinJoint::getLocalFrame2
Dtk_transfo getLocalFrame2()
Returns the local frame 2 value.
Dtk_Camera::GetClippingDistance
void GetClippingDistance(Dtk_Double64 &outFrontDistance, Dtk_Double64 &outBackDistance) const
get the Front Clipping Distance et Back Clipping Distance
Dtk_KinJoint::getFixTogether
Dtk_KinConstraintPtr getFixTogether()
Returns the fix together constraint.
Dtk_DumpXml_Dtk_KinematicsCurve
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsCurve(FILE *inFile, const Dtk_KinCurvePtr &inCurve)
Definition: util_xml_dtk.cpp:7373
Dtk_Info::GetId
int GetId() const
DTK_FDT_MODIFIER_REGARDLESS_OF_FEATURE_SIZE
@ DTK_FDT_MODIFIER_REGARDLESS_OF_FEATURE_SIZE
Definition: util_draw_dtk.hpp:58
DTK_TYPE_HYPERBOLA
@ DTK_TYPE_HYPERBOLA
Definition: define.h:51
Dtk_ToleranceSpecificationContainer::TypeAngularity
@ TypeAngularity
Definition: util_draw_dtk.hpp:6069
Dtk_RGB
Definition: dtk_rgb.hpp:7
DTK_WITHOUT_HIERARCHY
@ DTK_WITHOUT_HIERARCHY
Definition: util_draw_dtk.hpp:66
GltfReaderModule
@ GltfReaderModule
Definition: dtk_maindoc.hpp:76
Dtk_Oriented2dBBox
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:468
Dtk_StandardTools::vsprintf_dtk
int vsprintf_dtk(char *Buffer, size_t BufferCount, const char *Format, va_list inArgList)
DTK_KIN_TYPE_MECHANISM
@ DTK_KIN_TYPE_MECHANISM
Definition: util_kinematics_dtk.hpp:111
Dtk_mesh_face::get_triangle_strip_indices
const Dtk_tab< Dtk_UInt32 > * get_triangle_strip_indices(Dtk_Size_t inI) const
Get inI-th triangle strip.
DTK_TYPE_ROUGHNESS
@ DTK_TYPE_ROUGHNESS
Definition: define.h:434
DTK_KIN_TYPE_SPEED_ACCELERATION
@ DTK_KIN_TYPE_SPEED_ACCELERATION
Definition: util_kinematics_dtk.hpp:113
Dtk_dir
This is a mathematical direction class.
Definition: dtk_dir.hpp:14
dtkErrorOpenFiles
@ dtkErrorOpenFiles
Definition: error_dtk.hpp:145
Dtk_DumpXml_Dtk_GridPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_GridPtr(FILE *F, const Dtk_GridPtr &D)
Definition: util_xml_dtk.cpp:2392
Dtk_DumpXml_Dtk_CameraProjectionTypeEnum
Dtk_ErrorStatus Dtk_DumpXml_Dtk_CameraProjectionTypeEnum(FILE *F, const Dtk_Camera::ProjectionTypeEnum &inVal)
Definition: util_xml_dtk.cpp:3107
Dtk_DumpXml_Dtk_KinematicsNamedValue
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsNamedValue(FILE *inFile, const Dtk_KinNamedValuePtr &inNamedValue)
Definition: util_xml_dtk.cpp:7139
DTK_TYPE_WELDING
@ DTK_TYPE_WELDING
Definition: define.h:437
dtkErrorNullPointer
@ dtkErrorNullPointer
Definition: error_dtk.hpp:23
Dtk_DumpXml_Dtk_KinematicsJoint
Dtk_ErrorStatus Dtk_DumpXml_Dtk_KinematicsJoint(FILE *inFile, const Dtk_KinJointPtr &inJoint, Dtk_bool simplified)
Definition: util_xml_dtk.cpp:7492
Dtk_KinJoint::hasAttribute
Dtk_bool hasAttribute(Dtk_string inAttributeName)
Test if an attribute name belong at the attribute table.
Dtk_API
Definition: dtk_api.hpp:75
ProeReaderModule
@ ProeReaderModule
Definition: dtk_maindoc.hpp:41
Dtk_KinJoint::_LOCAL_FRAME4
Dtk_string _LOCAL_FRAME4
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:961
Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtrType
Dtk_ErrorStatus Dtk_DumpXml_Dtk_ToleranceSpecificationContainerPtrType(FILE *F, const Dtk_ToleranceSpecificationContainer::TypeEnum &D)
Definition: util_xml_dtk.cpp:2650
Dtk_DumpXml_Dtk_Constraint_ConstraintValue
Dtk_ErrorStatus Dtk_DumpXml_Dtk_Constraint_ConstraintValue(FILE *F, const Dtk_Constraint::_ConstraintValue &inVal)
Definition: util_xml_dtk.cpp:8533
UgReaderModule
@ UgReaderModule
Definition: dtk_maindoc.hpp:34
Dtk_ToleranceSpecificationContainer::TypePosition
@ TypePosition
Definition: util_draw_dtk.hpp:6075
Dtk_Entity::info
Dtk_InfoPtr & info()
Dtk_DumpXml_Dtk_FdtPtr
Dtk_ErrorStatus Dtk_DumpXml_Dtk_FdtPtr(FILE *F, const Dtk_FdtPtr &D, const int &compact)
Definition: util_xml_dtk.cpp:3062
DwgReaderModule
@ DwgReaderModule
Definition: dtk_maindoc.hpp:61
Dtk_KinJoint::_UPPER_LIMIT2
Dtk_string _UPPER_LIMIT2
Name for optional attribute.
Definition: util_kinematics_dtk.hpp:949
Dtk_NodeConnector::GetAssociatedPathComponentID
const Dtk_tab< Dtk_ID > & GetAssociatedPathComponentID() const
Returns the Path Component ID referenced by the connector from Root to Target.
Dtk_DatumTarget::DatumTargetMovableStatusEnumToString
static Dtk_string DatumTargetMovableStatusEnumToString(const DatumTargetMovableStatusEnum &inEnum)
Definition: util_draw_dtk.hpp:3732
Dtk_ToleranceSpecificationContainer::TypeLineProfile
@ TypeLineProfile
Definition: util_draw_dtk.hpp:6065
Dtk_NodeConnector::SubEntity::GetSubEntityId
Dtk_ID GetSubEntityId() const
Definition: dtk_maindoc.hpp:1248