Comments (7)
Obviously, all mouse buttons can be customized and remapped, but how about this strategy for the defaults? It applies to all modes.
Left -> Pans the current ground point being looked at.
Middle button -> Hold down to zoom in out, or just scroll the wheel.
Right -> Rotate around current ground point (not available in 2D).
This is extremely reasonable (and pretty common as far as I can tell). Right now both middle and right map to zoom, which doesn't make much sense.
from cesium.
So, if I'm reading that right, left causes the camera to orbit around the spot on the map being looked at (which I would call "explore" or "orbit" mode, not pan), and Right holds the camera stationary and changes its attitude (Hollywood would call this pan & tilt).
Sounds good. If we switch middle & right it might make life easier for STK & Insight3D users who are accustomed to zooming with the right mouse. The wheel would still zoom when spun, but would pan/tilt when pressed.
from cesium.
None of us are fans of the current use of shift so I'm glad we are revisiting it. Let's try @mramato's suggestion and see how it feels. However, why can't rotate work in 2D? We do that now when holding down the middle mouse button.
from cesium.
@emackey By Pan I mean the camera remains facing the direction it is facing but the ground point and camera location both move. Similar to rotating around the center of the earth, or what happens if you are looking and a tilted view in Google Earth and you move the mouse button.
@pjcozzi You're right, I was only thinking of 3D rotation, but just 2D constrained spinning makes perfect sense.
from cesium.
Had meeting with @mramato and @bagnell. Dan is on the case.
from cesium.
Just to elaborate on @emackey comment,
We decided that the goal is to make the mouse "feel" the same way in 2D/3D/Columbus and allow for the most common mouse controls without having to manually "switch" modes or use keyboard shortcuts.
Here's what we came up with (after comparing against several virtual globes out there)
Left button -> Move where you are looking at on the map/globe Middle button/Wheel -> Zoom in and out of where you are looking at.
Right button -> Rotate around the point on the map you are looking at.
Of course this will be an iterative process, so after trying this out for a couple of weeks, we can revisit the issue and see how we like it.
from cesium.
The new mouse handling was merged into master with #92.
from cesium.
Related Issues (20)
- Can the options in WebMapServiceImageryProvider support customTags field? HOT 6
- `Unhandled promise rejection: undefined thrown` in CI
- External tilesets are disallowed inside multiple contents
- valid glTF fails to load in CesiumJS HOT 3
- Can't find ion-sdk-widgets/Source/TransformEditor HOT 1
- RequetErrorEvent during Jest testing. HOT 1
- Request a function `Cartesian3.intersect` HOT 1
- Move `Viewer` functionality to `CesiumWidget` class HOT 1
- `WallGraphics`'s Property `outlineWidth` do not work HOT 2
- PostProcessStage not work correctly HOT 4
- Documentation / TypeScript definition error/regression HOT 1
- Unable to zoom in after setting the relative height of vertical exaggeration HOT 2
- Render polygons according to orientation and kilometers HOT 2
- Add support for glTF KHR_materials_anisotropy extension
- Property Textures refer to all meshes
- InterpolateHeight compute height and returns undefined HOT 2
- Support For PBF HOT 5
- When using polygon to draw an arch, it will collapse. HOT 2
- `scene.pickPosition` not work on `entity.point` HOT 1
- Camera stops working close to ground HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cesium.