summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2016-05-19 11:29:33 -0700
committerJohn Firebaugh <john.firebaugh@gmail.com>2016-05-31 10:15:18 -0700
commita475f1d81397bc79731e6392692420bd1aa29c41 (patch)
treedd8f63f138ae4ad90b5ebcfb07a1f4f7007437e1
parent25eec28588533875c4188c99bf46ed47111601ed (diff)
downloadqtlocation-mapboxgl-a475f1d81397bc79731e6392692420bd1aa29c41.tar.gz
[core] Run fixupPolygons on geojson-vt-cpp polygon output
-rw-r--r--src/mbgl/annotation/shape_annotation_impl.cpp5
-rw-r--r--src/mbgl/tile/geojson_tile.cpp5
2 files changed, 10 insertions, 0 deletions
diff --git a/src/mbgl/annotation/shape_annotation_impl.cpp b/src/mbgl/annotation/shape_annotation_impl.cpp
index 29dd4ef957..1da2e4ea9f 100644
--- a/src/mbgl/annotation/shape_annotation_impl.cpp
+++ b/src/mbgl/annotation/shape_annotation_impl.cpp
@@ -144,6 +144,11 @@ void ShapeAnnotationImpl::updateTile(const CanonicalTileID& tileID, AnnotationTi
renderGeometry.push_back(renderLine);
}
+ // https://github.com/mapbox/geojson-vt-cpp/issues/44
+ if (featureType == FeatureType::Polygon) {
+ renderGeometry = fixupPolygons(renderGeometry);
+ }
+
layer.features.emplace_back(
std::make_shared<AnnotationTileFeature>(featureType, renderGeometry));
}
diff --git a/src/mbgl/tile/geojson_tile.cpp b/src/mbgl/tile/geojson_tile.cpp
index 81d2cb5144..90147ffd87 100644
--- a/src/mbgl/tile/geojson_tile.cpp
+++ b/src/mbgl/tile/geojson_tile.cpp
@@ -89,6 +89,11 @@ std::unique_ptr<GeoJSONTile> convertTile(const mapbox::geojsonvt::Tile& tile) {
}
}
+ // https://github.com/mapbox/geojson-vt-cpp/issues/44
+ if (featureType == FeatureType::Polygon) {
+ geometry = fixupPolygons(geometry);
+ }
+
Feature::property_map properties { feature.tags.begin(), feature.tags.end() };
features.emplace_back(std::make_shared<GeoJSONTileFeature>(