Open CASCADE Technology 7.8.0
|
Interface for reading primitive array from the buffer. More...
#include <RWMesh_TriangulationReader.hxx>
Data Structures | |
struct | LoadingStatistic |
Public Member Functions | |
RWMesh_TriangulationReader () | |
Constructor. | |
virtual | ~RWMesh_TriangulationReader () |
Destructor. | |
const TCollection_AsciiString & | FileName () const |
Returns file name for reporting issues. | |
void | SetFileName (const TCollection_AsciiString &theFileName) |
Sets file name for reporting issues. | |
const RWMesh_CoordinateSystemConverter & | CoordinateSystemConverter () const |
Returns coordinate system converter using for correct data loading. | |
void | SetCoordinateSystemConverter (const RWMesh_CoordinateSystemConverter &theConverter) |
Sets coordinate system converter. | |
bool | IsDoublePrecision () const |
Returns flag to fill in triangulation using double or single precision; FALSE by default. | |
void | SetDoublePrecision (bool theIsDouble) |
Sets flag to fill in triangulation using double or single precision. | |
Standard_Boolean | ToSkipDegenerates () const |
Returns TRUE if degenerated triangles should be skipped during mesh loading (only indexes will be checked). | |
void | SetToSkipDegenerates (const Standard_Boolean theToSkip) |
Sets flag to skip degenerated triangles during mesh loading (only indexes will be checked). | |
Standard_Boolean | ToPrintDebugMessages () const |
Returns TRUE if additional debug information should be print. | |
void | SetToPrintDebugMessages (const Standard_Boolean theToPrint) |
Sets flag to print debug information. | |
void | StartStatistic () |
Starts and reset internal object that accumulates nodes/triangles statistic during data reading. | |
void | StopStatistic () |
Stops and nullify internal object that accumulates nodes/triangles statistic during data reading. | |
void | PrintStatistic () const |
Prints loading statistic. This method should be used between StartStatistic() and StopStatistic() calls for correct results. | |
bool | Load (const Handle< RWMesh_TriangulationSource > &theSourceMesh, const Handle< Poly_Triangulation > &theDestMesh, const Handle< OSD_FileSystem > &theFileSystem) const |
Loads primitive array. | |
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 () |
Destructor must be virtual. | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. | |
Standard_Boolean | 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. | |
Standard_Boolean | IsKind (const Standard_CString 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. | |
Standard_Integer | GetRefCount () const noexcept |
Get the reference counter of this object. | |
void | IncrementRefCounter () noexcept |
Increments the reference counter of this object. | |
Standard_Integer | DecrementRefCounter () noexcept |
Decrements the reference counter of this object; returns the decremented value. | |
virtual void | Delete () const |
Memory deallocator for transient classes. | |
Protected Member Functions | |
virtual bool | load (const Handle< RWMesh_TriangulationSource > &theSourceMesh, const Handle< Poly_Triangulation > &theDestMesh, const Handle< OSD_FileSystem > &theFileSystem) const =0 |
Loads primitive array. | |
virtual bool | finalizeLoading (const Handle< RWMesh_TriangulationSource > &theSourceMesh, const Handle< Poly_Triangulation > &theDestMesh) const |
Performs additional actions to finalize data loading. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Standard_Transient | |
static constexpr const char * | get_type_name () |
Returns a type descriptor about this object. | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. | |
Interface for reading primitive array from the buffer.
RWMesh_TriangulationReader::RWMesh_TriangulationReader | ( | ) |
Constructor.
|
virtual |
Destructor.
|
inline |
Returns coordinate system converter using for correct data loading.
|
inline |
Returns file name for reporting issues.
|
protectedvirtual |
Performs additional actions to finalize data loading.
Reimplemented in RWGltf_TriangulationReader.
|
inline |
Returns flag to fill in triangulation using double or single precision; FALSE by default.
bool RWMesh_TriangulationReader::Load | ( | const Handle< RWMesh_TriangulationSource > & | theSourceMesh, |
const Handle< Poly_Triangulation > & | theDestMesh, | ||
const Handle< OSD_FileSystem > & | theFileSystem | ||
) | const |
Loads primitive array.
|
protectedpure virtual |
Loads primitive array.
Implemented in RWGltf_TriangulationReader.
|
inline |
Prints loading statistic. This method should be used between StartStatistic() and StopStatistic() calls for correct results.
|
inline |
Sets coordinate system converter.
|
inline |
Sets flag to fill in triangulation using double or single precision.
|
inline |
Sets file name for reporting issues.
|
inlineprotectedvirtual |
Resizes array of nodes normals to specified size.
theMesh | [in] triangulation to be modified |
theNbNodes | [in] nodes number |
|
inlineprotectedvirtual |
Resizes array of position nodes to specified size.
theMesh | [in] triangulation to be modified |
theNbNodes | [in] nodes number |
theToCopyData | [in] copy old nodes into new array |
|
inlineprotectedvirtual |
Resizes array of triangles to specified size.
theMesh | [in] triangulation to be modified |
theNbTris | [in] elements number |
theToCopyData | [in] copy old triangles into new array |
|
inlineprotectedvirtual |
Resizes array of UV nodes to specified size.
theMesh | [in] triangulation to be modified |
theNbNodes | [in] nodes number |
|
inlineprotectedvirtual |
Sets node normal.
theMesh | [in] triangulation to be modified |
theIndex | node index starting from 1 |
theNormal | node normal vector |
|
inlineprotectedvirtual |
Sets node position.
theMesh | [in] triangulation to be modified |
theIndex | [in] node index starting from 1 |
thePnt | [in] node position |
|
inlineprotectedvirtual |
Sets node UV texture coordinates.
theMesh | [in] triangulation to be modified |
theIndex | [in] node index starting from 1 |
theUV | [in] node UV coordinates |
|
inline |
Sets flag to print debug information.
|
inline |
Sets flag to skip degenerated triangles during mesh loading (only indexes will be checked).
|
inlineprotectedvirtual |
Adds triangle element.
theMesh | [in] triangulation to be modified |
theIndex | triangle index starting from 1 |
theTriangle | triangle nodes starting from 1 |
|
inline |
Starts and reset internal object that accumulates nodes/triangles statistic during data reading.
|
inline |
Stops and nullify internal object that accumulates nodes/triangles statistic during data reading.
|
inline |
Returns TRUE if additional debug information should be print.
|
inline |
Returns TRUE if degenerated triangles should be skipped during mesh loading (only indexes will be checked).
|
protected |
coordinate system converter
|
protected |
file name to use during message printing
|
protected |
flag to fill in triangulation using single or double precision
|
mutableprotected |
statistic of loaded triangulation
|
mutableprotected |
internal mutex to collect nodes/triangles statistic
|
protected |
flag to print additional debug information
|
protected |
flag to skip degenerate triangles during loading, FALSE by default