Developer Documentation
Loading...
Searching...
No Matches
ACG::SceneGraph::StripProcessorT< Mesh > Class Template Reference

#include <ACG/SceneGraph/StripProcessorT.hh>

Public Types

typedef unsigned int Index
 
typedef std::vector< StripStrips
 
typedef Strips::const_iterator StripsIterator
 
typedef Mesh::FaceHandle FaceHandle
 

Public Member Functions

 StripProcessorT (Mesh &_mesh)
 Default constructor.
 
 ~StripProcessorT ()
 Destructor.
 
unsigned int stripify ()
 Compute triangle strips, returns number of strips.
 
void clear ()
 delete all strips
 
unsigned int nStrips () const
 returns number of strips
 
StripsIterator begin () const
 Access strips.
 
StripsIterator end () const
 Access strips.
 

Private Member Functions

void convexityTest (FaceHandle _fh)
 Test whether face is convex.
 
OpenMesh::FPropHandleT< bool >::reference processed (typename Mesh::FaceHandle _fh)
 
OpenMesh::FPropHandleT< bool >::reference used (typename Mesh::FaceHandle _fh)
 

Private Attributes

Meshmesh_
 
Strips strips_
 
OpenMesh::FPropHandleT< bool > processed_
 
OpenMesh::FPropHandleT< bool > used_
 

Strip generation

typedef std::vector< typename Mesh::FaceHandleFaceHandles
 This flag shows if the strips have to be regenerated.
 
bool stripsValid_
 This flag shows if the strips have to be regenerated.
 
void invalidateStrips ()
 Force a strip update.
 
void buildStrips ()
 this method does the main work
 
void buildStripsTriMesh ()
 This method generates strips for triangle meshes.
 
void buildStripsPolyMesh ()
 
void buildStripTriMesh (typename Mesh::HalfedgeHandle _start_hh, Strip &_strip, FaceHandles &_faces)
 build a strip from a given halfedge (in both directions) of a triangle mesh
 
void buildStripPolyMesh (typename Mesh::HalfedgeHandle _start_hh, Strip &_strip, FaceHandles &_faces)
 build a strip from a given halfedge (in both directions) of a polymesh
 

Per edge drawing arrays handling

std::vector< ACG::Vec3fperEdgeVertexBuffer_
 Per Edge vertex buffer (glLines)
 
std::vector< ACG::Vec4fperEdgeColorBuffer_
 Per Edge color buffer.
 
bool updatePerEdgeBuffers_
 This flag controls if an update is really necessary.
 
ACG::Vec3fperEdgeVertexBuffer ()
 get a pointer to the per edge vertex buffer
 
ACG::Vec4fperEdgeColorBuffer ()
 get a pointer to the per edge color buffer
 
void invalidatePerEdgeBuffers ()
 Update of the buffers.
 
void updatePerEdgeBuffers ()
 Update all per edge drawing buffer n The updated buffers are: per edge vertex buffer ( 2 vertices per edge )
 

Per halfedge drawing arrays handling

std::vector< ACG::Vec3fperHalfedgeVertexBuffer_
 Per Edge vertex buffer (glLines)
 
std::vector< ACG::Vec4fperHalfedgeColorBuffer_
 Per Edge color buffer.
 
bool updatePerHalfedgeBuffers_
 This flag controls if an update is really necessary.
 
ACG::Vec3fperHalfedgeVertexBuffer ()
 get a pointer to the per edge vertex buffer
 
ACG::Vec4fperHalfedgeColorBuffer ()
 get a pointer to the per edge color buffer
 
void invalidatePerHalfedgeBuffers ()
 Update of the buffers.
 
void updatePerHalfedgeBuffers ()
 Update all per edge drawing buffer n The updated buffers are: per edge vertex buffer ( 2 vertices per edge )
 
Mesh::Point halfedge_point (const typename Mesh::HalfedgeHandle _heh)
 compute halfedge point compute visulization point for halfedge (shifted to interior of face)
 

