Inviwo 0.9.12-pre
Inviwo documentation
|
Data required to render tetrahedral meshes. More...
#include <tetramesh.h>
Public Member Functions | |
virtual TetraMesh * | clone () const =0 |
virtual int | getNumberOfCells () const =0 |
virtual int | getNumberOfPoints () const =0 |
virtual void | get (std::vector< vec4 > &nodes, std::vector< ivec4 > &nodeIds) const =0 |
virtual mat4 | getBoundingBox () const =0 |
virtual dvec2 | getDataRange () const =0 |
Public Member Functions inherited from inviwo::SpatialEntity | |
SpatialEntity (const glm::mat4 &modelMatrix) | |
SpatialEntity (const glm::mat4 &modelMatrix, const glm::mat4 &worldMatrix) | |
SpatialEntity (const SpatialEntity &rhs) | |
SpatialEntity & | operator= (const SpatialEntity &that) |
glm::vec3 | getOffset () const |
void | setOffset (const glm::vec3 &offset) |
glm::mat3 | getBasis () const |
void | setBasis (const glm::mat3 &basis) |
glm::mat4 | getModelMatrix () const |
void | setModelMatrix (const glm::mat4 &modelMatrix) |
glm::mat4 | getWorldMatrix () const |
void | setWorldMatrix (const glm::mat4 &worldMatrix) |
virtual const SpatialCoordinateTransformer & | getCoordinateTransformer () const |
virtual const SpatialCameraCoordinateTransformer & | getCoordinateTransformer (const Camera &camera) const |
virtual const Axis * | getAxis (size_t index) const =0 |
Additional Inherited Members | |
Protected Attributes inherited from inviwo::SpatialEntity | |
std::unique_ptr< SpatialCoordinateTransformer > | transformer_ |
std::unique_ptr< SpatialCameraCoordinateTransformer > | cameraTransformer_ |
glm::mat4 | modelMatrix_ |
glm::mat4 | worldMatrix_ |
Data required to render tetrahedral meshes.
Provides and interface for the data structures required for rendering a tetrahedral mesh with OpenGL.
Data structures for tetrahedra indexing and face enumeration based on M. Lage, T. Lewiner, H. Lopes, and L. Velho. CHF: A scalable topological data structure for tetrahedral meshes. In Brazilian Symposium on Computer Graphics and Image Processing (SIBGRAPI'05), pp. 349-356, 2005, doi: 10.1109/SIBGRAPI.2005.18
|
pure virtual |
Implements inviwo::SpatialEntity.
|
pure virtual |
Fill the nodes
vector with the 3D coordinates of each node along with its scalar value (vec4). The scalar is stored in the w component. The nodeIds
vector is filled with the node/vertex IDs for each tetrahedron (ivec4). The faces opposite of each node are implicitly encoded. The coordinates are given in Data space and can be transformed to Model space using the Model matrix or SpatialCoordinateTransformer::getDataToModelMatrix().
Implemented in inviwo::VolumeTetraMesh.
|
pure virtual |
Return the bounding box of all nodes of the tetrahedral mesh in world space. The bounding box is represented using a mat4, where all positions are between bbox * (x,y,z,1)
where x, y, and z are between 0 and 1.
Implemented in inviwo::VolumeTetraMesh.
|
pure virtual |
Return the data range of the scalar values
Implemented in inviwo::VolumeTetraMesh.