summaryrefslogtreecommitdiff
path: root/src/mbgl/util/get_geometries.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/util/get_geometries.cpp')
-rw-r--r--src/mbgl/util/get_geometries.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/mbgl/util/get_geometries.cpp b/src/mbgl/util/get_geometries.cpp
new file mode 100644
index 0000000000..4d4d02c5ff
--- /dev/null
+++ b/src/mbgl/util/get_geometries.cpp
@@ -0,0 +1,19 @@
+#include <mbgl/util/get_geometries.hpp>
+#include <mbgl/util/constants.hpp>
+
+namespace mbgl {
+
+GeometryCollection getGeometries(const GeometryTileFeature& feature) {
+ const float scale = float(util::EXTENT) / feature.getExtent();
+ GeometryCollection geometryCollection = feature.getGeometries();
+ for (auto& line : geometryCollection) {
+ for (auto& point : line) {
+ point.x = std::round(point.x * scale);
+ point.y = std::round(point.y * scale);
+ }
+ }
+ return geometryCollection;
+}
+
+} // namespace mbgl
+