Per face drawing arrays handling

std::vector< ACG::Vec3fperFaceVertexBuffer_
 Buffer holding vertices for per face rendering.
 
std::vector< ACG::Vec4fperFaceColorBuffer_
 Buffer holding vertices for per face rendering.
 
std::vector< ACG::Vec3fperFaceNormalBuffer_
 Buffer holding vertices for per face rendering.
 
std::vector< ACG::Vec3fperFacePerVertexNormalBuffer_
 Buffer holding vertices for per face rendering.
 
bool updatePerFaceBuffers_
 This flag controls if an update is really necessary.
 
ACG::Vec3fperFaceVertexBuffer ()
 get a pointer to the per face vertex buffer
 
ACG::Vec3fperFaceNormalBuffer ()
 get a pointer to the per face normal buffer
 
ACG::Vec3fperFacePerVertexNormalBuffer ()
 get a pointer to the per face per vertex normal buffer
 
ACG::Vec4fperFaceColorBuffer ()
 get a pointer to the per face color buffer
 
unsigned int perFaceVertexBufferSize ()
 Get the number of elements in the face picking buffers.
 
void invalidatePerFaceBuffers ()
 Update of the buffers.
 
void updatePerFaceBuffers ()
 Update all per face buffers.
 

vertex picking functions

std::vector< ACG::Vec4ucpickVertexColorBuf_
 The color buffer used for vertex picking.
 
void updatePickingVertices (ACG::GLState &_state, uint _offset=0)
 
ACG::Vec4ucpickVertexColorBuffer ()
 get a pointer to the per vertex picking color buffer
 

Edge picking functions

std::vector< ACG::Vec4ucpickEdgeColorBuf_
 
void updatePickingEdges (ACG::GLState &_state, uint _offset=0)
 
ACG::Vec4ucpickEdgeColorBuffer ()
 get a pointer to the per edge picking color buffer
 

Face picking functions

std::vector< ACG::Vec4ucpickFaceColorBuf_
 Call this function to update the color picking array.
 
void updatePickingFaces (ACG::GLState &_state)
 Call this function to update the color picking array.
 
ACG::Vec4ucpickFaceColorBuffer ()
 get a pointer to the per face picking color buffer
 
void updatePickingFacesTrimesh (ACG::GLState &_state)
 Call this function to update the color picking array.
 
void updatePickingFacesPolymesh (ACG::GLState &_state)
 Call this function to update the color picking array.
 

Any picking functions

std::vector< ACG::Vec4ucpickAnyColorBuf_
 Call this function to update the color picking array.
 
void updatePickingAny (ACG::GLState &_state)
 Call this function to update the color picking array.
 
ACG::Vec4ucpickAnyColorBuffer ()
 get a pointer to the any picking color buffer
 

Per face Texture handling

std::string textureIndexPropertyName_
 Property for the per face texture index.
 
std::string perFaceTextureCoordinatePropertyName_
 Property for the per face texture coordinates.
 
std::vector< ACG::Vec2fperFaceTextureCoordArray_
 Property for the per face texture index.
 
std::vector< TextureRenderInfotextureRenderData_
 Property for the per face texture index.
 
void setIndexPropertyName (std::string _indexPropertyName)
 set the name of the property used for texture index specification
 
const std::string & indexPropertyName () const
 get the name of the texture index property
 
void setPerFaceTextureCoordinatePropertyName (std::string _perFaceTextureCoordinatePropertyName)
 set the name of the property used for texture coordinate
 
bool perFaceTextureCoordinateAvailable ()
 Check if per Face Texture coordinates are available.
 
bool perFaceTextureIndexAvailable ()
 Check if textureindicies are available.
 
ACG::Vec2fperFacePerVertexTextureCoordBuffer ()
 get a pointer to the per face per vertex texture coor buffer
 
std::vector< TextureRenderInfo > * textureRenderData ()
 get rendering information for texture data
 

