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

GlobeControls: Further Improvements #438

Open
gkjohnson opened this issue Jan 2, 2024 · 0 comments
Open

GlobeControls: Further Improvements #438

gkjohnson opened this issue Jan 2, 2024 · 0 comments
Milestone

Comments

@gkjohnson
Copy link
Contributor

gkjohnson commented Jan 2, 2024

Highest Priority

  • Limit distance above ground. Orbiting is okay? But can't zoom out once beyond a certain point? Limit how far we can initiate rotation from?
  • Force zooming in to a certain lat / lon?
  • Normalize movement events using device pixel ratio and pixel distance rather than screen-space distance
  • Reset the zoom pose if the wheel position shows a different pose
    • position the cursor, resize the window so the cursor changes pose, scroll again w/o moving the mouse

High Priority

  • Retain a height when close to the surface? Ie snap back down when possible? The initial tiles are low res which pushes the tiles upward
  • Enable two-finger drag, rotate, and zoom while keeping the positions under the fingers consistent
  • Adjust the zoom speed to more accurately match the pinch speed
  • Calculate the zoomed-out drag rotation angle based on the distance rather than magic numbers
  • Auto orient the camera to a reasonable position based on initial position (ie tilt the camera angle as zooming in)
  • Remove need for separate "pinchState"

Other

  • Slow to a stop on zoom out to globe
  • Trend camera towards rotation that guarantees camera visibility when updating the orientation
  • There's an order of operations issue between tile update and controls update. You need to update the camera to update the tiles - but you also want to update the camera position based on the visible tiles.
  • Fall back to intersection with WGS84 ellipse / plane for intersection
  • Shift + scroll could adjust altitude
  • Fade pivot icon in and out
  • Add support for animating / physics based movement (ie momentum)
  • Only perform zoom, rotation, pivot raycasts when the camera or tiles have changed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant