28 #include "controler-gmap.hh"
29 #include "controler.hh"
30 using namespace GMap3d ;
73 #include <QtCore/QDir>
74 #include <QtGui/QKeyEvent>
77 #define SPACE_PIX_SIZE 15
99 virtual GMap3d :: CControlerGMap * getControler ( )
const ;
104 virtual void repaint ( ) ;
109 virtual void closeEvent ( QCloseEvent * event );
133 virtual OptionsCarac * getOptionsCaracActive ( )
const ;
151 virtual TViewId getCurrentViewId ( )
const ;
157 virtual void setDoubleCliquee (
GLWindow * vue ) ;
162 virtual void updateStatusBar ( ) ;
170 std::string getOpenFileName (
const QString & caption = QString(),
171 const QStringList & filters =
172 QStringList(
"Tous les fichiers (*)"),
173 int * ind_filter = NULL );
181 std::string getSaveFileName (
const QString & caption = QString(),
182 const QStringList & filters =
183 QStringList(
"Tous les fichiers (*)"),
184 int * ind_filter = NULL);
190 void resetActiveOperations();
197 void windowActivated( QWidget * w );
199 void callbackKeyUp();
200 void callbackKeyDown();
201 void callbackKeyLeft();
202 void callbackKeyRight();
204 void callbackKeyCtrlUp();
205 void callbackKeyCtrlDown();
206 void callbackKeyCtrlLeft();
207 void callbackKeyCtrlRight();
209 void callbackKeyShiftUp();
210 void callbackKeyShiftDown();
211 void callbackKeyShiftLeft();
212 void callbackKeyShiftRight();
214 void callbackVueCompacte();
215 void callbackVueSemiEclatee();
216 void callbackVueMoka();
217 void callbackVueTopoFil();
221 void callbackLoad ( ) ;
222 void callbackAdd ( ) ;
223 void callbackSave ( ) ;
224 void callbackImport ( ) ;
225 void callbackExport ( ) ;
226 void callbackQuit ( ) ;
228 void callbackFindMotif();
229 void callbackCountMotifs();
231 void callbackNettoyage ();
233 void filterSelected (
const QString & selected );
237 void callbackUndo ( ) ;
238 void callbackRedo ( ) ;
239 void callbackEmptyUndoRedo ( ) ;
240 void callbackConfigUndoRedo ( ) ;
255 void callback2Manifold ( ) ;
257 void affichDivers ( );
259 void callbackToggleSews();
260 void callbackToggleNormal();
261 void callbackToggleVertices();
262 void callbackToggleFaces();
263 void callbackTournerButton();
264 void callbackToggleGrille();
271 void callbackPolyline ( ) ;
272 void callbackPolygon ( ) ;
273 void callbackMeshCreation ( ) ;
274 void callbackSphere ( ) ;
275 void callbackCylinder ( ) ;
276 void callbackPyramide ( ) ;
277 void callbackTorus ( ) ;
278 void callbackRandomizeDarts();
283 void callbackTranslateWindow ( ) ;
284 void callbackRotateWindow ( ) ;
285 void callbackScaleWindow ( ) ;
286 void callbackMovetoWindow ( ) ;
289 void callbackIntuitiveTopoSew ( ) ;
290 void callbackIntuitiveGeoSew ( ) ;
292 void callbackTopoSew0 ( ) ;
294 void callbackTopoSew1 ( ) ;
295 void callbackGeoSew1 ( ) ;
297 void callbackTopoSew2 ( ) ;
298 void callbackGeoSew2 ( ) ;
300 void callbackTopoSew3 ( ) ;
301 void callbackGeoSew3 ( ) ;
303 void callbackTopoSew1borders ( ) ;
304 void callbackGeoSew1borders ( ) ;
306 void callbackTopoSew2borders ( ) ;
307 void callbackGeoSew2borders ( ) ;
309 void callbackInvertLastOperation ( ) ;
310 void callbackInvertLastOperationGeometry ( ) ;
313 void callbackIntuitiveUnsew ( ) ;
314 void callbackUnsew0 ( ) ;
315 void callbackUnsew1 ( ) ;
316 void callbackUnsew2 ( ) ;
317 void callbackUnsew3 ( ) ;
320 void callbackIntuitivePlate ( ) ;
321 void callbackPlate0 ( ) ;
322 void callbackPlate1 ( ) ;
323 void callbackPlate2 ( ) ;
325 void callbackPlate1borders ( ) ;
326 void callbackPlate2borders ( ) ;
329 void callbackIntuitiveMerge ( ) ;
330 void callbackMergeEdges ( ) ;
331 void callbackMergeFaces ( ) ;
332 void callbackMergeVolumes ( ) ;
334 void callbackMergeColinearEdges ( ) ;
335 void callbackMergeCoplanarFaces ( ) ;
337 void callbackMergeFacesWithoutDisconnection ( ) ;
338 void callbackRemoveMarkedFacesButKeepBalls ( ) ;
339 void callbackShiftAllEdgesIncidentToVertex ( ) ;
340 void callbackRemoveDanglingEdges();
341 void callbackSimplify2DObject();
342 void callbackSimplify3DObject();
345 void callbackIntuitiveContract ( ) ;
347 void callbackContractEdges ( ) ;
348 void callbackContractFaces ( ) ;
349 void callbackContractVolumes ( ) ;
351 void callbackDelNullEdges ( ) ;
352 void callbackDelFlatFaces ( ) ;
353 void callbackDelFlatVolumes ( ) ;
356 void callbackInsertVertex ( ) ;
357 void callbackInsertEdge ( ) ;
358 void callbackInsertFace ( ) ;
361 void callbackIntuitiveStopUp ( ) ;
362 void callbackStopUp0 ( ) ;
363 void callbackStopUp1 ( ) ;
364 void callbackStopUp2 ( ) ;
365 void callbackStopUp3 ( ) ;
368 void callbackContextTriangulate ( ) ;
369 void callbackTriangulateEdges ( ) ;
370 void callbackTriangulateFaces ( ) ;
371 void callbackTriangulateVolumes ( );
372 void callbackSwapEdge ( );
373 void callbackTriangulateGeoFaces( );
376 void callbackQuadrangulateFaces ( ) ;
377 void callbackBasicQuadrangulateFaces ( ) ;
380 void callbackDual2d ( ) ;
381 void callbackDual3d ( ) ;
385 void callbackIntuitiveExtrudeByNormal ( ) ;
386 void callbackExtrude0ByNormal ( ) ;
387 void callbackExtrude1ByNormal ( ) ;
388 void callbackExtrude2ByNormal ( ) ;
391 void callbackExtrude1ByPath ( ) ;
392 void callbackExtrude2ByPath ( ) ;
395 void callbackExtrude1ByRevolution ( ) ;
396 void callbackExtrude2ByRevolution ( ) ;
399 void callbackThicken ( ) ;
402 void callbackMeshEdge ( ) ;
403 void callbackMeshSquare01 ( ) ;
404 void callbackMeshSquare02 ( ) ;
405 void callbackMeshSquare12 ( ) ;
407 void callbackMeshCube01 ( ) ;
408 void callbackMeshCube02 ( ) ;
409 void callbackMeshCube03 ( ) ;
410 void callbackMeshCube12 ( ) ;
411 void callbackMeshCube13 ( ) ;
412 void callbackMeshCube23 ( ) ;
415 void callbackSmooth1 ( ) ;
416 void callbackSmooth2 ( ) ;
417 void callbackSmooth3 ( ) ;
420 void callbackRoundVertices ( ) ;
421 void callbackRoundVerticesDig ( ) ;
422 void callbackRoundEdges2d ( ) ;
423 void callbackRoundEdges2dDig ();
424 void callbackRoundEdges3d ( ) ;
425 void callbackRoundEdges3dDig ( ) ;
426 void callbackRoundEdges2dWithSetback ();
427 void callbackRoundEdges2dDigWithSetback ();
428 void callbackRoundEdges3dWithSetback ( ) ;
429 void callbackRoundEdges3dDigWithSetback ( ) ;
432 void callbackTriangulateTopoFaces ();
433 void callbackMarkNonUniformFaces ();
434 void callbackOptimizeSelectedEdges ();
435 void callbackDelaunayTriangulation ();
436 void callbackOptimizedDelaunayTriangulation ();
441 void callbackCorefine2dSegmentsSweeping ( ) ;
442 void callbackCorefine2dSegmentsPropagation ( ) ;
443 void callbackBooleanOperations2d ( ) ;
444 void callbackCorefine3dMeshes ( ) ;
445 void callbackCorefine3dFaces ( ) ;
446 void callbackCorefineMarked3dFaces ( ) ;
447 void callbackCorefineMarked3dMeshesWith ( ) ;
448 void callbackBooleanOperations3d ( ) ;
452 void callbackComputeSurfacicHomology();
453 void callbackComputeVolumicHomology();
458 void callbackUncertainZone ();
459 void callbackCreateNearestIntersections ();
460 void callbackExtendSelectedBorders ();
461 void callbackExtendSelectedBordersToSurface ();
462 void callbackSmoothSelection ();
463 void callbackRelaxSelection ();
464 void callbackSimplifyMesh ();
465 void callbackCenterSelection ();
466 void callbackPlateVerticesOnFaces ();
467 void callbackPlateVerticesOnEdges ();
468 void callbackPlateVerticesOnVertices ();
469 void callbackSelectMacroVertices ();
470 void callbackSelectAllMacroEdges ();
471 void callbackSelectMacroEdges ();
472 void callbackSelectMacroFaces ();
473 void callbackSelectBordersBetweenSelectedDarts ();
474 void callbackImportGr2d ();
475 void callbackImportGr2dOk ();
476 void callbackImportXyz ();
477 void callbackImportXyzOk ();
478 void callbackImportTs ();
479 void callbackImportTsOk ();
480 void callbackImportCloud ();
481 void callbackImportCloudOk ();
483 void callbackHolesRefinement ();
484 void callbackTriangulateHoles ();
485 void callbackFillHolesOnMeshes ();
486 void callbackFailleDetection ();
487 void callbackExtractDetectedFailles ();
488 void callbackExtensionFailleSurface ();
492 void callbackMeshSimplification ();
493 void callbackImportVrml ();
494 void callbackExportTs ();
498 void callbackMaterializeBarycenter ();
499 void callbackMaterializeAxe ();
500 void callbackMaterializePlane ();
501 void callbackMaterializeNormalVector ();
502 void callbackMaterializeOrthoPlane ();
503 void callbackMaterializeReferential ();
507 void callbackReinitSelection ( ) ;
508 void callbackNegateSelection ( ) ;
509 void callbackSwapSelections ( ) ;
512 void callbackDuplicateSelection ( ) ;
513 void callbackDeleteSelection ( ) ;
516 void callbackGoForward1 ( ) ;
517 void callbackGoBackward1 ( ) ;
518 void callbackGoLeft1 ( ) ;
519 void callbackGoRight1 ( ) ;
522 void callbackGoForward1Rep ( ) ;
523 void callbackGoBackward1Rep ( ) ;
524 void callbackGoLeft1Rep ( ) ;
525 void callbackGoRight1Rep ( ) ;
528 void callbackGoForward0 ( ) ;
529 void callbackGoBackward0 ( ) ;
530 void callbackGoLeft0 ( ) ;
531 void callbackGoRight0 ( ) ;
534 void callbackGoForward0Rep ( ) ;
535 void callbackGoBackward0Rep ( ) ;
536 void callbackGoLeft0Rep ( ) ;
537 void callbackGoRight0Rep ( ) ;
540 void callbackMarkInterior2 ( ) ;
541 void callbackMarkInterior3 ( ) ;
543 void callbackIntuitiveSelectBorders ( ) ;
544 void callbackSelect0borders ( ) ;
545 void callbackSelect1borders ( ) ;
546 void callbackSelect2borders ( ) ;
547 void callbackSelect3borders ( ) ;
548 void callbackSelectNonPlanarFaces ( ) ;
549 void callbackSelectIncidents ( ) ;
552 void callbackGoAlpha0 ( ) ;
553 void callbackGoAlpha1 ( ) ;
554 void callbackGoAlpha2 ( ) ;
555 void callbackGoAlpha3 ( ) ;
566 void addViewMulti ( ) ;
568 void basculeView3D ( ) ;
569 void basculeViewXY ( ) ;
570 void basculeViewYZ ( ) ;
571 void basculeViewZX ( ) ;
572 void basculeViewMulti ( ) ;
574 void deleteView ( ) ;
576 void mireOrigine ( ) ;
578 void mireSommet ( ) ;
579 void mireVolume ( ) ;
580 void mireCompConnexe ( ) ;
581 void mireBrinsMarques ( ) ;
584 void callbackBackToBurstView ();
585 void callbackTopologicalView ();
586 void callbackEuclidianView ();
587 void callbackAnalyticView ();
588 void callbackVoxelView ();
589 void callbackK2View ();
593 void callbackSpamodSwitchToNextView ();
595 void OperationUngroupAllGeneral ( ) ;
596 void OperationUngroupAllPrecompiles ( ) ;
597 void OperationUngroupAllEyePos ( ) ;
598 void OperationUngroupAllAimedPos ( ) ;
599 void OperationUngroupAllDrawing ( ) ;
600 void OperationUngroupGeneral ( ) ;
601 void OperationUngroupPrecompiles ( ) ;
602 void OperationUngroupEyePos ( ) ;
603 void OperationUngroupAimedPos ( ) ;
604 void OperationUngroupDrawing ( ) ;
606 void OperationGroupAllGeneral ( ) ;
607 void OperationGroupAllPrecomp ( ) ;
608 void OperationGroupAllEyePos ( ) ;
609 void OperationGroupAllAimedPos ( ) ;
610 void OperationGroupAllDrawing ( ) ;
611 void OperationGroupGeneral ( ) ;
612 void OperationGroupPrecomp ( ) ;
613 void OperationGroupEyePos ( ) ;
614 void OperationGroupAimedPos ( ) ;
615 void OperationGroupDrawing ( ) ;
618 void callbackHideAllWindow ( ) ;
621 void bascule ( TView type ) ;
624 void creationBoitesOutils ( ) ;
627 void callbackMeshSquare (
int i ,
int j) ;
628 void callbackMeshCube (
int i ,
int j) ;
631 void roundVertices(
bool ADig);
632 void roundEdges (
bool A3D,
bool ADig,
bool ASetback);
637 bool getVerticesDisplay()
const;
638 void setVerticesDisplay(
bool b);
640 bool getNormalDisplay()
const;
641 void setNormalDisplay(
bool b);
643 bool getFacesDisplay()
const;
644 void setFacesDisplay(
bool b);
646 bool getFacesCoulAlea ()
const;
647 void setFacesCoulAlea ();
649 bool getVolumesCoulAlea ()
const;
650 void setVolumesCoulAlea ();
652 bool getCoulFacesGlobale ()
const;
653 void setCoulFacesGlobale ();
655 bool getCoulTopologie ()
const;
656 void setCoulTopologie ();
658 bool getCoulGeometry ()
const;
659 void setCoulGeometry ();
661 bool getSewsDisplay()
const;
662 void setSewsDisplay(
bool b);
664 bool getGridDisplay()
const;
665 void setGridDisplay(
bool b);
667 bool getAxisDisplay()
const;
668 void setAxisDisplay(
bool b);
671 void toggleDarts(
bool b);
674 CParameterAimedPosition* getParameterAimedPosition()
const;
675 CParameterDrawing* getParameterDrawing()
const;
676 CParameterEyePosition* getParameterEyePosition()
const;
677 CParameterAimedPoint* getParameterAimedPoint()
const;
678 CParameterAxis* getParameterAxis()
const;
679 CParameterGrid* getParameterGrid()
const;
681 GMap3d::CParameterDart* getParameterDart()
const;
682 GMap3d::CParameterFace* getParameterFace()
const;
683 GMap3d::CParameterPreview* getParameterPreview()
const;
684 GMap3d::CParameterNormalVector* getParameterNormalVector()
const;
685 GMap3d::CParameterObjectTransformation* getParameterObjectTransformation()
687 GMap3d::CParameterSew* getParameterSew()
const;
689 GMap3d::CParameterVertex* getParameterVertex()
const;
692 GMap3d::CParameterSpamod* getParameterSpamod ()
const;
693 #endif // MODULE_SPAMOD
698 GMap3d :: CControlerGMap * FControler ;
701 QWorkspace * FWorkspace ;
721 #ifdef MODULE_GEOLOGY
723 DialogMesh * FMeshActive ;
724 #endif // MODULE_GEOLOGY
769 QToolBar * operations;
771 QToolBar * selection;
774 QAction * charger_act;
775 QAction * sauver_act;
776 QAction * importer_act;
777 QAction * exporter_act;
783 QFileDialog* FileDialog;