Visualization Library v1.0.3

A lightweight C++ OpenGL middleware for 2D/3D graphics

VL     Star     Watch     Fork     Issue

[Download] [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

 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 136 of file EdgeExtractor.hpp.

References VL_DEBUG_SET_OBJECT_NAME.


Member Function Documentation

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

Definition at line 163 of file EdgeExtractor.cpp.

References extractEdges(), vl::Actor::lod(), and NULL.

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 150 of file EdgeExtractor.hpp.

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

Definition at line 152 of file EdgeExtractor.hpp.

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

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

Definition at line 155 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 157 of file EdgeExtractor.hpp.

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

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

Definition at line 159 of file EdgeExtractor.hpp.

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

Definition at line 160 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 166 of file EdgeExtractor.hpp.

Referenced by extractEdges().

Definition at line 167 of file EdgeExtractor.hpp.

Definition at line 168 of file EdgeExtractor.hpp.

Referenced by addEdge().


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

Visualization Library v1.0.3 Reference Documentation
Copyright Michele Bosi. All rights reserved.
Updated on Tue Feb 7 2017 00:55:10.
Permission is granted to use this page to write and publish articles regarding Visualization Library.