worked on grid generation
minor editor changes
This commit is contained in:
@@ -77,7 +77,7 @@ MainController::MainController() {
|
||||
connect(mw, &MainWindow::onGridShowEdges, [&] (const bool show) {mw->getMapView3D()->getGridRenderer()->setShowEdges(show);} );
|
||||
|
||||
|
||||
mapModel->load("../IndoorMap/maps/SHL17.xml");
|
||||
mapModel->load("../IndoorMap/maps/SHL20.xml");
|
||||
//mapModel->load("../IndoorMap/maps/test.xml");
|
||||
|
||||
}
|
||||
|
||||
@@ -27,6 +27,8 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi
|
||||
|
||||
ui->setupUi(this);
|
||||
|
||||
|
||||
|
||||
QString css;
|
||||
css += "QPushButton { border: 1px solid #000000; background-color: #ffffff; }";
|
||||
css += "QPushButton:!enabled { border: 1px solid #cccccc; background-color:none; }";
|
||||
@@ -35,6 +37,8 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi
|
||||
|
||||
this->setStyleSheet(css);
|
||||
|
||||
layerTree = new QTreeView();
|
||||
|
||||
mapView2D = new MapView2D();
|
||||
mapView3D = new MapView3D();
|
||||
|
||||
@@ -43,14 +47,52 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi
|
||||
actionWidget = new ActionWidget();
|
||||
toolBoxWidget = new ToolBoxWidget(mapView2D);
|
||||
|
||||
ui->layButtons->addWidget(toolBoxWidget);
|
||||
// toolbox
|
||||
QDockWidget* toolBoxWidgetDock = new QDockWidget("", this); toolBoxWidgetDock->setWidget(toolBoxWidget);
|
||||
addDockWidget(Qt::LeftDockWidgetArea, toolBoxWidgetDock);
|
||||
|
||||
ui->layMap->addWidget(mapView2D);
|
||||
ui->layMap->addWidget(mapView3D);
|
||||
|
||||
ui->layTree->addWidget(layerParamWidget);
|
||||
ui->layTree->addWidget(elementParamWidget);
|
||||
ui->layTree->addWidget(actionWidget);
|
||||
// layers
|
||||
QDockWidget* layerTreeDock = new QDockWidget("layers", this); layerTreeDock->setWidget(layerTree);
|
||||
addDockWidget(Qt::RightDockWidgetArea, layerTreeDock);
|
||||
|
||||
// layer params
|
||||
QDockWidget* layerParamWidgetDock = new QDockWidget("layer params", this); layerParamWidgetDock->setWidget(layerParamWidget);
|
||||
addDockWidget(Qt::RightDockWidgetArea, layerParamWidgetDock);
|
||||
|
||||
// element params
|
||||
QDockWidget* elementParamWidgetDock = new QDockWidget("element params", this); elementParamWidgetDock->setWidget(elementParamWidget);
|
||||
addDockWidget(Qt::RightDockWidgetArea, elementParamWidgetDock);
|
||||
|
||||
// actions
|
||||
QDockWidget* actionWidgetDock = new QDockWidget("actions", this); actionWidgetDock->setWidget(actionWidget);
|
||||
addDockWidget(Qt::RightDockWidgetArea, actionWidgetDock);
|
||||
|
||||
|
||||
|
||||
|
||||
QSplitter* splitter = new QSplitter(Qt::Orientation::Vertical);
|
||||
setCentralWidget(splitter);
|
||||
splitter->addWidget(mapView2D);
|
||||
splitter->addWidget(mapView3D);
|
||||
|
||||
// // 2D View
|
||||
// QDockWidget* mapView2DDoc = new QDockWidget("2D", this); mapView2DDoc->setWidget(mapView2D);
|
||||
// addDockWidget(Qt::AllDockWidgetAreas, mapView2DDoc);
|
||||
|
||||
// // 3D View
|
||||
// QDockWidget* mapView3DDoc = new QDockWidget("3D", this); mapView3DDoc->setWidget(mapView3D);
|
||||
// addDockWidget(Qt::AllDockWidgetAreas, mapView3DDoc);
|
||||
|
||||
|
||||
// ui->layButtons->addWidget(toolBoxWidget);
|
||||
|
||||
// ui->layMap->addWidget(mapView2D);
|
||||
// ui->layMap->addWidget(mapView3D);
|
||||
|
||||
// ui->layTree->addWidget(layerParamWidget);
|
||||
// ui->layTree->addWidget(elementParamWidget);
|
||||
// ui->layTree->addWidget(actionWidget);
|
||||
|
||||
|
||||
// show mode
|
||||
@@ -85,5 +127,5 @@ MainWindow::~MainWindow() {
|
||||
|
||||
|
||||
QTreeView* MainWindow::getTree() {
|
||||
return ui->layerTree;
|
||||
return layerTree;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define MAINWINDOW_H
|
||||
|
||||
#include <QMainWindow>
|
||||
|
||||
class MapView2D;
|
||||
class MapView3D;
|
||||
class QTreeView;
|
||||
@@ -44,6 +45,7 @@ signals:
|
||||
|
||||
private:
|
||||
Ui::MainWindow *ui;
|
||||
QTreeView* layerTree;
|
||||
MapView2D* mapView2D;
|
||||
MapView3D* mapView3D;
|
||||
ElementParamWidget* elementParamWidget;
|
||||
|
||||
@@ -14,28 +14,7 @@
|
||||
<string>MainWindow</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralWidget">
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<item row="0" column="0">
|
||||
<layout class="QVBoxLayout" name="layButtons"/>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<layout class="QVBoxLayout" name="layMap"/>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<layout class="QVBoxLayout" name="layTree">
|
||||
<item>
|
||||
<widget class="QTreeView" name="layerTree">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>250</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
<layout class="QGridLayout" name="gridLayout_2"/>
|
||||
</widget>
|
||||
<widget class="QStatusBar" name="statusBar"/>
|
||||
<widget class="QMenuBar" name="menuBar">
|
||||
|
||||
4
main.cpp
4
main.cpp
@@ -1,8 +1,8 @@
|
||||
#include "MainController.h"
|
||||
#include <QApplication>
|
||||
|
||||
#include "exp.h"
|
||||
#include "ray.h"
|
||||
//#include "exp.h"
|
||||
//#include "ray.h"
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ class GridModel {
|
||||
|
||||
private:
|
||||
|
||||
int gridSize_cm = 31;
|
||||
int gridSize_cm = 20;
|
||||
Grid<MyNode> grid;
|
||||
Floorplan::IndoorMap* im;
|
||||
|
||||
@@ -82,7 +82,7 @@ public:
|
||||
Listener l;
|
||||
|
||||
GridFactory<MyNode> fac(grid);
|
||||
fac.build(im, true, &l);
|
||||
fac.build(im, &l);
|
||||
|
||||
Importance::addImportance(grid, 0);
|
||||
//Importance::addImportance(grid, 400);
|
||||
|
||||
@@ -79,8 +79,8 @@ public:
|
||||
float sy1 = p.s.yms(my1);
|
||||
float sx2 = p.s.xms(mx2);
|
||||
float sy2 = p.s.yms(my2);
|
||||
float sw = abs(sx1-sx2);
|
||||
float sh = abs(sy1-sy2);
|
||||
float sw = std::abs(sx1-sx2);
|
||||
float sh = std::abs(sy1-sy2);
|
||||
|
||||
bbox = BBox2();
|
||||
bbox.add(Point2(mx1, my1));
|
||||
|
||||
@@ -97,8 +97,8 @@ public:
|
||||
QLinearGradient gradient(p.s.xms(part.start.x), p.s.yms(part.start.y), p.s.xms(part.end.x), p.s.yms(part.end.y));
|
||||
const float p1 = 0.1 + clamp01( part.start.z / floor->height) * 0.8;
|
||||
const float p2 = 0.1 + clamp01( part.end.z / floor->height) * 0.8;
|
||||
gradient.setColorAt(0, QColor(p1*255, p1*255, p1*255));
|
||||
gradient.setColorAt(1, QColor(p2*255, p2*255, p2*255));
|
||||
gradient.setColorAt(0, QColor(p1*255, p1*255, p1*255, 128));
|
||||
gradient.setColorAt(1, QColor(p2*255, p2*255, p2*255, 128));
|
||||
p.setBrush(gradient);
|
||||
p.setPen(QColor(0,0,0,128));
|
||||
|
||||
@@ -107,6 +107,24 @@ public:
|
||||
const std::vector<Point3> points = {quad.p1, quad.p2, quad.p3, quad.p4};
|
||||
p.drawPolygon(points);
|
||||
|
||||
|
||||
QPen pen;
|
||||
pen.setWidth(5);
|
||||
pen.setColor(QColor(255,0,0));
|
||||
p.setPen(pen);
|
||||
|
||||
// LINT
|
||||
if (i == 0) {
|
||||
if (quad.p1.z != floor->getStartingZ()) {
|
||||
p.drawLine(quad.p1, quad.p2);
|
||||
}
|
||||
}
|
||||
if (i == (int) parts.size() - 1) {
|
||||
if (quad.p3.z != floor->getEndingZ()) {
|
||||
p.drawLine(quad.p3, quad.p4);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (hasFocus()) {
|
||||
|
||||
@@ -3,9 +3,7 @@
|
||||
#include <QPushButton>
|
||||
#include <QHBoxLayout>
|
||||
|
||||
ActionWidget::ActionWidget(QWidget *parent) : QGroupBox(parent) {
|
||||
|
||||
setTitle("actions");
|
||||
ActionWidget::ActionWidget(QWidget *parent) : QWidget(parent) {
|
||||
|
||||
QHBoxLayout* lay = new QHBoxLayout(this);
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
#ifndef ACTIONWIDGET_H
|
||||
#define ACTIONWIDGET_H
|
||||
|
||||
#include <QGroupBox>
|
||||
#include <QWidget>
|
||||
|
||||
class ActionWidget : public QGroupBox {
|
||||
class ActionWidget : public QWidget {
|
||||
|
||||
Q_OBJECT
|
||||
|
||||
|
||||
@@ -64,14 +64,14 @@ QComboBox* getOutlineMethods() {
|
||||
|
||||
|
||||
|
||||
ElementParamWidget::ElementParamWidget(QWidget *parent) : QGroupBox(parent) {
|
||||
ElementParamWidget::ElementParamWidget(QWidget *parent) : QWidget(parent) {
|
||||
|
||||
this->lay = new QGridLayout(this);
|
||||
|
||||
setMinimumSize(100, 100);
|
||||
setMaximumWidth(250);
|
||||
|
||||
setTitle("MapElement Parameters");
|
||||
//setTitle("MapElement Parameters");
|
||||
QGridLayout* lay = new QGridLayout();
|
||||
|
||||
// start empty
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef PARAMWIDGET_H
|
||||
#define PARAMWIDGET_H
|
||||
|
||||
#include <QGroupBox>
|
||||
#include <QWidget>
|
||||
#include "../mapview/model/MapModelElement.h"
|
||||
|
||||
class QLabel;
|
||||
@@ -10,7 +10,7 @@ class QLineEdit;
|
||||
class QPushButton;
|
||||
class QGridLayout;
|
||||
|
||||
class ElementParamWidget : public QGroupBox {
|
||||
class ElementParamWidget : public QWidget {
|
||||
|
||||
Q_OBJECT
|
||||
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
#include "mapview/model/IHasName.h"
|
||||
#include "mapview/model/MMFloor.h"
|
||||
|
||||
LayerParamWidget::LayerParamWidget(QWidget *parent) : QGroupBox(parent) {
|
||||
LayerParamWidget::LayerParamWidget(QWidget *parent) : QWidget(parent) {
|
||||
|
||||
setMinimumSize(100, 100);
|
||||
setMaximumWidth(250);
|
||||
setTitle("MapLayer Parameters");
|
||||
//setTitle("MapLayer Parameters");
|
||||
|
||||
QGridLayout* lay = new QGridLayout(this);
|
||||
int r = 0;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef LAYERPARAMWIDGET_H
|
||||
#define LAYERPARAMWIDGET_H
|
||||
|
||||
#include <QGroupBox>
|
||||
#include <QWidget>
|
||||
|
||||
class MapLayer;
|
||||
|
||||
@@ -9,7 +9,7 @@ class QLabel;
|
||||
class QLineEdit;
|
||||
class QComboBox;
|
||||
|
||||
class LayerParamWidget : public QGroupBox {
|
||||
class LayerParamWidget : public QWidget {
|
||||
|
||||
Q_OBJECT
|
||||
|
||||
|
||||
Reference in New Issue
Block a user