Code_TYMPAN  4.4.0
Industrial site acoustic simulation
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
TYOpenGLRenderer Class Reference

Realise le rendu VTK et le rendu OpenGL. More...

#include <TYOpenGLRenderer.h>

Collaboration diagram for TYOpenGLRenderer:
Collaboration graph
[legend]

Public Member Functions

 TYOpenGLRenderer ()
 
 ~TYOpenGLRenderer ()
 
void init (int width, int height)
 
void updateDisplayList (void)
 
void updateDisplayListOverlay (TYGeometryNode *pElement, TYGeometryNode *pDansCeRepere)
 
int OpenGLUpdateGeometry (GLenum mode=GL_RENDER, int x=0, int y=0)
 
void OpenGLDeviceRender (GLenum mode=GL_RENDER, int x=0, int y=0)
 
void OpenGLRender (GLenum mode=GL_RENDER, int x=0, int y=0)
 
void Render ()
 
void setElement (LPTYElement pElt)
 
void deepCopyElement (LPTYElement pElt)
 
LPTYElement getElement ()
 
void drawElement (GLenum mode=GL_RENDER)
 
void addOGLElement (OGLElement *pOGLElement)
 
void addLight (OGLLightElement *pOGLElementLight)
 
void removeLights ()
 
std::vector< OGLLightElement * > getLights ()
 
void setActiveCamera (OGLCamera *pCamera)
 
OGLCameragetActiveCamera ()
 
void setBackground (double *bgColor)
 
void removeOGLElement (OGLElement *pOGLElement)
 
void setRenderType (int renderType)
 
void addSelectedElement (TYElement *pElement)
 
void removeSelectedElement (TYElement *pElement)
 
void clearTabSelectedElement ()
 
void setModelerElement (TYElement *pElement)
 
TYElementgetModelerElement ()
 

Protected Attributes

TYElement_pElement
 Element a representer. More...
 
GLuint _displayList
 Display liste globale. More...
 
GLuint _displayListOverlay
 Display liste pour les deplacements. More...
 
GLuint _polygoneMode
 Mode de rendu. More...
 
std::vector< OGLElement * > _tabOGLElement
 
std::vector< TYElement * > _tabSelectedElements
 Elements selectionnes. More...
 
std::vector< OGLLightElement * > _tabLights
 Liste des lumieres dans la scene 3D. More...
 
OGLCamera_pActiveCamera
 
double * _pBackgroundColor
 
int m_width
 
int m_height
 
int m_renderType
 
TYElement_pModelerElement
 0 --> render all, 1 --> render 2D, 2 --> render 3D More...
 

Private Member Functions

 TYOpenGLRenderer (const TYOpenGLRenderer &)
 
void operator= (const TYOpenGLRenderer &)
 

Detailed Description

Realise le rendu VTK et le rendu OpenGL.

Definition at line 50 of file TYOpenGLRenderer.h.

Constructor & Destructor Documentation

◆ TYOpenGLRenderer() [1/2]

TYOpenGLRenderer::TYOpenGLRenderer ( const TYOpenGLRenderer )
private

Constructeur par copie a ne pas implementer mais

◆ TYOpenGLRenderer() [2/2]

TYOpenGLRenderer::TYOpenGLRenderer ( )

Constructeur

Definition at line 45 of file TYOpenGLRenderer.cpp.

◆ ~TYOpenGLRenderer()

TYOpenGLRenderer::~TYOpenGLRenderer ( )

Destructeur

Definition at line 56 of file TYOpenGLRenderer.cpp.

Member Function Documentation

◆ addLight()

void TYOpenGLRenderer::addLight ( OGLLightElement pOGLElementLight)

Definition at line 327 of file TYOpenGLRenderer.cpp.

◆ addOGLElement()

void TYOpenGLRenderer::addOGLElement ( OGLElement pOGLElement)

Ajoute un OGLElement a la liste.

Parameters
pOGLElementLe OGLElement a ajouter.

Definition at line 310 of file TYOpenGLRenderer.cpp.

Here is the caller graph for this function:

