@openglobus/og 0.23.0 → 0.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/@openglobus/js/Clock.d.ts +2 -2
- package/lib/@openglobus/js/Globe.d.ts +10 -6
- package/lib/@openglobus/js/LonLat.d.ts +2 -2
- package/lib/@openglobus/js/Object3d.d.ts +3 -2
- package/lib/@openglobus/js/Popup.d.ts +7 -4
- package/lib/@openglobus/js/astro/astro.d.ts +1 -1
- package/lib/@openglobus/js/astro/earth.d.ts +1 -1
- package/lib/@openglobus/js/bv/Box.d.ts +1 -1
- package/lib/@openglobus/js/camera/Camera.d.ts +55 -19
- package/lib/@openglobus/js/camera/Frustum.d.ts +2 -2
- package/lib/@openglobus/js/camera/PlanetCamera.d.ts +14 -1
- package/lib/@openglobus/js/control/Atmosphere.d.ts +3 -3
- package/lib/@openglobus/js/control/AtmosphereConfig.d.ts +2 -2
- package/lib/@openglobus/js/control/CameraLock.d.ts +3 -3
- package/lib/@openglobus/js/control/CompassButton.d.ts +1 -1
- package/lib/@openglobus/js/control/DebugInfo.d.ts +1 -1
- package/lib/@openglobus/js/control/EarthCoordinates.d.ts +2 -2
- package/lib/@openglobus/js/control/GeoImageDragControl.d.ts +2 -2
- package/lib/@openglobus/js/control/KeyboardNavigation.d.ts +1 -1
- package/lib/@openglobus/js/control/LayerAnimation.d.ts +2 -2
- package/lib/@openglobus/js/control/LayerSwitcher.d.ts +4 -2
- package/lib/@openglobus/js/control/Lighting.d.ts +2 -1
- package/lib/@openglobus/js/control/MouseNavigation.d.ts +64 -52
- package/lib/@openglobus/js/control/OldMouseNavigation.d.ts +65 -0
- package/lib/@openglobus/js/control/RulerSwitcher.d.ts +2 -1
- package/lib/@openglobus/js/control/ScaleControl.d.ts +2 -1
- package/lib/@openglobus/js/control/SegmentBoundVisualization.d.ts +2 -1
- package/lib/@openglobus/js/control/ShowFps.d.ts +2 -1
- package/lib/@openglobus/js/control/SimpleNavigation.d.ts +3 -2
- package/lib/@openglobus/js/control/SimpleSkyBackground.d.ts +2 -1
- package/lib/@openglobus/js/control/Sun.d.ts +2 -1
- package/lib/@openglobus/js/control/ToggleWireframe.d.ts +2 -1
- package/lib/@openglobus/js/control/TouchNavigation.d.ts +3 -2
- package/lib/@openglobus/js/control/ZoomControl.d.ts +2 -1
- package/lib/@openglobus/js/control/drawing/DrawingControl.d.ts +1 -1
- package/lib/@openglobus/js/control/drawing/LineStringDrawingScene.d.ts +1 -1
- package/lib/@openglobus/js/control/drawing/PolygonDrawingScene.d.ts +3 -3
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfile.d.ts +1 -1
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileButtonsView.d.ts +3 -2
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileControl.d.ts +2 -2
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileLegend.d.ts +1 -1
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileScene.d.ts +2 -2
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileView.d.ts +6 -4
- package/lib/@openglobus/js/control/elevationProfile/PointListDialog.d.ts +1 -1
- package/lib/@openglobus/js/control/geoObjectEditor/ArrowEntity.d.ts +1 -1
- package/lib/@openglobus/js/control/geoObjectEditor/AxisTrackEntity.d.ts +1 -1
- package/lib/@openglobus/js/control/geoObjectEditor/GeoObjectEditor.d.ts +1 -1
- package/lib/@openglobus/js/control/geoObjectEditor/GeoObjectEditorDialog.d.ts +1 -1
- package/lib/@openglobus/js/control/geoObjectEditor/GeoObjectEditorScene.d.ts +2 -2
- package/lib/@openglobus/js/control/geoObjectEditor/MoveAxisEntity.d.ts +1 -1
- package/lib/@openglobus/js/control/geoObjectEditor/MovePlaneEntity.d.ts +1 -1
- package/lib/@openglobus/js/control/geoObjectEditor/RotateEntity.d.ts +1 -1
- package/lib/@openglobus/js/control/heightRuler/HeightRuler.d.ts +1 -1
- package/lib/@openglobus/js/control/heightRuler/HeightRulerScene.d.ts +1 -1
- package/lib/@openglobus/js/control/index.d.ts +1 -2
- package/lib/@openglobus/js/control/ruler/Ruler.d.ts +2 -1
- package/lib/@openglobus/js/control/ruler/RulerScene.d.ts +2 -2
- package/lib/@openglobus/js/control/selection/Selection.d.ts +2 -1
- package/lib/@openglobus/js/control/timeline/TimelineControl.d.ts +1 -1
- package/lib/@openglobus/js/control/timeline/TimelineModel.d.ts +1 -1
- package/lib/@openglobus/js/control/timeline/TimelineView.d.ts +4 -3
- package/lib/@openglobus/js/ellipsoid/Ellipsoid.d.ts +1 -1
- package/lib/@openglobus/js/entity/BaseBillboard.d.ts +6 -3
- package/lib/@openglobus/js/entity/BaseBillboardHandler.d.ts +2 -2
- package/lib/@openglobus/js/entity/Billboard.d.ts +3 -2
- package/lib/@openglobus/js/entity/Entity.d.ts +47 -32
- package/lib/@openglobus/js/entity/EntityCollection.d.ts +4 -3
- package/lib/@openglobus/js/entity/GeoObject.d.ts +2 -11
- package/lib/@openglobus/js/entity/Geometry.d.ts +4 -3
- package/lib/@openglobus/js/entity/GeometryHandler.d.ts +3 -2
- package/lib/@openglobus/js/entity/InstanceData.d.ts +2 -2
- package/lib/@openglobus/js/entity/Label.d.ts +4 -2
- package/lib/@openglobus/js/entity/LabelHandler.d.ts +1 -1
- package/lib/@openglobus/js/entity/PointCloud.d.ts +1 -1
- package/lib/@openglobus/js/entity/Polyline.d.ts +9 -7
- package/lib/@openglobus/js/entity/Ray.d.ts +4 -2
- package/lib/@openglobus/js/entity/RayHandler.d.ts +2 -2
- package/lib/@openglobus/js/entity/Strip.d.ts +5 -3
- package/lib/@openglobus/js/input/KeyboardHandler.d.ts +1 -1
- package/lib/@openglobus/js/input/MouseHandler.d.ts +1 -0
- package/lib/@openglobus/js/layer/BaseGeoImage.d.ts +6 -5
- package/lib/@openglobus/js/layer/Bing.d.ts +2 -1
- package/lib/@openglobus/js/layer/CanvasTiles.d.ts +4 -3
- package/lib/@openglobus/js/layer/GeoImage.d.ts +2 -1
- package/lib/@openglobus/js/layer/GeoTexture2d.d.ts +3 -2
- package/lib/@openglobus/js/layer/GeoVideo.d.ts +2 -1
- package/lib/@openglobus/js/layer/KML.d.ts +5 -3
- package/lib/@openglobus/js/layer/Layer.d.ts +5 -4
- package/lib/@openglobus/js/layer/Material.d.ts +2 -2
- package/lib/@openglobus/js/layer/OpenStreetMap.d.ts +2 -1
- package/lib/@openglobus/js/layer/Vector.d.ts +9 -7
- package/lib/@openglobus/js/layer/WMS.d.ts +2 -1
- package/lib/@openglobus/js/layer/XYZ.d.ts +4 -3
- package/lib/@openglobus/js/math/Mat3.d.ts +1 -1
- package/lib/@openglobus/js/math/Mat4.d.ts +10 -1
- package/lib/@openglobus/js/math/Plane.d.ts +3 -1
- package/lib/@openglobus/js/math/Quat.d.ts +7 -1
- package/lib/@openglobus/js/math/Ray.d.ts +6 -16
- package/lib/@openglobus/js/math/Vec2.d.ts +22 -0
- package/lib/@openglobus/js/math/Vec3.d.ts +3 -2
- package/lib/@openglobus/js/math/coder.d.ts +5 -3
- package/lib/@openglobus/js/math/index.d.ts +6 -3
- package/lib/@openglobus/js/math.d.ts +2 -2
- package/lib/@openglobus/js/quadTree/earth/EarthEntityCollectionNodeLonLat.d.ts +2 -1
- package/lib/@openglobus/js/quadTree/earth/EarthQuadTreeStrategy.d.ts +0 -2
- package/lib/@openglobus/js/quadTree/equi/EquiEntityCollectionNodeLonLat.d.ts +2 -1
- package/lib/@openglobus/js/renderer/Renderer.d.ts +5 -3
- package/lib/@openglobus/js/renderer/RendererEvents.d.ts +7 -3
- package/lib/@openglobus/js/scene/Axes.d.ts +1 -1
- package/lib/@openglobus/js/scene/Planet.d.ts +12 -6
- package/lib/@openglobus/js/scene/SkyBox.d.ts +1 -1
- package/lib/@openglobus/js/segment/Segment.d.ts +7 -5
- package/lib/@openglobus/js/segment/SegmentLonLat.d.ts +1 -1
- package/lib/@openglobus/js/segment/SegmentLonLatEqui.d.ts +1 -1
- package/lib/@openglobus/js/shaders/atmos.d.ts +1 -1
- package/lib/@openglobus/js/shaders/drawnode.d.ts +1 -1
- package/lib/@openglobus/js/terrain/BilTerrain.d.ts +3 -2
- package/lib/@openglobus/js/terrain/EmptyTerrain.d.ts +1 -1
- package/lib/@openglobus/js/terrain/GlobusRgbTerrain.d.ts +2 -1
- package/lib/@openglobus/js/terrain/GlobusTerrain.d.ts +5 -4
- package/lib/@openglobus/js/terrain/RgbTerrain.d.ts +3 -2
- package/lib/@openglobus/js/ui/Button.d.ts +3 -2
- package/lib/@openglobus/js/ui/ButtonGroup.d.ts +1 -1
- package/lib/@openglobus/js/ui/Checkbox.d.ts +3 -2
- package/lib/@openglobus/js/ui/Color.d.ts +3 -2
- package/lib/@openglobus/js/ui/Dialog.d.ts +3 -2
- package/lib/@openglobus/js/ui/Input.d.ts +3 -2
- package/lib/@openglobus/js/ui/Slider.d.ts +3 -2
- package/lib/@openglobus/js/ui/ToggleButton.d.ts +4 -3
- package/lib/@openglobus/js/ui/View.d.ts +1 -1
- package/lib/@openglobus/js/utils/FontAtlas.d.ts +1 -1
- package/lib/@openglobus/js/utils/GeoImageCreator.d.ts +1 -1
- package/lib/@openglobus/js/utils/Loader.d.ts +1 -1
- package/lib/@openglobus/js/utils/NormalMapCreator.d.ts +2 -1
- package/lib/@openglobus/js/utils/TerrainWorker.d.ts +1 -1
- package/lib/@openglobus/js/utils/TextureAtlas.d.ts +4 -2
- package/lib/@openglobus/js/utils/objParser.d.ts +1 -1
- package/lib/@openglobus/js/utils/shared.d.ts +5 -3
- package/lib/@openglobus/js/webgl/Framebuffer.d.ts +3 -2
- package/lib/@openglobus/js/webgl/Handler.d.ts +32 -19
- package/lib/@openglobus/js/webgl/Multisample.d.ts +2 -1
- package/lib/@openglobus/js/webgl/Program.d.ts +2 -2
- package/lib/@openglobus/js/webgl/ProgramController.d.ts +2 -1
- package/lib/@openglobus/js/webgl/variableHandlers.d.ts +1 -1
- package/lib/@openglobus/og.esm.js +1 -1
- package/lib/@openglobus/og.esm.js.map +1 -1
- package/lib/@openglobus/og.umd.js +1 -1
- package/lib/@openglobus/og.umd.js.map +1 -1
- package/lib/js/Clock.d.ts +2 -2
- package/lib/js/Globe.d.ts +10 -6
- package/lib/js/Globe.js +10 -4
- package/lib/js/LonLat.d.ts +2 -2
- package/lib/js/Object3d.d.ts +3 -2
- package/lib/js/Popup.d.ts +7 -4
- package/lib/js/Popup.js +1 -1
- package/lib/js/astro/astro.d.ts +1 -1
- package/lib/js/astro/earth.d.ts +1 -1
- package/lib/js/bv/Box.d.ts +1 -1
- package/lib/js/camera/Camera.d.ts +55 -19
- package/lib/js/camera/Camera.js +82 -28
- package/lib/js/camera/Frustum.d.ts +2 -2
- package/lib/js/camera/PlanetCamera.d.ts +14 -1
- package/lib/js/camera/PlanetCamera.js +52 -5
- package/lib/js/control/Atmosphere.d.ts +3 -3
- package/lib/js/control/AtmosphereConfig.d.ts +2 -2
- package/lib/js/control/CameraLock.d.ts +3 -3
- package/lib/js/control/CameraLock.js +1 -1
- package/lib/js/control/CompassButton.d.ts +1 -1
- package/lib/js/control/DebugInfo.d.ts +1 -1
- package/lib/js/control/DebugInfo.js +30 -10
- package/lib/js/control/EarthCoordinates.d.ts +2 -2
- package/lib/js/control/GeoImageDragControl.d.ts +2 -2
- package/lib/js/control/KeyboardNavigation.d.ts +1 -1
- package/lib/js/control/KeyboardNavigation.js +8 -8
- package/lib/js/control/LayerAnimation.d.ts +2 -2
- package/lib/js/control/LayerSwitcher.d.ts +4 -2
- package/lib/js/control/Lighting.d.ts +2 -1
- package/lib/js/control/MouseNavigation.d.ts +64 -52
- package/lib/js/control/MouseNavigation.js +361 -305
- package/lib/js/control/MouseWheelZoomControl.d.ts +0 -44
- package/lib/js/control/MouseWheelZoomControl.js +270 -181
- package/lib/js/control/OldMouseNavigation.d.ts +65 -0
- package/lib/js/control/OldMouseNavigation.js +368 -0
- package/lib/js/control/RulerSwitcher.d.ts +2 -1
- package/lib/js/control/ScaleControl.d.ts +2 -1
- package/lib/js/control/ScaleControl.js +2 -2
- package/lib/js/control/SegmentBoundVisualization.d.ts +2 -1
- package/lib/js/control/ShowFps.d.ts +2 -1
- package/lib/js/control/SimpleNavigation.d.ts +3 -2
- package/lib/js/control/SimpleNavigation.js +8 -7
- package/lib/js/control/SimpleSkyBackground.d.ts +2 -1
- package/lib/js/control/Sun.d.ts +2 -1
- package/lib/js/control/Sun.js +5 -5
- package/lib/js/control/ToggleWireframe.d.ts +2 -1
- package/lib/js/control/TouchNavigation.d.ts +3 -2
- package/lib/js/control/TouchNavigation.js +11 -8
- package/lib/js/control/ZoomControl.d.ts +2 -1
- package/lib/js/control/drawing/DrawingControl.d.ts +1 -1
- package/lib/js/control/drawing/LineStringDrawingScene.d.ts +1 -1
- package/lib/js/control/drawing/PolygonDrawingScene.d.ts +3 -3
- package/lib/js/control/elevationProfile/ElevationProfile.d.ts +1 -1
- package/lib/js/control/elevationProfile/ElevationProfileButtonsView.d.ts +3 -2
- package/lib/js/control/elevationProfile/ElevationProfileControl.d.ts +2 -2
- package/lib/js/control/elevationProfile/ElevationProfileLegend.d.ts +1 -1
- package/lib/js/control/elevationProfile/ElevationProfileScene.d.ts +2 -2
- package/lib/js/control/elevationProfile/ElevationProfileScene.js +2 -1
- package/lib/js/control/elevationProfile/ElevationProfileView.d.ts +6 -4
- package/lib/js/control/elevationProfile/ElevationProfileView.js +1 -1
- package/lib/js/control/elevationProfile/PointListDialog.d.ts +1 -1
- package/lib/js/control/geoObjectEditor/ArrowEntity.d.ts +1 -1
- package/lib/js/control/geoObjectEditor/AxisTrackEntity.d.ts +1 -1
- package/lib/js/control/geoObjectEditor/GeoObjectEditor.d.ts +1 -1
- package/lib/js/control/geoObjectEditor/GeoObjectEditorDialog.d.ts +1 -1
- package/lib/js/control/geoObjectEditor/GeoObjectEditorDialog.js +19 -33
- package/lib/js/control/geoObjectEditor/GeoObjectEditorScene.d.ts +2 -2
- package/lib/js/control/geoObjectEditor/GeoObjectEditorScene.js +18 -18
- package/lib/js/control/geoObjectEditor/MoveAxisEntity.d.ts +1 -1
- package/lib/js/control/geoObjectEditor/MoveAxisEntity.js +3 -2
- package/lib/js/control/geoObjectEditor/MovePlaneEntity.d.ts +1 -1
- package/lib/js/control/geoObjectEditor/MovePlaneEntity.js +1 -4
- package/lib/js/control/geoObjectEditor/RotateEntity.d.ts +1 -1
- package/lib/js/control/geoObjectEditor/RotateEntity.js +1 -1
- package/lib/js/control/heightRuler/HeightRuler.d.ts +1 -1
- package/lib/js/control/heightRuler/HeightRulerScene.d.ts +1 -1
- package/lib/js/control/index.d.ts +1 -2
- package/lib/js/control/index.js +1 -2
- package/lib/js/control/ruler/Ruler.d.ts +2 -1
- package/lib/js/control/ruler/RulerScene.d.ts +2 -2
- package/lib/js/control/selection/Selection.d.ts +2 -1
- package/lib/js/control/timeline/TimelineControl.d.ts +1 -1
- package/lib/js/control/timeline/TimelineModel.d.ts +1 -1
- package/lib/js/control/timeline/TimelineView.d.ts +4 -3
- package/lib/js/control/visibleExtent/Segment.js +4 -4
- package/lib/js/ellipsoid/Ellipsoid.d.ts +1 -1
- package/lib/js/ellipsoid/Ellipsoid.js +1 -1
- package/lib/js/entity/BaseBillboard.d.ts +6 -3
- package/lib/js/entity/BaseBillboardHandler.d.ts +2 -2
- package/lib/js/entity/Billboard.d.ts +3 -2
- package/lib/js/entity/Entity.d.ts +47 -32
- package/lib/js/entity/Entity.js +62 -47
- package/lib/js/entity/EntityCollection.d.ts +4 -3
- package/lib/js/entity/GeoObject.d.ts +2 -11
- package/lib/js/entity/GeoObject.js +0 -3
- package/lib/js/entity/Geometry.d.ts +4 -3
- package/lib/js/entity/GeometryHandler.d.ts +3 -2
- package/lib/js/entity/InstanceData.d.ts +2 -2
- package/lib/js/entity/InstanceData.js +6 -3
- package/lib/js/entity/Label.d.ts +4 -2
- package/lib/js/entity/LabelHandler.d.ts +1 -1
- package/lib/js/entity/PointCloud.d.ts +1 -1
- package/lib/js/entity/Polyline.d.ts +9 -7
- package/lib/js/entity/Polyline.js +2 -1
- package/lib/js/entity/Ray.d.ts +4 -2
- package/lib/js/entity/RayHandler.d.ts +2 -2
- package/lib/js/entity/Strip.d.ts +5 -3
- package/lib/js/input/KeyboardHandler.d.ts +1 -1
- package/lib/js/input/MouseHandler.d.ts +1 -0
- package/lib/js/input/MouseHandler.js +12 -1
- package/lib/js/layer/BaseGeoImage.d.ts +6 -5
- package/lib/js/layer/Bing.d.ts +2 -1
- package/lib/js/layer/CanvasTiles.d.ts +4 -3
- package/lib/js/layer/GeoImage.d.ts +2 -1
- package/lib/js/layer/GeoTexture2d.d.ts +3 -2
- package/lib/js/layer/GeoVideo.d.ts +2 -1
- package/lib/js/layer/KML.d.ts +5 -3
- package/lib/js/layer/KML.js +1 -1
- package/lib/js/layer/Layer.d.ts +5 -4
- package/lib/js/layer/Material.d.ts +2 -2
- package/lib/js/layer/OpenStreetMap.d.ts +2 -1
- package/lib/js/layer/Vector.d.ts +9 -7
- package/lib/js/layer/Vector.js +1 -1
- package/lib/js/layer/WMS.d.ts +2 -1
- package/lib/js/layer/XYZ.d.ts +4 -3
- package/lib/js/math/Mat3.d.ts +1 -1
- package/lib/js/math/Mat3.js +1 -1
- package/lib/js/math/Mat4.d.ts +10 -1
- package/lib/js/math/Mat4.js +17 -1
- package/lib/js/math/Plane.d.ts +3 -1
- package/lib/js/math/Plane.js +11 -1
- package/lib/js/math/Quat.d.ts +7 -1
- package/lib/js/math/Quat.js +7 -1
- package/lib/js/math/Ray.d.ts +6 -16
- package/lib/js/math/Ray.js +53 -46
- package/lib/js/math/Vec2.d.ts +22 -0
- package/lib/js/math/Vec2.js +32 -0
- package/lib/js/math/Vec3.d.ts +3 -2
- package/lib/js/math/coder.d.ts +5 -3
- package/lib/js/math/index.d.ts +6 -3
- package/lib/js/math.d.ts +2 -2
- package/lib/js/math.js +2 -2
- package/lib/js/quadTree/earth/EarthEntityCollectionNodeLonLat.d.ts +2 -1
- package/lib/js/quadTree/earth/EarthQuadTreeStrategy.d.ts +0 -2
- package/lib/js/quadTree/equi/EquiEntityCollectionNodeLonLat.d.ts +2 -1
- package/lib/js/renderer/Renderer.d.ts +5 -3
- package/lib/js/renderer/Renderer.js +10 -6
- package/lib/js/renderer/RendererEvents.d.ts +7 -3
- package/lib/js/renderer/RendererEvents.js +5 -3
- package/lib/js/scene/Axes.d.ts +1 -1
- package/lib/js/scene/Planet.d.ts +12 -6
- package/lib/js/scene/Planet.js +24 -3
- package/lib/js/scene/SkyBox.d.ts +1 -1
- package/lib/js/segment/Segment.d.ts +7 -5
- package/lib/js/segment/Segment.js +4 -4
- package/lib/js/segment/SegmentLonLat.d.ts +1 -1
- package/lib/js/segment/SegmentLonLatEqui.d.ts +1 -1
- package/lib/js/shaders/atmos.d.ts +1 -1
- package/lib/js/shaders/drawnode.d.ts +1 -1
- package/lib/js/terrain/BilTerrain.d.ts +3 -2
- package/lib/js/terrain/EmptyTerrain.d.ts +1 -1
- package/lib/js/terrain/GlobusRgbTerrain.d.ts +2 -1
- package/lib/js/terrain/GlobusTerrain.d.ts +5 -4
- package/lib/js/terrain/GlobusTerrain.js +2 -2
- package/lib/js/terrain/RgbTerrain.d.ts +3 -2
- package/lib/js/ui/Button.d.ts +3 -2
- package/lib/js/ui/ButtonGroup.d.ts +1 -1
- package/lib/js/ui/Checkbox.d.ts +3 -2
- package/lib/js/ui/Color.d.ts +3 -2
- package/lib/js/ui/Dialog.d.ts +3 -2
- package/lib/js/ui/Input.d.ts +3 -2
- package/lib/js/ui/Slider.d.ts +3 -2
- package/lib/js/ui/ToggleButton.d.ts +4 -3
- package/lib/js/ui/View.d.ts +1 -1
- package/lib/js/utils/FontAtlas.d.ts +1 -1
- package/lib/js/utils/GeoImageCreator.d.ts +1 -1
- package/lib/js/utils/Loader.d.ts +1 -1
- package/lib/js/utils/NormalMapCreator.d.ts +2 -1
- package/lib/js/utils/TerrainWorker.d.ts +1 -1
- package/lib/js/utils/TextureAtlas.d.ts +4 -2
- package/lib/js/utils/objParser.d.ts +1 -1
- package/lib/js/utils/shared.d.ts +5 -3
- package/lib/js/webgl/Framebuffer.d.ts +3 -2
- package/lib/js/webgl/Handler.d.ts +32 -19
- package/lib/js/webgl/Handler.js +48 -36
- package/lib/js/webgl/Multisample.d.ts +2 -1
- package/lib/js/webgl/Program.d.ts +2 -2
- package/lib/js/webgl/ProgramController.d.ts +2 -1
- package/lib/js/webgl/variableHandlers.d.ts +1 -1
- package/package.json +2 -2
- package/lib/@openglobus/js/control/EarthNavigation.d.ts +0 -50
- package/lib/@openglobus/js/control/MouseWheelZoomControl.d.ts +0 -44
- package/lib/js/control/EarthNavigation.d.ts +0 -50
- package/lib/js/control/EarthNavigation.js +0 -202
package/lib/js/webgl/Handler.js
CHANGED
|
@@ -11,6 +11,9 @@ const vendorPrefixes = ["", "WEBKIT_", "MOZ_"];
|
|
|
11
11
|
const CONTEXT_TYPE = ["webgl2", "webgl"];
|
|
12
12
|
// Maximal mipmap levels
|
|
13
13
|
const MAX_LEVELS = 2;
|
|
14
|
+
/**
|
|
15
|
+
* @typedef {"visibilitychange" | "resize"} HandlerEventType
|
|
16
|
+
*/
|
|
14
17
|
/**
|
|
15
18
|
* A WebGL handler for accessing low-level WebGL capabilities.
|
|
16
19
|
* @class
|
|
@@ -206,7 +209,7 @@ class Handler {
|
|
|
206
209
|
* @param {number} [level=0] - Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
|
|
207
210
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
208
211
|
*/
|
|
209
|
-
createEmptyTexture2DExt(width = 1, height = 1, filter = "NEAREST", internalFormat = "RGBA", format = "RGBA", type = "UNSIGNED_BYTE", level = 0) {
|
|
212
|
+
createEmptyTexture2DExt(width = 1, height = 1, filter = "NEAREST", internalFormat = "RGBA", format = "RGBA", type = "UNSIGNED_BYTE", param = "CLAMP_TO_EDGE", level = 0) {
|
|
210
213
|
let gl = this.gl;
|
|
211
214
|
let texture = gl.createTexture();
|
|
212
215
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -214,8 +217,8 @@ class Handler {
|
|
|
214
217
|
gl.texImage2D(gl.TEXTURE_2D, level, gl[internalFormat.toUpperCase()], width, height, 0, gl[format.toUpperCase()], gl[type.toUpperCase()], null);
|
|
215
218
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl[filter.toUpperCase()]);
|
|
216
219
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl[filter.toUpperCase()]);
|
|
217
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.
|
|
218
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.
|
|
220
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl[param.toUpperCase()]);
|
|
221
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl[param.toUpperCase()]);
|
|
219
222
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
220
223
|
return texture;
|
|
221
224
|
}
|
|
@@ -227,7 +230,7 @@ class Handler {
|
|
|
227
230
|
* @param {number} [internalFormat]
|
|
228
231
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
229
232
|
*/
|
|
230
|
-
createEmptyTexture_n(width, height, internalFormat) {
|
|
233
|
+
createEmptyTexture_n(width, height, internalFormat, texParami) {
|
|
231
234
|
let gl = this.gl;
|
|
232
235
|
let texture = gl.createTexture();
|
|
233
236
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -235,8 +238,8 @@ class Handler {
|
|
|
235
238
|
gl.texImage2D(gl.TEXTURE_2D, 0, internalFormat || gl.RGBA, width, height, 0, gl.RGBA, gl.UNSIGNED_BYTE, null);
|
|
236
239
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
|
|
237
240
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
|
|
238
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
239
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
241
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
242
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
240
243
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
241
244
|
return texture;
|
|
242
245
|
}
|
|
@@ -246,9 +249,10 @@ class Handler {
|
|
|
246
249
|
* @param {number} width - Empty texture width.
|
|
247
250
|
* @param {number} height - Empty texture height.
|
|
248
251
|
* @param {number} [internalFormat]
|
|
252
|
+
* @param {number} [texParami]
|
|
249
253
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
250
254
|
*/
|
|
251
|
-
createEmptyTexture_l(width, height, internalFormat) {
|
|
255
|
+
createEmptyTexture_l(width, height, internalFormat, texParami) {
|
|
252
256
|
let gl = this.gl;
|
|
253
257
|
let texture = gl.createTexture();
|
|
254
258
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -256,8 +260,8 @@ class Handler {
|
|
|
256
260
|
gl.texImage2D(gl.TEXTURE_2D, 0, internalFormat || gl.RGBA, width, height, 0, gl.RGBA, gl.UNSIGNED_BYTE, null);
|
|
257
261
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
|
|
258
262
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
|
|
259
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
260
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
263
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
264
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
261
265
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
262
266
|
return texture;
|
|
263
267
|
}
|
|
@@ -266,10 +270,11 @@ class Handler {
|
|
|
266
270
|
* @public
|
|
267
271
|
* @param {HTMLCanvasElement | Image} image - Image or Canvas object.
|
|
268
272
|
* @param {number} [internalFormat]
|
|
273
|
+
* @param {number} [texParami]
|
|
269
274
|
* @param {WebGLTexture | null} [texture=null]
|
|
270
275
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
271
276
|
*/
|
|
272
|
-
createTexture_n_webgl1(image, internalFormat, texture = null) {
|
|
277
|
+
createTexture_n_webgl1(image, internalFormat, texParami, texture = null) {
|
|
273
278
|
let gl = this.gl;
|
|
274
279
|
texture = texture || gl.createTexture();
|
|
275
280
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -277,8 +282,8 @@ class Handler {
|
|
|
277
282
|
gl.texImage2D(gl.TEXTURE_2D, 0, internalFormat || gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image);
|
|
278
283
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
|
|
279
284
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
|
|
280
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
281
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
285
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
286
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
282
287
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
283
288
|
return texture;
|
|
284
289
|
}
|
|
@@ -287,18 +292,19 @@ class Handler {
|
|
|
287
292
|
* @public
|
|
288
293
|
* @param {ImageSource} image - Image or Canvas object.
|
|
289
294
|
* @param {number} [internalFormat]
|
|
295
|
+
* @param {number} [texParami]
|
|
290
296
|
* @param {WebGLTexture | null} [texture]
|
|
291
297
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
292
298
|
*/
|
|
293
|
-
createTexture_l_webgl1(image, internalFormat, texture = null) {
|
|
299
|
+
createTexture_l_webgl1(image, internalFormat, texParami, texture = null) {
|
|
294
300
|
let gl = this.gl;
|
|
295
301
|
texture = texture || gl.createTexture();
|
|
296
302
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
297
303
|
gl.texImage2D(gl.TEXTURE_2D, 0, internalFormat || gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image);
|
|
298
304
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
|
|
299
305
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
|
|
300
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
301
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
306
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
307
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
302
308
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
303
309
|
return texture;
|
|
304
310
|
}
|
|
@@ -307,10 +313,11 @@ class Handler {
|
|
|
307
313
|
* @public
|
|
308
314
|
* @param {ImageSource} image - Image or Canvas object.
|
|
309
315
|
* @param {number} [internalFormat]
|
|
316
|
+
* @param {number} [texParami]
|
|
310
317
|
* @param {WebGLTexture | null} [texture]
|
|
311
318
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
312
319
|
*/
|
|
313
|
-
createTexture_mm_webgl1(image, internalFormat, texture = null) {
|
|
320
|
+
createTexture_mm_webgl1(image, internalFormat, texParami, texture = null) {
|
|
314
321
|
let gl = this.gl;
|
|
315
322
|
texture = texture || gl.createTexture();
|
|
316
323
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -318,8 +325,8 @@ class Handler {
|
|
|
318
325
|
gl.texImage2D(gl.TEXTURE_2D, 0, internalFormat || gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image);
|
|
319
326
|
gl.generateMipmap(gl.TEXTURE_2D);
|
|
320
327
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
|
|
321
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
322
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
328
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
329
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
323
330
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
324
331
|
return texture;
|
|
325
332
|
}
|
|
@@ -328,10 +335,11 @@ class Handler {
|
|
|
328
335
|
* @public
|
|
329
336
|
* @param {ImageSource} image - Image or Canvas object.
|
|
330
337
|
* @param {number} [internalFormat]
|
|
338
|
+
* @param {number} [texParami]
|
|
331
339
|
* @param {WebGLTexture | null} [texture]
|
|
332
340
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
333
341
|
*/
|
|
334
|
-
createTexture_a_webgl1(image, internalFormat, texture = null) {
|
|
342
|
+
createTexture_a_webgl1(image, internalFormat, texParami, texture = null) {
|
|
335
343
|
let gl = this.gl;
|
|
336
344
|
texture = texture || gl.createTexture();
|
|
337
345
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -340,8 +348,8 @@ class Handler {
|
|
|
340
348
|
gl.generateMipmap(gl.TEXTURE_2D);
|
|
341
349
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
|
|
342
350
|
gl.texParameterf(gl.TEXTURE_2D, this.extensions.EXT_texture_filter_anisotropic.TEXTURE_MAX_ANISOTROPY_EXT, this._params.anisotropy);
|
|
343
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
344
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
351
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
352
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
345
353
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
346
354
|
return texture;
|
|
347
355
|
}
|
|
@@ -350,10 +358,11 @@ class Handler {
|
|
|
350
358
|
* @public
|
|
351
359
|
* @param {ImageSource} image - Image or Canvas object.
|
|
352
360
|
* @param {number} [internalFormat]
|
|
361
|
+
* @param {number} [texParami]
|
|
353
362
|
* @param {WebGLTexture | null} [texture]
|
|
354
363
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
355
364
|
*/
|
|
356
|
-
createTexture_n_webgl2(image, internalFormat, texture = null) {
|
|
365
|
+
createTexture_n_webgl2(image, internalFormat, texParami, texture = null) {
|
|
357
366
|
let gl = this.gl;
|
|
358
367
|
texture = texture || gl.createTexture();
|
|
359
368
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -363,8 +372,8 @@ class Handler {
|
|
|
363
372
|
gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, image.width, image.height, gl.RGBA, gl.UNSIGNED_BYTE, image);
|
|
364
373
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
|
|
365
374
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
|
|
366
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
367
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
375
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
376
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
368
377
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
369
378
|
return texture;
|
|
370
379
|
}
|
|
@@ -373,10 +382,11 @@ class Handler {
|
|
|
373
382
|
* @public
|
|
374
383
|
* @param {ImageSource} image - Image or Canvas object.
|
|
375
384
|
* @param {number} [internalFormat]
|
|
385
|
+
* @param {number} [texParami]
|
|
376
386
|
* @param {WebGLTexture | null} [texture]
|
|
377
387
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
378
388
|
*/
|
|
379
|
-
createTexture_l_webgl2(image, internalFormat, texture = null) {
|
|
389
|
+
createTexture_l_webgl2(image, internalFormat, texParami, texture = null) {
|
|
380
390
|
let gl = this.gl;
|
|
381
391
|
texture = texture || gl.createTexture();
|
|
382
392
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -386,8 +396,8 @@ class Handler {
|
|
|
386
396
|
gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, image.width, image.height, gl.RGBA, gl.UNSIGNED_BYTE, image);
|
|
387
397
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
|
|
388
398
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
|
|
389
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
390
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
399
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
400
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
391
401
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
392
402
|
return texture;
|
|
393
403
|
}
|
|
@@ -396,10 +406,11 @@ class Handler {
|
|
|
396
406
|
* @public
|
|
397
407
|
* @param {ImageSource} image - Image or Canvas object.
|
|
398
408
|
* @param {number} [internalFormat]
|
|
409
|
+
* @param {number} [texParami]
|
|
399
410
|
* @param {WebGLTexture | null} [texture]
|
|
400
411
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
401
412
|
*/
|
|
402
|
-
createTexture_mm_webgl2(image, internalFormat, texture = null) {
|
|
413
|
+
createTexture_mm_webgl2(image, internalFormat, texParami, texture = null) {
|
|
403
414
|
let gl = this.gl;
|
|
404
415
|
texture = texture || gl.createTexture();
|
|
405
416
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -408,8 +419,8 @@ class Handler {
|
|
|
408
419
|
gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, image.width, image.height, gl.RGBA, gl.UNSIGNED_BYTE, image);
|
|
409
420
|
gl.generateMipmap(gl.TEXTURE_2D);
|
|
410
421
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
|
|
411
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
412
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
422
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
423
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
413
424
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
414
425
|
return texture;
|
|
415
426
|
}
|
|
@@ -418,10 +429,11 @@ class Handler {
|
|
|
418
429
|
* @public
|
|
419
430
|
* @param {ImageSource} image - Image or Canvas object.
|
|
420
431
|
* @param {number} [internalFormat]
|
|
432
|
+
* @param {number} [texParami]
|
|
421
433
|
* @param {WebGLTexture | null} [texture]
|
|
422
434
|
* @returns {WebGLTexture | null} - WebGL texture object.
|
|
423
435
|
*/
|
|
424
|
-
createTexture_a_webgl2(image, internalFormat, texture = null) {
|
|
436
|
+
createTexture_a_webgl2(image, internalFormat, texParami, texture = null) {
|
|
425
437
|
let gl = this.gl;
|
|
426
438
|
texture = texture || gl.createTexture();
|
|
427
439
|
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
@@ -432,8 +444,8 @@ class Handler {
|
|
|
432
444
|
gl.generateMipmap(gl.TEXTURE_2D);
|
|
433
445
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
|
|
434
446
|
gl.texParameterf(gl.TEXTURE_2D, this.extensions.EXT_texture_filter_anisotropic.TEXTURE_MAX_ANISOTROPY_EXT, this._params.anisotropy);
|
|
435
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
436
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
447
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, texParami || gl.CLAMP_TO_EDGE);
|
|
448
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, texParami || gl.CLAMP_TO_EDGE);
|
|
437
449
|
gl.bindTexture(gl.TEXTURE_2D, null);
|
|
438
450
|
return texture;
|
|
439
451
|
}
|
|
@@ -878,10 +890,10 @@ class Handler {
|
|
|
878
890
|
});
|
|
879
891
|
}
|
|
880
892
|
/**
|
|
881
|
-
* Creates default texture object
|
|
893
|
+
* Creates default texture object.
|
|
882
894
|
* @public
|
|
883
|
-
* @param {IDefaultTextureParams | null} params - Texture parameters
|
|
884
|
-
* @param {(
|
|
895
|
+
* @param {IDefaultTextureParams | null} params - Texture parameters.
|
|
896
|
+
* @param {function(WebGLTextureExt): void} [success] - Creation callback.
|
|
885
897
|
*/
|
|
886
898
|
createDefaultTexture(params, success) {
|
|
887
899
|
let imgCnv;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { BaseFramebuffer
|
|
1
|
+
import { BaseFramebuffer } from "./BaseFramebuffer";
|
|
2
|
+
import type { IBaseFramebufferParams } from "./BaseFramebuffer";
|
|
2
3
|
import { Handler } from "./Handler";
|
|
3
4
|
interface IMultisampleParams extends IBaseFramebufferParams {
|
|
4
5
|
msaa?: number;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ProgramVariable } from "./variableHandlers";
|
|
2
|
-
import { WebGLBufferExt } from "./Handler";
|
|
1
|
+
import type { ProgramVariable } from "./variableHandlers";
|
|
2
|
+
import type { WebGLBufferExt } from "./Handler";
|
|
3
3
|
type WebGLProgramExt = WebGLProgram & {
|
|
4
4
|
[id: string]: WebGLUniformLocation;
|
|
5
5
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Handler
|
|
1
|
+
import { Handler } from "./Handler";
|
|
2
|
+
import type { WebGLBufferExt } from "./Handler";
|
|
2
3
|
import { Program } from "./Program";
|
|
3
4
|
/**
|
|
4
5
|
* This is shader program controller that used by handler object to access the shader
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openglobus/og",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.24.1",
|
|
4
4
|
"description": "[openglobus](https://www.openglobus.org/) is a javascript/typescript library designed to display interactive 3d maps and planets with map tiles, imagery and vector data, markers, and 3D objects. It uses the WebGL technology, open source, and completely free.",
|
|
5
5
|
"directories": {
|
|
6
6
|
"example": "./sandbox"
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"scripts": {
|
|
12
12
|
"docs": "jsdoc -r ./src/ -c ./jsdoc.conf.json -d ./docs",
|
|
13
13
|
"serve_docs": "cd docs; ws -p 8088",
|
|
14
|
-
"serve": "ws -p
|
|
14
|
+
"serve": "ws -p 8080",
|
|
15
15
|
"build": "rollup -c --bundleConfigAsCjs",
|
|
16
16
|
"clean": "rm -rf ./lib ./docs",
|
|
17
17
|
"prepublishOnly": "npm run build; npm run gen_js",
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { Control, IControlParams } from "./Control";
|
|
2
|
-
import { ITouchState } from "../renderer/RendererEvents";
|
|
3
|
-
import { IMouseState } from "../renderer/RendererEvents";
|
|
4
|
-
import { Quat } from "../math/Quat";
|
|
5
|
-
import { Sphere } from "../bv/Sphere";
|
|
6
|
-
import { Vec3 } from "../math/Vec3";
|
|
7
|
-
interface IEarthNavigationParams extends IControlParams {
|
|
8
|
-
}
|
|
9
|
-
declare class TouchExt {
|
|
10
|
-
x: number;
|
|
11
|
-
y: number;
|
|
12
|
-
prev_x: number;
|
|
13
|
-
prev_y: number;
|
|
14
|
-
grabbedPoint: Vec3 | null;
|
|
15
|
-
grabbedSpheroid: Sphere;
|
|
16
|
-
constructor();
|
|
17
|
-
dX(): number;
|
|
18
|
-
dY(): number;
|
|
19
|
-
}
|
|
20
|
-
export declare class EarthNavigation extends Control {
|
|
21
|
-
protected grabbedPoint: Vec3 | null;
|
|
22
|
-
protected grabbedDir: Vec3;
|
|
23
|
-
inertia: number;
|
|
24
|
-
protected grabbedSpheroid: Sphere;
|
|
25
|
-
protected _vRot: Quat;
|
|
26
|
-
protected _hRot: Quat;
|
|
27
|
-
protected _a: number;
|
|
28
|
-
protected scaleRot: number;
|
|
29
|
-
protected currState: number;
|
|
30
|
-
protected positionState: {
|
|
31
|
-
h: number;
|
|
32
|
-
max: number;
|
|
33
|
-
min: number;
|
|
34
|
-
}[];
|
|
35
|
-
protected touches: TouchExt[];
|
|
36
|
-
constructor(options?: IEarthNavigationParams);
|
|
37
|
-
switchZoomState(wheelDelta: number): void;
|
|
38
|
-
protected onMouseWheel(event: IMouseState): void;
|
|
39
|
-
oninit(): void;
|
|
40
|
-
onactivate(): void;
|
|
41
|
-
protected onTouchStart(e: ITouchState): void;
|
|
42
|
-
protected onTouchEnd(e: ITouchState): void;
|
|
43
|
-
protected onTouchMove(e: ITouchState): void;
|
|
44
|
-
protected onMouseLeftButtonClick(e: IMouseState): void;
|
|
45
|
-
stopRotation(): void;
|
|
46
|
-
protected onMouseLeftButtonUp(e: IMouseState): void;
|
|
47
|
-
protected onMouseLeftButtonDown(e: IMouseState): void;
|
|
48
|
-
protected onDraw(): void;
|
|
49
|
-
}
|
|
50
|
-
export {};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Sphere } from "../bv/Sphere";
|
|
2
|
-
import { Key } from "../Lock";
|
|
3
|
-
import { Quat } from "../math/Quat";
|
|
4
|
-
import { Vec3 } from "../math/Vec3";
|
|
5
|
-
import { Control, IControlParams } from "./Control";
|
|
6
|
-
import { IStepForward } from "./MouseNavigation";
|
|
7
|
-
interface IMouseWheelZoomControl extends IControlParams {
|
|
8
|
-
minSlope?: number;
|
|
9
|
-
}
|
|
10
|
-
export declare class MouseWheelZoomControl extends Control {
|
|
11
|
-
protected grabbedPoint: Vec3;
|
|
12
|
-
protected _eye0: Vec3;
|
|
13
|
-
protected pointOnEarth: Vec3;
|
|
14
|
-
protected earthUp: Vec3;
|
|
15
|
-
inertia: number;
|
|
16
|
-
protected grabbedSpheroid: Sphere;
|
|
17
|
-
protected qRot: Quat;
|
|
18
|
-
protected scaleRot: number;
|
|
19
|
-
protected distDiff: number;
|
|
20
|
-
protected stepsCount: number;
|
|
21
|
-
protected stepsForward: IStepForward[] | null;
|
|
22
|
-
protected stepIndex: number;
|
|
23
|
-
protected _lmbDoubleClickActive: boolean;
|
|
24
|
-
protected minSlope: number;
|
|
25
|
-
protected _keyLock: Key;
|
|
26
|
-
protected _deactivate: boolean;
|
|
27
|
-
protected _move: number;
|
|
28
|
-
constructor(options?: IMouseWheelZoomControl);
|
|
29
|
-
oninit(): void;
|
|
30
|
-
/**
|
|
31
|
-
* Planet zoom in.
|
|
32
|
-
* @public
|
|
33
|
-
*/
|
|
34
|
-
zoomIn(): void;
|
|
35
|
-
/**
|
|
36
|
-
* Planet zoom out.
|
|
37
|
-
* @public
|
|
38
|
-
*/
|
|
39
|
-
zoomOut(): void;
|
|
40
|
-
stopRotation(): void;
|
|
41
|
-
stopZoom(): void;
|
|
42
|
-
protected _draw(): void;
|
|
43
|
-
}
|
|
44
|
-
export {};
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { Control, IControlParams } from "./Control";
|
|
2
|
-
import { ITouchState } from "../renderer/RendererEvents";
|
|
3
|
-
import { IMouseState } from "../renderer/RendererEvents";
|
|
4
|
-
import { Quat } from "../math/Quat";
|
|
5
|
-
import { Sphere } from "../bv/Sphere";
|
|
6
|
-
import { Vec3 } from "../math/Vec3";
|
|
7
|
-
interface IEarthNavigationParams extends IControlParams {
|
|
8
|
-
}
|
|
9
|
-
declare class TouchExt {
|
|
10
|
-
x: number;
|
|
11
|
-
y: number;
|
|
12
|
-
prev_x: number;
|
|
13
|
-
prev_y: number;
|
|
14
|
-
grabbedPoint: Vec3 | null;
|
|
15
|
-
grabbedSpheroid: Sphere;
|
|
16
|
-
constructor();
|
|
17
|
-
dX(): number;
|
|
18
|
-
dY(): number;
|
|
19
|
-
}
|
|
20
|
-
export declare class EarthNavigation extends Control {
|
|
21
|
-
protected grabbedPoint: Vec3 | null;
|
|
22
|
-
protected grabbedDir: Vec3;
|
|
23
|
-
inertia: number;
|
|
24
|
-
protected grabbedSpheroid: Sphere;
|
|
25
|
-
protected _vRot: Quat;
|
|
26
|
-
protected _hRot: Quat;
|
|
27
|
-
protected _a: number;
|
|
28
|
-
protected scaleRot: number;
|
|
29
|
-
protected currState: number;
|
|
30
|
-
protected positionState: {
|
|
31
|
-
h: number;
|
|
32
|
-
max: number;
|
|
33
|
-
min: number;
|
|
34
|
-
}[];
|
|
35
|
-
protected touches: TouchExt[];
|
|
36
|
-
constructor(options?: IEarthNavigationParams);
|
|
37
|
-
switchZoomState(wheelDelta: number): void;
|
|
38
|
-
protected onMouseWheel(event: IMouseState): void;
|
|
39
|
-
oninit(): void;
|
|
40
|
-
onactivate(): void;
|
|
41
|
-
protected onTouchStart(e: ITouchState): void;
|
|
42
|
-
protected onTouchEnd(e: ITouchState): void;
|
|
43
|
-
protected onTouchMove(e: ITouchState): void;
|
|
44
|
-
protected onMouseLeftButtonClick(e: IMouseState): void;
|
|
45
|
-
stopRotation(): void;
|
|
46
|
-
protected onMouseLeftButtonUp(e: IMouseState): void;
|
|
47
|
-
protected onMouseLeftButtonDown(e: IMouseState): void;
|
|
48
|
-
protected onDraw(): void;
|
|
49
|
-
}
|
|
50
|
-
export {};
|
|
@@ -1,202 +0,0 @@
|
|
|
1
|
-
import { Control } from "./Control";
|
|
2
|
-
import { LonLat } from "../LonLat";
|
|
3
|
-
import { Quat } from "../math/Quat";
|
|
4
|
-
import { Ray } from "../math/Ray";
|
|
5
|
-
import { Sphere } from "../bv/Sphere";
|
|
6
|
-
import { Vec2 } from "../math/Vec2";
|
|
7
|
-
import { Vec3 } from "../math/Vec3";
|
|
8
|
-
class TouchExt {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.x = 0;
|
|
11
|
-
this.y = 0;
|
|
12
|
-
this.prev_x = 0;
|
|
13
|
-
this.prev_y = 0;
|
|
14
|
-
this.grabbedPoint = new Vec3();
|
|
15
|
-
this.grabbedSpheroid = new Sphere();
|
|
16
|
-
}
|
|
17
|
-
dX() {
|
|
18
|
-
return this.x - this.prev_x;
|
|
19
|
-
}
|
|
20
|
-
dY() {
|
|
21
|
-
return this.y - this.prev_y;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
export class EarthNavigation extends Control {
|
|
25
|
-
constructor(options = {}) {
|
|
26
|
-
super(options);
|
|
27
|
-
this.grabbedPoint = new Vec3();
|
|
28
|
-
this.grabbedDir = new Vec3();
|
|
29
|
-
this.inertia = 0.007;
|
|
30
|
-
this.grabbedSpheroid = new Sphere();
|
|
31
|
-
this.planet = null;
|
|
32
|
-
this._vRot = new Quat();
|
|
33
|
-
this._hRot = new Quat();
|
|
34
|
-
this._a = 0.0;
|
|
35
|
-
this.scaleRot = 0;
|
|
36
|
-
this.currState = 0;
|
|
37
|
-
this.positionState = [
|
|
38
|
-
{ h: 17119745.303455353, max: 0.98, min: -0.98 },
|
|
39
|
-
{ h: 6866011, max: 0.98, min: -0.98 },
|
|
40
|
-
{ h: 3000000, max: 0.98, min: -0.98 },
|
|
41
|
-
{ h: 1000000, max: 0.98, min: -0.98 },
|
|
42
|
-
{ h: 500000, max: 0.98, min: -0.98 }
|
|
43
|
-
];
|
|
44
|
-
this.touches = [new TouchExt(), new TouchExt()];
|
|
45
|
-
}
|
|
46
|
-
switchZoomState(wheelDelta) {
|
|
47
|
-
this.stopRotation();
|
|
48
|
-
if (wheelDelta > 0) {
|
|
49
|
-
this.currState++;
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
this.currState--;
|
|
53
|
-
}
|
|
54
|
-
if (this.currState <= 0)
|
|
55
|
-
this.currState = 0;
|
|
56
|
-
if (this.currState >= this.positionState.length) {
|
|
57
|
-
this.currState = this.positionState.length - 1;
|
|
58
|
-
}
|
|
59
|
-
this.planet.stopFlying();
|
|
60
|
-
const ll = this.planet.camera._lonLat;
|
|
61
|
-
this.planet.flyLonLat(new LonLat(ll.lon, ll.lat, this.positionState[this.currState].h));
|
|
62
|
-
}
|
|
63
|
-
onMouseWheel(event) {
|
|
64
|
-
this.switchZoomState(event.wheelDelta);
|
|
65
|
-
}
|
|
66
|
-
oninit() {
|
|
67
|
-
this.activate();
|
|
68
|
-
}
|
|
69
|
-
onactivate() {
|
|
70
|
-
let r = this.renderer;
|
|
71
|
-
r.events.on("mousewheel", this.onMouseWheel, this);
|
|
72
|
-
r.events.on("lhold", this.onMouseLeftButtonDown, this);
|
|
73
|
-
r.events.on("ldown", this.onMouseLeftButtonClick, this);
|
|
74
|
-
r.events.on("lup", this.onMouseLeftButtonUp, this);
|
|
75
|
-
r.events.on("touchstart", this.onTouchStart, this);
|
|
76
|
-
r.events.on("touchend", this.onTouchEnd, this);
|
|
77
|
-
r.events.on("touchmove", this.onTouchMove, this);
|
|
78
|
-
r.events.on("draw", this.onDraw, this);
|
|
79
|
-
}
|
|
80
|
-
onTouchStart(e) {
|
|
81
|
-
if (e.sys.touches.length == 1) {
|
|
82
|
-
const t = this.touches[0];
|
|
83
|
-
t.x = e.sys.touches.item(0).pageX - e.sys.offsetLeft;
|
|
84
|
-
t.y = e.sys.touches.item(0).pageY - e.sys.offsetTop;
|
|
85
|
-
t.prev_x = e.sys.touches.item(0).pageX - e.sys.offsetLeft;
|
|
86
|
-
t.prev_y = e.sys.touches.item(0).pageY - e.sys.offsetTop;
|
|
87
|
-
// t.grabbedPoint = this.planet!.getCartesianFromPixelTerrain(t, true);
|
|
88
|
-
t.grabbedPoint = this.planet.getCartesianFromPixelTerrain(new Vec2(t.x, t.y)) || null;
|
|
89
|
-
if (t.grabbedPoint) {
|
|
90
|
-
t.grabbedSpheroid.radius = t.grabbedPoint.length();
|
|
91
|
-
this.stopRotation();
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
onTouchEnd(e) {
|
|
96
|
-
if (e.sys.touches.length == 0) {
|
|
97
|
-
this.scaleRot = 1;
|
|
98
|
-
if (Math.abs(this.touches[0].x - this.touches[0].prev_x) < 3 &&
|
|
99
|
-
Math.abs(this.touches[0].y - this.touches[0].prev_y) < 3)
|
|
100
|
-
this.stopRotation();
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
onTouchMove(e) {
|
|
104
|
-
if (e.sys.touches.length == 1) {
|
|
105
|
-
let cam = this.planet.camera;
|
|
106
|
-
let t = this.touches[0];
|
|
107
|
-
t.prev_x = t.x;
|
|
108
|
-
t.prev_y = t.y;
|
|
109
|
-
t.x = e.sys.touches.item(0).pageX - e.sys.offsetLeft;
|
|
110
|
-
t.y = e.sys.touches.item(0).pageY - e.sys.offsetTop;
|
|
111
|
-
if (!t.grabbedPoint)
|
|
112
|
-
return;
|
|
113
|
-
let direction = cam.unproject(t.x, t.y);
|
|
114
|
-
let targetPoint = new Ray(cam.eye, direction).hitSphere(t.grabbedSpheroid);
|
|
115
|
-
if (targetPoint) {
|
|
116
|
-
this._a =
|
|
117
|
-
Math.acos(t.grabbedPoint.y / t.grabbedSpheroid.radius) -
|
|
118
|
-
Math.acos(targetPoint.y / t.grabbedSpheroid.radius);
|
|
119
|
-
this._vRot = Quat.axisAngleToQuat(cam._u, this._a);
|
|
120
|
-
this._hRot = Quat.getRotationBetweenVectors(new Vec3(targetPoint.x, 0.0, targetPoint.z).normal(), new Vec3(t.grabbedPoint.x, 0.0, t.grabbedPoint.z).normal());
|
|
121
|
-
let rot = this._hRot.mul(this._vRot);
|
|
122
|
-
let state = this.positionState[this.currState];
|
|
123
|
-
let lim = rot.mulVec3(cam.eye).normal().dot(Vec3.NORTH);
|
|
124
|
-
if (lim > state.max || lim < state.min) {
|
|
125
|
-
rot = Quat.yRotation(rot.getYaw());
|
|
126
|
-
}
|
|
127
|
-
cam.set(rot.mulVec3(cam.eye), Vec3.ZERO, Vec3.NORTH);
|
|
128
|
-
cam.update();
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
onMouseLeftButtonClick(e) {
|
|
133
|
-
this.renderer.handler.canvas.classList.add("ogGrabbingPoiner");
|
|
134
|
-
this.grabbedPoint = this.planet.getCartesianFromMouseTerrain() || null;
|
|
135
|
-
this.grabbedDir.copy(e.direction);
|
|
136
|
-
if (this.grabbedPoint) {
|
|
137
|
-
this.grabbedSpheroid.radius = this.grabbedPoint.length();
|
|
138
|
-
this.stopRotation();
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
stopRotation() {
|
|
142
|
-
this.scaleRot = 0.0;
|
|
143
|
-
this._a = 0.0;
|
|
144
|
-
this._vRot.clear();
|
|
145
|
-
this._hRot.clear();
|
|
146
|
-
}
|
|
147
|
-
onMouseLeftButtonUp(e) {
|
|
148
|
-
this.scaleRot = 1;
|
|
149
|
-
this.renderer.handler.canvas.classList.remove("ogGrabbingPoiner");
|
|
150
|
-
if (Math.abs(e.x - e.prev_x) < 3 && Math.abs(e.y - e.prev_y) < 3)
|
|
151
|
-
this.stopRotation();
|
|
152
|
-
}
|
|
153
|
-
onMouseLeftButtonDown(e) {
|
|
154
|
-
let cam = this.planet.camera;
|
|
155
|
-
if (!this.grabbedPoint || cam.isFlying())
|
|
156
|
-
return;
|
|
157
|
-
if (this.renderer.events.mouseState.moving) {
|
|
158
|
-
let targetPoint = new Ray(cam.eye, e.direction).hitSphere(this.grabbedSpheroid);
|
|
159
|
-
if (targetPoint) {
|
|
160
|
-
this._a = Math.acos(this.grabbedPoint.y / this.grabbedSpheroid.radius) -
|
|
161
|
-
Math.acos(targetPoint.y / this.grabbedSpheroid.radius);
|
|
162
|
-
let rot = this._vRot = Quat.axisAngleToQuat(cam._u, this._a);
|
|
163
|
-
cam.set(rot.mulVec3(cam.eye), Vec3.ZERO, rot.mulVec3(cam.getUp()));
|
|
164
|
-
this._hRot = Quat.getRotationBetweenVectors(new Vec3(targetPoint.x, 0.0, targetPoint.z).normal(), new Vec3(this.grabbedPoint.x, 0.0, this.grabbedPoint.z).normal());
|
|
165
|
-
rot = this._hRot;
|
|
166
|
-
cam.set(rot.mulVec3(cam.eye), Vec3.ZERO, rot.mulVec3(cam.getUp()));
|
|
167
|
-
cam.update();
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
else {
|
|
171
|
-
this.scaleRot = 0;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
onDraw() {
|
|
175
|
-
let r = this.renderer;
|
|
176
|
-
let cam = this.planet.camera;
|
|
177
|
-
if (r.events.mouseState.leftButtonDown || !this.scaleRot || cam.isFlying())
|
|
178
|
-
return;
|
|
179
|
-
this.scaleRot -= this.inertia;
|
|
180
|
-
if (this.scaleRot <= 0) {
|
|
181
|
-
this.scaleRot = 0;
|
|
182
|
-
}
|
|
183
|
-
else {
|
|
184
|
-
this._vRot = Quat.axisAngleToQuat(cam._u, this._a);
|
|
185
|
-
let rot = this._vRot.mul(this._hRot);
|
|
186
|
-
let lim = rot.mulVec3(cam.eye).normal().dot(Vec3.NORTH);
|
|
187
|
-
let state = this.positionState[this.currState];
|
|
188
|
-
if (lim > state.max || lim < state.min) {
|
|
189
|
-
rot = Quat.yRotation(rot.getYaw());
|
|
190
|
-
}
|
|
191
|
-
r.controlsBag.scaleRot = this.scaleRot;
|
|
192
|
-
rot = rot
|
|
193
|
-
.slerp(Quat.IDENTITY, 1 - this.scaleRot * this.scaleRot * this.scaleRot)
|
|
194
|
-
.normalize();
|
|
195
|
-
if (!(rot.x || rot.y || rot.z)) {
|
|
196
|
-
this.scaleRot = 0;
|
|
197
|
-
}
|
|
198
|
-
cam.set(rot.mulVec3(cam.eye), Vec3.ZERO, Vec3.NORTH);
|
|
199
|
-
cam.update();
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
}
|