NDEVR
API Documentation
GeometryPositionModRestore

Class to easily restore calculated data in a Geometry after a location altering process. More...

Collaboration diagram for GeometryPositionModRestore:
[legend]

Public Member Functions

 GeometryPositionModRestore ()
 Default constructor.
 GeometryPositionModRestore (const Geometry &geo)
 Constructs and immediately stores the geometry state for later restoration.
void restoreAll (const void *lock, LogPtr ptr=LogPtr())
 Restores all previously stored calculated data (normals, closed, smooth).
void restoreClosed (const void *lock, LogPtr ptr=LogPtr())
 Restores previously stored closed-solid state.
void restoreNormals (const void *lock, LogPtr ptr=LogPtr())
 Restores previously stored normal data.
void restoreSmooth (const void *lock, LogPtr ptr=LogPtr())
 Restores previously stored smoothing data.
void store (const Geometry &geo)
 Captures the current calculated state of the geometry.

Public Attributes

bool restore_closed = true
 Whether to restore the closed-solid state.
bool restore_normals = true
 Whether to restore normal data.
bool restore_smooth = true
 Whether to restore smoothing data.

Protected Member Functions

void restoreClosed (Geometry &geo, const void *lock, LogPtr ptr=LogPtr())
 Internal: restores closed-solid state for a specific geometry.
void restoreNormals (Geometry &geo, const void *lock, LogPtr ptr=LogPtr())
 Internal: restores normals for a specific geometry.

Protected Attributes

Geometry m_geo
 The geometry being restored.
bool m_has_bitangent = false
 Whether the geometry had bitangent data.
bool m_has_tangent = false
 Whether the geometry had tangent data.
bool m_is_closed = false
 Whether the geometry was a closed solid.
String m_smoothing_algo
 The stored smoothing algorithm name.
uint04 m_smoothing_times = 0U
 The stored number of smoothing iterations.
NormalMode normal_mode = NormalMode::e_no_normals
 The stored normal mode.
fltp04 smoothing_angle = Constant<fltp04>::Invalid
 The stored normal smoothing angle.

Detailed Description

Class to easily restore calculated data in a Geometry after a location altering process.


Definition at line 2850 of file Geometry.h.

Constructor & Destructor Documentation

◆ GeometryPositionModRestore()

GeometryPositionModRestore::GeometryPositionModRestore ( const Geometry & geo)
inlineexplicit

Constructs and immediately stores the geometry state for later restoration.

Parameters
[in]geoThe geometry whose state to capture.

Definition at line 2859 of file Geometry.h.

References store().

Member Function Documentation

◆ restoreAll()

void GeometryPositionModRestore::restoreAll ( const void * lock,
LogPtr ptr = LogPtr() )

Restores all previously stored calculated data (normals, closed, smooth).

Parameters
[in]lockThread lock pointer.
[in]ptrOptional log for progress reporting.

◆ restoreClosed() [1/2]

void GeometryPositionModRestore::restoreClosed ( const void * lock,
LogPtr ptr = LogPtr() )

Restores previously stored closed-solid state.

Parameters
[in]lockThread lock pointer.
[in]ptrOptional log for progress reporting.

◆ restoreClosed() [2/2]

void GeometryPositionModRestore::restoreClosed ( Geometry & geo,
const void * lock,
LogPtr ptr = LogPtr() )
protected

Internal: restores closed-solid state for a specific geometry.

Parameters
[in]geoThe geometry to restore state for.
[in]lockThread lock pointer.
[in]ptrOptional log.

◆ restoreNormals() [1/2]

void GeometryPositionModRestore::restoreNormals ( const void * lock,
LogPtr ptr = LogPtr() )

Restores previously stored normal data.

Parameters
[in]lockThread lock pointer.
[in]ptrOptional log for progress reporting.

◆ restoreNormals() [2/2]

void GeometryPositionModRestore::restoreNormals ( Geometry & geo,
const void * lock,
LogPtr ptr = LogPtr() )
protected

Internal: restores normals for a specific geometry.

Parameters
[in]geoThe geometry to restore normals for.
[in]lockThread lock pointer.
[in]ptrOptional log.

◆ restoreSmooth()

void GeometryPositionModRestore::restoreSmooth ( const void * lock,
LogPtr ptr = LogPtr() )

Restores previously stored smoothing data.

Parameters
[in]lockThread lock pointer.
[in]ptrOptional log for progress reporting.

◆ store()

void GeometryPositionModRestore::store ( const Geometry & geo)

Captures the current calculated state of the geometry.

Parameters
[in]geoThe geometry to capture state from.

Referenced by GeometryPositionModRestore().


The documentation for this class was generated from the following file: