DATAKIT API  V2025.4
catiav5w.hpp
Go to the documentation of this file.
1 #ifndef __DTK_CATIAV5W_H__
2 #define __DTK_CATIAV5W_H__
3 
4 #include "def/define.h"
5 #include "struct/str_def.h"
6 
12 #include "util/error_dtk.hpp"
13 
14 #include "util/util_stl_dtk.hpp"
15 #include "util/util_ptr_dtk.hpp"
16 #include "util/util_ent_dtk.hpp"
18 // catiav5w.h //
20 
21 
22 
24 namespace catiav5w
25 {
27  typedef Dtk_ID MaterialId;
28 
41  {
42  protected:
49  public:
52  {
53  }
54 
57  {
58  }
59 
63  {
65  }
66 
70  {
72  }
73 
77  {
79  }
80 
89  inline Dtk_UInt32 GetFileRelease() const
90  {
91  return _FileRelease;
92  }
95  };
96 
98  class Material
99  {
100  public:
101  class Lighting
102  {
103  protected:
112 
114  public:
116  {
117  //default values
118  //No color
119  //No Coefficient
120  m_AmbientCoefficient = -1.0;
121  m_DiffuseCoefficient = -1.0;
122  m_SpecularCoefficient = -1.0;
125  }
126  inline void SetAmbientData( const Dtk_RGB& inAmbientColor, const Dtk_Double64 inAmbientCoefficient )
127  {
128  m_AmbientColor = inAmbientColor;
129  m_AmbientCoefficient = ( ( inAmbientCoefficient > 1. ) || ( inAmbientCoefficient < 0. ) ) ? 1. : inAmbientCoefficient;
130  }
131  inline void SetDiffuseData( const Dtk_RGB& inDiffuseColor, const Dtk_Double64 inDiffuseCoefficient )
132  {
133  m_DiffuseColor = inDiffuseColor;
134  m_DiffuseCoefficient = ( ( inDiffuseCoefficient > 1. ) || ( inDiffuseCoefficient < 0. ) ) ? 1. : inDiffuseCoefficient;
135  }
136  inline void SetSpecularData( const Dtk_RGB& inSpecularColor, const Dtk_Double64 inSpecularCoefficient )
137  {
138  m_SpecularColor = inSpecularColor;
139  m_SpecularCoefficient = ( ( inSpecularCoefficient > 1. ) || ( inSpecularCoefficient < 0. ) ) ? 0. : inSpecularCoefficient;
140  }
141  inline void SetTransparencyData( const Dtk_RGB& inTransparencyColor, const Dtk_Double64 inTransparencyCoefficient )
142  {
143  m_TransparencyColor = inTransparencyColor;
144  m_TransparencyCoefficient = ( ( inTransparencyCoefficient > 1. ) || ( inTransparencyCoefficient < 0. ) ) ? 0. : inTransparencyCoefficient;
145  }
146  inline void SetReflectivityCoefficient( const Dtk_Double64 inReflectivityCoefficient )
147  {
148  m_ReflectivityCoefficient = ( ( inReflectivityCoefficient > 1. ) || ( inReflectivityCoefficient < 0. ) ) ? 0. : inReflectivityCoefficient;
149  }
150  inline const Dtk_RGB& GetAmbientColor() const { return m_AmbientColor; }
151  inline const Dtk_RGB& GetDiffuseColor() const { return m_DiffuseColor; }
152  inline const Dtk_RGB& GetSpecularColor() const { return m_SpecularColor; }
153  inline const Dtk_RGB& GetTransparencyColor() const { return m_TransparencyColor; }
159  };
160 
161  class Analysis
162  {
163  protected:
165  public:
167  {
168  //default values
169  m_Density = -1.0; //default no density
170  }
171  inline void SetDensity( const Dtk_Double64 inDensity ) { m_Density = inDensity; }
172  inline Dtk_Double64 GetDensity() const { return m_Density; }
173  };
174 
175  public:
179  public:
180 
181  Material( const Dtk_string& inName = L"" )
182  {
183  m_Name = inName;
184  }
185  };
186 
187 
188 
189 
205  {
206  public:
207 
209  {
210  Unknown = 0,
212  Bought
213  };
214  protected:
215 
227 
229 
231 
232  public:
233 
236  {
237  _SourceType = Unknown; _PartDensity = -1.0;
238  }
239 
242  {
243  }
244 
247  inline void SetPartMaterial( const catiav5w::Material& inMaterial )
248  {
249  m_PartMaterial = inMaterial;
250  }
251 
254  inline void SetRevision( const Dtk_string& inRevision )
255  {
256  _Revision = inRevision;
257  }
258 
261  inline void SetDefinition( const Dtk_string& inDefinition )
262  {
263  _Definition = inDefinition;
264  }
265 
268  inline void SetNomenclature( const Dtk_string& inNomenclature )
269  {
270  _Nomenclature = inNomenclature;
271  }
272 
275  inline void SetDescription( const Dtk_string& inDescription )
276  {
277  _Description = inDescription;
278  }
279 
282  inline void SetSourceType( const ProductSourceType& inSourceType )
283  {
284  _SourceType = inSourceType;
285  }
286 
290  SetAsDeprecated( "2023.4", "Use SetPartMaterial with Analysis::Density instead." )
291  inline void SetPartDensity( const Dtk_Double64 inPartDensity )
292  {
293  _PartDensity = inPartDensity;
294  }
295 
296 
298  inline void AddDoubleProperty( const Dtk_string& inPropertyName, const double& inValue )
299  {
300  Dtk_string TmpValue = inValue;
302  TmpProp->SetTitle( inPropertyName );
303  TmpProp->SetAsReal();
304  TmpProp->SetValue( TmpValue );
305 
306  _AdditionalProperties.push_back( TmpProp );
307  }
308 
310  inline void AddIntegerProperty( const Dtk_string& inPropertyName, const Dtk_Int32& inValue )
311  {
312  Dtk_string TmpValue;
313  TmpValue.convert_from_int( inValue );
315  TmpProp->SetTitle( inPropertyName );
316  TmpProp->SetAsInteger();
317  TmpProp->SetValue( TmpValue );
318 
319  _AdditionalProperties.push_back( TmpProp );
320  }
321 
322 
324  inline void AddBooleanProperty( const Dtk_string& inPropertyName, const Dtk_bool& inValue )
325  {
326  Dtk_string TmpValue;
327  TmpValue.convert_from_int( inValue );
329  TmpProp->SetTitle( inPropertyName );
330  TmpProp->SetAsBoolean();
331  TmpProp->SetValue( TmpValue );
332 
333  _AdditionalProperties.push_back( TmpProp );
334  }
335 
337  inline void AddStringProperty( const Dtk_string& inPropertyName, const Dtk_string& inValue )
338  {
340  TmpProp->SetTitle( inPropertyName );
341  TmpProp->SetType( L"STRING" );
342  TmpProp->SetValue( inValue );
343 
344  _AdditionalProperties.push_back( TmpProp );
345  }
349  inline const catiav5w::Material& GetPartMaterial() const
350  {
351  return m_PartMaterial;
352  }
353 
357  inline const Dtk_string& GetRevision() const
358  {
359  return _Revision;
360  }
361 
365  inline const Dtk_string& GetDefinition() const
366  {
367  return _Definition;
368  }
369 
373  inline const Dtk_string& GetNomenclature() const
374  {
375  return _Nomenclature;
376  }
377 
381  inline const Dtk_string& GetDescription() const
382  {
383  return _Description;
384  }
385 
389  inline const ProductSourceType& GetSourceType() const
390  {
391  return _SourceType;
392  }
393 
398  SetAsDeprecated( "2023.4", "Use GetPartMaterial method instead." )
399  inline Dtk_Double64 GetPartDensity() const
400  {
401  return _PartDensity;
402  }
403 
408  {
409  return _AdditionalProperties.size();
410  }
411 
415  inline const Dtk_PropertiesPtr& GetIthAdditionalProperties( const Dtk_Size_t& inPos ) const
416  {
417  return _AdditionalProperties[ inPos ];
418  }
419 
420  };
421 
422 
427  enum NodeType
428  {
431  NodeTypePartBody = 2,//hybrid bodies
433  };
434 
440  Dtk_ErrorStatus InitWrite( const Dtk_string& inLogFile, Licence_dtk inLicFct, const WriteOptions& inOptions = WriteOptions() );
441 
442 
446 
456  SetAsDeprecated( "2024.2", "Use Dtk_ErrorStatus catiav5w::InitPart( const Dtk_string&, const Dtk_string&, Dtk_UUID&, const catiav5w::FileDescription& ) method instead." )
458  const Dtk_string &inOutputFile,
461 
473  const Dtk_string &inOutputFile,
475  Dtk_UUID& outPartUUID,
477 
483 
488 
494 
499 
507  Dtk_ErrorStatus CreateNode( const NodeType& inNodeType, const Dtk_string& inNodeName = Dtk_string() );
508 
517  Dtk_ErrorStatus CreateNode( const NodeType& inNodeType, const Dtk_InfoPtr& inInfos );
518 
522 
528  Dtk_ErrorStatus AddDoubleParameter( const Dtk_string& inParameterName, const Dtk_Double64& inValue );
529 
535  Dtk_ErrorStatus AddIntegerParameter( const Dtk_string& inParameterName, const Dtk_Int32& inValue );
536 
542  Dtk_ErrorStatus AddBooleanParameter( const Dtk_string& inParameterName, const Dtk_bool& inValue );
543 
549  Dtk_ErrorStatus AddStringParameter( const Dtk_string& inParameterName, const Dtk_string& inValue );
550 
551 
559  const Dtk_string& inPartName,
560  Dtk_ID& outDocId );
561 
569  const Dtk_string& inPartName,
570  Dtk_ID& outDocId );
571 
578  const Dtk_string& inCGRName,
579  Dtk_ID& outDocId );
580 
587  Dtk_ErrorStatus CreateV4ModelDocId( const Dtk_string& inV4ModelFileName,
588  const Dtk_string& inV4ModelName,
589  Dtk_ID& outDocId );
590 
599  const Dtk_string& inFileName,
602 
609 
619  SetAsDeprecated( "2023.4", "Use catiav5w::AddInstance( const Dtk_ID&, const Dtk_string&, const Dtk_transfo&, Dtk_ID& ) method instead." )
620  Dtk_ErrorStatus AddInstance( const Dtk_ID& inDocId,
625 
634  const Dtk_string& inInstanceName,
635  const Dtk_transfo& inTransfo,
636  Dtk_ID& outInstanceId );
644 
650 
659  SetAsDeprecated( "2023.4", "Use catiav5w::AddVirtualComponentInstance( const Dtk_ID&, const Dtk_string&, const Dtk_transfo&, Dtk_ID& ) method instead." )
661  const Dtk_string& inInstanceName,
662  const Dtk_transfo& inTransfo );
663 
672  const Dtk_string& inInstanceName,
673  const Dtk_transfo& inTransfo,
674  Dtk_ID& outInstanceId );
675 
683 
690  Dtk_ErrorStatus OverrideInstanceColorWithPathID( const PathID& inInstancePathId, const Dtk_RGB& inInstanceColor );
691 
698  Dtk_ErrorStatus OverrideInstanceAlphaWithPathID( const PathID& inInstancePathId, const Dtk_UChar8 inInstanceAlpha );
699 
706 
712  SetAsDeprecated( "2024.2", "Use Dtk_ErrorStatus catiav5w::AddMaterial( const Material&, MaterialId& ) method instead." )
713  MaterialId AddMaterial( const Material& inMaterial );
714 
720  Dtk_ErrorStatus AddMaterial( const Material& inMaterial, MaterialId& outMaterialId );
721 
722 };
723 #endif
724 
725 
727 namespace Config
728 {
730  namespace catiav5w
731  {
734  }
736 }
738 
739 
740 
741 
catiav5w::FileDescription::AddIntegerProperty
void AddIntegerProperty(const Dtk_string &inPropertyName, const Dtk_Int32 &inValue)
Adds an additional integer property.
Definition: catiav5w.hpp:310
Dtk_ID
uint32_t Dtk_ID
Definition: define.h:691
Dtk_transfo
This is the Transformation dedicated class.
Definition: dtk_transfo.hpp:19
catiav5w::FileDescription::SetDefinition
void SetDefinition(const Dtk_string &inDefinition)
Sets the file definition.
Definition: catiav5w.hpp:261
catiav5w::WriteOptions::WriteReferencePlaneAsVisible
void WriteReferencePlaneAsVisible()
Sets the reference plane writting as visible.
Definition: catiav5w.hpp:69
catiav5w::AddBooleanParameter
Dtk_ErrorStatus AddBooleanParameter(const Dtk_string &inParameterName, const Dtk_bool &inValue)
Adds a boolean paramater.
catiav5w::InitVirtualComponent
Dtk_ErrorStatus InitVirtualComponent(const Dtk_string &inReferenceName, const catiav5w::FileDescription &inFileDescription=catiav5w::FileDescription())
Initialize a virtual component during CATProduct process.
catiav5w::Material::Lighting::m_TransparencyCoefficient
Dtk_Double64 m_TransparencyCoefficient
Definition: catiav5w.hpp:111
catiav5w::OverrideInstanceAlphaWithPathID
Dtk_ErrorStatus OverrideInstanceAlphaWithPathID(const PathID &inInstancePathId, const Dtk_UChar8 inInstanceAlpha)
Override the Alpha of an instance in a Sub Product.
catiav5w::AddMaterial
Dtk_ErrorStatus AddMaterial(const Material &inMaterial, MaterialId &outMaterialId)
Add a Material in a CATPart context.
catiav5w::FileDescription::SetAsDeprecated
SetAsDeprecated("2023.4", "Use GetPartMaterial method instead.") inline Dtk_Double64 GetPartDensity() const
Retrieves the Part Density - read only -.
Definition: catiav5w.hpp:398
catiav5w::Material::Lighting::SetDiffuseData
void SetDiffuseData(const Dtk_RGB &inDiffuseColor, const Dtk_Double64 inDiffuseCoefficient)
Definition: catiav5w.hpp:131
catiav5w::AddVirtualComponentInstance
Dtk_ErrorStatus AddVirtualComponentInstance(const Dtk_ID &inDocId, const Dtk_string &inInstanceName, const Dtk_transfo &inTransfo, Dtk_ID &outInstanceId)
Add an instance to a DocID into the Current (Sub/Root) CATProduct.
catiav5w::Material::Lighting::m_SpecularCoefficient
Dtk_Double64 m_SpecularCoefficient
Definition: catiav5w.hpp:109
catiav5w::Material::Lighting::m_TransparencyColor
Dtk_RGB m_TransparencyColor
Definition: catiav5w.hpp:110
catiav5w::FileDescription::GetDefinition
const Dtk_string & GetDefinition() const
Retrieves the file definition - read only -.
Definition: catiav5w.hpp:365
catiav5w::FileDescription::_Nomenclature
Dtk_string _Nomenclature
Nomenclature of the CatiaV5 File.
Definition: catiav5w.hpp:222
catiav5w::Material::Lighting::GetTransparencyColor
const Dtk_RGB & GetTransparencyColor() const
Definition: catiav5w.hpp:153
catiav5w::WriteOptions
This class provides several options to tunes CatiaV5 Writter. It must be provided to catiav5w::InitWr...
Definition: catiav5w.hpp:41
catiav5w::WriteOptions::GetFileRelease
Dtk_UInt32 GetFileRelease() const
Retrieve the Written file release.
Definition: catiav5w.hpp:89
catiav5w::AddIntegerParameter
Dtk_ErrorStatus AddIntegerParameter(const Dtk_string &inParameterName, const Dtk_Int32 &inValue)
Adds a integer paramater.
catiav5w::NodeTypeGeometricSet
@ NodeTypeGeometricSet
Definition: catiav5w.hpp:430
catiav5w::Material::Lighting
Definition: catiav5w.hpp:102
catiav5w::inTransfo
const Dtk_string const Dtk_transfo & inTransfo
Definition: catiav5w.hpp:622
catiav5w::IsWriteInitialized
Dtk_bool IsWriteInitialized()
Tells if the Write Module has been initialized or not.
catiav5w::Material
This is the wrapper class handling V5 write material data.
Definition: catiav5w.hpp:99
DTK_TRUE
#define DTK_TRUE
Definition: define.h:729
catiav5w::FileDescription::SetNomenclature
void SetNomenclature(const Dtk_string &inNomenclature)
Sets the file nomenclature.
Definition: catiav5w.hpp:268
catiav5w::SetWriteReferencePlanesAsHidden
void SetWriteReferencePlanesAsHidden(const Dtk_bool &inVal)
catiav5w::FileDescription::GetDescription
const Dtk_string & GetDescription() const
Retrieves the file description - read only -.
Definition: catiav5w.hpp:381
catiav5w::WriteOptions::_WriteReferencePlanesAsHidden
Dtk_bool _WriteReferencePlanesAsHidden
Option to write reference planes as hidden or visible - visible by default -.
Definition: catiav5w.hpp:47
catiav5w::FileDescription::GetIthAdditionalProperties
const Dtk_PropertiesPtr & GetIthAdditionalProperties(const Dtk_Size_t &inPos) const
Retrieves the file source type - read only -.
Definition: catiav5w.hpp:415
catiav5w::FileDescription::_SourceType
ProductSourceType _SourceType
Source Type of the CatiaV5 File.
Definition: catiav5w.hpp:226
catiav5w::Material::Lighting::GetAmbientColor
const Dtk_RGB & GetAmbientColor() const
Definition: catiav5w.hpp:150
Dtk_UInt32
uint32_t Dtk_UInt32
Definition: define.h:690
Dtk_string
This is a high level string class.
Definition: dtk_string.hpp:58
Dtk_Size_t
size_t Dtk_Size_t
Definition: define.h:714
Dtk_string::convert_from_int
void convert_from_int(const int integer, int force_unsigned_int=0)
affectation operator from a int
catiav5w::FileDescription::SetAsDeprecated
SetAsDeprecated("2023.4", "Use SetPartMaterial with Analysis::Density instead.") inline void SetPartDensity(const Dtk_Double64 inPartDensity)
Sets the Part Density.
Definition: catiav5w.hpp:290
catiav5w::WriteEntity
Dtk_ErrorStatus WriteEntity(const Dtk_EntityPtr &inEntity)
Write the entity provided in parameter.
Dtk_UUID
Definition: dtk_uuid.hpp:8
dtk_metadata.hpp
catiav5w::FileDescription::AddBooleanProperty
void AddBooleanProperty(const Dtk_string &inPropertyName, const Dtk_bool &inValue)
Adds an additional integer property.
Definition: catiav5w.hpp:324
catiav5w::FileDescription
This class provides several informations about a CatiaV5 File. It can be used with catiav5w::InitPart...
Definition: catiav5w.hpp:205
catiav5w::Material::Lighting::GetDiffuseColor
const Dtk_RGB & GetDiffuseColor() const
Definition: catiav5w.hpp:151
catiav5w::WriteOptions::GetMaximumFileReleaseHandled
static Dtk_UInt32 GetMaximumFileReleaseHandled()
Return the maximum file release number handled by the writer.
catiav5w::Material::Lighting::m_AmbientColor
Dtk_RGB m_AmbientColor
Definition: catiav5w.hpp:104
catiav5w::WriteOptions::WriteOptions
WriteOptions()
Default constructor.
Definition: catiav5w.hpp:51
DTK_FALSE
#define DTK_FALSE
Definition: define.h:730
catiav5w::FileDescription::GetNumAdditionalProperties
Dtk_Size_t GetNumAdditionalProperties() const
Retrieves the file source type - read only -.
Definition: catiav5w.hpp:407
Dtk_bool
char Dtk_bool
Definition: define.h:727
catiav5w::inBlankedStatus
const Dtk_string const Dtk_transfo const Dtk_bool inBlankedStatus
Definition: catiav5w.hpp:623
catiav5w::Material::Analysis::m_Density
Dtk_Double64 m_Density
Definition: catiav5w.hpp:164
catiav5w::OverrideInstanceColorWithPathID
Dtk_ErrorStatus OverrideInstanceColorWithPathID(const PathID &inInstancePathId, const Dtk_RGB &inInstanceColor)
Override the Color of an instance in a Sub Product.
catiav5w::AddDoubleParameter
Dtk_ErrorStatus AddDoubleParameter(const Dtk_string &inParameterName, const Dtk_Double64 &inValue)
Adds a double paramater.
catiav5w::CreateNode
Dtk_ErrorStatus CreateNode(const NodeType &inNodeType, const Dtk_string &inNodeName=Dtk_string())
Create a node in the Specification Tree.
Dtk_Double64
double Dtk_Double64
Definition: define.h:701
catiav5w::InitProduct
Dtk_ErrorStatus InitProduct(const Dtk_string &inFileName, const Dtk_string &inReferenceName, const catiav5w::FileDescription &inFileDescription=catiav5w::FileDescription())
Initialize a sub Product during CATProduct process.
catiav5w::Material::Lighting::GetReflectivityCoefficient
Dtk_Double64 GetReflectivityCoefficient() const
Definition: catiav5w.hpp:158
catiav5w::FileDescription::Unknown
@ Unknown
Definition: catiav5w.hpp:210
catiav5w::FileDescription::_PartDensity
Dtk_Double64 _PartDensity
Definition: catiav5w.hpp:230
catiav5w::FileDescription::SetRevision
void SetRevision(const Dtk_string &inRevision)
Sets the file revision.
Definition: catiav5w.hpp:254
catiav5w::Material::Lighting::SetSpecularData
void SetSpecularData(const Dtk_RGB &inSpecularColor, const Dtk_Double64 inSpecularCoefficient)
Definition: catiav5w.hpp:136
catiav5w::FileDescription::GetRevision
const Dtk_string & GetRevision() const
Retrieves the file revision - read only -.
Definition: catiav5w.hpp:357
dtk_uuid.hpp
catiav5w::PathID
Dtk_tab< Dtk_ID > PathID
Definition: catiav5w.hpp:26
catiav5w::CreateCGRDocId
Dtk_ErrorStatus CreateCGRDocId(const Dtk_string &inCGRFileName, const Dtk_string &inCGRName, Dtk_ID &outDocId)
Create a CGR Reference and DocID related to a given CGR File.
catiav5w::inReferenceName
const Dtk_string & inReferenceName
Definition: catiav5w.hpp:459
catiav5w::SetAsDeprecated
SetAsDeprecated("2024.2", "Use Dtk_ErrorStatus catiav5w::InitPart( const Dtk_string&, const Dtk_string&, Dtk_UUID&, const catiav5w::FileDescription& ) method instead.") Dtk_UUID InitPart(const Dtk_string &inOutputFile
Initialize the part
catiav5w::InitPart
Dtk_ErrorStatus InitPart(const Dtk_string &inOutputFile, const Dtk_string &inReferenceName, Dtk_UUID &outPartUUID, const catiav5w::FileDescription &inFileDescription=catiav5w::FileDescription())
Initialize the part
catiav5w::FileDescription::_Definition
Dtk_string _Definition
Definition of the CatiaV5 File.
Definition: catiav5w.hpp:220
catiav5w::NodeTypePartBody
@ NodeTypePartBody
Definition: catiav5w.hpp:431
catiav5w::Material::m_Lighting
Lighting m_Lighting
Definition: catiav5w.hpp:177
catiav5w::FileDescription::m_PartMaterial
Material m_PartMaterial
Definition: catiav5w.hpp:216
catiav5w::Material::Lighting::m_DiffuseColor
Dtk_RGB m_DiffuseColor
Definition: catiav5w.hpp:106
Dtk_Properties::create
static Dtk_PropertiesPtr create()
catiav5w::WriteOptions::~WriteOptions
~WriteOptions()
Destructor.
Definition: catiav5w.hpp:56
util_ent_dtk.hpp
catiav5w::FileDescription::ProductSourceType
ProductSourceType
Definition: catiav5w.hpp:209
Dtk_Int32
int32_t Dtk_Int32
Definition: define.h:689
catiav5w::FileDescription::SetPartMaterial
void SetPartMaterial(const catiav5w::Material &inMaterial)
Sets the file root material.
Definition: catiav5w.hpp:247
catiav5w::EndVirtualComponent
Dtk_ErrorStatus EndVirtualComponent(Dtk_ID &outDocId)
End - and write - the virtual component initialized by catiav5w::InitVirtualComponent.
catiav5w::Material::Analysis::Analysis
Analysis()
Definition: catiav5w.hpp:166
catiav5w::FileDescription::SetSourceType
void SetSourceType(const ProductSourceType &inSourceType)
Sets the file source type.
Definition: catiav5w.hpp:282
error_dtk.hpp
catiav5w::AddInstance
Dtk_ErrorStatus AddInstance(const Dtk_ID &inDocId, const Dtk_string &inInstanceName, const Dtk_transfo &inTransfo, Dtk_ID &outInstanceId)
Add an instance to a DocID into the Current (Sub/Root) CATProduct.
Dtk_ErrorStatus
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
catiav5w::Material::Lighting::GetAmbientCoefficient
Dtk_Double64 GetAmbientCoefficient() const
Definition: catiav5w.hpp:154
catiav5w::CreateV4ModelDocId
Dtk_ErrorStatus CreateV4ModelDocId(const Dtk_string &inV4ModelFileName, const Dtk_string &inV4ModelName, Dtk_ID &outDocId)
Create a V4 Model Reference and DocID related to a given V4 Model File.
catiav5w::WriteOptions::AreReferencePlanesWrittenAsHidden
Dtk_bool AreReferencePlanesWrittenAsHidden() const
Tells if the reference planes are written as hidden.
Definition: catiav5w.hpp:76
catiav5w::FileDescription::Bought
@ Bought
Definition: catiav5w.hpp:212
catiav5w::FileDescription::GetPartMaterial
const catiav5w::Material & GetPartMaterial() const
Retrieves the file root material - read only -.
Definition: catiav5w.hpp:349
Dtk_SmartPtr
Definition: util_ptr_dtk.hpp:37
catiav5w::Material::Lighting::SetReflectivityCoefficient
void SetReflectivityCoefficient(const Dtk_Double64 inReflectivityCoefficient)
Definition: catiav5w.hpp:146
catiav5w::FileDescription::_Revision
Dtk_string _Revision
Revision of the CatiaV5 File.
Definition: catiav5w.hpp:218
catiav5w::EndWrite
Dtk_ErrorStatus EndWrite()
Free the Catia V5 Writer
Dtk_UChar8
unsigned char Dtk_UChar8
Definition: define.h:700
catiav5w::AddStringParameter
Dtk_ErrorStatus AddStringParameter(const Dtk_string &inParameterName, const Dtk_string &inValue)
Adds a string paramater.
catiav5w::Material::Lighting::m_DiffuseCoefficient
Dtk_Double64 m_DiffuseCoefficient
Definition: catiav5w.hpp:107
catiav5w::inFileDescription
const Dtk_string const catiav5w::FileDescription & inFileDescription
Definition: catiav5w.hpp:460
catiav5w::NodeType
NodeType
Type of Specification Tree Node used into a CATPart file.
Definition: catiav5w.hpp:428
catiav5w::WriteOptions::SetFileRelease
Dtk_ErrorStatus SetFileRelease(const Dtk_UInt32 inRelease)
Sets the release for the written files.
catiav5w::CreatePartDocId
Dtk_ErrorStatus CreatePartDocId(const Dtk_string &inPartFileName, const Dtk_string &inPartName, Dtk_ID &outDocId)
Create a Part Reference and DocID related to a given CATPart.
catiav5w::NodeTypeMechanicalTool
@ NodeTypeMechanicalTool
Definition: catiav5w.hpp:432
catiav5w::Material::Lighting::Lighting
Lighting()
Definition: catiav5w.hpp:115
catiav5w::MaterialId
Dtk_ID MaterialId
Definition: catiav5w.hpp:27
catiav5w::FileDescription::Made
@ Made
Definition: catiav5w.hpp:211
dtk_transfo.hpp
catiav5w::FileDescription::FileDescription
FileDescription()
Default constructor.
Definition: catiav5w.hpp:235
str_def.h
catiav5w::Material::Lighting::m_SpecularColor
Dtk_RGB m_SpecularColor
Definition: catiav5w.hpp:108
util_stl_dtk.hpp
catiav5w::Material::Lighting::m_ReflectivityCoefficient
Dtk_Double64 m_ReflectivityCoefficient
Definition: catiav5w.hpp:113
catiav5w::Material::Lighting::GetSpecularCoefficient
Dtk_Double64 GetSpecularCoefficient() const
Definition: catiav5w.hpp:156
catiav5w::FileDescription::~FileDescription
~FileDescription()
Destructor.
Definition: catiav5w.hpp:241
catiav5w::Material::Lighting::GetDiffuseCoefficient
Dtk_Double64 GetDiffuseCoefficient() const
Definition: catiav5w.hpp:155
catiav5w::NodeTypeUnknown
@ NodeTypeUnknown
Definition: catiav5w.hpp:429
catiav5w::Material::Lighting::GetTransparencyCoefficient
Dtk_Double64 GetTransparencyCoefficient() const
Definition: catiav5w.hpp:157
util_ptr_dtk.hpp
catiav5w::WriteOptions::WriteReferencePlaneAsHidden
void WriteReferencePlaneAsHidden()
Sets the reference plane writting as hidden.
Definition: catiav5w.hpp:62
define.h
catiav5w::Material::Lighting::GetSpecularColor
const Dtk_RGB & GetSpecularColor() const
Definition: catiav5w.hpp:152
catiav5w::Material::Lighting::SetTransparencyData
void SetTransparencyData(const Dtk_RGB &inTransparencyColor, const Dtk_Double64 inTransparencyCoefficient)
Definition: catiav5w.hpp:141
Dtk_tab
This is a high level array class.
Definition: util_stl_dtk.hpp:85
catiav5w::Material::Analysis
Definition: catiav5w.hpp:162
catiav5w::FileDescription::AddStringProperty
void AddStringProperty(const Dtk_string &inPropertyName, const Dtk_string &inValue)
Adds an additional integer property.
Definition: catiav5w.hpp:337
catiav5w::Material::Analysis::SetDensity
void SetDensity(const Dtk_Double64 inDensity)
Definition: catiav5w.hpp:171
catiav5w::CreateProductDocId
Dtk_ErrorStatus CreateProductDocId(const Dtk_string &inPartFileName, const Dtk_string &inPartName, Dtk_ID &outDocId)
Create a Product Reference and DocID related to a given CATProduct.
catiav5w::EndProduct
Dtk_ErrorStatus EndProduct(Dtk_ID &outDocId)
Write effectively the Sub Product initialized by catiav5w::InitProduct.
catiav5w::inInstanceColorAlpha
const Dtk_string const Dtk_transfo const Dtk_bool const Dtk_RGB & inInstanceColorAlpha
Definition: catiav5w.hpp:624
catiav5w::FileDescription::GetNomenclature
const Dtk_string & GetNomenclature() const
Retrieves the file nomenclature - read only -.
Definition: catiav5w.hpp:373
catiav5w::GetWriteHybridBodies
Dtk_bool GetWriteHybridBodies()
catiav5w::CloseCurrentNode
Dtk_ErrorStatus CloseCurrentNode()
close the current node previously created by catiav5w::CreateNode.
catiav5w::SetLayerData
Dtk_ErrorStatus SetLayerData(const Dtk_LayerInfosSetPtr &inLayerDataSet)
Set Layer and LayerFilter Data in a CATPart context.
catiav5w::Material::Analysis::GetDensity
Dtk_Double64 GetDensity() const
Definition: catiav5w.hpp:172
dtk_string.hpp
catiav5w::WriteNamedView
Dtk_ErrorStatus WriteNamedView(const Dtk_ModelDisplayPtr &inNamedView)
Write the given ModelDisplay as NamedView - V5 camera -.
catiav5w::EndPart
Dtk_ErrorStatus EndPart()
Free data allocated by catiav5w::InitPart
catiav5w::InitWrite
Dtk_ErrorStatus InitWrite(const Dtk_string &inLogFile, Licence_dtk inLicFct, const WriteOptions &inOptions=WriteOptions())
Initialize the Catia V5 Writer
catiav5w::FileDescription::_AdditionalProperties
Dtk_tab< Dtk_PropertiesPtr > _AdditionalProperties
Definition: catiav5w.hpp:228
catiav5w
Exported APIs for CatiaV5 Write Library.
Definition: catiav5w.hpp:25
catiav5w::inInstanceName
const Dtk_string & inInstanceName
Definition: catiav5w.hpp:621
catiav5w::Material::m_Analysis
Analysis m_Analysis
Definition: catiav5w.hpp:178
dtk_rgb.hpp
catiav5w::WriteOptions::_FileRelease
Dtk_UChar8 _FileRelease
Definition: catiav5w.hpp:48
Dtk_RGB
Definition: dtk_rgb.hpp:7
catiav5w::Material::Lighting::SetAmbientData
void SetAmbientData(const Dtk_RGB &inAmbientColor, const Dtk_Double64 inAmbientCoefficient)
Definition: catiav5w.hpp:126
Licence_dtk
char *(* Licence_dtk)(char *)
Definition: str_def.h:71
catiav5w::FileDescription::SetDescription
void SetDescription(const Dtk_string &inDescription)
Sets the file description.
Definition: catiav5w.hpp:275
catiav5w::OverrideBlankedStatusWithPathID
Dtk_ErrorStatus OverrideBlankedStatusWithPathID(const PathID &inInstancePathId, const Dtk_bool inBlankedStatus)
Override the Blanked Status of an instance in a Sub Product.
catiav5w::Material::m_Name
Dtk_string m_Name
Definition: catiav5w.hpp:176
catiav5w::FileDescription::GetSourceType
const ProductSourceType & GetSourceType() const
Retrieves the file source type - read only -.
Definition: catiav5w.hpp:389
catiav5w::FileDescription::AddDoubleProperty
void AddDoubleProperty(const Dtk_string &inPropertyName, const double &inValue)
Adds an additional double property.
Definition: catiav5w.hpp:298
catiav5w::FileDescription::_Description
Dtk_string _Description
Description of the CatiaV5 File.
Definition: catiav5w.hpp:224
catiav5w::Material::Lighting::m_AmbientCoefficient
Dtk_Double64 m_AmbientCoefficient
Definition: catiav5w.hpp:105
catiav5w::Material::Material
Material(const Dtk_string &inName=L"")
Definition: catiav5w.hpp:181