Overview     Modules     Class Hierarchy     Classes     Members  
tlp Namespace Reference

Classes

class  AbstractGlCurve
class  Camera
 Tulip OpenGL camera object. More...
class  EdgeExtremityGlyphContext
class  EdgeExtremityGlyph
class  EdgeExtremityGlyphFactory
class  EdgeExtremityGlyphFrom3DGlyph
class  EdgeExtremityGlyphFrom2DGlyph
class  EdgeExtremityGlyphManager
class  Gl2DRect
 Create a 2D rectangle. More...
class  GlAbstractPolygon
class  GlAxis
 A base class to draw an axis with graduations. More...
class  GlBezierCurve
 A class to draw Bézier curves. More...
class  GlBox
 General class used to render boxes as GlEntity. More...
class  GlCatmullRomCurve
 A class to draw a Catmull-Rom curve. More...
class  GlCircle
 General class used to render circles as GlEntity. More...
class  GlColorScale
class  GlComplexeEntity
 Virtual class used by GlNode, GlMetaNode and GlEdge. More...
struct  VERTEX
class  GlComplexPolygon
class  GlComposite
 GlSimpleEntity used to agregate other GlEntity. More...
class  GlConvexGraphHull
 This class draws a convex hull around a graph. More...
class  GlConvexHull
 Class used to represent ConvexHull. More...
struct  ConvexHullItem
class  GlCPULODCalculator
 Class used to compute LOD of GlEntities with OpenMP parallelization. More...
class  GlCubicBSplineInterpolation
class  GlCurve
 This class is use to display an OpenGl curve. More...
class  GlCylinder
class  GlDisplayListManager
 Singleton used to manage OpenGl display list. More...
class  GlDrawSceneVisitor
class  GlEntity
struct  _FeedBack3Dcolor
struct  _DepthIndex
class  GlFeedBackBuilder
class  GlFeedBackRecorder
 Class use to build an object with an OpenGL feedback buffer. More...
class  GlGraphComposite
 Class use to represent a graph. More...
class  GlGraphRenderingParameters
class  GlGrid
 General class used to render grids as augmented displays. More...
class  GlHexagon
class  GlLabel
class  GlLayer
class  GlMetaNodeRenderer
class  GlMetaNodeTrueRenderer
class  GlNominativeAxis
 A class to render an axis graduated with string values. More...
class  GlOpenUniformCubicBSpline
 A class to draw open uniform cubic B-splines. More...
class  GlPentagon
class  GlPolygon
class  GlPolyQuad
 General class used to render a connected group of quadrilaterals (textured or not) that shares edges as GlEntity. More...
class  GlProgressBar
class  GlQuad
 Utility class to render a quadrilateral . More...
class  GlQuadTreeLODCalculator
class  GlQuantitativeAxis
 A class to render an axis graduated with numerical values for a given range. More...
class  GlRect
 This is a general class for the rendering of 2D rectangles. More...
class  GlRectTextured
class  GlRegularPolygon
struct  EntityWithDistance
 Storage class for Z ordering. More...
class  GlScene
 Tulip scene class. More...
class  GlSceneEvent
 An observer to the scene An observer to the scene who observe layers. More...
class  GlSceneVisitor
class  AdditionalGlSceneAnimation
 A class which encapsulate a Tulip OpenGL scene animation This class aims to encapsulate a Tulip OpenGL scene animation. Derive it if you want to add extra animations to the Tulip OpenGL scene while a Zoom and Pan is performed. More...
class  GlSceneZoomAndPan
 A convenient class to perform Zoom and Pan animation on Tulip OpenGL scene. More...
class  GlSelectSceneVisitor
class  GlShader
 A class to manage shader objects, components of a shader program. More...
class  GlShaderProgram
 A class to manage OpenGL shader program. More...
class  GlSimpleEntity
class  GlSphere
struct  GlTexture
struct  TextureInfo
class  GlTextureManager
 Class to manage textures Singleton class to load/store textures need by OpenGL rendering. More...
class  GlTLPFeedBackBuilder
class  GlTriangle
class  GlVertexArrayManager
 Class used to render edges/nodes with vertex array. More...
class  OpenGlConfigManager
 Singleton used to manage OpenGl configuration. More...
class  OpenGlErrorViewer
 Class used to display OpenGl errors. More...
class  TextRenderer

Typedefs

typedef Matrix< float, 4 > MatrixGL
typedef struct
tlp::_FeedBack3Dcolor 
Feedback3Dcolor
typedef struct tlp::_DepthIndex DepthIndex

Enumerations

