Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

mitkOoCTriangleMesh Class Reference

mitkOoCTriangleMesh - a concrete class for out-of-core triangle meshes More...

#include <mitkOoCTriangleMesh.h>

Inherits mitkTriangleMesh.

Inheritance diagram for mitkOoCTriangleMesh:

Inheritance graph
[legend]
Collaboration diagram for mitkOoCTriangleMesh:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual void PrintSelf (ostream &os)
 mitkOoCTriangleMesh ()
void SetVertexBlockSize (unsigned int vn)
void SetFaceBlockSize (unsigned int fn)
virtual int GetDataObjectType () const
virtual void Initialize ()
virtual unsigned long long GetActualMemorySize () const
virtual void ShallowCopy (mitkDataObject *src)
virtual void DeepCopy (mitkDataObject *src)
virtual void SetVertexNumber (size_type number)
virtual void SetFaceNumber (size_type number)
virtual float * GetVertexData ()
virtual index_type * GetFaceData ()
virtual void ReverseNormals ()
virtual bool TestClockwise ()
void SetVertexBufferSize (size_type s)
void SetFaceBufferSize (size_type s)
void SetBufferedVertexBlockNum (unsigned int n)
unsigned int GetBufferedVertexBlockNum ()
void SetBufferedFaceBlockNum (unsigned int n)
unsigned int GetBufferedFaceBlockNum ()
void SetPathOfDiskBuffer (char const *path)
char const * GetPathOfDiskBuffer ()

Detailed Description

mitkOoCTriangleMesh - a concrete class for out-of-core triangle meshes

mitkOoCTriangleMesh is a concrete implementation of triangle mesh, for representation of a very large (out-of-core) 3D object (can NOT be loaded to the main memory entirely).

See also:
mitkICTriangleMesh for in-core implementation of triangle mesh


Constructor & Destructor Documentation

mitkOoCTriangleMesh::mitkOoCTriangleMesh  ) 
 

Default constructor.


Member Function Documentation

virtual void mitkOoCTriangleMesh::DeepCopy mitkDataObject src  )  [virtual]
 

Deep copy.

Parameters:
src pointer to the source mitkDataObject

Reimplemented from mitkTriangleMesh.

virtual unsigned long long mitkOoCTriangleMesh::GetActualMemorySize  )  const [virtual]
 

Get the actual size of the data in bytes.

Returns:
Return the actual size of the data in bytes.

Implements mitkDataObject.

unsigned int mitkOoCTriangleMesh::GetBufferedFaceBlockNum  ) 
 

Get the number of buffered face blocks in memory.

Returns:
Return the number of buffered face blocks.

unsigned int mitkOoCTriangleMesh::GetBufferedVertexBlockNum  ) 
 

Get the number of buffered vertex blocks in memory.

Returns:
Return the number of buffered vertex blocks.

virtual int mitkOoCTriangleMesh::GetDataObjectType  )  const [inline, virtual]
 

Return what type of data object this is.

Returns:
Return the type of this data object.

Reimplemented from mitkTriangleMesh.

virtual index_type* mitkOoCTriangleMesh::GetFaceData  )  [inline, virtual]
 

You can not get a permanent pointer to the entire face data since it can not be loaded to the main memory all together, so do not call this function when using a mitkOoCTriangleMesh object, and it will always return NULL.

Returns:
Return NULL.
Warning:
Do not call this function to get face data. Use mitkMesh::GetFace() or mitkMesh::GetTriangleFaces() instead.

Implements mitkMesh.

char const* mitkOoCTriangleMesh::GetPathOfDiskBuffer  ) 
 

Get the full path of the disk buffer which contains all the data of the mesh.

Returns:
Return the full path of the disk buffer.

virtual float* mitkOoCTriangleMesh::GetVertexData  )  [inline, virtual]
 

You can not get a permanent pointer to the entire vertex data since it can not be loaded to the main memory all together, so do not call this function when using a mitkOoCTriangleMesh object, and it will always return NULL.

Returns:
Return NULL.
Warning:
Do not call this function to get vertex data. Use mitkMesh::GetVertex() or mitkMesh::GetVertices() instead.

Implements mitkMesh.

virtual void mitkOoCTriangleMesh::Initialize  )  [virtual]
 

Make the output data ready for new data to be inserted.

Reimplemented from mitkTriangleMesh.

virtual void mitkOoCTriangleMesh::PrintSelf ostream &  os  )  [virtual]
 

Print the necessary information about this object for the debugging purpose.

Parameters:
os The specified ostream to output information.

Reimplemented from mitkTriangleMesh.

virtual void mitkOoCTriangleMesh::ReverseNormals  )  [virtual]
 

Reverse normals.

Reimplemented from mitkMesh.

void mitkOoCTriangleMesh::SetBufferedFaceBlockNum unsigned int  n  ) 
 

Set the number of buffered face blocks in memory.

Parameters:
n the number of buffered face blocks
Note:
When calling this function, the buffer size is also calculated by (face block size) * (face block number), so it is unnecessary to call SetFaceBufferSize() again.

void mitkOoCTriangleMesh::SetBufferedVertexBlockNum unsigned int  n  ) 
 

Set the number of buffered vertex blocks in memory.

Parameters:
n the number of buffered vertex blocks
Note:
When calling this function, the buffer size is also calculated by (vertex block size) * (vertex block number), so it is unnecessary to call SetVertexBufferSize() again.

void mitkOoCTriangleMesh::SetFaceBlockSize unsigned int  fn  ) 
 

Set the size of the face block (number of triangles of one block).

Parameters:
fn the number of triangles of one block

void mitkOoCTriangleMesh::SetFaceBufferSize size_type  s  ) 
 

Set the size of the memory buffer for containing cached face blocks.

Parameters:
s the size of the buffer in bytes
Note:
When calling this function, the number of buffered slice is also calculated by (buffer size) / (face block size), so it is unnecessary to call SetBufferedFaceBlockNum() again.

virtual void mitkOoCTriangleMesh::SetFaceNumber size_type  number  )  [inline, virtual]
 

Set the mesh's faces' number and allocate memory.

Parameters:
number the number of faces

Implements mitkMesh.

void mitkOoCTriangleMesh::SetPathOfDiskBuffer char const *  path  ) 
 

Set the full path of the disk buffer to contain all the data of the mesh.

Parameters:
path the full path of the disk buffer

void mitkOoCTriangleMesh::SetVertexBlockSize unsigned int  vn  ) 
 

Set the size of the vertex block (number of vertices of one block).

Parameters:
vn the number of vertices of one block

void mitkOoCTriangleMesh::SetVertexBufferSize size_type  s  ) 
 

Set the size of the memory buffer for containing cached vertex blocks.

Parameters:
s the size of the buffer in bytes
Note:
When calling this function, the number of buffered vertex blocks is also calculated by (buffer size) / (vertex block size), so it is unnecessary to call SetBufferedVertexBlockNum() again.

virtual void mitkOoCTriangleMesh::SetVertexNumber size_type  number  )  [inline, virtual]
 

Set the mesh's vertices' number and allocate memory.

Parameters:
number the number of vertices

Implements mitkMesh.

virtual void mitkOoCTriangleMesh::ShallowCopy mitkDataObject src  )  [virtual]
 

Shallowcopy.

Parameters:
src pointer to the source mitkDataObject

Reimplemented from mitkTriangleMesh.

virtual bool mitkOoCTriangleMesh::TestClockwise  )  [virtual]
 

Test the orientation of front-facing triangles.

Returns:
Return true if the orientation of front-facing triangles is clockwise, otherwise return false.

Implements mitkMesh.


The documentation for this class was generated from the following file:
Generated on Tue Feb 25 15:04:24 2014 for MITK (Medical Imaging ToolKit) by  doxygen 1.4.3