split line(old) and wall(new)

added new walling
started working on windows
This commit is contained in:
k-a-z-u
2018-07-25 16:20:34 +02:00
parent 4938987063
commit 8017241c6e
14 changed files with 703 additions and 122 deletions

View File

@@ -21,6 +21,7 @@
#include "../mapview/2D/tools/ToolSelector.h"
#include "../mapview/2D/tools/ToolNewElement.h"
#include "../mapview/2D/tools/ToolNewWall.h"
#include "../mapview/2D/tools/ToolNewLine.h"
#include "../mapview/2D/tools/ToolNewDoor.h"
#include "../mapview/2D/tools/ToolNewStair.h"
#include "../mapview/2D/tools/ToolNewElevator.h"
@@ -81,6 +82,11 @@ ToolBoxWidget::ToolBoxWidget(MapView2D* view, QWidget *parent) : QWidget(parent)
lay->addWidget(btnWall, r++, 0, 1,1,Qt::AlignTop);
connect(btnWall, SIGNAL(clicked(bool)), this, SLOT(onNewWall()));
btnLine = new QPushButton(UIHelper::getIcon("line"), "");
btnLine->setMinimumSize(s,s);
lay->addWidget(btnLine, r++, 0, 1,1,Qt::AlignTop);
connect(btnLine, SIGNAL(clicked(bool)), this, SLOT(onNewLine()));
btnPillar = new QPushButton(UIHelper::getIcon("pillar"), "");
btnPillar->setMinimumSize(s,s);
lay->addWidget(btnPillar, r++, 0, 1,1,Qt::AlignTop);
@@ -184,6 +190,7 @@ void ToolBoxWidget::onMainToolChanged() {
btnGround->setStyleSheet( dynamic_cast<ToolNewOutline*>(t) ? styleSel : styleNor );
btnLine->setStyleSheet( dynamic_cast<ToolNewLine*>(t) ? styleSel : styleNor );
btnDoor->setStyleSheet( dynamic_cast<ToolNewDoor*>(t) ? styleSel : styleNor );
btnWall->setStyleSheet( dynamic_cast<ToolNewWall*>(t) ? styleSel : styleNor );
btnObject->setStyleSheet( dynamic_cast<ToolNewObject*>(t) ? styleSel : styleNor );
@@ -206,6 +213,7 @@ void ToolBoxWidget::setSelectedLayer(MapLayer *ml) {
btnGround->setEnabled(ml && (ml->getLayerType() == MapLayerType::FLOOR_GROUND));
btnLine->setEnabled(ml && (ml->getLayerType() == MapLayerType::FLOOR_OBSTACLES));
btnWall->setEnabled(ml && (ml->getLayerType() == MapLayerType::FLOOR_OBSTACLES));
btnPillar->setEnabled(ml && (ml->getLayerType() == MapLayerType::FLOOR_OBSTACLES));
btnDoor->setEnabled(ml && (ml->getLayerType() == MapLayerType::FLOOR_OBSTACLES));
@@ -258,6 +266,10 @@ void ToolBoxWidget::onMeasure() {
view->getTools().setMain(new ToolMeasure(view->getTools()));
}
void ToolBoxWidget::onNewLine() {
view->getTools().setMain(new ToolNewLine(view->getTools(), curLayer));
}
void ToolBoxWidget::onNewWall() {
view->getTools().setMain(new ToolNewWall(view->getTools(), curLayer));
}
@@ -277,105 +289,36 @@ void ToolBoxWidget::onNewPillar() {
void ToolBoxWidget::onNewStair() {
view->getTools().setMain(new ToolNewStair(view->getTools(), curLayer));
// const Point2 center = view->getScaler().getCenter();
// Floorplan::StairFreeform* stair = new Floorplan::StairFreeform();
// Floorplan::StairPart part(Point3(center.x-3, center.y, 0), Point3(center.x+3, center.y, 3), 3);
// stair->parts.push_back( part );
// MMFloorStairs* stairs = (MMFloorStairs*)curLayer;
// stairs->create(stair);
}
void ToolBoxWidget::onNewElevator() {
// const Point2 center = view->getScaler().getCenter();
// Floorplan::Elevator* elevator = new Floorplan::Elevator(center);
// MMFloorElevators* elevators = (MMFloorElevators*)curLayer;
// elevators->create(elevator);
view->getTools().setMain(new ToolNewElevator(view->getTools(), curLayer));
}
void ToolBoxWidget::onNewAccessPoint() {
// const Point2 center = view->getScaler().getCenter();
// Floorplan::AccessPoint* ap = new Floorplan::AccessPoint(
// "noname", "00:00:00:00:00:00", Point3(center.x, center.y, 0)
// );
// MMFloorAccessPoints* aps = (MMFloorAccessPoints*) curLayer;
// aps->createAP(ap);
view->getTools().setMain(new ToolNewAccessPoint(view->getTools(), curLayer));
}
void ToolBoxWidget::onNewBeacon() {
// const Point2 center = view->getScaler().getCenter();
// Floorplan::Beacon* b = new Floorplan::Beacon(
// "noname", "00:00:00:00:00:00", Point3(center.x, center.y, 0)
// );
// MMFloorBeacons* beacons = (MMFloorBeacons*) curLayer;
// beacons->createBeacon(b);
view->getTools().setMain(new ToolNewBeacon(view->getTools(), curLayer));
}
void ToolBoxWidget::onNewFingerprintLocation() {
// const Point2 center = view->getScaler().getCenter();
// Floorplan::FingerprintLocation* fpl = new Floorplan::FingerprintLocation("noname", center, 0);
// MMFloorFingerprints* fps = (MMFloorFingerprints*) curLayer;
// fps->create(fpl);
view->getTools().setMain(new ToolNewFingerprint(view->getTools(), curLayer));
}
void ToolBoxWidget::onNewPOI() {
// const Point2 center = view->getScaler().getCenter();
// Floorplan::POI* poi = new Floorplan::POI(
// Floorplan::POIType::ROOM, "noname", Point2(center.x, center.y)
// );
// MMFloorPOIs* pois = (MMFloorPOIs*) curLayer;
// pois->createPOI(poi);
view->getTools().setMain(new ToolNewPOI(view->getTools(), curLayer));
}
void ToolBoxWidget::onNewGTP() {
// const Point2 center = view->getScaler().getCenter();
// Floorplan::GroundTruthPoint* gtp = new Floorplan::GroundTruthPoint(
// 0, Point3(center.x, center.y, 0)
// );
// MMFloorGroundTruthPoints* gtps = (MMFloorGroundTruthPoints*) curLayer;
// gtps->createGroundTruthPoint(gtp);
view->getTools().setMain(new ToolNewGroundTruth(view->getTools(), curLayer));
}
void ToolBoxWidget::onNewEarthReg() {
const Point2 center = view->getScaler().getCenter();

View File

@@ -39,6 +39,7 @@ private:
QPushButton* btnMeasure;
QPushButton* btnGround;
QPushButton* btnLine;
QPushButton* btnWall;
QPushButton* btnPillar;
QPushButton* btnDoor;
@@ -63,6 +64,7 @@ private slots:
void onNewGround();
void onNewWall();
void onNewLine();
void onNewPillar();
void onNewDoor();
void onNewObject();