OMToolkit
1.0
The polygonal mesh processing tool.
|
#include <OMProjector.h>
Public Member Functions | |
OMProjector (MeshT *mesh, OpenMesh::VPropHandleT< MatrixT > propertyHandle) | |
bool | ComputeMatrices (ScalarT length, ScalarT resolution, int zDir=ZDIR_Z, bool lengthRelative=false, int xdirection=XDIR_CURVATURE) |
void | rasterizeVertex (OMTransformationSolver< PointT > &solver, VertexHandleT vertex) |
void | rasterizeOnMatrixT (OMTransformationSolver< PointT > &solver, FaceHandleT face, MatrixT &MatrixT) |
Public Attributes | |
ScalarT | m_length |
Rect< PointT > | m_MatrixTDelim |
MeshT * | m_mesh |
ScalarT | m_resolution |
int | m_zDir |
OpenMesh::VPropHandleT< MatrixT > | m_propertyHandle |
OMTriBSPTree | tree |
Static Public Attributes | |
static const int | XDIR_CURVATURE = 0 |
static const int | XDIR_DO_NOT_CHECK = 2 |
static const int | ZDIR_Z = 0 |
static const int | ZDIR_CURVATURE = 2 |
static const int | ZDIR_NORMAL = 4 |
Protected Types | |
typedef Matrix | MatrixT |
typedef MatrixT::Scalar | ScalarT |
typedef Mesh | MeshT |
typedef MeshT::Point | PointT |
typedef MeshT::VertexHandle | VertexHandleT |
typedef MeshT::FaceHandle | FaceHandleT |
typedef MeshT::Normal | VectorT |
Class computing projections on tangent planes in each of the vertices
Mesh | Type of mesh to work with |
Matrix | Type of vertex matrix on a mesh |
|
protected |
Mesh face handle typename
|
protected |
Matrix typename
|
protected |
Mesh typename
|
protected |
Mesh point typename (coordinate)
|
protected |
Matrix scalar typename
|
protected |
Mesh normal typename (vector)
|
protected |
Mesh vertex handle typename
OMProjector::OMProjector | ( | MeshT * | mesh, |
OpenMesh::VPropHandleT< MatrixT > | propertyHandle | ||
) |
Constructor - initializes vital variables
mesh | Pointer to a mesh to work with |
propertyHandle | Handle to a vertex MatrixT property |
bool OMProjector::ComputeMatrices | ( | ScalarT | length, |
ScalarT | resolution, | ||
int | zDir = ZDIR_Z , |
||
bool | lengthRelative = false , |
||
int | xdirection = XDIR_CURVATURE |
||
) |
Method computes tangent rasters on all the vertices
length | Length of a square raster (real length in mesh space) |
resolution | Number of pixels on MatrixT edge |
zDir | Use ZDIR consts for choose which component will be used as Z direction |
xdirection | Direction of X axis on MatrixT (for ex. Maximum curvature direction) |
lengthRelative | If true, length is computed as % of median edges lengths, if not, length is static |
|
inline |
Function rasterizes one triangle given by face handle on a MatrixT with use of transformation MatrixT
solver | OMTransformationSolver with saved transformation MatrixT |
face | Face handle of a triangle |
MatrixT | MatrixT on which we will rasterize a face |
void OMProjector::rasterizeVertex | ( | OMTransformationSolver< PointT > & | solver, |
VertexHandleT | vertex | ||
) |
Function rasterizes neighbourhood of a vertex into a raster given by transformation solver Result is saved in MatrixT property of a vertex
solver | Transformation solver with saved transformation MatrixT |
vertex | Vertex on which we compute a tangent raster |
ScalarT OMToolkit::OMProjector< Mesh, Matrix >::m_length |
Rect<PointT> OMToolkit::OMProjector< Mesh, Matrix >::m_MatrixTDelim |
Current MatrixT rectangle (size)
MeshT* OMToolkit::OMProjector< Mesh, Matrix >::m_mesh |
Mesh with we do computations
OpenMesh::VPropHandleT<MatrixT> OMToolkit::OMProjector< Mesh, Matrix >::m_propertyHandle |
MatrixT property handle
ScalarT OMToolkit::OMProjector< Mesh, Matrix >::m_resolution |
Square MatrixT dimension (resolution)
int OMToolkit::OMProjector< Mesh, Matrix >::m_zDir |
Compute z from curvature
OMTriBSPTree OMToolkit::OMProjector< Mesh, Matrix >::tree |
BSP Tree for Ray casting
|
static |
Curvature direction flag
|
static |
Do not check X direction flag
|
static |
Compute Z direction as projected curvature
|
static |
Compute Z direction as sine of normals angle
|
static |
Compute Z direction as real Z direction