From 3b9c80b194029adf413251b8ee37fccf8dcb44a3 Mon Sep 17 00:00:00 2001 From: k-a-z-u Date: Wed, 24 Jan 2018 15:39:44 +0100 Subject: [PATCH] fixed issue with grid-generation fixed issue with grid-drawing added z-offset/scaler --- mapview/3D/MapView3D.cpp | 4 +++- mapview/3DGrid/GridModel.h | 2 +- mapview/3DGrid/GridRenderer.h | 9 +++++---- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/mapview/3D/MapView3D.cpp b/mapview/3D/MapView3D.cpp index 171f9f2..e97b952 100644 --- a/mapview/3D/MapView3D.cpp +++ b/mapview/3D/MapView3D.cpp @@ -113,7 +113,9 @@ void MapView3D::paintGL() { // // 1) translate into center // glTranslatef(tra.x, tra.y, tra.z); - draw(); + if (gridModel) { + draw(); + } } diff --git a/mapview/3DGrid/GridModel.h b/mapview/3DGrid/GridModel.h index 20cc0a0..cfb1baa 100644 --- a/mapview/3DGrid/GridModel.h +++ b/mapview/3DGrid/GridModel.h @@ -21,7 +21,7 @@ class GridModel { private: - const int gridSize_cm = 40; // TODO + const int gridSize_cm = 30; // TODO Grid grid; Floorplan::IndoorMap* im; diff --git a/mapview/3DGrid/GridRenderer.h b/mapview/3DGrid/GridRenderer.h index ea42aea..2cd3e76 100644 --- a/mapview/3DGrid/GridRenderer.h +++ b/mapview/3DGrid/GridRenderer.h @@ -52,7 +52,8 @@ public: glDisable(GL_LIGHTING); - const float s = 2; + const float sz = 1.0f; // scale-z: more/less z-spacing + const float oz = 0.1f; // z-offset if (showEdges) { std::unordered_set used; @@ -64,8 +65,8 @@ public: uint64_t max = std::max(n1.getIdx(), n2.getIdx()); uint64_t idx = max << 32 | min; if (used.find(idx) == used.end()) { - glVertex3f(n1.x_cm/100.0f, n1.z_cm/100.0f*s, n1.y_cm/100.0f); - glVertex3f(n2.x_cm/100.0f, n2.z_cm/100.0f*s, n2.y_cm/100.0f); + glVertex3f(n1.x_cm/100.0f, n1.z_cm/100.0f*sz+oz, n1.y_cm/100.0f); + glVertex3f(n2.x_cm/100.0f, n2.z_cm/100.0f*sz+oz, n2.y_cm/100.0f); used.insert(idx); } } @@ -94,7 +95,7 @@ public: } - glVertex3f(n.x_cm/100.0f, n.z_cm/100.0f*s, n.y_cm/100.0f); + glVertex3f(n.x_cm/100.0f, n.z_cm/100.0f*sz+oz, n.y_cm/100.0f); } glEnd();