Detailed Description

template<class Mesh>
class ACG::SceneGraph::StripProcessorT< Mesh >

This class decomposes a mesh into several strips

Definition at line 127 of file StripProcessorT.hh.

Member Typedef Documentation

◆ FaceHandle

template<class Mesh >
typedef Mesh::FaceHandle ACG::SceneGraph::StripProcessorT< Mesh >::FaceHandle

Definition at line 134 of file StripProcessorT.hh.

◆ FaceHandles

template<class Mesh >
typedef std::vector<typename Mesh::FaceHandle> ACG::SceneGraph::StripProcessorT< Mesh >::FaceHandles
private

This flag shows if the strips have to be regenerated.

Definition at line 193 of file StripProcessorT.hh.

◆ Index

template<class Mesh >
typedef unsigned int ACG::SceneGraph::StripProcessorT< Mesh >::Index

Definition at line 131 of file StripProcessorT.hh.

◆ Strips

template<class Mesh >
typedef std::vector<Strip> ACG::SceneGraph::StripProcessorT< Mesh >::Strips

Definition at line 132 of file StripProcessorT.hh.

◆ StripsIterator

template<class Mesh >
typedef Strips::const_iterator ACG::SceneGraph::StripProcessorT< Mesh >::StripsIterator

Definition at line 133 of file StripProcessorT.hh.

Constructor & Destructor Documentation

◆ StripProcessorT()

template<class Mesh >
ACG::SceneGraph::StripProcessorT< Mesh >::StripProcessorT ( Mesh _mesh)

Default constructor.

Definition at line 73 of file StripProcessorT_impl.hh.

◆ ~StripProcessorT()

Destructor.

Definition at line 87 of file StripProcessorT_impl.hh.

Member Function Documentation

◆ begin()

template<class Mesh >
StripsIterator ACG::SceneGraph::StripProcessorT< Mesh >::begin ( ) const
inline

Access strips.

Definition at line 152 of file StripProcessorT.hh.

◆ buildStripPolyMesh()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::buildStripPolyMesh ( typename Mesh::HalfedgeHandle  _start_hh,
Strip _strip,
FaceHandles _faces 
)
private

build a strip from a given halfedge (in both directions) of a polymesh

Todo:
Implement texture processing here

Definition at line 313 of file StripProcessorT_impl.hh.

◆ buildStrips()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::buildStrips ( )
private

this method does the main work

Definition at line 158 of file StripProcessorT_impl.hh.

◆ buildStripsPolyMesh()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::buildStripsPolyMesh ( )
private

This method generates strips for polyMeshes meshes

The strips generated in this function are triangle strips. The function takes arbitrary polygons as input and triangulates them.

Definition at line 189 of file StripProcessorT_impl.hh.

◆ buildStripsTriMesh()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::buildStripsTriMesh ( )
private

This method generates strips for triangle meshes.

Definition at line 252 of file StripProcessorT_impl.hh.

◆ buildStripTriMesh()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::buildStripTriMesh ( typename Mesh::HalfedgeHandle  _start_hh,
Strip _strip,
FaceHandles _faces 
)
private

build a strip from a given halfedge (in both directions) of a triangle mesh

Todo:
Implement texture processing here

Definition at line 514 of file StripProcessorT_impl.hh.

◆ clear()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::clear ( )
inline

delete all strips

Definition at line 146 of file StripProcessorT.hh.

◆ convexityTest()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::convexityTest ( FaceHandle  _fh)
private

Test whether face is convex.

Definition at line 123 of file StripProcessorT_impl.hh.

◆ end()

template<class Mesh >
StripsIterator ACG::SceneGraph::StripProcessorT< Mesh >::end ( ) const
inline

Access strips.

Definition at line 154 of file StripProcessorT.hh.

◆ halfedge_point()

