diff options
author | Ansis Brammanis <ansis@mapbox.com> | 2020-02-11 13:39:22 -0500 |
---|---|---|
committer | Ansis Brammanis <ansis@mapbox.com> | 2020-02-11 13:39:22 -0500 |
commit | 42a6643fc8e4cd8a8c7d49b1713b02c22bf24722 (patch) | |
tree | 427eb1cc2aa4a3873543f4c3c1b5dc61405dbf4f | |
parent | 4f18d5fa92df175ac30f856a9273a00349b56cc3 (diff) | |
download | qtlocation-mapboxgl-upstream/symbol-sort-key-to-double.tar.gz |
start switching symbol-sort-key to double (does not compile)upstream/symbol-sort-key-to-double
-rw-r--r-- | include/mbgl/style/layers/symbol_layer.hpp | 6 | ||||
-rw-r--r-- | src/mbgl/layout/pattern_layout.hpp | 6 | ||||
-rw-r--r-- | src/mbgl/layout/symbol_feature.hpp | 2 | ||||
-rw-r--r-- | src/mbgl/layout/symbol_instance.hpp | 2 | ||||
-rw-r--r-- | src/mbgl/layout/symbol_layout.cpp | 6 | ||||
-rw-r--r-- | src/mbgl/layout/symbol_layout.hpp | 4 | ||||
-rw-r--r-- | src/mbgl/programs/segment.hpp | 4 | ||||
-rw-r--r-- | src/mbgl/renderer/layers/render_symbol_layer.cpp | 4 | ||||
-rw-r--r-- | src/mbgl/renderer/render_layer.hpp | 2 | ||||
-rw-r--r-- | src/mbgl/style/layers/symbol_layer.cpp | 6 | ||||
-rw-r--r-- | src/mbgl/style/layers/symbol_layer_properties.hpp | 2 | ||||
-rw-r--r-- | src/mbgl/text/placement.hpp | 2 |
12 files changed, 23 insertions, 23 deletions
diff --git a/include/mbgl/style/layers/symbol_layer.hpp b/include/mbgl/style/layers/symbol_layer.hpp index 8620869928..4330b36af7 100644 --- a/include/mbgl/style/layers/symbol_layer.hpp +++ b/include/mbgl/style/layers/symbol_layer.hpp @@ -93,9 +93,9 @@ public: const PropertyValue<SymbolPlacementType>& getSymbolPlacement() const; void setSymbolPlacement(const PropertyValue<SymbolPlacementType>&); - static PropertyValue<float> getDefaultSymbolSortKey(); - const PropertyValue<float>& getSymbolSortKey() const; - void setSymbolSortKey(const PropertyValue<float>&); + static PropertyValue<double> getDefaultSymbolSortKey(); + const PropertyValue<double>& getSymbolSortKey() const; + void setSymbolSortKey(const PropertyValue<double>&); static PropertyValue<float> getDefaultSymbolSpacing(); const PropertyValue<float>& getSymbolSpacing() const; diff --git a/src/mbgl/layout/pattern_layout.hpp b/src/mbgl/layout/pattern_layout.hpp index 44729dea83..ed7f7b918f 100644 --- a/src/mbgl/layout/pattern_layout.hpp +++ b/src/mbgl/layout/pattern_layout.hpp @@ -23,7 +23,7 @@ public: PatternFeature(std::size_t i_, std::unique_ptr<GeometryTileFeature> feature_, PatternLayerMap patterns_, - float sortKey_ = 0.0f) + double sortKey_ = 0.0f) : i(i_), feature(std::move(feature_)), patterns(std::move(patterns_)), sortKey(sortKey_) {} friend bool operator<(const PatternFeature& lhs, const PatternFeature& rhs) { return lhs.sortKey < rhs.sortKey; } @@ -31,7 +31,7 @@ public: std::size_t i; std::unique_ptr<GeometryTileFeature> feature; PatternLayerMap patterns; - float sortKey; + double sortKey; }; template <typename SortKeyPropertyType> @@ -60,7 +60,7 @@ struct PatternFeatureInserter { float zoom, const PropertiesType& properties) { const auto& sortKeyProperty = properties.template get<SortKeyPropertyType>(); - float sortKey = sortKeyProperty.evaluate(*feature, zoom, SortKeyPropertyType::defaultValue()); + double sortKey = sortKeyProperty.evaluate(*feature, zoom, SortKeyPropertyType::defaultValue()); PatternFeature patternFeature{index, std::move(feature), std::move(patternDependencyMap), sortKey}; const auto lowerBound = std::lower_bound(features.cbegin(), features.cend(), patternFeature); features.insert(lowerBound, std::move(patternFeature)); diff --git a/src/mbgl/layout/symbol_feature.hpp b/src/mbgl/layout/symbol_feature.hpp index d0aced1b19..48c2500321 100644 --- a/src/mbgl/layout/symbol_feature.hpp +++ b/src/mbgl/layout/symbol_feature.hpp @@ -31,7 +31,7 @@ public: GeometryCollection geometry; optional<TaggedString> formattedText; optional<style::expression::Image> icon; - float sortKey = 0.0f; + double sortKey = 0.0f; std::size_t index; bool allowsVerticalWritingMode = false; }; diff --git a/src/mbgl/layout/symbol_instance.hpp b/src/mbgl/layout/symbol_instance.hpp index 3303e5f7e3..8a017e503b 100644 --- a/src/mbgl/layout/symbol_instance.hpp +++ b/src/mbgl/layout/symbol_instance.hpp @@ -125,7 +125,7 @@ public: class SortKeyRange { public: - float sortKey; + double sortKey; size_t symbolInstanceStart; size_t symbolInstanceEnd; }; diff --git a/src/mbgl/layout/symbol_layout.cpp b/src/mbgl/layout/symbol_layout.cpp index 61c3b4ad66..aa8f4ca754 100644 --- a/src/mbgl/layout/symbol_layout.cpp +++ b/src/mbgl/layout/symbol_layout.cpp @@ -900,7 +900,7 @@ size_t SymbolLayout::addSymbol(SymbolBucket::Buffer& buffer, const SymbolQuad& symbol, const Anchor& labelAnchor, PlacedSymbol& placedSymbol, - float sortKey) { + double sortKey) { constexpr const uint16_t vertexLength = 4; const auto &tl = symbol.tl; @@ -914,7 +914,7 @@ size_t SymbolLayout::addSymbol(SymbolBucket::Buffer& buffer, if (buffer.segments.empty() || buffer.segments.back().vertexLength + vertexLength > std::numeric_limits<uint16_t>::max() || - fabs(buffer.segments.back().sortKey - sortKey) > std::numeric_limits<float>::epsilon()) { + fabs(buffer.segments.back().sortKey - sortKey) > std::numeric_limits<double>::epsilon()) { buffer.segments.emplace_back(buffer.vertices.elements(), buffer.triangles.elements(), 0ul, 0ul, sortKey); } @@ -993,7 +993,7 @@ size_t SymbolLayout::addSymbols(SymbolBucket::Buffer& buffer, const SymbolQuads& symbols, const Anchor& labelAnchor, PlacedSymbol& placedSymbol, - float sortKey) { + double sortKey) { bool firstSymbol = true; size_t firstIndex = 0; for (auto& symbol : symbols) { diff --git a/src/mbgl/layout/symbol_layout.hpp b/src/mbgl/layout/symbol_layout.hpp index 52c912c8ae..3b7398ce78 100644 --- a/src/mbgl/layout/symbol_layout.hpp +++ b/src/mbgl/layout/symbol_layout.hpp @@ -81,13 +81,13 @@ private: const SymbolQuad&, const Anchor& labelAnchor, PlacedSymbol& placedSymbol, - float sortKey); + double sortKey); size_t addSymbols(SymbolBucket::Buffer&, const Range<float> sizeData, const SymbolQuads&, const Anchor& labelAnchor, PlacedSymbol& placedSymbol, - float sortKey); + double sortKey); // Adds symbol quads to bucket and returns formatted section index of last // added quad. diff --git a/src/mbgl/programs/segment.hpp b/src/mbgl/programs/segment.hpp index 13e206aa2a..71e5c7733a 100644 --- a/src/mbgl/programs/segment.hpp +++ b/src/mbgl/programs/segment.hpp @@ -15,7 +15,7 @@ public: std::size_t indexOffset_, std::size_t vertexLength_ = 0, std::size_t indexLength_ = 0, - float sortKey_ = 0.0f) + double sortKey_ = 0.0f) : vertexOffset(vertexOffset_), indexOffset(indexOffset_), vertexLength(vertexLength_), @@ -39,7 +39,7 @@ public: // uses fill-color and the other uses fill-pattern mutable std::map<std::string, gfx::DrawScope> drawScopes; - float sortKey; + double sortKey; }; template <class AttributeList> diff --git a/src/mbgl/renderer/layers/render_symbol_layer.cpp b/src/mbgl/renderer/layers/render_symbol_layer.cpp index 955ad2ce51..2286bdf166 100644 --- a/src/mbgl/renderer/layers/render_symbol_layer.cpp +++ b/src/mbgl/renderer/layers/render_symbol_layer.cpp @@ -66,7 +66,7 @@ struct RenderableSegment { const RenderTile& tile_, const LayerRenderData& renderData_, const SymbolBucket::PaintProperties& bucketPaintProperties_, - float sortKey_, + double sortKey_, const SymbolType type_) : segment(segment_), tile(tile_), @@ -79,7 +79,7 @@ struct RenderableSegment { const RenderTile& tile; const LayerRenderData& renderData; const SymbolBucket::PaintProperties& bucketPaintProperties; - float sortKey; + double sortKey; SymbolType type; friend bool operator < (const RenderableSegment& lhs, const RenderableSegment& rhs) { diff --git a/src/mbgl/renderer/render_layer.hpp b/src/mbgl/renderer/render_layer.hpp index 4931893271..7b50548923 100644 --- a/src/mbgl/renderer/render_layer.hpp +++ b/src/mbgl/renderer/render_layer.hpp @@ -37,7 +37,7 @@ public: std::reference_wrapper<const RenderTile> tile; std::shared_ptr<FeatureIndex> featureIndex; bool firstInBucket; - float sortKey; + double sortKey; size_t symbolInstanceStart; size_t symbolInstanceEnd; }; diff --git a/src/mbgl/style/layers/symbol_layer.cpp b/src/mbgl/style/layers/symbol_layer.cpp index 39c2f2a052..9fce1b3223 100644 --- a/src/mbgl/style/layers/symbol_layer.cpp +++ b/src/mbgl/style/layers/symbol_layer.cpp @@ -301,15 +301,15 @@ void SymbolLayer::setSymbolPlacement(const PropertyValue<SymbolPlacementType>& v baseImpl = std::move(impl_); observer->onLayerChanged(*this); } -PropertyValue<float> SymbolLayer::getDefaultSymbolSortKey() { +PropertyValue<double> SymbolLayer::getDefaultSymbolSortKey() { return SymbolSortKey::defaultValue(); } -const PropertyValue<float>& SymbolLayer::getSymbolSortKey() const { +const PropertyValue<double>& SymbolLayer::getSymbolSortKey() const { return impl().layout.get<SymbolSortKey>(); } -void SymbolLayer::setSymbolSortKey(const PropertyValue<float>& value) { +void SymbolLayer::setSymbolSortKey(const PropertyValue<double>& value) { if (value == getSymbolSortKey()) return; auto impl_ = mutableImpl(); impl_->layout.get<SymbolSortKey>() = value; diff --git a/src/mbgl/style/layers/symbol_layer_properties.hpp b/src/mbgl/style/layers/symbol_layer_properties.hpp index 6552589971..72e98b1f3a 100644 --- a/src/mbgl/style/layers/symbol_layer_properties.hpp +++ b/src/mbgl/style/layers/symbol_layer_properties.hpp @@ -96,7 +96,7 @@ struct SymbolPlacement : LayoutProperty<SymbolPlacementType> { static SymbolPlacementType defaultValue() { return SymbolPlacementType::Point; } }; -struct SymbolSortKey : DataDrivenLayoutProperty<float> { +struct SymbolSortKey : DataDrivenLayoutProperty<double> { static constexpr const char *name() { return "symbol-sort-key"; } static float defaultValue() { return 0; } }; diff --git a/src/mbgl/text/placement.hpp b/src/mbgl/text/placement.hpp index 9fbd6b9743..6ba14f49d6 100644 --- a/src/mbgl/text/placement.hpp +++ b/src/mbgl/text/placement.hpp @@ -91,7 +91,7 @@ public: const RenderTile& tile; std::string sourceId; std::shared_ptr<FeatureIndex> featureIndex; - float sortKey; + double sortKey; size_t symbolInstanceStart; size_t symbolInstanceEnd; }; |