◆ addSelectedElement()

void TYOpenGLRenderer::addSelectedElement ( TYElement pElement)

Definition at line 357 of file TYOpenGLRenderer.cpp.

Here is the caller graph for this function:

◆ clearTabSelectedElement()

void TYOpenGLRenderer::clearTabSelectedElement ( )

Definition at line 389 of file TYOpenGLRenderer.cpp.

Here is the caller graph for this function:

◆ deepCopyElement()

void TYOpenGLRenderer::deepCopyElement ( LPTYElement  pElt)
inline

deepCopy de l'element a representer.

Definition at line 138 of file TYOpenGLRenderer.h.

Here is the call graph for this function:

◆ drawElement()

void TYOpenGLRenderer::drawElement ( GLenum  mode = GL_RENDER)

Display.

Definition at line 286 of file TYOpenGLRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getActiveCamera()

OGLCamera* TYOpenGLRenderer::getActiveCamera ( )
inline

Definition at line 171 of file TYOpenGLRenderer.h.

Here is the caller graph for this function:

◆ getElement()

LPTYElement TYOpenGLRenderer::getElement ( )
inline

Get de l'element a representer.

Definition at line 146 of file TYOpenGLRenderer.h.

◆ getLights()

std::vector< OGLLightElement * > TYOpenGLRenderer::getLights ( )

Definition at line 337 of file TYOpenGLRenderer.cpp.

◆ getModelerElement()

TYElement * TYOpenGLRenderer::getModelerElement ( )

Definition at line 399 of file TYOpenGLRenderer.cpp.

◆ init()

void TYOpenGLRenderer::init ( int  width,
int  height 
)

Initialize the renderer

Definition at line 69 of file TYOpenGLRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OpenGLDeviceRender()

void TYOpenGLRenderer::OpenGLDeviceRender ( GLenum  mode = GL_RENDER,
int  x = 0,
int  y = 0 
)

Picking

Parameters
modeLe mode de rendu.
xLa position de la souris en x pour le picking.
yLa position de la souris en y pour le picking.

Definition at line 159 of file TYOpenGLRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OpenGLRender()

void TYOpenGLRenderer::OpenGLRender ( GLenum  mode = GL_RENDER,
int  x = 0,
int  y = 0 
)

Rendu OpenGL

Parameters
modeLe mode de rendu.
xLa position de la souris en x pour le picking.
yLa position de la souris en y pour le picking.

Definition at line 148 of file TYOpenGLRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OpenGLUpdateGeometry()

int TYOpenGLRenderer::OpenGLUpdateGeometry ( GLenum  mode = GL_RENDER,
int  x = 0,
int  y = 0 
)

Mise a jour de la geometrie

Parameters
modeLe mode de rendu.
xLa position de la souris en x pour le picking.
yLa position de la souris en y pour le picking.

Definition at line 176 of file TYOpenGLRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

void TYOpenGLRenderer::operator= ( const TYOpenGLRenderer )
private

Operateur d'affectaion a ne pas implementer mais

◆ removeLights()

void TYOpenGLRenderer::removeLights ( )

Definition at line 332 of file TYOpenGLRenderer.cpp.

Here is the caller graph for this function:

◆ removeOGLElement()

void TYOpenGLRenderer::removeOGLElement ( OGLElement pOGLElement)

Enleve un OGLElement a la liste.

Parameters
pOGLElementLe OGLElement a enlever.

Definition at line 342 of file TYOpenGLRenderer.cpp.

Here is the caller graph for this function:

◆ removeSelectedElement()

void TYOpenGLRenderer::removeSelectedElement ( TYElement pElement)

Definition at line 374 of file TYOpenGLRenderer.cpp.

Here is the caller graph for this function:

◆ Render()

void TYOpenGLRenderer::Render ( )

Appel OpenGLRender

Definition at line 143 of file TYOpenGLRenderer.cpp.

Here is the call graph for this function:

◆ setActiveCamera()

void TYOpenGLRenderer::setActiveCamera ( OGLCamera pCamera)
inline

