From 2bf701b3232687e4df8d7f81ec23a7f7adb8d5ca Mon Sep 17 00:00:00 2001 From: Andrew Hay Kurtz Date: Tue, 10 Mar 2020 00:39:02 -0700 Subject: [PATCH] [core] Fix issues from rebase --- src/mbgl/layout/circle_layout.hpp | 12 +++++++----- src/mbgl/renderer/layers/render_circle_layer.cpp | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/mbgl/layout/circle_layout.hpp b/src/mbgl/layout/circle_layout.hpp index 2b8541a4b07..3a47d4455e5 100644 --- a/src/mbgl/layout/circle_layout.hpp +++ b/src/mbgl/layout/circle_layout.hpp @@ -68,11 +68,12 @@ class CircleLayout : public Layout { bool hasDependencies() const override { return hasPattern; } - void createBucket(const ImagePositions&, + virtual void createBucket(const ImagePositions&, std::unique_ptr& featureIndex, std::unordered_map& renderData, const bool, - const bool) override { + const bool, + const CanonicalTileID& canonical) override { auto bucket = std::make_shared(layerPropertiesMap, mode, zoom); for (auto& circleFeature : features) { @@ -80,7 +81,7 @@ class CircleLayout : public Layout { std::unique_ptr feature = std::move(circleFeature.feature); const GeometryCollection& geometries = feature->getGeometries(); - addCircle(*bucket, *feature, geometries, i, circleFeature.sortKey); + addCircle(*bucket, *feature, geometries, i, circleFeature.sortKey, canonical); featureIndex->insert(geometries, i, sourceLayerID, bucketLeaderID); } if (bucket->hasData()) { @@ -95,7 +96,8 @@ class CircleLayout : public Layout { const GeometryTileFeature& feature, const GeometryCollection& geometry, std::size_t featureIndex, - float sortKey) { + float sortKey, + const CanonicalTileID& canonical) { constexpr const uint16_t vertexLength = 4; auto& segments = bucket.segments; @@ -148,7 +150,7 @@ class CircleLayout : public Layout { } for (auto& pair : bucket.paintPropertyBinders) { - pair.second.populateVertexVectors(feature, vertices.elements(), featureIndex, {}, {}); + pair.second.populateVertexVectors(feature, vertices.elements(), featureIndex, {}, {}, canonical); } } diff --git a/src/mbgl/renderer/layers/render_circle_layer.cpp b/src/mbgl/renderer/layers/render_circle_layer.cpp index d52595592ec..219af236f87 100644 --- a/src/mbgl/renderer/layers/render_circle_layer.cpp +++ b/src/mbgl/renderer/layers/render_circle_layer.cpp @@ -89,7 +89,7 @@ void RenderCircleLayer::render(PaintParameters& parameters) { return; } - const bool sortFeaturesByKey = !impl(baseImpl).layout.get().isUndefined(); + const bool sortFeaturesByKey = !impl_cast(baseImpl).layout.get().isUndefined(); std::multiset renderableSegments{}; for (const RenderTile& tile : *renderTiles) {