Class CM3ControlsOrbit extends CM3Controls
Orbit controls for CanvsMap. This file was originally "OrbitControls.js" and was provided
with Three.js. However, the class needed to be modified to work with CanvasMap, specifically
to deal with selections, which are handled within the view. This meant that the view needs
to filter the selections within the view and only pass them to the controls if nothing was selected
This class uses a THREE.Quaternion() class to manage the motions with spherical coordinates.
target - the coordinate that the view is orbiting around (the center)
TheObject - the current camera position. This class works by moving and reorienting the camera
as the user moves the mouse or clicks keys.
For sperical coordinates:
- theta - equatorial angle (longitude) in radians
- phi - polar angle from the north pole (or up) (latitude in radians)
Private properties:
- scope - a copy of the this pointer
Copyright (C) 2020, Humboldt State University, Jim Graham
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General
Public License as published by the Free Software Foundation, either version 3 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see
Settings Group: OrbitControls
Setting | Name | Type | Options | Default | Comments |
---|---|---|---|---|---|
MinDistance | Min Distance | CMTYPE_FLOAT | 0 | ||
MaxDistance | Max Distance | CMTYPE_FLOAT | Infinity | ||
MinLatitude | Min Latitude | CMTYPE_FLOAT | -90 | ||
MaxLatitude | Max Latitude | CMTYPE_FLOAT | 90 |