template<class Mesh >
Mesh::Point ACG::SceneGraph::StripProcessorT< Mesh >::halfedge_point ( const typename Mesh::HalfedgeHandle  _heh)
private

compute halfedge point compute visulization point for halfedge (shifted to interior of face)

Definition at line 838 of file StripProcessorT_impl.hh.

◆ indexPropertyName()

template<class Mesh >
const std::string & ACG::SceneGraph::StripProcessorT< Mesh >::indexPropertyName ( ) const
inline

get the name of the texture index property

Definition at line 516 of file StripProcessorT.hh.

◆ invalidatePerEdgeBuffers()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::invalidatePerEdgeBuffers ( )
inline

Update of the buffers.

This function will set all per edge buffers to invalid and will force an update whe they are requested

Definition at line 246 of file StripProcessorT.hh.

◆ invalidatePerFaceBuffers()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::invalidatePerFaceBuffers ( )
inline

Update of the buffers.

This function will set all per face buffers to invalid and will force an update whe they are requested

Definition at line 362 of file StripProcessorT.hh.

◆ invalidatePerHalfedgeBuffers()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::invalidatePerHalfedgeBuffers ( )
inline

Update of the buffers.

This function will set all per edge buffers to invalid and will force an update whe they are requested

Definition at line 289 of file StripProcessorT.hh.

◆ invalidateStrips()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::invalidateStrips ( )
inline

Force a strip update.

Definition at line 189 of file StripProcessorT.hh.

◆ nStrips()

template<class Mesh >
unsigned int ACG::SceneGraph::StripProcessorT< Mesh >::nStrips ( ) const
inline

returns number of strips

Definition at line 149 of file StripProcessorT.hh.

◆ perEdgeColorBuffer()

template<class Mesh >
ACG::Vec4f * ACG::SceneGraph::StripProcessorT< Mesh >::perEdgeColorBuffer ( )

get a pointer to the per edge color buffer

This function will return a pointer to the first element of the color buffer.

Definition at line 791 of file StripProcessorT_impl.hh.

◆ perEdgeVertexBuffer()

template<class Mesh >
ACG::Vec3f * ACG::SceneGraph::StripProcessorT< Mesh >::perEdgeVertexBuffer ( )

get a pointer to the per edge vertex buffer

This function will return a pointer to the first element of the vertex buffer.

Definition at line 781 of file StripProcessorT_impl.hh.

◆ perFaceColorBuffer()

template<class Mesh >
ACG::Vec4f * ACG::SceneGraph::StripProcessorT< Mesh >::perFaceColorBuffer ( )

get a pointer to the per face color buffer

This function will return a pointer to the first element of the per face color buffer. Use updatePerFaceBuffers to update the buffer before you render it via ACG::GLState::colorPointer. The buffer contains 3 equal normals per face.

Definition at line 1092 of file StripProcessorT_impl.hh.

◆ perFaceNormalBuffer()

template<class Mesh >
ACG::Vec3f * ACG::SceneGraph::StripProcessorT< Mesh >::perFaceNormalBuffer ( )

get a pointer to the per face normal buffer

This function will return a pointer to the first element of the per face normal buffer. Use updatePerFaceBuffers to update the buffer before you render it via ACG::GLState::normalPointer. The buffer contains 3 equal normals per face.

Definition at line 1070 of file StripProcessorT_impl.hh.

◆ perFacePerVertexNormalBuffer()

template<class Mesh >
ACG::Vec3f * ACG::SceneGraph::StripProcessorT< Mesh >::perFacePerVertexNormalBuffer ( )

get a pointer to the per face per vertex normal buffer

This function will return a pointer to the first element of the per face per vertex normal buffer. Use updatePerFaceBuffers to update the buffer before you render it via ACG::GLState::normalPointer. The buffer contains 3 equal normals per face.

Definition at line 1081 of file StripProcessorT_impl.hh.

◆ perFacePerVertexTextureCoordBuffer()