enum  LabelPosition {
  ON_CENTER = 0, ON_TOP = 1, ON_BOTTOM = 2, ON_LEFT = 3,
  ON_RIGHT = 4
}
enum  SelectionFlag { SelectSimpleEntities = 1, SelectNodes = 2, SelectEdges = 4 }
enum  ShaderType { Vertex, Fragment, Geometry }
enum  TLP_FB_TROUGHTOKENTYPE {
  TLP_FB_COLOR_INFO, TLP_FB_BEGIN_ENTITY, TLP_FB_END_ENTITY, TLP_FB_BEGIN_GRAPH,
  TLP_FB_END_GRAPH, TLP_FB_BEGIN_NODE, TLP_FB_END_NODE, TLP_FB_BEGIN_EDGE,
  TLP_FB_END_EDGE
}

Functions

void CALLBACK beginCallback (GLenum which, GLvoid *polygonData)
void CALLBACK errorCallback (GLenum errorCode)
void CALLBACK endCallback (GLvoid *polygonData)
void CALLBACK vertexCallback (GLvoid *vertex, GLvoid *polygonData)
void CALLBACK combineCallback (GLdouble coords[3], VERTEX *d[4], GLfloat w[4], VERTEX **dataOut, GLvoid *polygonData)
TLP_GL_SCOPE void buildPascalTriangle (unsigned int n, std::vector< std::vector< double > > &pascalTriangle)
TLP_GL_SCOPE Coord computeBezierPoint (const std::vector< Coord > &controlPoints, const float t)
TLP_GL_SCOPE void computeBezierPoints (const std::vector< Coord > &controlPoints, std::vector< Coord > &curvePoints, const unsigned int nbCurvePoints=100)
TLP_GL_SCOPE Coord computeCatmullRomPoint (const std::vector< Coord > &controlPoints, const float t, const bool closedCurve=false, const float alpha=0.5)
TLP_GL_SCOPE void computeCatmullRomPoints (const std::vector< Coord > &controlPoints, std::vector< Coord > &curvePoints, const bool closedCurve=false, const unsigned int nbCurvePoints=100, const float alpha=0.5)
TLP_GL_SCOPE Coord computeOpenUniformBsplinePoint (const std::vector< Coord > &controlPoints, const float t, const unsigned int curveDegree=3)
TLP_GL_SCOPE void computeOpenUniformBsplinePoints (const std::vector< Coord > &controlPoints, std::vector< Coord > &curvePoints, const unsigned int curveDegree=3, const unsigned int nbCurvePoints=100)
TLP_GL_SCOPE GpuGraph * genGpuGraph (const tlp::Graph &graph)
TLP_GL_SCOPE GpuProperty * genGpuProperty (tlp::BooleanProperty &property, const tlp::Graph &graph, GpuValueType type=NODE_VALUES, bool outputOnly=false)
TLP_GL_SCOPE GpuProperty * genGpuProperty (tlp::ColorProperty &property, const tlp::Graph &graph, GpuValueType type=NODE_VALUES, bool outputOnly=false)
TLP_GL_SCOPE GpuProperty * genGpuProperty (tlp::DoubleProperty &property, const tlp::Graph &graph, GpuValueType type=NODE_VALUES, bool outputOnly=false)
TLP_GL_SCOPE GpuProperty * genGpuProperty (tlp::IntegerProperty &property, const tlp::Graph &graph, GpuValueType type=NODE_VALUES, bool outputOnly=false)
TLP_GL_SCOPE GpuProperty * genGpuProperty (tlp::LayoutProperty &property, const tlp::Graph &graph, bool outputOnly=false)
TLP_GL_SCOPE GpuProperty * genGpuProperty (tlp::SizeProperty &property, const tlp::Graph &graph, GpuValueType type=NODE_VALUES, bool outputOnly=false)
TLP_GL_SCOPE bool setGpuParameter (const std::string &pName, const tlp::Color &val)
TLP_GL_SCOPE bool setGpuParameter (const std::string &pName, const tlp::Coord &val)
TLP_GL_SCOPE bool setGpuParameter (const std::string &pName, const tlp::Size &val)
TLP_GL_SCOPE bool getGpuOutPropertyValues (tlp::BooleanProperty &prop, const tlp::Graph &)
TLP_GL_SCOPE bool getGpuOutPropertyValues (tlp::ColorProperty &prop, const tlp::Graph &)
TLP_GL_SCOPE bool getGpuOutPropertyValues (tlp::DoubleProperty &prop, const tlp::Graph &)
TLP_GL_SCOPE bool getGpuOutPropertyValues (tlp::IntegerProperty &prop, const tlp::Graph &)
TLP_GL_SCOPE bool getGpuOutPropertyValues (tlp::LayoutProperty &prop, const tlp::Graph &)
TLP_GL_SCOPE bool getGpuOutPropertyValues (tlp::SizeProperty &prop, const tlp::Graph &)

