MeVisLab Toolbox Reference
|
This represents a WEMPatch consisting of quads only. More...
#include <WEMQuadPatch.h>
Public Member Functions | |
WEMQuadPatch (unsigned int bs=8192) | |
Standard constructor. | |
WEMQuadPatch (WEM *wem, unsigned int bs=8192) | |
Constructor which takes a pointer to the WEM this WEMPatch is in. | |
WEMQuadPatch (const WEMQuadPatch &wemPatch) | |
Copy constructor. | |
WEMQuadPatch (WEMQuadPatch &&wemPatch) noexcept | |
WEMQuadPatch & | operator= (WEMQuadPatch &&wemPatch) noexcept |
~WEMQuadPatch () override | |
Standard destructor. | |
WEMPatch * | copy () override |
Create a (deep) copy of the patch. | |
virtual void | dispose () |
Disposes of internal data structures. | |
PatchTypes | getPatchType () const override |
Get mesh type. | |
unsigned int | getNumFaces () const override |
Returns the number of faces in the patch. | |
WEMIndexVector< WEMQuad > * | getFaces () |
Returns the pointer to the internal faces structure. | |
const WEMIndexVector< WEMQuad > * | getFaces () const |
Returns the pointer to the internal faces structure. | |
WEMFace * | getFaceAt (unsigned int index) override |
Returns the face at the given index. | |
const WEMFace * | getFaceAt (unsigned int index) const override |
Returns the face at the given index. | |
WEMQuad * | getQuadAt (unsigned int index) |
Returns the WEMQuad at the given index. | |
const WEMQuad * | getQuadAt (unsigned int index) const |
Returns the WEMQuad at the given index. | |
WEMFace * | addFace () override |
Instantiates a new WEMQuad and adds it to the internal faces vector. Returns a pointer to this newly added face. | |
WEMQuad * | addQuad () |
Instantiates a new WEMQuad and adds it to the internal faces vector. | |
WEMQuad * | addQuadNoUpdatePrimitiveValueLists () |
Creates and return a new quad without adding any entry to the the face PVLs. | |
void | delQuad (WEMQuad *quad) |
Deletes a quad and erases it from the internal faces vector. | |
void | sortFacesByZPosition () override |
Sorts the faces by the z-position of their centroids. | |
Public Member Functions inherited from ml::WEMPatch | |
WEMPatch (unsigned int bs=8192) | |
Standard constructor. | |
WEMPatch (WEM *wem, unsigned int bs=8192) | |
Constructor which takes a pointer to the WEM this WEM is in. | |
WEMPatch (const WEMPatch &wemPatch) | |
Copy constructor. | |
WEMPatch (WEMPatch &&other) noexcept | |
Move c'tor. | |
WEMPatch & | operator= (WEMPatch &&other) noexcept |
Move assignment operator. | |
virtual | ~WEMPatch () |
Standard destructor. | |
void | dispose () |
Disposes of internal data structures. | |
void | addPatch (WEMPatch *wemPatch) |
Adds the primitives of the given patch to this patch. | |
unsigned int | getBlocksize () const |
Returns the block size for the patch. | |
bool | isTrianglePatch () const |
Helper method to check if the patch is a triangle patch. | |
bool | isQuadPatch () const |
Helper method to check if the patch is a quad patch. | |
unsigned int | getNumNodes () const |
Returns the number of nodes in the patch. | |
WEMIndexVector< WEMNode > * | getNodes () |
Returns the pointer to the internal nodes structure. | |
const WEMIndexVector< WEMNode > * | getNodes () const |
Returns the pointer to internal nodes structure. | |
WEMNode * | getNodeAt (unsigned int index) |
Returns the node at the given index. | |
const WEMNode * | getNodeAt (unsigned int index) const |
Returns the node at the given index. | |
WEMNode * | addNode () |
Instantiates a new WEMNode and adds it to the internal nodes vector. | |
WEMNode * | addNodeNoUpdatePrimitiveValueLists () |
Creates and returns a new node without changing the nodes PVL. | |
void | delNode (WEMNode *node) |
Deletes the given node and erases it from the internal nodes vector. | |
void | addNodeValues (WEMNode *target, WEMNode *source, double modifier) |
Adds node values from node source to given target node. | |
void | averageNodeValues (WEMNode *target, WEMNode *source1, WEMNode *source2) |
Averages the given source node values and stores values in the given target node. | |
void | extendNodeValueLists (unsigned int number, double value) |
Extends all node value lists with the given value. | |
unsigned int | getNumEdges () const |
Returns the number of edges in the patch. | |
WEMIndexVector< WEMEdge > * | getEdges () |
Returns the pointer to the internal edges structure. | |
const WEMIndexVector< WEMEdge > * | getEdges () const |
Returns the pointer to the internal edges structure. | |
WEMEdge * | getEdgeAt (unsigned int index) |
Returns the edge at the given index. | |
const WEMEdge * | getEdgeAt (unsigned int index) const |
Returns the edge at the given index. | |
WEMEdge * | addEdge () |
Instantiates a new WEMEdge and adds it to the internal edges vector. | |
void | delEdge (WEMEdge *edge) |
Deletes an edge and erases it from the internal edges vector. | |
bool | hasEdges () const |
Returns whether this patch has any edges. | |
void | addEdgeValues (WEMEdge *target, WEMEdge *source, double modifier) |
Adds the edge values from edge source to given target edge. | |
void | extendEdgeValueLists (unsigned int number, double value) |
Extends all edge value lists with given value. | |
void | addFaceValues (WEMFace *target, WEMFace *source, double modifier) |
Adds the face values from face source to given target face. | |
void | extendFaceValueLists (unsigned int number, double value) |
Extends all face value lists with the given value. | |
void | setNodeTraversalState (bool state) |
Sets the specified traversal state to all nodes. | |
void | setEdgeTraversalState (bool state) |
Sets the specified traversal state to all edges. | |
void | setFaceTraversalState (bool state) |
Sets the specified traversal state to all faces. | |
void | computeNormals () |
Computes all normals. | |
void | flipNormals () |
Flip all normals. | |
void | applyMatrix (const Matrix4 &transformationMatrix) |
Applies the given matrix on all nodes, applies the inverse transposed matrix on all node normals, and invalidates all face bounding boxes. | |
double | getArea () const |
Returns the area of this patch in square mm. | |
double | getVolume () const |
Returns the volume of this patch in cubic mm. | |
bool | pointsOutwards () const |
Checks and returns whether this patch has most normals pointing outwards. | |
WEMBoundingBox * | getBoundingBox () |
Returns the bounding box. | |
const WEMBoundingBox * | getBoundingBox () const |
Returns the bounding box. | |
void | computeBoundingBox () |
Computes the bounding box. | |
void | centerByBoundingBox () |
Centers the patch by its bounding box. | |
void | translate (const Vector3 &offset) |
Translate all nodes by the given offset. | |
double | getLUTMin () const |
Returns the minimum value of the LUT PVL for range determination. | |
double | getLUTMax () const |
Returns the maximum value of the LUT PVL for range determination. | |
void | setType (std::string type) |
Sets the type of the WEMPatch. | |
std::string | getType () const |
Returns the type of the WEMPatch. | |
void | setCreatorId (int id) |
Sets the creator ID of the WEMPatch. | |
int | getCreatorId () const |
Returns the creator ID of the WEMPatch. | |
void | setWEM (WEM *wem) |
Sets the internal pointer to the embracing WEM. | |
WEM * | getWEM () |
Returns the internal pointer to the embracing WEM. | |
const WEM * | getWEM () const |
Returns the internal pointer to the embracing WEM. | |
void | setLabel (std::string label) |
Sets the 'label' attribute of this WEMPatch. | |
std::string | getLabel () const |
Returns the 'label' attribute of this WEMPatch. | |
void | setDescription (std::string desc) |
Sets the 'description' attribute of this WEMPatch. | |
std::string | getDescription () const |
Returns the 'description' attribute of this WEMPatch. | |
unsigned int | getId () const |
Returns the unique ID of this WEMPatch. | |
void | setId (unsigned int newId) |
Sets the unique ID of this WEMPatch. Beware: do not set this ID unless you really know what you do! | |
void | deleteOrphanNodes () |
Deletes orphan nodes (number of edges == number of faces == 0). | |
void | triangulate (WEMTrianglePatch *wemPatch, TriangulationModes triangulationMode) |
Triangulates the patch and adds triangles to the given triangle patch. | |
void | mirror () |
Mirrors the faces in this patch. | |
WEMPatch * | makeCompatible (WEMRequirements *requirements, TriangulationModes triangulationMode) |
Makes WEMPatch compatible with the given requirements. | |
virtual void | buildEdgeConnectivity () |
Builds edge connectivity for the whole WEM. | |
void | buildLocalEdgeConnectivity (WEMFace *face) |
Builds local edge connectivity, only provided face is rebuild. | |
void | removeAllEdges () |
Removes all edges. | |
void | saveTo (OutStreamWrapper &ostreamWrapper, const WEMPersistenceParameters &writeParameters, WEMProgressUpdater &progressUpdater) |
Saves this patch to given output stream. | |
unsigned int | loadFrom (FileMapWrapper &mapper, const WEMPersistenceParameters &persistenceParameters, const WEMReadParameters ¶meters, WEMProgressUpdater &progressUpdater) |
Loads this patch from given memory map. | |
WEMPrimitiveValueList * | createOrGetPrimitiveValueList (const std::string &name) |
Creates a PVL under the given name and returns a pointer to it. | |
WEMPrimitiveValueList * | getPrimitiveValueList (const std::string &name) |
Returns a pointer to the PVL with the given name. | |
const WEMPrimitiveValueList * | getPrimitiveValueList (const std::string &name) const |
Returns a pointer to the PVL with the given name. | |
std::vector< std::string > | getRegisteredPrimitiveValueLists () const |
Returns all available primitive value lists as a vector filled with the registered names of the PVLs. | |
const std::vector< WEMPrimitiveValueList * > & | getPrimitiveValueLists () const |
Returns an array of the primitive value lists. | |
bool | removePrimitiveValueList (const std::string &name) |
Removes the PVL with the given name. Returns whether the operation was successful. | |
bool | hasSingleColoredPVL () |
Returns whether the patch has a PVL set for single colored faces. | |
bool | hasAllFacesSingleColored () |
Returns whether all faces are single colored. | |
unsigned int | getNumSingleColoredFaces () |
Return the number of single-colored faces. | |
bool | isSingleColored (WEMFace *face) |
Returns whether the given face is single colored. | |
bool | isSingleColored (WEMEdge *edge) |
Returns whether an adjacent face to the given edge is single colored. | |
bool | isSingleColored (WEMNode *node) |
Returns whether an adjacent face to the given node is single colored. | |
Additional Inherited Members | |
Protected Member Functions inherited from ml::WEMPatch | |
virtual void | _addFaceUpdatePrimitiveValueLists () |
Updates primitive value lists on addFace. | |
virtual void | _delFaceUpdatePrimitiveValueLists (WEMFace *face) |
Updates primitive value lists on delFace. | |
void | _getReorderedIndicesForFaces (std::vector< unsigned int > &reorderedIndices) |
Protected Attributes inherited from ml::WEMPatch | |
unsigned int | _blocksize |
Initial blocksize for the WEMVector, WEMObjectVector variables used. | |
WEMIndexVector< WEMNode > | _nodes |
The vector that holds all the nodes of the wem. | |
WEMIndexVector< WEMEdge > | _edges |
The vector that holds all the edges of the wem. | |
WEM * | _wem {} |
A pointer to the WEM this WEMPart is in. | |
unsigned int | _uniqueId {} |
Unique ID of this WEM. | |
std::string | _type |
Type of this WEMPatch. | |
int | _creatorId |
ID of the creator of this WEMPatch. | |
WEMAttributes | _attributes |
The attributes of this WEMPatch. | |
WEMBoundingBox | _boundingBox |
The bounding box of this WEMPatch. | |
std::vector< WEMPrimitiveValueList * > | _primitiveValueLists |
The registered primitive value lists vector. | |
This represents a WEMPatch consisting of quads only.
Definition at line 23 of file WEMQuadPatch.h.
ml::WEMQuadPatch::WEMQuadPatch | ( | const WEMQuadPatch & | wemPatch | ) |
Copy constructor.
|
noexcept |
|
override |
Standard destructor.
|
overridevirtual |
Instantiates a new WEMQuad and adds it to the internal faces vector. Returns a pointer to this newly added face.
Implements ml::WEMPatch.
WEMQuad * ml::WEMQuadPatch::addQuad | ( | ) |
Instantiates a new WEMQuad and adds it to the internal faces vector.
Returns a pointer to this newly added face. This also adds a new entry to the face PVLs.
WEMQuad * ml::WEMQuadPatch::addQuadNoUpdatePrimitiveValueLists | ( | ) |
Creates and return a new quad without adding any entry to the the face PVLs.
|
overridevirtual |
Create a (deep) copy of the patch.
Implements ml::WEMPatch.
Deletes a quad and erases it from the internal faces vector.
Returns the face at the given index.
Implements ml::WEMPatch.
Definition at line 60 of file WEMQuadPatch.h.
References getFaceAt().
Referenced by getFaceAt().
Returns the face at the given index.
Implements ml::WEMPatch.
Definition at line 58 of file WEMQuadPatch.h.
|
inline |
Returns the pointer to the internal faces structure.
Definition at line 51 of file WEMQuadPatch.h.
|
inline |
Returns the pointer to the internal faces structure.
Definition at line 53 of file WEMQuadPatch.h.
References getFaces().
Referenced by getFaces().
Returns the number of faces in the patch.
Reimplemented from ml::WEMPatch.
Definition at line 49 of file WEMQuadPatch.h.
|
inlineoverridevirtual |
Get mesh type.
Implements ml::WEMPatch.
Definition at line 44 of file WEMQuadPatch.h.
References ml::WEM_PATCH_QUADS.
Returns the WEMQuad at the given index.
Definition at line 62 of file WEMQuadPatch.h.
Returns the WEMQuad at the given index.
Definition at line 64 of file WEMQuadPatch.h.
References getQuadAt().
Referenced by getQuadAt().
|
noexcept |
|
overridevirtual |
Sorts the faces by the z-position of their centroids.
Implements ml::WEMPatch.