template<class Mesh >
ACG::Vec2f * ACG::SceneGraph::StripProcessorT< Mesh >::perFacePerVertexTextureCoordBuffer ( )
inline

get a pointer to the per face per vertex texture coor buffer

This function will return a pointer to the first element of the buffer.

Definition at line 543 of file StripProcessorT.hh.

◆ perFaceTextureCoordinateAvailable()

template<class Mesh >
bool ACG::SceneGraph::StripProcessorT< Mesh >::perFaceTextureCoordinateAvailable ( )

Check if per Face Texture coordinates are available.

If this function returns true, a per face per vertex texture array is available

Definition at line 1122 of file StripProcessorT_impl.hh.

◆ perFaceTextureIndexAvailable()

template<class Mesh >
bool ACG::SceneGraph::StripProcessorT< Mesh >::perFaceTextureIndexAvailable ( )

Check if textureindicies are available.

If this function returns true, the strip processor will respect textures during strip generation. Each returned strip has than an index that has to be used as a texture index during strip rendering.

Definition at line 1137 of file StripProcessorT_impl.hh.

◆ perFaceVertexBuffer()

template<class Mesh >
ACG::Vec3f * ACG::SceneGraph::StripProcessorT< Mesh >::perFaceVertexBuffer ( )

get a pointer to the per face vertex buffer

This function will return a pointer to the first element of the per face vertex buffer. Use updatePerFaceBuffers to update the buffer before you render it via ACG::GLState::colorPointer.

Definition at line 1058 of file StripProcessorT_impl.hh.

◆ perFaceVertexBufferSize()

template<class Mesh >
unsigned int ACG::SceneGraph::StripProcessorT< Mesh >::perFaceVertexBufferSize ( )
inline

Get the number of elements in the face picking buffers.

Definition at line 355 of file StripProcessorT.hh.

◆ perHalfedgeColorBuffer()

template<class Mesh >
ACG::Vec4f * ACG::SceneGraph::StripProcessorT< Mesh >::perHalfedgeColorBuffer ( )

get a pointer to the per edge color buffer

This function will return a pointer to the first element of the color buffer.

Definition at line 877 of file StripProcessorT_impl.hh.

◆ perHalfedgeVertexBuffer()

template<class Mesh >
ACG::Vec3f * ACG::SceneGraph::StripProcessorT< Mesh >::perHalfedgeVertexBuffer ( )

get a pointer to the per edge vertex buffer

This function will return a pointer to the first element of the vertex buffer.

Definition at line 867 of file StripProcessorT_impl.hh.

◆ pickAnyColorBuffer()

template<class Mesh >
ACG::Vec4uc * ACG::SceneGraph::StripProcessorT< Mesh >::pickAnyColorBuffer ( )
inline

get a pointer to the any picking color buffer

This function will return a pointer to the first element of the picking buffer. Use updatePickingAny to update the buffer before you render it via ACG::GLState::colorPointer.

Definition at line 493 of file StripProcessorT.hh.

◆ pickEdgeColorBuffer()

template<class Mesh >
ACG::Vec4uc * ACG::SceneGraph::StripProcessorT< Mesh >::pickEdgeColorBuffer ( )
inline

get a pointer to the per edge picking color buffer

This function will return a pointer to the first element of the picking buffer. Use updatePickingEdges to update the buffer before you render it via ACG::GLState::colorPointer.

Definition at line 430 of file StripProcessorT.hh.

◆ pickFaceColorBuffer()

template<class Mesh >
ACG::Vec4uc * ACG::SceneGraph::StripProcessorT< Mesh >::pickFaceColorBuffer ( )
inline

get a pointer to the per face picking color buffer

This function will return a pointer to the first element of the picking buffer. Use updatePickingFaces to update the buffer before you render it via ACG::GLState::colorPointer.

Definition at line 457 of file StripProcessorT.hh.

◆ pickVertexColorBuffer()

template<class Mesh >
ACG::Vec4uc * ACG::SceneGraph::StripProcessorT< Mesh >::pickVertexColorBuffer ( )
inline