Detailed Description

This file is part of Tulip (www.tulip-software.org)

Authors: David Auber and the Tulip development Team from LaBRI, University of Bordeaux 1 and Inria Bordeaux - Sud Ouest

Tulip is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Tulip is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.


Typedef Documentation

typedef Matrix<float, 4> tlp::MatrixGL

Enumeration Type Documentation

Enumerator:
ON_CENTER 
ON_TOP 
ON_BOTTOM 
ON_LEFT 
ON_RIGHT 
Enumerator:
SelectSimpleEntities 
SelectNodes 
SelectEdges 
Enumerator:
Vertex 
Fragment 
Geometry 
Enumerator:
TLP_FB_COLOR_INFO 
TLP_FB_BEGIN_ENTITY 
TLP_FB_END_ENTITY 
TLP_FB_BEGIN_GRAPH 
TLP_FB_END_GRAPH 
TLP_FB_BEGIN_NODE 
TLP_FB_END_NODE 
TLP_FB_BEGIN_EDGE 
TLP_FB_END_EDGE 

Function Documentation

void CALLBACK tlp::beginCallback ( GLenum  which,
GLvoid *  polygonData 
)
TLP_GL_SCOPE void tlp::buildPascalTriangle ( unsigned int  n,
std::vector< std::vector< double > > &  pascalTriangle 
)

Compute Pascal triangle until nth row

Parameters:
nthe number of Pascal triangle rows to compute
pascalTrianglea vector of vector of double to store the result. If that vector already contains m Pascal triangle rows and n > m, the first m row are not recomputed and the vector is expanded to store the new rows.
void CALLBACK tlp::combineCallback ( GLdouble  coords[3],
VERTEX *  d[4],
GLfloat  w[4],
VERTEX **  dataOut,
GLvoid *  polygonData 
)
TLP_GL_SCOPE Coord tlp::computeBezierPoint ( const std::vector< Coord > &  controlPoints,
const float  t 
)

Compute the position of a point 'p' at t (0 <= t <= 1) along Bézier curve defined by a set of control points

Parameters:
controlPointsa vector of control points
tcurve parameter value (0 <= t <= 1)
TLP_GL_SCOPE void tlp::computeBezierPoints ( const std::vector< Coord > &  controlPoints,
std::vector< Coord > &  curvePoints,
const unsigned int  nbCurvePoints = 100 
)

Compute a set of points approximating a Bézier curve

Parameters:
controlPointsa vector of control points
curvePointsan empty vector to store the computed points
nbCurvePointsnumber of points to generate
TLP_GL_SCOPE Coord tlp::computeCatmullRomPoint ( const std::vector< Coord > &  controlPoints,
const float  t,
const bool  closedCurve = false,
const float  alpha = 0.5 
)

Compute the position of a point 'p' at t (0 <= t <= 1) along Catmull-Rom curve defined by a set of control points. The features of this type of spline are the following : -> the spline passes through all of the control points -> the spline is C1 continuous, meaning that there are no discontinuities in the tangent direction and magnitude -> the spline is not C2 continuous. The second derivative is linearly interpolated within each segment, causing the curvature to vary linearly over the length of the segment

Parameters:
controlPointsa vector of control points
tcurve parameter value (0 <= t <= 1)
closedCurveif true, the curve will be closed, meaning a Bézier segment will connect the last and first control point
alphacurve parameterization parameter (0 <= alpha <= 1), alpha = 0 -> uniform parameterization, alpha = 0.5 -> centripetal parameterization, alpha = 1.0 -> chord-length parameterization
TLP_GL_SCOPE void tlp::computeCatmullRomPoints ( const std::vector< Coord > &  controlPoints,
std::vector< Coord > &  curvePoints,
const bool  closedCurve = false,
const unsigned int  nbCurvePoints = 100,
const float  alpha = 0.5 
)

Compute a set of points approximating a Catmull-Rom curve

