DATAKIT API  V2025.1
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 
289  SetAsDeprecated( "2023.4", "Use SetPartMaterial with Analysis::Density instead." )
290  inline void SetPartDensity( const Dtk_Double64 inPartDensity )
291  {
292  _PartDensity = inPartDensity;
293  }
294 
295 
297  inline void AddDoubleProperty( const Dtk_string& inPropertyName, const double& inValue )
298  {
299  Dtk_string TmpValue = inValue;
301  TmpProp->SetTitle( inPropertyName );
302  TmpProp->SetAsReal();
303  TmpProp->SetValue( TmpValue );
304 
305  _AdditionalProperties.push_back( TmpProp );
306  }
307 
309  inline void AddIntegerProperty( const Dtk_string& inPropertyName, const Dtk_Int32& inValue )
310  {
311  Dtk_string TmpValue;
312  TmpValue.convert_from_int( inValue );
314  TmpProp->SetTitle( inPropertyName );
315  TmpProp->SetAsInteger();
316  TmpProp->SetValue( TmpValue );
317 
318  _AdditionalProperties.push_back( TmpProp );
319  }
320 
321 
323  inline void AddBooleanProperty( const Dtk_string& inPropertyName, const Dtk_bool& inValue )
324  {
325  Dtk_string TmpValue;
326  TmpValue.convert_from_int( inValue );
328  TmpProp->SetTitle( inPropertyName );
329  TmpProp->SetAsBoolean();
330  TmpProp->SetValue( TmpValue );
331 
332  _AdditionalProperties.push_back( TmpProp );
333  }
334 
336  inline void AddStringProperty( const Dtk_string& inPropertyName, const Dtk_string& inValue )
337  {
339  TmpProp->SetTitle( inPropertyName );
340  TmpProp->SetType( L"STRING" );
341  TmpProp->SetValue( inValue );
342 
343  _AdditionalProperties.push_back( TmpProp );
344  }
348  inline const catiav5w::Material& GetPartMaterial() const
349  {
350  return m_PartMaterial;
351  }
352 
356  inline const Dtk_string& GetRevision() const
357  {
358  return _Revision;
359  }
360 
364  inline const Dtk_string& GetDefinition() const
365  {
366  return _Definition;
367  }
368 
372  inline const Dtk_string& GetNomenclature() const
373  {
374  return _Nomenclature;
375  }
376 
380  inline const Dtk_string& GetDescription() const
381  {
382  return _Description;
383  }
384 
388  inline const ProductSourceType& GetSourceType() const
389  {
390  return _SourceType;
391  }
392 
396  SetAsDeprecated( "2023.4", "Use GetPartMaterial method instead." )
397  inline Dtk_Double64 GetPartDensity() const
398  {
399  return _PartDensity;
400  }
401 
406  {
407  return _AdditionalProperties.size();
408  }
409 
413  inline const Dtk_PropertiesPtr& GetIthAdditionalProperties( const Dtk_Size_t& inPos ) const
414  {
415  return _AdditionalProperties[ inPos ];
416  }
417 
418  };
419 
420 
425  enum NodeType
426  {
429  NodeTypePartBody = 2,//hybrid bodies
431  };
432 
438  Dtk_ErrorStatus InitWrite( const Dtk_string& inLogFile, Licence_dtk inLicFct, const WriteOptions& inOptions = WriteOptions() );
439 
440 
444 
453  SetAsDeprecated( "2024.2", "Use Dtk_ErrorStatus catiav5w::InitPart( const Dtk_string&, const Dtk_string&, Dtk_UUID&, const catiav5w::FileDescription& ) method instead." )
455  const Dtk_string &inOutputFile,
458 
470  const Dtk_string &inOutputFile,
472  Dtk_UUID& outPartUUID,
474 
480 
485 
491 
496 
504  Dtk_ErrorStatus CreateNode( const NodeType& inNodeType, const Dtk_string& inNodeName = Dtk_string() );
505 
514  Dtk_ErrorStatus CreateNode( const NodeType& inNodeType, const Dtk_InfoPtr& inInfos );
515 
519 
525  Dtk_ErrorStatus AddDoubleParameter( const Dtk_string& inParameterName, const Dtk_Double64& inValue );
526 
532  Dtk_ErrorStatus AddIntegerParameter( const Dtk_string& inParameterName, const Dtk_Int32& inValue );
533 
539  Dtk_ErrorStatus AddBooleanParameter( const Dtk_string& inParameterName, const Dtk_bool& inValue );
540 
546  Dtk_ErrorStatus AddStringParameter( const Dtk_string& inParameterName, const Dtk_string& inValue );
547 
548 
556  const Dtk_string& inPartName,
557  Dtk_ID& outDocId );
558 
566  const Dtk_string& inPartName,
567  Dtk_ID& outDocId );
568 
575  const Dtk_string& inCGRName,
576  Dtk_ID& outDocId );
577 
584  Dtk_ErrorStatus CreateV4ModelDocId( const Dtk_string& inV4ModelFileName,
585  const Dtk_string& inV4ModelName,
586  Dtk_ID& outDocId );
587 
596  const Dtk_string& inFileName,
599 
606 
616  SetAsDeprecated( "2023.4", "Use catiav5w::AddInstance( const Dtk_ID&, const Dtk_string&, const Dtk_transfo&, Dtk_ID& ) method instead." )
617  Dtk_ErrorStatus AddInstance( const Dtk_ID& inDocId,
622 
631  const Dtk_string& inInstanceName,
632  const Dtk_transfo& inTransfo,
633  Dtk_ID& outInstanceId );
641 
647 
656  SetAsDeprecated( "2023.4", "Use catiav5w::AddVirtualComponentInstance( const Dtk_ID&, const Dtk_string&, const Dtk_transfo&, Dtk_ID& ) method instead." )
658  const Dtk_string& inInstanceName,
659  const Dtk_transfo& inTransfo );
660 
669  const Dtk_string& inInstanceName,
670  const Dtk_transfo& inTransfo,
671  Dtk_ID& outInstanceId );
672 
680 
687  Dtk_ErrorStatus OverrideInstanceColorWithPathID( const PathID& inInstancePathId, const Dtk_RGB& inInstanceColor );
688 
695  Dtk_ErrorStatus OverrideInstanceAlphaWithPathID( const PathID& inInstancePathId, const Dtk_UChar8 inInstanceAlpha );
696 
703 
708  SetAsDeprecated( "2024.2", "Use Dtk_ErrorStatus catiav5w::AddMaterial( const Material&, MaterialId& ) method instead." )
709  MaterialId AddMaterial( const Material& inMaterial );
710 
716  Dtk_ErrorStatus AddMaterial( const Material& inMaterial, MaterialId& outMaterialId );
717 
718 };
719 #endif
720 
721 
723 namespace Config
724 {
726  namespace catiav5w
727  {
730  }
732 }
734 
735 
736 
737 
catiav5w::FileDescription::AddIntegerProperty
void AddIntegerProperty(const Dtk_string &inPropertyName, const Dtk_Int32 &inValue)
Adds an additional integer property.
Definition: catiav5w.hpp:309
Dtk_ID
uint32_t Dtk_ID
Definition: define.h:689
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:396
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:364
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:428
catiav5w::Material::Lighting
Definition: catiav5w.hpp:102
catiav5w::inTransfo
const Dtk_string const Dtk_transfo & inTransfo
Definition: catiav5w.hpp:619
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:727
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:380
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:413
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:688
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:712
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:289
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:323
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()
Base constructor.
Definition: catiav5w.hpp:51
DTK_FALSE
#define DTK_FALSE
Definition: define.h:728
catiav5w::FileDescription::GetNumAdditionalProperties
Dtk_Size_t GetNumAdditionalProperties() const
Retrieves the file source type - read only -.
Definition: catiav5w.hpp:405
Dtk_bool
char Dtk_bool
Definition: define.h:725
catiav5w::inBlankedStatus
const Dtk_string const Dtk_transfo const Dtk_bool inBlankedStatus
Definition: catiav5w.hpp:620
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:699
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:356
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:456
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:429
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:687
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:348
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:698
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:457
catiav5w::NodeType
NodeType
Type of Specification Tree Node used into a CATPart file.
Definition: catiav5w.hpp:426
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:430
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()
Base 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:427
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:336
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:621
catiav5w::FileDescription::GetNomenclature
const Dtk_string & GetNomenclature() const
Retrieves the file nomenclature - read only -.
Definition: catiav5w.hpp:372
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:618
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:388
catiav5w::FileDescription::AddDoubleProperty
void AddDoubleProperty(const Dtk_string &inPropertyName, const double &inValue)
Adds an additional double property.
Definition: catiav5w.hpp:297
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