Visualization Library

A lightweight C++ OpenGL middleware for 2D/3D graphics
[Home] [Tutorials] [All Classes] [Grouped Classes]
Classes | Public Member Functions | Protected Member Functions | Protected Attributes

vl::EdgeExtractor Class Reference

The EdgeExtractor class extracts the edges from one or more Geometry objects. More...

#include <EdgeExtractor.hpp>

Inheritance diagram for vl::EdgeExtractor:
vl::Object

List of all members.

Classes

class  Edge
 A single edge as extracted from the EdgeExtractor class. More...

Public Member Functions

virtual const char * className ()
 Returns the name of the class.
 EdgeExtractor ()
void extractEdges (Geometry *geom)
 Extracts the edges from the given Geometry and appends them to edges().
bool extractEdges (Actor *actor)
void extractEdges (ActorCollection *actors)
void extractEdges (SceneManager *scenemanager)
void extractEdges (Rendering *rendering)
ref< GeometrygenerateEdgeGeometry () const
const std::vector< Edge > & edges () const
std::vector< Edge > & edges ()
void reset ()
float creaseAngle () const
 The minimum angle (in degrees) considered to generate crease-edges.
void setCreaseAngle (float a)
 The minimum angle (in degrees) considered to generate crease-edges.
bool warnNonManifold () const
void setWarnNonManifold (bool warn_on)

Protected Member Functions

void addEdge (std::set< EdgeExtractor::Edge > &edges, const EdgeExtractor::Edge &e, const fvec3 &n)

Protected Attributes

std::vector< EdgemEdges
float mCreaseAngle
bool mWarnNonManifold

Detailed Description

The EdgeExtractor class extracts the edges from one or more Geometry objects.

The edges are always extracted from the triangles or quads that are part of a vl::Geometry and can be of three types: silhouette edges, crease edges and boundary edges.

pagGuideWireframe_edges.jpg
Usage
See also:

Definition at line 73 of file EdgeExtractor.hpp.


Constructor & Destructor Documentation

vl::EdgeExtractor::EdgeExtractor (  ) [inline]

Definition at line 135 of file EdgeExtractor.hpp.

References VL_DEBUG_SET_OBJECT_NAME.


Member Function Documentation

virtual const char* vl::EdgeExtractor::className (  ) [inline, virtual]

Returns the name of the class.

Reimplemented from vl::Object.

Definition at line 134 of file EdgeExtractor.hpp.

void EdgeExtractor::extractEdges ( Geometry geom )
bool EdgeExtractor::extractEdges ( Actor actor )

Definition at line 164 of file EdgeExtractor.cpp.

References extractEdges(), vl::ref< T >::get(), and vl::Actor::lod().

void EdgeExtractor::extractEdges ( ActorCollection actors )
void EdgeExtractor::extractEdges ( SceneManager scenemanager )
void EdgeExtractor::extractEdges ( Rendering rendering )
ref< Geometry > EdgeExtractor::generateEdgeGeometry (  ) const

Definition at line 127 of file EdgeExtractor.cpp.

References edges(), vl::ref< T >::get(), and vl::PT_LINES.

Referenced by vl::EdgeRenderer::declareActor().

const std::vector<Edge>& vl::EdgeExtractor::edges (  ) const [inline]
std::vector<Edge>& vl::EdgeExtractor::edges (  ) [inline]

Definition at line 149 of file EdgeExtractor.hpp.

void vl::EdgeExtractor::reset (  ) [inline]

Definition at line 151 of file EdgeExtractor.hpp.

float vl::EdgeExtractor::creaseAngle (  ) const [inline]

The minimum angle (in degrees) considered to generate crease-edges.

Definition at line 154 of file EdgeExtractor.hpp.

Referenced by extractEdges().

void vl::EdgeExtractor::setCreaseAngle ( float  a ) [inline]

The minimum angle (in degrees) considered to generate crease-edges.

Definition at line 156 of file EdgeExtractor.hpp.

Referenced by vl::EdgeRenderer::declareActor().

bool vl::EdgeExtractor::warnNonManifold (  ) const [inline]

Definition at line 158 of file EdgeExtractor.hpp.

void vl::EdgeExtractor::setWarnNonManifold ( bool  warn_on ) [inline]

Definition at line 159 of file EdgeExtractor.hpp.

void EdgeExtractor::addEdge ( std::set< EdgeExtractor::Edge > &  edges,
const EdgeExtractor::Edge e,
const fvec3 n 
) [protected]

Member Data Documentation

std::vector<Edge> vl::EdgeExtractor::mEdges [protected]

Definition at line 165 of file EdgeExtractor.hpp.

Referenced by extractEdges().

Definition at line 166 of file EdgeExtractor.hpp.

Definition at line 167 of file EdgeExtractor.hpp.

Referenced by addEdge().


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

Visualization Library v2011.05.1144 Reference Documentation
Copyright 2005-2011 Michele Bosi. All rights reserved.
Updated on Tue Sep 13 2011 21:59:12.
Permission is granted to use this page to write and publish articles regarding Visualization Library.