Parameters:
controlPointsa vector of control points
curvePointsan empty vector to store the computed points
closedCurveif true, the curve will be closed, meaning a Bézier segment will connect the last and first control point
alphacurve parameterization parameter (0 <= alpha <= 1), alpha = 0 -> uniform parameterization, alpha = 0.5 -> centripetal parameterization, alpha = 1.0 -> chord-length parameterization
nbCurvePointsnumber of points to generate
TLP_GL_SCOPE Coord tlp::computeOpenUniformBsplinePoint ( const std::vector< Coord > &  controlPoints,
const float  t,
const unsigned int  curveDegree = 3 
)

Compute the position of a point 'p' at t (0 <= t <= 1) along open uniform B-spline curve defined by a set of control points. An uniform B-spline is a piecewise collection of Bézier curves of the same degree, connected end to end. The features of this type of spline are the following : -> the spline is C^2 continuous, meaning there is no discontinuities in curvature -> the spline has local control : its parameters only affect a small part of the entire spline A B-spline is qualified as open when it passes through its first and last control points.

Parameters:
controlPointsa vector of control points
tcurve parameter value (0 <= t <= 1)
curveDegreethe B-spline degree
TLP_GL_SCOPE void tlp::computeOpenUniformBsplinePoints ( const std::vector< Coord > &  controlPoints,
std::vector< Coord > &  curvePoints,
const unsigned int  curveDegree = 3,
const unsigned int  nbCurvePoints = 100 
)

Compute a set of points approximating an open uniform B-spline curve

Parameters:
controlPointsa vector of control points
curvePointsan empty vector to store the computed points
curveDegreethe B-spline degree
nbCurvePointsnumber of points to generate
void CALLBACK tlp::endCallback ( GLvoid *  polygonData)
void CALLBACK tlp::errorCallback ( GLenum  errorCode)
TLP_GL_SCOPE GpuGraph* tlp::genGpuGraph ( const tlp::Graph &  graph)
TLP_GL_SCOPE GpuProperty* tlp::genGpuProperty ( tlp::BooleanProperty &  property,
const tlp::Graph &  graph,
GpuValueType  type = NODE_VALUES,
bool  outputOnly = false 
)
TLP_GL_SCOPE GpuProperty* tlp::genGpuProperty ( tlp::ColorProperty &  property,
const tlp::Graph &  graph,
GpuValueType  type = NODE_VALUES,
bool  outputOnly = false 
)
TLP_GL_SCOPE GpuProperty* tlp::genGpuProperty ( tlp::DoubleProperty &  property,
const tlp::Graph &  graph,
GpuValueType  type = NODE_VALUES,
bool  outputOnly = false 
)
TLP_GL_SCOPE GpuProperty* tlp::genGpuProperty ( tlp::IntegerProperty &  property,
const tlp::Graph &  graph,
GpuValueType  type = NODE_VALUES,
bool  outputOnly = false 
)
TLP_GL_SCOPE GpuProperty* tlp::genGpuProperty ( tlp::LayoutProperty &  property,
const tlp::Graph &  graph,
bool  outputOnly = false 
)
TLP_GL_SCOPE GpuProperty* tlp::genGpuProperty ( tlp::SizeProperty &  property,
const tlp::Graph &  graph,
GpuValueType  type = NODE_VALUES,
bool  outputOnly = false 
)
TLP_GL_SCOPE bool tlp::getGpuOutPropertyValues ( tlp::BooleanProperty &  prop,
const tlp::Graph &   
)
TLP_GL_SCOPE bool tlp::getGpuOutPropertyValues ( tlp::ColorProperty &  prop,
const tlp::Graph &   
)
TLP_GL_SCOPE bool tlp::getGpuOutPropertyValues ( tlp::DoubleProperty &  prop,
const tlp::Graph &   
)
TLP_GL_SCOPE bool tlp::getGpuOutPropertyValues ( tlp::IntegerProperty &  prop,
const tlp::Graph &   
)
TLP_GL_SCOPE bool tlp::getGpuOutPropertyValues ( tlp::LayoutProperty &  prop,
const tlp::Graph &   
)
TLP_GL_SCOPE bool tlp::getGpuOutPropertyValues ( tlp::SizeProperty &  prop,
const tlp::Graph &   
)
TLP_GL_SCOPE bool tlp::setGpuParameter ( const std::string &  pName,
const tlp::Color &  val 
)
TLP_GL_SCOPE bool tlp::setGpuParameter ( const std::string &  pName,
const tlp::Coord &  val 
)
TLP_GL_SCOPE bool tlp::setGpuParameter ( const std::string &  pName,
const tlp::Size &  val 
)
void CALLBACK tlp::vertexCallback ( GLvoid *  vertex,
GLvoid *  polygonData 
)


Tulip Software by LaBRI Visualization Team    2001 - 2012