|
| | RWGltf_CafWriter (const TCollection_AsciiString &theFile, bool theIsBinary) |
| | Main constructor.
|
| |
| | ~RWGltf_CafWriter () override |
| | Destructor.
|
| |
| const RWMesh_CoordinateSystemConverter & | CoordinateSystemConverter () const |
| | Return transformation from OCCT to glTF coordinate system.
|
| |
| RWMesh_CoordinateSystemConverter & | ChangeCoordinateSystemConverter () |
| | Return transformation from OCCT to glTF coordinate system.
|
| |
| void | SetCoordinateSystemConverter (const RWMesh_CoordinateSystemConverter &theConverter) |
| | Set transformation from OCCT to glTF coordinate system.
|
| |
| bool | IsBinary () const |
| | Return flag to write into binary glTF format (.glb), specified within class constructor.
|
| |
| RWGltf_WriterTrsfFormat | TransformationFormat () const |
| | Return preferred transformation format for writing into glTF file; RWGltf_WriterTrsfFormat_Compact by default.
|
| |
| void | SetTransformationFormat (RWGltf_WriterTrsfFormat theFormat) |
| | Set preferred transformation format for writing into glTF file.
|
| |
| RWMesh_NameFormat | NodeNameFormat () const |
| | Return name format for exporting Nodes; RWMesh_NameFormat_InstanceOrProduct by default.
|
| |
| void | SetNodeNameFormat (RWMesh_NameFormat theFormat) |
| | Set name format for exporting Nodes.
|
| |
| RWMesh_NameFormat | MeshNameFormat () const |
| | Return name format for exporting Meshes; RWMesh_NameFormat_Product by default.
|
| |
| void | SetMeshNameFormat (RWMesh_NameFormat theFormat) |
| | Set name format for exporting Meshes.
|
| |
| bool | IsForcedUVExport () const |
| | Return TRUE to export UV coordinates even if there are no mapped texture; FALSE by default.
|
| |
| void | SetForcedUVExport (bool theToForce) |
| | Set flag to export UV coordinates even if there are no mapped texture; FALSE by default.
|
| |
| const XCAFPrs_Style & | DefaultStyle () const |
| | Return default material definition to be used for nodes with only color defined.
|
| |
| void | SetDefaultStyle (const XCAFPrs_Style &theStyle) |
| | Set default material definition to be used for nodes with only color defined.
|
| |
| bool | ToEmbedTexturesInGlb () |
| | Return flag to write image textures into GLB file (binary gltf export); TRUE by default. When set to FALSE, texture images will be written as separate files. Has no effect on writing into non-binary format.
|
| |
| void | SetToEmbedTexturesInGlb (bool theToEmbedTexturesInGlb) |
| | Set flag to write image textures into GLB file (binary gltf export).
|
| |
| bool | ToMergeFaces () const |
| | Return flag to merge faces within a single part; FALSE by default.
|
| |
| void | SetMergeFaces (bool theToMerge) |
| | Set flag to merge faces within a single part. May reduce JSON size thanks to smaller number of primitive arrays.
|
| |
| bool | ToSplitIndices16 () const |
| | Return flag to prefer keeping 16-bit indexes while merging face; FALSE by default.
|
| |
| void | SetSplitIndices16 (bool theToSplit) |
| | Set flag to prefer keeping 16-bit indexes while merging face. Has effect only with ToMergeFaces() option turned ON. May reduce binary data size thanks to smaller triangle indexes.
|
| |
| bool | ToParallel () const |
| | Return TRUE if multithreaded optimizations are allowed; FALSE by default.
|
| |
| void | SetParallel (bool theToParallel) |
| | Setup multithreaded execution.
|
| |
| const RWGltf_DracoParameters & | CompressionParameters () const |
| | Return Draco parameters.
|
| |
| void | SetCompressionParameters (const RWGltf_DracoParameters &theDracoParameters) |
| | Set Draco parameters.
|
| |
| virtual bool | Perform (const occ::handle< TDocStd_Document > &theDocument, const NCollection_Sequence< TDF_Label > &theRootLabels, const NCollection_Map< TCollection_AsciiString > *theLabelFilter, const NCollection_IndexedDataMap< TCollection_AsciiString, TCollection_AsciiString > &theFileInfo, const Message_ProgressRange &theProgress) |
| | Write glTF file and associated binary file. Triangulation data should be precomputed within shapes!
|
| |
| virtual bool | Perform (const occ::handle< TDocStd_Document > &theDocument, const NCollection_IndexedDataMap< TCollection_AsciiString, TCollection_AsciiString > &theFileInfo, const Message_ProgressRange &theProgress) |
| | Write glTF file and associated binary file. Triangulation data should be precomputed within shapes!
|
| |
Public Member Functions inherited from Standard_Transient |
| | Standard_Transient () |
| | Empty constructor.
|
| |
| | Standard_Transient (const Standard_Transient &) |
| | Copy constructor – does nothing.
|
| |
| Standard_Transient & | operator= (const Standard_Transient &) |
| | Assignment operator, needed to avoid copying reference counter.
|
| |
| virtual | ~Standard_Transient ()=default |
| | Destructor must be virtual.
|
| |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| | Returns a type descriptor about this object.
|
| |
| bool | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| | Returns a true value if this is an instance of Type.
|
| |
| bool | IsInstance (const char *const theTypeName) const |
| | Returns a true value if this is an instance of TypeName.
|
| |
| bool | IsKind (const opencascade::handle< Standard_Type > &theType) const |
| | Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
|
| |
| bool | IsKind (const char *const theTypeName) const |
| | Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
|
| |
| Standard_Transient * | This () const |
| | Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
|
| |
| int | GetRefCount () const noexcept |
| | Get the reference counter of this object.
|
| |
| void | IncrementRefCounter () noexcept |
| | Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations.
|
| |
| int | DecrementRefCounter () noexcept |
| | Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement.
|
| |
| virtual void | Delete () const |
| | Memory deallocator for transient classes.
|
| |
|
| virtual bool | writeBinData (const occ::handle< TDocStd_Document > &theDocument, const NCollection_Sequence< TDF_Label > &theRootLabels, const NCollection_Map< TCollection_AsciiString > *theLabelFilter, const Message_ProgressRange &theProgress) |
| | Write binary data file with triangulation data. Triangulation data should be precomputed within shapes!
|
| |
| virtual bool | writeJson (const occ::handle< TDocStd_Document > &theDocument, const NCollection_Sequence< TDF_Label > &theRootLabels, const NCollection_Map< TCollection_AsciiString > *theLabelFilter, const NCollection_IndexedDataMap< TCollection_AsciiString, TCollection_AsciiString > &theFileInfo, const Message_ProgressRange &theProgress) |
| | Write JSON file with glTF structure (should be called after writeBinData()).
|
| |
| virtual TopAbs_ShapeEnum | getShapeType (const TopoDS_Shape &theShape) const |
| | Returns the underlying shape in case of a compound.
|
| |
| virtual bool | toSkipShape (const RWMesh_ShapeIterator &theShapeIter) const |
| | Return TRUE if face shape should be skipped (e.g. because it is invalid or empty).
|
| |
| virtual bool | hasTriangulation (const RWGltf_GltfFace &theShape) const |
| | Return TRUE if shape has triangulation (not vertex or edge).
|
| |
| virtual TCollection_AsciiString | formatName (RWMesh_NameFormat theFormat, const TDF_Label &theLabel, const TDF_Label &theRefLabel) const |
| | Generate name for specified labels.
|
| |
| virtual void | saveNodes (RWGltf_GltfFace &theGltfFace, std::ostream &theBinFile, const RWMesh_ShapeIterator &theShapeIter, int &theAccessorNb, const std::shared_ptr< RWGltf_CafWriter::Mesh > &theMesh) const |
| | Write mesh nodes into binary file.
|
| |
| virtual void | saveNormals (RWGltf_GltfFace &theGltfFace, std::ostream &theBinFile, const RWMesh_FaceIterator &theFaceIter, int &theAccessorNb, const std::shared_ptr< RWGltf_CafWriter::Mesh > &theMesh) const |
| | Write mesh normals into binary file.
|
| |
| virtual void | saveTextCoords (RWGltf_GltfFace &theGltfFace, std::ostream &theBinFile, const RWMesh_FaceIterator &theFaceIter, int &theAccessorNb, const std::shared_ptr< RWGltf_CafWriter::Mesh > &theMesh) const |
| | Write mesh texture UV coordinates into binary file.
|
| |
| virtual void | saveIndices (RWGltf_GltfFace &theGltfFace, std::ostream &theBinFile, const RWMesh_ShapeIterator &theShapeIter, int &theAccessorNb, const std::shared_ptr< RWGltf_CafWriter::Mesh > &theMesh) |
| | Write mesh indexes into binary file.
|
| |
| virtual void | saveTriangleIndices (RWGltf_GltfFace &theGltfFace, std::ostream &theBinFile, const RWMesh_FaceIterator &theFaceIter, const std::shared_ptr< RWGltf_CafWriter::Mesh > &theMesh) |
| | Write triangle indexes into binary file.
|
| |
| virtual void | saveEdgeIndices (RWGltf_GltfFace &theGltfFace, std::ostream &theBinFile, const RWMesh_EdgeIterator &theEdgeIter) |
| | Write edge indexes into binary file.
|
| |
| virtual void | saveVertexIndices (RWGltf_GltfFace &theGltfFace, std::ostream &theBinFile, const RWMesh_VertexIterator &theVertexIter) |
| | Write vertex indexes into binary file.
|
| |
| virtual void | writePositions (const RWGltf_GltfFace &theGltfFace) |
| | Write bufferView for vertex positions within RWGltf_GltfRootElement_Accessors section.
|
| |
| virtual void | writeNormals (const RWGltf_GltfFace &theGltfFace) |
| | Write bufferView for vertex normals within RWGltf_GltfRootElement_Accessors section.
|
| |
| virtual void | writeTextCoords (const RWGltf_GltfFace &theGltfFace) |
| | Write bufferView for vertex texture coordinates within RWGltf_GltfRootElement_Accessors section.
|
| |
| virtual void | writeIndices (const RWGltf_GltfFace &theGltfFace) |
| | Write bufferView for triangle indexes within RWGltf_GltfRootElement_Accessors section.
|
| |
| virtual void | writeAccessors (const RWGltf_GltfSceneNodeMap &theSceneNodeMap) |
| | Write RWGltf_GltfRootElement_Accessors section.
|
| |
| virtual void | writeAnimations () |
| | Write RWGltf_GltfRootElement_Animations section (reserved).
|
| |
| virtual void | writeAsset (const NCollection_IndexedDataMap< TCollection_AsciiString, TCollection_AsciiString > &theFileInfo) |
| | Write RWGltf_GltfRootElement_Asset section.
|
| |
| virtual void | writeBufferViews (const int theBinDataBufferId) |
| | Write RWGltf_GltfRootElement_BufferViews section.
|
| |
| virtual void | writeBuffers () |
| | Write RWGltf_GltfRootElement_Buffers section.
|
| |
| virtual void | writeExtensions () |
| | Write RWGltf_GltfRootElement_ExtensionsUsed/RWGltf_GltfRootElement_ExtensionsRequired sections (reserved).
|
| |
| virtual void | writeImages (const RWGltf_GltfSceneNodeMap &theSceneNodeMap) |
| | Write RWGltf_GltfRootElement_Images section.
|
| |
| virtual void | writeMaterials (const RWGltf_GltfSceneNodeMap &theSceneNodeMap) |
| | Write RWGltf_GltfRootElement_Materials section.
|
| |
| virtual void | writeMaterial (RWMesh_ShapeIterator &theShapeIter, bool &theIsStarted) |
| | Write RWGltf_GltfRootElement_Materials section.
|
| |
| virtual void | writeMeshes (const RWGltf_GltfSceneNodeMap &theSceneNodeMap) |
| | Write RWGltf_GltfRootElement_Meshes section.
|
| |
| virtual void | writePrimArray (const RWGltf_GltfFace &theGltfFace, const TCollection_AsciiString &theName, const int theDracoBufInd, bool &theToStartPrims) |
| | Write a primitive array to RWGltf_GltfRootElement_Meshes section.
|
| |
| virtual void | writeNodes (const occ::handle< TDocStd_Document > &theDocument, const NCollection_Sequence< TDF_Label > &theRootLabels, const NCollection_Map< TCollection_AsciiString > *theLabelFilter, const RWGltf_GltfSceneNodeMap &theSceneNodeMap, NCollection_Sequence< int > &theSceneRootNodeInds) |
| | Write RWGltf_GltfRootElement_Nodes section.
|
| |
| virtual void | writeSamplers () |
| | Write RWGltf_GltfRootElement_Samplers section.
|
| |
| virtual void | writeScene (const int theDefSceneId) |
| | Write RWGltf_GltfRootElement_Scene section.
|
| |
| virtual void | writeScenes (const NCollection_Sequence< int > &theSceneRootNodeInds) |
| | Write RWGltf_GltfRootElement_Scenes section.
|
| |
| virtual void | writeSkins () |
| | Write RWGltf_GltfRootElement_Skins section (reserved).
|
| |
| virtual void | writeTextures (const RWGltf_GltfSceneNodeMap &theSceneNodeMap) |
| | Write RWGltf_GltfRootElement_Textures section.
|
| |
| virtual void | writeExtrasAttributes (const occ::handle< TDataStd_NamedData > &theNamedData) |
| | Write nodes.extras section with key-value attributes.
|
| |
| virtual void | dispatchShapes (const XCAFPrs_DocumentNode &theDocNode, const Message_ProgressScope &thePSentryBin, NCollection_DataMap< XCAFPrs_Style, occ::handle< RWGltf_GltfFace > > &theMergedFaces, RWMesh_ShapeIterator &theShapeIter) |
| | Dispatch shapes.
|
| |
| bool | writeShapesToBin (RWGltf_GltfFace &theGltfFace, std::ostream &theBinFile, RWMesh_ShapeIterator &theShapeIter, int &theAccessorNb, const std::shared_ptr< RWGltf_CafWriter::Mesh > &theMesh, const RWGltf_GltfArrayType theArrType, const Message_ProgressScope &thePSentryBin) |
| | Write shape into binary file.
|
| |
| virtual void | writeShapes (RWMesh_ShapeIterator &theShapeIter, int &theDracoBufInd, bool &theToStartPrims, const TCollection_AsciiString &theNodeName, NCollection_Map< occ::handle< NCollection_Shared< NCollection_List< occ::handle< RWGltf_GltfFace > > > > > &theWrittenShapes, NCollection_IndexedDataMap< int, int > &theDracoBufIndMap) |
| | Write shapes to RWGltf_GltfRootElement_Meshes section.
|
| |
glTF writer context from XCAF document.