Definition at line 167 of file TYOpenGLRenderer.h.

Here is the caller graph for this function:

◆ setBackground()

void TYOpenGLRenderer::setBackground ( double *  bgColor)
inline

Definition at line 176 of file TYOpenGLRenderer.h.

◆ setElement()

void TYOpenGLRenderer::setElement ( LPTYElement  pElt)
inline

Set de l'element a representer.

Definition at line 130 of file TYOpenGLRenderer.h.

Here is the caller graph for this function:

◆ setModelerElement()

void TYOpenGLRenderer::setModelerElement ( TYElement pElement)

Definition at line 394 of file TYOpenGLRenderer.cpp.

Here is the caller graph for this function:

◆ setRenderType()

void TYOpenGLRenderer::setRenderType ( int  renderType)
inline

Definition at line 190 of file TYOpenGLRenderer.h.

◆ updateDisplayList()

void TYOpenGLRenderer::updateDisplayList ( void  )

Met a jour la display liste globale, (remplie dans chaque methode XXXGraphic::display).

Definition at line 129 of file TYOpenGLRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateDisplayListOverlay()

void TYOpenGLRenderer::updateDisplayListOverlay ( TYGeometryNode pElement,
TYGeometryNode pDansCeRepere 
)

Met a jour la display liste servant a bouger les elements, Cela permet de ne redessiner que l'element quand on le bouge (et pas tout le reste).

Parameters
pElementl'element a afficher.
pDansCeReperedefinit le GeoNode (par exemple le site root) dans lequel s'exprime les coordonnees de pElement les changements de repere de ses GeoNodeGraphic parents (via push/pop de matrices OpenGL).

Definition at line 101 of file TYOpenGLRenderer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ _displayList

GLuint TYOpenGLRenderer::_displayList
protected

Display liste globale.

Definition at line 206 of file TYOpenGLRenderer.h.

◆ _displayListOverlay

GLuint TYOpenGLRenderer::_displayListOverlay
protected

Display liste pour les deplacements.

Definition at line 208 of file TYOpenGLRenderer.h.

◆ _pActiveCamera

OGLCamera* TYOpenGLRenderer::_pActiveCamera
protected

Definition at line 220 of file TYOpenGLRenderer.h.

◆ _pBackgroundColor

double* TYOpenGLRenderer::_pBackgroundColor
protected

Definition at line 221 of file TYOpenGLRenderer.h.

◆ _pElement

TYElement* TYOpenGLRenderer::_pElement
protected

Element a representer.

Definition at line 203 of file TYOpenGLRenderer.h.

◆ _pModelerElement

TYElement* TYOpenGLRenderer::_pModelerElement
protected

0 --> render all, 1 --> render 2D, 2 --> render 3D

Elément modélisé. Sert à positionner correctement les étiquettes.

Definition at line 229 of file TYOpenGLRenderer.h.

◆ _polygoneMode

GLuint TYOpenGLRenderer::_polygoneMode
protected

Mode de rendu.

Definition at line 210 of file TYOpenGLRenderer.h.

◆ _tabLights

std::vector<OGLLightElement*> TYOpenGLRenderer::_tabLights
protected

Liste des lumieres dans la scene 3D.

Definition at line 218 of file TYOpenGLRenderer.h.

◆ _tabOGLElement

std::vector<OGLElement*> TYOpenGLRenderer::_tabOGLElement
protected

Definition at line 212 of file TYOpenGLRenderer.h.

◆ _tabSelectedElements

std::vector<TYElement*> TYOpenGLRenderer::_tabSelectedElements
protected

Elements selectionnes.

Definition at line 215 of file TYOpenGLRenderer.h.

◆ m_height

int TYOpenGLRenderer::m_height
protected

Definition at line 223 of file TYOpenGLRenderer.h.

◆ m_renderType

int TYOpenGLRenderer::m_renderType
protected

Definition at line 225 of file TYOpenGLRenderer.h.

◆ m_width

int TYOpenGLRenderer::m_width
protected

Definition at line 222 of file TYOpenGLRenderer.h.


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