roadeditdialog.h 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. #ifndef ROADEDITDIALOG_H
  2. #define ROADEDITDIALOG_H
  3. #include <QDialog>
  4. #include <QMessageBox>
  5. #include "myview.h"
  6. #include "OpenDrive/OpenDrive.h"
  7. #include "ivxodrtool.h"
  8. #include "roadviewitem.h"
  9. #include "dialogeditlane.h"
  10. #include "dialogeditroadmark.h"
  11. #include "dialoglanefromrtk.h"
  12. #include "dialogroadsplit.h"
  13. #include "dialogroadmerge.h"
  14. #include "dialogroadmove.h"
  15. #include "dialogroadrotate.h"
  16. #include "dialogroadmirror.h"
  17. #include "dialoglaneoffset.h"
  18. #include "dialogroadobject.h"
  19. #include "dialogroadoptimize.h"
  20. #include "roaddigit.h"
  21. #include "xodrscenfunc.h"
  22. namespace Ui {
  23. class RoadEditDialog;
  24. }
  25. class RoadEditDialog : public QDialog
  26. {
  27. Q_OBJECT
  28. public:
  29. explicit RoadEditDialog(OpenDrive * pxodr,std::string strdefroad,QWidget *parent = nullptr);
  30. ~RoadEditDialog();
  31. private:
  32. void ExecPainter();
  33. private slots:
  34. virtual void paintEvent(QPaintEvent *);
  35. void on_comboBox_Road_activated(const QString &arg1);
  36. void on_comboBox_Road_currentIndexChanged(int index);
  37. void on_comboBox_Geo_currentIndexChanged(int index);
  38. void on_pushButton_EditLane_clicked();
  39. void on_pushButton_EditRoadMark_clicked();
  40. void on_pushButton_LaneFromRTK_clicked();
  41. void on_pushButton_RoadSplit_clicked();
  42. void on_pushButton_RoadMerge_clicked();
  43. void on_pushButton_MoveRoad_clicked();
  44. void on_pushButton_RotateRoad_clicked();
  45. void on_pushButton_MirrorRoad_clicked();
  46. void on_pushButton_EditLaneOffset_clicked();
  47. void on_pushButton_EditRoadObjects_clicked();
  48. void on_pushButton_RoadOptimize_clicked();
  49. private:
  50. bool IsDrawMark(double s);
  51. private:
  52. Ui::RoadEditDialog *ui;
  53. OpenDrive * mpxodr;
  54. QImage *image;
  55. QPainter *painter;
  56. MyView *myview;
  57. QTimer *timer;
  58. QGraphicsScene *scene;
  59. Road * mpCurRoad = 0;
  60. int mnSelGeo = -1;
  61. std::vector<roadviewitem *> mvectorroadview;
  62. std::vector<QGraphicsPathItem *> mvectorviewitem;
  63. double mfViewMoveX = 0;
  64. double mfViewMoveY = 0;
  65. };
  66. #endif // ROADEDITDIALOG_H