get a pointer to the per vertex picking color buffer

This function will return a pointer to the first element of the picking buffer. Use updatePickingVertices to update the buffer before you render it via ACG::GLState::colorPointer.

Definition at line 401 of file StripProcessorT.hh.

◆ processed()

template<class Mesh >
OpenMesh::FPropHandleT< bool >::reference ACG::SceneGraph::StripProcessorT< Mesh >::processed ( typename Mesh::FaceHandle  _fh)
inlineprivate

Definition at line 164 of file StripProcessorT.hh.

◆ setIndexPropertyName()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::setIndexPropertyName ( std::string  _indexPropertyName)

set the name of the property used for texture index specification

The given property name will define a texture index. The strip processor checks this property and generates strips which contain only the same index. If the property is not found, strips will be independend of this property

Definition at line 1151 of file StripProcessorT_impl.hh.

◆ setPerFaceTextureCoordinatePropertyName()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::setPerFaceTextureCoordinatePropertyName ( std::string  _perFaceTextureCoordinatePropertyName)

set the name of the property used for texture coordinate

The given property name will define per face Texture coordinates. This property has to be a halfedge property. The coordinate on each edge is the texture coordinate of the to vertex. If this property is not available, textures will not be processed by the strip processor.

Definition at line 1103 of file StripProcessorT_impl.hh.

◆ stripify()

template<class Mesh >
unsigned int ACG::SceneGraph::StripProcessorT< Mesh >::stripify ( )

Compute triangle strips, returns number of strips.

Definition at line 128 of file StripProcessorT_impl.hh.

◆ textureRenderData()

template<class Mesh >
std::vector< TextureRenderInfo > * ACG::SceneGraph::StripProcessorT< Mesh >::textureRenderData ( )
inline

get rendering information for texture data

This function returns a pointer to the texture render data produced by the stripprocessor each pair defines a texture index and te number of faces which have to be rendered for this texture before switching to the next one.

Definition at line 552 of file StripProcessorT.hh.

◆ updatePerEdgeBuffers()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::updatePerEdgeBuffers ( )
private

Update all per edge drawing buffer n The updated buffers are: per edge vertex buffer ( 2 vertices per edge )

Definition at line 745 of file StripProcessorT_impl.hh.

◆ updatePerFaceBuffers()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::updatePerFaceBuffers ( )
private

Update all per face buffers.

The updated buffers are: per face vertex buffer, per face normal buffer (3 equal normals per face), per face color buffer (3 equal colors per face)

Definition at line 887 of file StripProcessorT_impl.hh.

◆ updatePerHalfedgeBuffers()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::updatePerHalfedgeBuffers ( )
private

Update all per edge drawing buffer n The updated buffers are: per edge vertex buffer ( 2 vertices per edge )

Definition at line 802 of file StripProcessorT_impl.hh.

◆ updatePickingAny()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::updatePickingAny ( ACG::GLState _state)

Call this function to update the color picking array.

This function calls the updatePickingVertices, updatePickingEdges, updatePickingVertices functions with an appropriate offset so that the standard arrays will be updated.

Definition at line 733 of file StripProcessorT_impl.hh.

◆ updatePickingEdges()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::updatePickingEdges ( ACG::GLState _state,
uint  _offset = 0 
)

Call this function to update the color picking array The _offsett value can be used to shift the color in the resulting arrays. pick Any uses the offset to generate arrays for picking everything.

Definition at line 664 of file StripProcessorT_impl.hh.

◆ updatePickingFaces()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::updatePickingFaces ( ACG::GLState _state)

Call this function to update the color picking array.

Definition at line 688 of file StripProcessorT_impl.hh.

◆ updatePickingVertices()

template<class Mesh >
void ACG::SceneGraph::StripProcessorT< Mesh >::updatePickingVertices ( ACG::GLState _state,
uint  _offset = 0 
)

