Skip to content

Map + Location Animators #293

Merged
danesfeder merged 41 commits intomasterfrom
map-location-animators
Mar 28, 2018
Merged

Map + Location Animators #293
danesfeder merged 41 commits intomasterfrom
map-location-animators

Conversation

@danesfeder
Copy link
Copy Markdown
Contributor

This PR will aim to add new, more powerful APIs for animating the MapboxMap camera. This functionality will include the ability to account for padding, zoom, and tilt when animating towards a targeted LatLng. Can be integrated with the LocationLayer to add the same camera tracking functionality found in the currently MyLocationView in the Maps SDK.

cc @tobrun @LukasPaczos

}
}

private static float normalizeBearing(float currentBearing, float targetBearing) {
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should just extract this method into the Utils class since I already use the same logic in LocationLayerPlugin

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cammace Sure thing. Just porting this code from mapbox/mapbox-navigation-android#679 - will look to clean up and remove duplicate code as the PR progresses

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

awesome

danesfeder and others added 4 commits February 21, 2018 15:40
* Add style / tracking modes for camera integration

* Fix broken tests

* API tweaks and example update
* Update with render / camera modes

* Update camera with mode manager and cancel animation check

* Update method compass name
* initial LocationLayerPlugin cleanup

* added the animator class

* animator implementation in the LocationLayer

* reworked location layer camera

* added Animator to LocationLayerPlugin

* adjusted location activities

* animator order fix

* last values ordering fix

* string fixes

* Fix GPS layer

* using previous animated value when starting a new one

* small tweaks

* setting accuracy ring only if using the right mode
Łukasz Paczos and others added 4 commits February 27, 2018 16:33
* Clean up and javadoc

* Updates per review
* [location-layer-plugin] - improve setting location engine

* [location-layer-plugin] - attaching location engine listener when resetting the engine
* Clean up and javadoc

* Add long click listener

* Add max / min zoom and padding APIs

* Fix javadoc

* Add default values to options
@LukasPaczos LukasPaczos added this to the location-layer-0.5.0 milestone Mar 1, 2018
@LukasPaczos LukasPaczos added the location-layer-plugin Issues that deal with the location layer module label Mar 1, 2018
Łukasz Paczos and others added 14 commits March 1, 2018 18:06
* [location-layer-plugin] - bumped maps SDK to 6.x

* [location-layer-plugin] - style options initialization fixes

* [location-layer-plugin] - added gestures handling implementation
* Add style / tracking modes for camera integration

* Fix broken tests

* API tweaks and example update
* Update with render / camera modes

* Update camera with mode manager and cancel animation check

* Update method compass name
* initial LocationLayerPlugin cleanup

* added the animator class

* animator implementation in the LocationLayer

* reworked location layer camera

* added Animator to LocationLayerPlugin

* adjusted location activities

* animator order fix

* last values ordering fix

* string fixes

* Fix GPS layer

* using previous animated value when starting a new one

* small tweaks

* setting accuracy ring only if using the right mode
* Clean up and javadoc

* Updates per review
* [location-layer-plugin] - improve setting location engine

* [location-layer-plugin] - attaching location engine listener when resetting the engine
* Clean up and javadoc

* Add long click listener

* Add max / min zoom and padding APIs

* Fix javadoc

* Add default values to options
Łukasz Paczos and others added 6 commits March 12, 2018 11:56
* [location-layer-plugin] - bumped maps SDK to 6.x

* [location-layer-plugin] - style options initialization fixes

* [location-layer-plugin] - added gestures handling implementation
@cammace cammace force-pushed the map-location-animators branch from 94520b5 to bfe40e9 Compare March 12, 2018 16:24
@cammace cammace force-pushed the map-location-animators branch from 39f0812 to 1ccb76c Compare March 12, 2018 17:18
danesfeder and others added 9 commits March 21, 2018 11:27
* Add initial animators

* Add Camera and Tracking Modes (#294)

* Add style / tracking modes for camera integration

* Fix broken tests

* API tweaks and example update

* Update with Render / Camera Modes (#297)

* Update with render / camera modes

* Update camera with mode manager and cancel animation check

* Update method compass name

* Add animator class (#302)

* initial LocationLayerPlugin cleanup

* added the animator class

* animator implementation in the LocationLayer

* reworked location layer camera

* added Animator to LocationLayerPlugin

* adjusted location activities

* animator order fix

* last values ordering fix

* string fixes

* Fix GPS layer

* using previous animated value when starting a new one

* small tweaks

* setting accuracy ring only if using the right mode

* Cleanup stale runnable (#304)

* only update the location layer accuracy when not in RenderMode.GPS (#306)

* Improve enabling/disabling location layer plugin (#308)

* LocationLayerPlugin Javadoc (#309)

* Clean up and javadoc

* Updates per review

* LocationEngine listening to updates after resetting (#307)

* [location-layer-plugin] - improve setting location engine

* [location-layer-plugin] - attaching location engine listener when resetting the engine

* Add max / min zoom and padding APIs  (#313)

* Clean up and javadoc

* Add long click listener

* Add max / min zoom and padding APIs

* Fix javadoc

* Add default values to options

* Gestures logic for camera tracking, new telemetry library (#327)

* [location-layer-plugin] - bumped maps SDK to 6.x

* [location-layer-plugin] - style options initialization fixes

* [location-layer-plugin] - added gestures handling implementation

* Update dependencies

* Add missing long click listener

* [location-layer] - fix crash on startup

* Smooth bearing animation

* Add separate camera animators

* Fix camera transitions between animators

* Add reset function for switching camera modes

* Add gps north functionality to camera animator

* Camera transition updates

* [location-layer-plugin] - fixed camera tracking callbacks

* [location-layer-plugin] - decreased default max zoom

* [location-layer-plugin] - saving state in LocationLayerModesActivity

* update maps sdk to latest beta (#384)

* update maps sdk to latest beta

* fixed checkstyle
* [location-layer-plugin] - fixed gestures threshold

* [location-layer-plugin] - layer drawable updates adjustments
* [android] - fix order of interpolator

* [location-layer-plugin] - fine tuned scale values
@danesfeder danesfeder merged commit f50d8d5 into master Mar 28, 2018
@danesfeder danesfeder deleted the map-location-animators branch March 28, 2018 22:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

location-layer-plugin Issues that deal with the location layer module

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants