27 #ifndef __TY_MODELER_FRAME__
28 #define __TY_MODELER_FRAME__
32 #include <QCloseEvent>
35 #include <QWheelEvent>
36 #include <QResizeEvent>
37 #include <QGridLayout>
38 #include <QFocusEvent>
39 #include <QMouseEvent>
119 TYModelerFrame(QWidget* parent = 0,
const char*
name = 0, Qt::WindowFlags f = Qt::SubWindow);
357 virtual void updateView(
bool clipping =
true,
bool axesAndGrid =
true);
419 virtual bool close();
460 static double getDouble(
const QString& title,
const QString& txt,
double min,
double max,
double val,
461 bool& ok,
int dec = 2);
507 virtual void showEvent(QShowEvent* pEvent);
Gere les undos (fichier header)
Le role de cette classe est limite a emettre des signaux pouvant etre utilise pour interagir sur le r...
Classe abstraite pour la gestion de l'interaction entre la vue graphique (2D ou 3D) et le clavier et ...
Gestion de l'edition en mode camera.
gestion de zoom par zone selectionnee (obsolete)
outil de mesure des distances
gestion des elements selectionnes par picking
Classe generique pour une fenetre de modeleur.
virtual void wheelEvent(QWheelEvent *pEvent)
QToolButton * _pSnapGridBtn
Bouton d'activation de la grille magnetique.
void setSnapGridActive(bool state)
virtual void closeEvent(QCloseEvent *pEvent)
void updateElementGraphic(bool force=false)
virtual void leaveEvent(QEvent *pEvent)
int _curViewType
Le type de la vue courante.
QStatusBar * _pStatusBar
Barre d'etat.
virtual bool computeCurPos(int x, int y, float *pos)
bool getWireframeOnMovingCamera()
TYCameraEditor * _pCameraEditor
Gere la camera.
void showScale(bool show)
bool _editorModeAccepted
Indique si le mode d'edition a ete traite.
OGLScalarBarElement * _pOGLScalarBarElement
Objet graphique pour la representation de l'echelle.
QToolButton * _pShowRaysBtn
Bouton pour l'affichage des rayons calcules par le lance de rayons.
virtual void setRenderModeSlot(int mode)
LPTYElement _pElement
Un pointeur sur l'element a editer.
void showPlafond(bool show)
TYRenderWindowInteractor * getView()
QToolButton * _pShowScale
Bouton pour l'affichage de l'echelle.
virtual void enterEvent(QEvent *pEvent)
TYPositionEditor * _pPositionEditor
Editor pour deplacer les elements.
void setEditorModeToCamera()
TYCameraZoneEditor * _pCameraZoneEditor
Editor pour definir une zone de zoom pour la camera.
OGLTextElement * _pOGLTextElement
Label 2D pour afficher le type de la vue.
virtual void resizeEvent(QResizeEvent *pEvent)
TYAbstractSceneEditor * _pCurrentEditor
L'editor courant.
virtual ~TYModelerFrame()
void editorModeChanged(int mode)
OGLLineElement * _pOGLLineElementAxeX
La geometrie des Axes.
void setGridLinesActorsVisibility(bool showGridXY, bool showGridXZ, bool showGridZY)
QToolButton * _pShowPlafondBtn
Bouton pour l'affichage des normals.
void viewTypeChanged(int)
virtual void setRenderMode(int mode, bool bUpdateGL)
bool _wireframeOnMovingCamera
Indique si on passe en rendu wireframe lors de deplacement de camera.
QToolButton * _pShowNormalsBtn
Bouton pour l'affichage des normals.
TYElementPicker * getElementPicker()
virtual void focusInEvent(QFocusEvent *pEvent)
bool _snapGridActive
Indique si on active ou non la grille magnetique.
void setWireframeOnMovingCamera(bool state)
int _lastRenderMode
Le dernier mode de rendu courant.
TYActionManager _actionManager
Pour la gestion de l'historique.
OGLLightElement * _pLightElement
La lumiere par default.
QBoxLayout * _pCtrlLayout
Le layout ou se trouvent les boutons, etc.
virtual void mouseMoveEvent(QMouseEvent *pEvent)
QGridLayout * _pLayout
Le layout de cette frame.
void setElement(LPTYElement pElement)
QToolButton * _pShowSourcesBtn
Bouton pour l'affichage des sources ponctuelles.
OGLTextElement * _pOGLTextElementLabelY
virtual void setViewType(int view)
TYActionManager * getActionManager()
OGLLineElement * _pOGLLineElementX
Axes X et Y de la grille.
QToolButton * _pGridBtn
Bouton d'activation de la grille.
bool isElementInCurrentProjet()
OGLGridElement * _pOGLGridElement
TYRenderWindowInteractor * _pView
La fenetre graphique.
OBox getGlobalBoundingBox()
bool _showPlafond
Indique si on affiche ou masque les normals.
void stopMovingRenderMode()
void showNormals(bool show)
OGLLineElement * _pOGLLineElementAxeZ
QComboBox * _pRenderModeBox
Combo box pour le mode de rendu.
OGLTextElement * _pOGLTextElementLabelX
bool _showGrid
Indique si on affiche ou non la grille.
TYModelerFrame(QWidget *parent=0, const char *name=0, Qt::WindowFlags f=Qt::SubWindow)
bool _showNormals
Indique si on affiche ou masque les normals.
void setCameraCoordinates()
OGLTextElement * _pOGLTextElementLabelZ
bool isElementInCurrentCalcul()
bool askForResetResultat()
bool _showScale
Indique si on affiche ou pas l'echelle.
void eltModified(LPTYElement pElt)
int _lastEditorMode
Pour conserver le dernier mode d'edition.
TYCameraEditor * getCameraEditor()
QToolButton * _pSetCameraCoordinatesBtn
Bouton de specification des coordonnees de la camera.
int _curRenderMode
Le mode de rendu courant.
OGLLineElement * _pOGLLineElementAxeY
float _gridDimX
Dimension de la grille en X.
float _gridDimY
Dimension de la grille en Y.
void startMovingRenderMode()
TYElementPicker * _pPicker
Pour le picking.
OGLCamera * _pOGLCameras[NbOfViews]
Les cameras pour chaque type de vue.
float _gridStep
Pas de la grille.
virtual void updatePreferences()
bool _showRays
Indique si on affiche ou pas les rayons.
TYPickEditor * _pPickEditor
Gere le menu contextuel.
OGLLineElement * _pOGLLineElementY
float _gridMagnStep
Pas de la grille magnetique.
QToolButton * _pScreenShotBtn
Bouton pour effectuer une capture d'ecran.
TYPickEditor * getPickEditor()
virtual void keyPressEvent(QKeyEvent *pEvent)
TYAbstractSceneEditor * getCurrentEditor()
TYDistanceEditor * _pDistanceEditor
Outils pour mesurer.
virtual void setEditorMode(int mode)
virtual void updateView(bool clipping=true, bool axesAndGrid=true)
virtual void showEvent(QShowEvent *pEvent)
virtual void keyReleaseEvent(QKeyEvent *pEvent)
static double getDouble(const QString &title, const QString &txt, double min, double max, double val, bool &ok, int dec=2)
TYOpenGLRenderer * getRenderer()
bool _showSources
Indique si on affiche ou pas les sources ponctuelles.
QComboBox * _pViewTypeBox
Combo box pour la selection de la camera courante.
Realise le rendu VTK et le rendu OpenGL.
gestion de l'element actionne par picking
gestion de la position selon les modes 'moving', 'rotation', 'edition'
Le role de cette classe est limite a emettre des signaux pouvant etre utilise pour interagir sur le r...
TYOpenGLRenderer * getRenderer()