Open CASCADE Technology
7.6.0
|
Interface for reading primitive array from the buffer. More...
#include <RWMesh_TriangulationReader.hxx>
Data Structures | |
struct | LoadingStatistic |
Public Member Functions | |
RWMesh_TriangulationReader () | |
Constructor. More... | |
virtual | ~RWMesh_TriangulationReader () |
Destructor. More... | |
const TCollection_AsciiString & | FileName () const |
Returns file name for reporting issues. More... | |
void | SetFileName (const TCollection_AsciiString &theFileName) |
Sets file name for reporting issues. More... | |
const RWMesh_CoordinateSystemConverter & | CoordinateSystemConverter () const |
Returns coordinate system converter using for correct data loading. More... | |
void | SetCoordinateSystemConverter (const RWMesh_CoordinateSystemConverter &theConverter) |
Sets coordinate system converter. More... | |
bool | IsDoublePrecision () const |
Returns flag to fill in triangulation using double or single precision; FALSE by default. More... | |
void | SetDoublePrecision (bool theIsDouble) |
Sets flag to fill in triangulation using double or single precision. More... | |
Standard_Boolean | ToSkipDegenerates () const |
Returns TRUE if degenerated triangles should be skipped during mesh loading (only indexes will be checked). More... | |
void | SetToSkipDegenerates (const Standard_Boolean theToSkip) |
Sets flag to skip degenerated triangles during mesh loading (only indexes will be checked). More... | |
Standard_Boolean | ToPrintDebugMessages () const |
Returns TRUE if additional debug information should be print. More... | |
void | SetToPrintDebugMessages (const Standard_Boolean theToPrint) |
Sets flag to print debug information. More... | |
void | StartStatistic () |
Starts and reset internal object that accumulates nodes/triangles statistic during data reading. More... | |
void | StopStatistic () |
Stops and nullify internal object that accumulates nodes/triangles statistic during data reading. More... | |
void | PrintStatistic () const |
Prints loading statistic. This method should be used between StartStatistic() and StopStatistic() calls for correct results. More... | |
bool | Load (const Handle< RWMesh_TriangulationSource > &theSourceMesh, const Handle< Poly_Triangulation > &theDestMesh, const Handle< OSD_FileSystem > &theFileSystem) const |
Loads primitive array. More... | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. More... | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. More... | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. More... | |
virtual | ~Standard_Transient () |
Destructor must be virtual. More... | |
virtual void | Delete () const |
Memory deallocator for transient classes. More... | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. More... | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. More... | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. More... | |
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. More... | |
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. More... | |
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. More... | |
Standard_Integer | GetRefCount () const |
Get the reference counter of this object. More... | |
void | IncrementRefCounter () const |
Increments the reference counter of this object. More... | |
Standard_Integer | DecrementRefCounter () const |
Decrements the reference counter of this object; returns the decremented value. More... | |
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. More... | |
virtual bool | finalizeLoading (const Handle< RWMesh_TriangulationSource > &theSourceMesh, const Handle< Poly_Triangulation > &theDestMesh) const |
Performs additional actions to finalize data loading. More... | |
interface for filling triangulation data | |
RWMesh_CoordinateSystemConverter | myCoordSysConverter |
coordinate system converter More... | |
TCollection_AsciiString | myFileName |
file name to use during message printing More... | |
Standard_Mutex | myMutex |
internal mutex to collect nodes/triangles statistic More... | |
LoadingStatistic * | myLoadingStatistic |
statistic of loaded triangulation More... | |
Standard_Boolean | myIsDoublePrecision |
flag to fill in triangulation using single or double precision More... | |
Standard_Boolean | myToSkipDegenerateTris |
flag to skip degenerate triangles during loading, FALSE by default More... | |
Standard_Boolean | myToPrintDebugMessages |
flag to print additional debug information More... | |
virtual bool | setNbPositionNodes (const Handle< Poly_Triangulation > &theMesh, Standard_Integer theNbNodes, Standard_Boolean theToCopyData=false) const |
Resizes array of position nodes to specified size. More... | |
virtual void | setNodePosition (const Handle< Poly_Triangulation > &theMesh, Standard_Integer theIndex, const gp_Pnt &thePnt) const |
Sets node position. More... | |
virtual bool | setNbUVNodes (const Handle< Poly_Triangulation > &theMesh, Standard_Integer theNbNodes) const |
Resizes array of UV nodes to specified size. More... | |
virtual void | setNodeUV (const Handle< Poly_Triangulation > &theMesh, Standard_Integer theIndex, const gp_Pnt2d &theUV) const |
Sets node UV texture coordinates. More... | |
virtual bool | setNbNormalNodes (const Handle< Poly_Triangulation > &theMesh, Standard_Integer theNbNodes) const |
Resizes array of nodes normals to specified size. More... | |
virtual void | setNodeNormal (const Handle< Poly_Triangulation > &theMesh, Standard_Integer theIndex, const gp_Vec3f &theNormal) const |
Sets node normal. More... | |
virtual bool | setNbTriangles (const Handle< Poly_Triangulation > &theMesh, Standard_Integer theNbTris, Standard_Boolean theToCopyData=false) const |
Resizes array of triangles to specified size. More... | |
virtual Standard_Integer | setTriangle (const Handle< Poly_Triangulation > &theMesh, Standard_Integer theIndex, const Poly_Triangle &theTriangle) const |
Adds triangle element. More... | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. More... | |
Static Public Member Functions inherited from Standard_Transient | |
static const char * | get_type_name () |
Returns a type descriptor about this object. More... | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. More... | |
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