Call this function to update the color picking array The _offsett value can be used to shift the color in the resulting arrays. pick Any uses the offset to generate arrays for picking everything.

Definition at line 648 of file StripProcessorT_impl.hh.

◆ used()

template<class Mesh >
OpenMesh::FPropHandleT< bool >::reference ACG::SceneGraph::StripProcessorT< Mesh >::used ( typename Mesh::FaceHandle  _fh)
inlineprivate

Definition at line 167 of file StripProcessorT.hh.

Member Data Documentation

◆ mesh_

template<class Mesh >
Mesh& ACG::SceneGraph::StripProcessorT< Mesh >::mesh_
private

Definition at line 175 of file StripProcessorT.hh.

◆ perEdgeColorBuffer_

template<class Mesh >
std::vector< ACG::Vec4f > ACG::SceneGraph::StripProcessorT< Mesh >::perEdgeColorBuffer_
private

Per Edge color buffer.

Definition at line 259 of file StripProcessorT.hh.

◆ perEdgeVertexBuffer_

template<class Mesh >
std::vector< ACG::Vec3f > ACG::SceneGraph::StripProcessorT< Mesh >::perEdgeVertexBuffer_
private

Per Edge vertex buffer (glLines)

Definition at line 256 of file StripProcessorT.hh.

◆ perFaceColorBuffer_

template<class Mesh >
std::vector< ACG::Vec4f > ACG::SceneGraph::StripProcessorT< Mesh >::perFaceColorBuffer_
private

Buffer holding vertices for per face rendering.

Definition at line 373 of file StripProcessorT.hh.

◆ perFaceNormalBuffer_

template<class Mesh >
std::vector< ACG::Vec3f > ACG::SceneGraph::StripProcessorT< Mesh >::perFaceNormalBuffer_
private

Buffer holding vertices for per face rendering.

Definition at line 374 of file StripProcessorT.hh.

◆ perFacePerVertexNormalBuffer_

template<class Mesh >
std::vector< ACG::Vec3f > ACG::SceneGraph::StripProcessorT< Mesh >::perFacePerVertexNormalBuffer_
private

Buffer holding vertices for per face rendering.

Definition at line 375 of file StripProcessorT.hh.

◆ perFaceTextureCoordArray_

template<class Mesh >
std::vector< ACG::Vec2f > ACG::SceneGraph::StripProcessorT< Mesh >::perFaceTextureCoordArray_
private

Property for the per face texture index.

This property is used by the mesh for texture index specification. If this is invalid, then it is assumed that there is one or no active texture. This means that the generated strips will be independent of texture information.

Definition at line 572 of file StripProcessorT.hh.

◆ perFaceTextureCoordinatePropertyName_

template<class Mesh >
std::string ACG::SceneGraph::StripProcessorT< Mesh >::perFaceTextureCoordinatePropertyName_
private

Property for the per face texture coordinates.

This property is used by the mesh for texture coordinate specification. If this is invalid, then the strip processor will ignore per face textures during processing.

Definition at line 570 of file StripProcessorT.hh.

◆ perFaceVertexBuffer_

template<class Mesh >
std::vector< ACG::Vec3f > ACG::SceneGraph::StripProcessorT< Mesh >::perFaceVertexBuffer_
private

Buffer holding vertices for per face rendering.

Definition at line 372 of file StripProcessorT.hh.

◆ perHalfedgeColorBuffer_

template<class Mesh >
std::vector< ACG::Vec4f > ACG::SceneGraph::StripProcessorT< Mesh >::perHalfedgeColorBuffer_
private

Per Edge color buffer.

Definition at line 308 of file StripProcessorT.hh.

◆ perHalfedgeVertexBuffer_

template<class Mesh >
std::vector< ACG::Vec3f > ACG::SceneGraph::StripProcessorT< Mesh >::perHalfedgeVertexBuffer_
private

Per Edge vertex buffer (glLines)

