From dce7886447bf153b9fad99ddffa08099f7c3f906 Mon Sep 17 00:00:00 2001 From: Emux Date: Fri, 2 Jun 2017 21:39:04 +0300 Subject: [PATCH] OSMIndoorLayer: enable labels, fixes #355 --- .../src/org/oscim/layers/OSMIndoorLayer.java | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/vtm-jeo/src/org/oscim/layers/OSMIndoorLayer.java b/vtm-jeo/src/org/oscim/layers/OSMIndoorLayer.java index cfd7a131..a9b47976 100644 --- a/vtm-jeo/src/org/oscim/layers/OSMIndoorLayer.java +++ b/vtm-jeo/src/org/oscim/layers/OSMIndoorLayer.java @@ -1,5 +1,6 @@ /* - * Copyright 2016 devemux86 + * Copyright 2014 Hannes Janetzek + * Copyright 2016-2017 devemux86 * * This file is part of the OpenScienceMap project (http://www.opensciencemap.org). * @@ -63,7 +64,6 @@ public class OSMIndoorLayer extends JeoVectorLayer { //render TextItems to a bitmap and prepare vertex buffer data. mTextLayer.prepare(); - mTextLayer.clearLabels(); } protected void addLine(Task t, Feature f, Rule rule, Geometry g) { @@ -125,15 +125,17 @@ public class OSMIndoorLayer extends JeoVectorLayer { float x = 0; float y = 0; int n = mGeom.index[0]; - for (int i = 0; i < n; ) { - x += mGeom.points[i++]; - y += mGeom.points[i++]; + if (n > 0) { + for (int i = 0; i < n; ) { + x += mGeom.points[i++]; + y += mGeom.points[i++]; + } + + TextItem ti = TextItem.pool.get(); + ti.set(x / (n / 2), y / (n / 2), (String) o, mText); + + mTextLayer.addText(ti); } - - TextItem ti = TextItem.pool.get(); - ti.set(x / (n / 2) / 8, y / (n / 2) / 8, (String) o, mText); - - mTextLayer.addText(ti); } } }