diff options
author | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2020-01-15 15:27:09 +0200 |
---|---|---|
committer | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2020-01-22 14:30:26 +0200 |
commit | 5af128f205a404128e804f5c82ecf748a52dac9c (patch) | |
tree | 1e1c6c0b697ebbffd590f807b3f17b3beef5bdad /src/mbgl/text | |
parent | 4735845a6ee4baad9306b8d5150b093fccdd11a2 (diff) | |
download | qtlocation-mapboxgl-5af128f205a404128e804f5c82ecf748a52dac9c.tar.gz |
[core] Pass placement commit parameters in constructor
Diffstat (limited to 'src/mbgl/text')
-rw-r--r-- | src/mbgl/text/placement.cpp | 10 | ||||
-rw-r--r-- | src/mbgl/text/placement.hpp | 5 |
2 files changed, 9 insertions, 6 deletions
diff --git a/src/mbgl/text/placement.cpp b/src/mbgl/text/placement.cpp index d6a78082fa..f3917a8fdb 100644 --- a/src/mbgl/text/placement.cpp +++ b/src/mbgl/text/placement.cpp @@ -61,7 +61,8 @@ const CollisionGroups::CollisionGroup& CollisionGroups::get(const std::string& s // PlacementController implemenation PlacementController::PlacementController() - : placement(makeMutable<Placement>(TransformState{}, MapMode::Static, style::TransitionOptions{}, true, nullopt)) {} + : placement(makeMutable<Placement>( + TransformState{}, MapMode::Static, style::TransitionOptions{}, true, TimePoint(), nullopt)) {} void PlacementController::setPlacement(Immutable<Placement> placement_) { placement = std::move(placement_); @@ -94,10 +95,12 @@ Placement::Placement(const TransformState& state_, MapMode mapMode_, style::TransitionOptions transitionOptions_, const bool crossSourceCollisions, + TimePoint commitTime_, optional<Immutable<Placement>> prevPlacement_) : collisionIndex(state_, mapMode_), mapMode(mapMode_), transitionOptions(std::move(transitionOptions_)), + commitTime(commitTime_), placementZoom(state_.getZoom()), collisionGroups(crossSourceCollisions), prevPlacement(std::move(prevPlacement_)) { @@ -622,8 +625,7 @@ void Placement::placeBucket(const SymbolBucket& bucket, std::forward_as_tuple(bucket.bucketInstanceId, params.featureIndex, overscaledID)); } -void Placement::commit(TimePoint now, const double zoom) { - commitTime = now; +void Placement::commit() { if (!getPrevPlacement()) { assert(mapMode != MapMode::Continuous); fadeStartTime = commitTime; @@ -638,7 +640,7 @@ void Placement::commit(TimePoint now, const double zoom) { bool placementChanged = false; - prevZoomAdjustment = getPrevPlacement()->zoomAdjustment(zoom); + prevZoomAdjustment = getPrevPlacement()->zoomAdjustment(placementZoom); float increment = getPrevPlacement()->symbolFadeChange(commitTime); // add the opacities from the current placement, and copy their current values from the previous placement diff --git a/src/mbgl/text/placement.hpp b/src/mbgl/text/placement.hpp index 4dd9011da4..dd46970780 100644 --- a/src/mbgl/text/placement.hpp +++ b/src/mbgl/text/placement.hpp @@ -116,9 +116,10 @@ public: MapMode, style::TransitionOptions, const bool crossSourceCollisions, + TimePoint commitTime, optional<Immutable<Placement>> prevPlacement = nullopt); void placeLayer(const RenderLayer&, const mat4&, bool showCollisionBoxes); - void commit(TimePoint, const double zoom); + void commit(); void updateLayerBuckets(const RenderLayer&, const TransformState&, bool updateOpacities) const; float symbolFadeChange(TimePoint now) const; bool hasTransitions(TimePoint now) const; @@ -151,7 +152,7 @@ private: TimePoint fadeStartTime; TimePoint commitTime; - float placementZoom; + const float placementZoom; float prevZoomAdjustment = 0; std::unordered_map<uint32_t, JointPlacement> placements; |