Definition at line 305 of file StripProcessorT.hh.

◆ pickAnyColorBuf_

template<class Mesh >
std::vector< ACG::Vec4uc > ACG::SceneGraph::StripProcessorT< Mesh >::pickAnyColorBuf_
private

Call this function to update the color picking array.

This function calls the updatePickingVertices, updatePickingEdges, updatePickingVertices functions with an appropriate offset so that the standard arrays will be updated.

Definition at line 497 of file StripProcessorT.hh.

◆ pickEdgeColorBuf_

template<class Mesh >
std::vector< ACG::Vec4uc > ACG::SceneGraph::StripProcessorT< Mesh >::pickEdgeColorBuf_
private

Call this function to update the color picking array The _offsett value can be used to shift the color in the resulting arrays. pick Any uses the offset to generate arrays for picking everything.

Definition at line 436 of file StripProcessorT.hh.

◆ pickFaceColorBuf_

template<class Mesh >
std::vector< ACG::Vec4uc > ACG::SceneGraph::StripProcessorT< Mesh >::pickFaceColorBuf_
private

Call this function to update the color picking array.

Definition at line 469 of file StripProcessorT.hh.

◆ pickVertexColorBuf_

template<class Mesh >
std::vector< ACG::Vec4uc > ACG::SceneGraph::StripProcessorT< Mesh >::pickVertexColorBuf_
private

The color buffer used for vertex picking.

Definition at line 406 of file StripProcessorT.hh.

◆ processed_

template<class Mesh >
OpenMesh::FPropHandleT<bool> ACG::SceneGraph::StripProcessorT< Mesh >::processed_
private

Definition at line 177 of file StripProcessorT.hh.

◆ strips_

template<class Mesh >
Strips ACG::SceneGraph::StripProcessorT< Mesh >::strips_
private

Definition at line 176 of file StripProcessorT.hh.

◆ stripsValid_

template<class Mesh >
bool ACG::SceneGraph::StripProcessorT< Mesh >::stripsValid_
private

This flag shows if the strips have to be regenerated.

Definition at line 196 of file StripProcessorT.hh.

◆ textureIndexPropertyName_

template<class Mesh >
std::string ACG::SceneGraph::StripProcessorT< Mesh >::textureIndexPropertyName_
private

Property for the per face texture index.

This property is used by the mesh for texture index specification. If this is invalid, then it is assumed that there is one or no active texture. This means that the generated strips will be independent of texture information.

Definition at line 563 of file StripProcessorT.hh.

◆ textureRenderData_

template<class Mesh >
std::vector< TextureRenderInfo > ACG::SceneGraph::StripProcessorT< Mesh >::textureRenderData_
private

Property for the per face texture index.

This property is used by the mesh for texture index specification. If this is invalid, then it is assumed that there is one or no active texture. This means that the generated strips will be independent of texture information.

Definition at line 574 of file StripProcessorT.hh.

◆ updatePerEdgeBuffers_

template<class Mesh >
bool ACG::SceneGraph::StripProcessorT< Mesh >::updatePerEdgeBuffers_
private

This flag controls if an update is really necessary.

Definition at line 262 of file StripProcessorT.hh.

◆ updatePerFaceBuffers_

template<class Mesh >
bool ACG::SceneGraph::StripProcessorT< Mesh >::updatePerFaceBuffers_
private

This flag controls if an update is really necessary.

Definition at line 378 of file StripProcessorT.hh.

◆ updatePerHalfedgeBuffers_

template<class Mesh >
bool ACG::SceneGraph::StripProcessorT< Mesh >::updatePerHalfedgeBuffers_
private

This flag controls if an update is really necessary.

Definition at line 311 of file StripProcessorT.hh.

◆ used_

template<class Mesh >
OpenMesh::FPropHandleT<bool> ACG::SceneGraph::StripProcessorT< Mesh >::used_
private

Definition at line 177 of file StripProcessorT.hh.


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