Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unify camera management API with JS code base. #239

Open
wants to merge 9 commits into
base: develop
Choose a base branch
from

Conversation

ComBatVision
Copy link

@ComBatVision ComBatVision commented Dec 7, 2020

Description of the Change

Deprecate Navigator class and control Camera directly like in JS codebase.
Move LookAt point conversion routine into Camera class.
Move field of view into Camera class.
Use Position object instead of separate latitude, longitude and altitude attributes in Camera and LookAt.
Use two-fingers tilt. Do not change heading on tilt.
Use gesture interpret distance in DP respecting screen density instead of PX.
Update documentation templates according to new API.
Add additional zoomIn, zoomOut and resetOrientation commands to BasicWorldWindowController.
Add secondary mouse button tilt support to BasicWorldWindowController.
Remove code which never executes due to a bug in WWMath.

Why Should This Be In Core?

Make a step to API unification with JS code base and improve gestures UX.

Benefits

Improve UX by using only two fingers gesture detection.
Improve performance.
Simplify Camera control.

Potential Drawbacks

May be partially incompatible with old customer applications.

Calculate correct GL near clip distance and limit Navigator to avoid terrain collisions.
Fix lookAt point calculation for gesture begin - take terrain altitude in consideration.
Add terrain elevation output into example application.
Navigator tests were commented as it is now dependent on context.
Add UTM, MGRS, GARS and LatLon graticule (ported from Java).
Add MGRSGraticuleActivity to examples.
…Navigator, Camera and LookAt.

Move field of view attribute into Camera.
Deprecate Navigator and use direct Camera control instead.
Use two-fingers tilt.
Do not change heading on tilt.
Set gesture interpret distance based on Android screen density instead of hard-coded pixels.
Add additional zoomIn, zoomOut and resetOrientation commands to BasicWorldWindowController.
Add secondary mouse button tilt support to BasicWorldWindowController.
Remove code which never executes due to a bug in WWMath.
@ComBatVision ComBatVision changed the title Feature/refactor camera Unify camera management API with JS code base. Dec 7, 2020
PJHogan
PJHogan previously approved these changes Apr 26, 2022
@ComBatVision ComBatVision force-pushed the feature/refactor-camera branch from 90ea5c6 to 29d100d Compare April 26, 2022 19:19
@ComBatVision ComBatVision force-pushed the feature/refactor-camera branch from 9c56c0e to 4a7f670 Compare June 10, 2022 11:48
PJHogan
PJHogan previously approved these changes Aug 4, 2022
@ComBatVision ComBatVision force-pushed the feature/refactor-camera branch 2 times, most recently from 244044b to 16c724e Compare August 4, 2022 19:56
@ComBatVision ComBatVision force-pushed the feature/refactor-camera branch from b6bee11 to 56c4e8d Compare August 4, 2022 20:12
PJHogan
PJHogan previously approved these changes Aug 27, 2022
@ComBatVision ComBatVision force-pushed the feature/refactor-camera branch from e495778 to 53a230b Compare September 1, 2022 15:23
@ComBatVision ComBatVision force-pushed the feature/refactor-camera branch from 4f8164b to 1859a8f Compare October 17, 2022 19:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants