24 #include <qmessagebox.h>
25 #include <qpushbutton.h>
26 #include <qlineedit.h>
42 #define min(a, b) (((a) < (b)) ? (a) : (b))
45 #define TR(id) OLocalizator::getString("TYCameraZoneEditor", (id))
105 if ((button == Qt::LeftButton) &&
_active)
107 if (
getTYApp()->getCurProjet() &&
getTYApp()->getCurProjet()->getCurrentCalcul())
122 QString msg(
TR(
"id_warning_no_curcalcul"));
124 QMessageBox::warning(
_pModeler,
"Tympan", msg, QMessageBox::Ok, QMessageBox::NoButton);
144 TYPoint pt0(world0.x(), world0.y(), world0.z());
145 TYPoint pt1(world1.x(), world1.y(), world1.z());
146 TYPoint pt2(world2.x(), world2.y(), world2.z());
179 min(viewport.width() /
183 pCameraEditor->
cameraZoneZoom(QVector3D(focalPoint[0], focalPoint[1], focalPoint[2]),
193 TYApplication::restoreOverrideCursor();
214 TYPoint pt0(world0.x(), world0.z(), 0);
215 TYPoint pt1(world1.x(), world1.z(), 0);
216 TYPoint pt2(world2.x(), world2.z(), 0);
228 QString(
TR(
"id_size_info")).arg(sizeX, 0,
'f', 2).arg(sizeY, 0,
'f', 2),
void writeOutputMsg(QString msg)
Affiche un message dans la fenetre de sortie.
TYApplication * getTYApp()
Retourne le pointeur sur l'application.
pour l'application Tympan (fichier header)
gestion de l'edition de la camera (fichier header)
gestion de zoom par zone selectionnee (fichier obsolete)(fichier header)
Classe generique pour une fenetre de modeleur (fichier header)
Representation graphique d'un point (fichier header)
Le role de cette classe est limite a emettre des signaux pouvant etre utilise pour interagir sur le r...
void setVisibility(bool bVisible)
void setPoint2(const QVector3D &point2)
void setColor(const OColor &oColor)
void setPoint3(const QVector3D &point3)
void setPoint0(const QVector3D &point0)
void setPoint1(const QVector3D &point1)
const QVector3D & getPoint1()
const QVector3D & getPoint0()
const QVector3D & getPoint2()
double norme() const
Computes the length of this vector.
Classe abstraite pour la gestion de l'interaction entre la vue graphique (2D ou 3D) et le clavier et ...
double _gridMagnStep
Pas de la grille magnétique de positionnement.
static void snapToGrid(float &x, float &y, float &z, float &gridMagnStep)
Methode utilitaire qui adapte les coordonnees d'un point pour que celui-ci soit aligne avec la grille...
void updateText(QString msg="", int posX=0, int posY=0, bool show=true)
Mets a jour le texte informatif sur la vue 3D.
TYModelerFrame * _pModeler
Le modeler associe a cet editor.
void showText(bool show=true)
Affiche ou pas le texte informatif sur la vue 3D.
TYRenderWindowInteractor * _pInteractor
La vue graphique associee a cet editor.
Gestion de l'edition en mode camera.
void cameraZoneZoom(const QVector3D &focalPoint2D, double factor)
virtual void slotMouseReleased(int x, int y, Qt::MouseButton button, Qt::KeyboardModifiers state)
virtual void slotMousePressed(int x, int y, Qt::MouseButton button, Qt::KeyboardModifiers state)
bool _active
Indique si cet editor est actif.
OGLRectangleElement * _pOGLRectangleElement
TYCameraZoneEditor(TYModelerFrame *pModeler)
virtual void slotMouseMoved(int x, int y, Qt::MouseButtons button, Qt::KeyboardModifiers state)
virtual void slotViewTypeChanged(int view)
Generic class for a modeler window.
bool askForResetResultat()
TYCameraEditor * getCameraEditor()
virtual void updateView(bool clipping=true, bool axesAndGrid=true)
void addOGLElement(OGLElement *pOGLElement)
void removeOGLElement(OGLElement *pOGLElement)
QVector3D displayToWorld(const QVector3D &display) const
const TYRenderViewport & getViewport() const
TYOpenGLRenderer * getRenderer()