@openglobus/og 0.18.0 → 0.18.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/README.md +8 -8
- package/lib/@openglobus/og.esm.js +2 -0
- package/lib/@openglobus/og.esm.js.map +1 -0
- package/lib/@openglobus/og.umd.js +2 -0
- package/lib/@openglobus/og.umd.js.map +1 -0
- package/lib/js/Clock.d.ts +106 -0
- package/{src/Clock.ts → lib/js/Clock.js} +31 -126
- package/lib/js/Deferred.d.ts +6 -0
- package/lib/js/Deferred.js +13 -0
- package/lib/js/Events.d.ts +90 -0
- package/{src/Events.ts → lib/js/Events.js} +29 -84
- package/lib/js/Extent.d.ts +145 -0
- package/{src/Extent.ts → lib/js/Extent.js} +74 -120
- package/lib/js/Globe.d.ts +132 -0
- package/{src/Globe.ts → lib/js/Globe.js} +61 -159
- package/lib/js/ImageCanvas.d.ts +128 -0
- package/{src/ImageCanvas.ts → lib/js/ImageCanvas.js} +24 -65
- package/lib/js/Lock.d.ts +15 -0
- package/{src/Lock.ts → lib/js/Lock.js} +7 -21
- package/lib/js/LonLat.d.ts +128 -0
- package/{src/LonLat.ts → lib/js/LonLat.js} +44 -75
- package/lib/js/Object3d.d.ts +49 -0
- package/{src/Object3d.ts → lib/js/Object3d.js} +64 -184
- package/lib/js/Popup.d.ts +46 -0
- package/{src/Popup.ts → lib/js/Popup.js} +42 -110
- package/lib/js/QueueArray.d.ts +16 -0
- package/{src/QueueArray.ts → lib/js/QueueArray.js} +12 -25
- package/lib/js/Rectangle.d.ts +76 -0
- package/{src/Rectangle.ts → lib/js/Rectangle.js} +12 -50
- package/lib/js/Stack.d.ts +20 -0
- package/{src/Stack.ts → lib/js/Stack.js} +13 -29
- package/lib/js/astro/astro.d.ts +39 -0
- package/{src/astro/astro.ts → lib/js/astro/astro.js} +2 -8
- package/lib/js/astro/earth.d.ts +8 -0
- package/{src/astro/earth.ts → lib/js/astro/earth.js} +3 -39
- package/lib/js/astro/jd.d.ts +234 -0
- package/{src/astro/jd.ts → lib/js/astro/jd.js} +55 -134
- package/lib/js/astro/orbit.d.ts +5 -0
- package/{src/astro/orbit.ts → lib/js/astro/orbit.js} +26 -39
- package/lib/js/astro/rotation.d.ts +2 -0
- package/{src/astro/rotation.ts → lib/js/astro/rotation.js} +2 -11
- package/lib/js/bv/Box.d.ts +32 -0
- package/{src/bv/Box.ts → lib/js/bv/Box.js} +7 -35
- package/lib/js/bv/Sphere.d.ts +37 -0
- package/{src/bv/Sphere.ts → lib/js/bv/Sphere.js} +6 -34
- package/{src/bv/index.ts → lib/js/bv/index.d.ts} +0 -1
- package/lib/js/bv/index.js +3 -0
- package/lib/js/camera/Camera.d.ts +314 -0
- package/{src/camera/Camera.ts → lib/js/camera/Camera.js} +77 -326
- package/lib/js/camera/Frustum.d.ts +139 -0
- package/{src/camera/Frustum.ts → lib/js/camera/Frustum.js} +66 -185
- package/lib/js/camera/PlanetCamera.d.ts +234 -0
- package/{src/camera/PlanetCamera.ts → lib/js/camera/PlanetCamera.js} +65 -338
- package/{src/camera/index.ts → lib/js/camera/index.d.ts} +0 -1
- package/lib/js/camera/index.js +3 -0
- package/lib/js/cons.d.ts +40 -0
- package/{src/cons.ts → lib/js/cons.js} +10 -22
- package/lib/js/control/Atmosphere.d.ts +16 -0
- package/{src/control/Atmosphere.ts → lib/js/control/Atmosphere.js} +33 -86
- package/lib/js/control/CompassButton.d.ts +16 -0
- package/{src/control/CompassButton.ts → lib/js/control/CompassButton.js} +18 -43
- package/lib/js/control/Control.d.ts +100 -0
- package/{src/control/Control.ts → lib/js/control/Control.js} +22 -89
- package/lib/js/control/DebugInfo.d.ts +25 -0
- package/{src/control/DebugInfo.ts → lib/js/control/DebugInfo.js} +38 -84
- package/lib/js/control/DrawingSwitcher.d.ts +13 -0
- package/{src/control/DrawingSwitcher.ts → lib/js/control/DrawingSwitcher.js} +13 -30
- package/lib/js/control/EarthCoordinates.d.ts +41 -0
- package/{src/control/EarthCoordinates.ts → lib/js/control/EarthCoordinates.js} +58 -119
- package/lib/js/control/EarthNavigation.d.ts +50 -0
- package/{src/control/EarthNavigation.ts → lib/js/control/EarthNavigation.js} +70 -161
- package/lib/js/control/GeoImageDragControl.d.ts +22 -0
- package/{src/control/GeoImageDragControl.ts → lib/js/control/GeoImageDragControl.js} +26 -49
- package/lib/js/control/KeyboardNavigation.d.ts +28 -0
- package/{src/control/KeyboardNavigation.ts → lib/js/control/KeyboardNavigation.js} +67 -92
- package/lib/js/control/LayerAnimation.d.ts +71 -0
- package/{src/control/LayerAnimation.ts → lib/js/control/LayerAnimation.js} +82 -162
- package/lib/js/control/LayerSwitcher.d.ts +21 -0
- package/{src/control/LayerSwitcher.ts → lib/js/control/LayerSwitcher.js} +16 -41
- package/lib/js/control/Lighting.d.ts +49 -0
- package/{src/control/Lighting.ts → lib/js/control/Lighting.js} +106 -219
- package/lib/js/control/MouseNavigation.d.ts +62 -0
- package/{src/control/MouseNavigation.ts → lib/js/control/MouseNavigation.js} +105 -211
- package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
- package/lib/js/control/MouseWheelZoomControl.js +181 -0
- package/lib/js/control/RulerSwitcher.d.ts +17 -0
- package/{src/control/RulerSwitcher.ts → lib/js/control/RulerSwitcher.js} +13 -28
- package/lib/js/control/ScaleControl.d.ts +24 -0
- package/lib/js/control/ScaleControl.js +91 -0
- package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
- package/lib/js/control/SegmentBoundVisualization.js +37 -0
- package/lib/js/control/ShowFps.d.ts +9 -0
- package/lib/js/control/ShowFps.js +20 -0
- package/lib/js/control/SimpleNavigation.d.ts +25 -0
- package/{src/control/SimpleNavigation.ts → lib/js/control/SimpleNavigation.js} +29 -51
- package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
- package/{src/control/SimpleSkyBackground.ts → lib/js/control/SimpleSkyBackground.js} +21 -48
- package/lib/js/control/Sun.d.ts +33 -0
- package/{src/control/Sun.ts → lib/js/control/Sun.js} +34 -85
- package/lib/js/control/ToggleWireframe.d.ts +14 -0
- package/lib/js/control/ToggleWireframe.js +28 -0
- package/lib/js/control/TouchNavigation.d.ts +52 -0
- package/{src/control/TouchNavigation.ts → lib/js/control/TouchNavigation.js} +88 -193
- package/lib/js/control/ZoomControl.d.ts +27 -0
- package/{src/control/ZoomControl.ts → lib/js/control/ZoomControl.js} +25 -50
- package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
- package/{src/control/drawing/DrawingControl.ts → lib/js/control/drawing/DrawingControl.js} +10 -20
- package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
- package/{src/control/drawing/LineStringDrawingScene.ts → lib/js/control/drawing/LineStringDrawingScene.js} +28 -85
- package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
- package/{src/control/drawing/PolygonDrawingScene.ts → lib/js/control/drawing/PolygonDrawingScene.js} +190 -388
- package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
- package/{src/control/elevationProfile/ElevationProfile.ts → lib/js/control/elevationProfile/ElevationProfile.js} +56 -148
- package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
- package/{src/control/heightRuler/HeightRuler.ts → lib/js/control/heightRuler/HeightRuler.js} +4 -9
- package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
- package/{src/control/heightRuler/HeightRulerScene.ts → lib/js/control/heightRuler/HeightRulerScene.js} +47 -99
- package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
- package/{src/control/heightRuler/HeightRulerSwitcher.ts → lib/js/control/heightRuler/HeightRulerSwitcher.js} +2 -4
- package/{src/control/index.ts → lib/js/control/index.d.ts} +1 -18
- package/lib/js/control/index.js +28 -0
- package/lib/js/control/ruler/Ruler.d.ts +13 -0
- package/lib/js/control/ruler/Ruler.js +23 -0
- package/lib/js/control/ruler/RulerScene.d.ts +88 -0
- package/lib/js/control/ruler/RulerScene.js +324 -0
- package/lib/js/control/selection/Selection.d.ts +55 -0
- package/{src/control/selection/Selection.ts → lib/js/control/selection/Selection.js} +15 -34
- package/lib/js/control/selection/SelectionScene.d.ts +44 -0
- package/{src/control/selection/SelectionScene.ts → lib/js/control/selection/SelectionScene.js} +26 -113
- package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
- package/{src/control/timeline/TimelineControl.ts → lib/js/control/timeline/TimelineControl.js} +13 -43
- package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
- package/{src/control/timeline/TimelineModel.ts → lib/js/control/timeline/TimelineModel.js} +26 -74
- package/lib/js/control/timeline/TimelineView.d.ts +85 -0
- package/{src/control/timeline/TimelineView.ts → lib/js/control/timeline/TimelineView.js} +133 -281
- package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
- package/lib/js/control/timeline/timelineUtils.js +112 -0
- package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
- package/{src → lib/js}/control/visibleExtent/Segment.js +145 -698
- package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
- package/{src → lib/js}/control/visibleExtent/VisibleExtent.js +1 -18
- package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
- package/{src/control/visibleExtent/drawnode.ts → lib/js/control/visibleExtent/drawnode.js} +1 -28
- package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
- package/{src/ellipsoid/Ellipsoid.ts → lib/js/ellipsoid/Ellipsoid.js} +82 -267
- package/lib/js/ellipsoid/index.d.ts +3 -0
- package/lib/js/ellipsoid/index.js +3 -0
- package/lib/js/ellipsoid/wgs84.d.ts +6 -0
- package/{src/ellipsoid/wgs84.ts → lib/js/ellipsoid/wgs84.js} +1 -2
- package/lib/js/entity/BaseBillboard.d.ts +222 -0
- package/{src/entity/BaseBillboard.ts → lib/js/entity/BaseBillboard.js} +48 -165
- package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
- package/{src/entity/BaseBillboardHandler.ts → lib/js/entity/BaseBillboardHandler.js} +139 -365
- package/lib/js/entity/Billboard.d.ts +113 -0
- package/{src/entity/Billboard.ts → lib/js/entity/Billboard.js} +19 -83
- package/lib/js/entity/BillboardHandler.d.ts +15 -0
- package/{src/entity/BillboardHandler.ts → lib/js/entity/BillboardHandler.js} +27 -59
- package/lib/js/entity/Entity.d.ts +354 -0
- package/{src/entity/Entity.ts → lib/js/entity/Entity.js} +101 -373
- package/lib/js/entity/EntityCollection.d.ts +364 -0
- package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +51 -353
- package/lib/js/entity/GeoObject.d.ts +138 -0
- package/{src/entity/GeoObject.ts → lib/js/entity/GeoObject.js} +41 -146
- package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
- package/{src/entity/GeoObjectHandler.ts → lib/js/entity/GeoObjectHandler.js} +162 -423
- package/lib/js/entity/Geometry.d.ts +111 -0
- package/lib/js/entity/Geometry.js +283 -0
- package/lib/js/entity/GeometryHandler.d.ts +84 -0
- package/{src/entity/GeometryHandler.ts → lib/js/entity/GeometryHandler.js} +162 -657
- package/lib/js/entity/Label.d.ts +207 -0
- package/{src/entity/Label.ts → lib/js/entity/Label.js} +62 -164
- package/lib/js/entity/LabelHandler.d.ts +65 -0
- package/{src/entity/LabelHandler.ts → lib/js/entity/LabelHandler.js} +175 -408
- package/lib/js/entity/LabelWorker.d.ts +15 -0
- package/{src/entity/LabelWorker.ts → lib/js/entity/LabelWorker.js} +24 -45
- package/lib/js/entity/PointCloud.d.ts +179 -0
- package/{src/entity/PointCloud.ts → lib/js/entity/PointCloud.js} +65 -265
- package/lib/js/entity/PointCloudHandler.d.ts +42 -0
- package/{src/entity/PointCloudHandler.ts → lib/js/entity/PointCloudHandler.js} +19 -62
- package/lib/js/entity/Polyline.d.ts +337 -0
- package/{src/entity/Polyline.ts → lib/js/entity/Polyline.js} +289 -924
- package/lib/js/entity/PolylineHandler.d.ts +22 -0
- package/{src/entity/PolylineHandler.ts → lib/js/entity/PolylineHandler.js} +12 -37
- package/lib/js/entity/Ray.d.ts +133 -0
- package/{src/entity/Ray.ts → lib/js/entity/Ray.js} +26 -146
- package/lib/js/entity/RayHandler.d.ts +70 -0
- package/{src/entity/RayHandler.ts → lib/js/entity/RayHandler.js} +102 -342
- package/lib/js/entity/Strip.d.ts +127 -0
- package/{src/entity/Strip.ts → lib/js/entity/Strip.js} +102 -372
- package/lib/js/entity/StripHandler.d.ts +42 -0
- package/{src/entity/StripHandler.ts → lib/js/entity/StripHandler.js} +22 -74
- package/{src/entity/index.ts → lib/js/entity/index.d.ts} +1 -2
- package/lib/js/entity/index.js +11 -0
- package/lib/js/index.d.ts +33 -0
- package/lib/js/index.js +33 -0
- package/lib/js/input/KeyboardHandler.d.ts +33 -0
- package/{src/input/KeyboardHandler.ts → lib/js/input/KeyboardHandler.js} +45 -84
- package/lib/js/input/MouseHandler.d.ts +16 -0
- package/{src/input/MouseHandler.ts → lib/js/input/MouseHandler.js} +12 -36
- package/lib/js/input/TouchHandler.d.ts +11 -0
- package/{src/input/TouchHandler.ts → lib/js/input/TouchHandler.js} +11 -23
- package/lib/js/input/input.d.ts +3 -0
- package/{src/input/input.ts → lib/js/input/input.js} +1 -1
- package/lib/js/layer/BaseGeoImage.d.ts +145 -0
- package/{src/layer/BaseGeoImage.ts → lib/js/layer/BaseGeoImage.js} +70 -235
- package/lib/js/layer/CanvasTiles.d.ts +103 -0
- package/{src/layer/CanvasTiles.ts → lib/js/layer/CanvasTiles.js} +54 -146
- package/lib/js/layer/GeoImage.d.ts +61 -0
- package/{src/layer/GeoImage.ts → lib/js/layer/GeoImage.js} +24 -54
- package/lib/js/layer/GeoTexture2d.d.ts +17 -0
- package/lib/js/layer/GeoTexture2d.js +37 -0
- package/lib/js/layer/GeoVideo.d.ts +68 -0
- package/{src/layer/GeoVideo.ts → lib/js/layer/GeoVideo.js} +31 -61
- package/lib/js/layer/KML.d.ts +72 -0
- package/{src/layer/KML.ts → lib/js/layer/KML.js} +94 -138
- package/lib/js/layer/Layer.d.ts +401 -0
- package/{src/layer/Layer.ts → lib/js/layer/Layer.js} +92 -443
- package/lib/js/layer/Material.d.ts +34 -0
- package/{src/layer/Material.ts → lib/js/layer/Material.js} +9 -43
- package/lib/js/layer/Vector.d.ts +244 -0
- package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +147 -418
- package/lib/js/layer/WMS.d.ts +75 -0
- package/{src/layer/WMS.ts → lib/js/layer/WMS.js} +18 -100
- package/lib/js/layer/XYZ.d.ts +149 -0
- package/{src/layer/XYZ.ts → lib/js/layer/XYZ.js} +71 -171
- package/lib/js/layer/index.d.ts +11 -0
- package/lib/js/layer/index.js +11 -0
- package/lib/js/light/LightSource.d.ts +174 -0
- package/{src/light/LightSource.ts → lib/js/light/LightSource.js} +22 -131
- package/lib/js/math/Line2.d.ts +11 -0
- package/{src/math/Line2.ts → lib/js/math/Line2.js} +5 -15
- package/lib/js/math/Line3.d.ts +28 -0
- package/lib/js/math/Line3.js +85 -0
- package/lib/js/math/Mat3.d.ts +77 -0
- package/{src/math/Mat3.ts → lib/js/math/Mat3.js} +22 -51
- package/lib/js/math/Mat4.d.ts +195 -0
- package/{src/math/Mat4.ts → lib/js/math/Mat4.js} +53 -219
- package/lib/js/math/Plane.d.ts +20 -0
- package/{src/math/Plane.ts → lib/js/math/Plane.js} +26 -40
- package/lib/js/math/Quat.d.ts +373 -0
- package/{src/math/Quat.ts → lib/js/math/Quat.js} +106 -319
- package/lib/js/math/Ray.d.ts +76 -0
- package/{src/math/Ray.ts → lib/js/math/Ray.js} +21 -66
- package/lib/js/math/Vec2.d.ts +310 -0
- package/{src/math/Vec2.ts → lib/js/math/Vec2.js} +55 -121
- package/lib/js/math/Vec3.d.ts +472 -0
- package/{src/math/Vec3.ts → lib/js/math/Vec3.js} +103 -236
- package/lib/js/math/Vec4.d.ts +163 -0
- package/{src/math/Vec4.ts → lib/js/math/Vec4.js} +23 -79
- package/lib/js/math/coder.d.ts +51 -0
- package/{src/math/coder.ts → lib/js/math/coder.js} +14 -20
- package/lib/js/math/index.d.ts +11 -0
- package/lib/js/math/index.js +11 -0
- package/lib/js/math.d.ts +266 -0
- package/{src/math.ts → lib/js/math.js} +37 -85
- package/lib/js/mercator.d.ts +92 -0
- package/{src/mercator.ts → lib/js/mercator.js} +13 -37
- package/lib/js/proj/EPSG3857.d.ts +9 -0
- package/{src/proj/EPSG3857.ts → lib/js/proj/EPSG3857.js} +0 -2
- package/lib/js/proj/EPSG4326.d.ts +9 -0
- package/{src/proj/EPSG4326.ts → lib/js/proj/EPSG4326.js} +0 -2
- package/lib/js/proj/Proj.d.ts +43 -0
- package/{src/proj/Proj.ts → lib/js/proj/Proj.js} +4 -29
- package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
- package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
- package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
- package/{src/quadTree/EntityCollectionNode.ts → lib/js/quadTree/EntityCollectionNode.js} +83 -150
- package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
- package/lib/js/quadTree/Node.d.ts +61 -0
- package/{src/quadTree/Node.ts → lib/js/quadTree/Node.js} +140 -357
- package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
- package/{src/quadTree/QuadTreeStrategy.ts → lib/js/quadTree/QuadTreeStrategy.js} +13 -44
- package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
- package/lib/js/quadTree/index.d.ts +12 -0
- package/lib/js/quadTree/index.js +12 -0
- package/lib/js/quadTree/quadTree.d.ts +40 -0
- package/{src/quadTree/quadTree.ts → lib/js/quadTree/quadTree.js} +0 -9
- package/lib/js/renderer/Renderer.d.ts +311 -0
- package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +169 -611
- package/lib/js/renderer/RendererEvents.d.ts +237 -0
- package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +134 -471
- package/lib/js/scene/Axes.d.ts +12 -0
- package/lib/js/scene/Axes.js +59 -0
- package/lib/js/scene/BaseNode.d.ts +61 -0
- package/{src/scene/BaseNode.ts → lib/js/scene/BaseNode.js} +11 -57
- package/lib/js/scene/Planet.d.ts +623 -0
- package/{src/scene/Planet.ts → lib/js/scene/Planet.js} +251 -935
- package/lib/js/scene/RenderNode.d.ts +150 -0
- package/{src/scene/RenderNode.ts → lib/js/scene/RenderNode.js} +33 -138
- package/lib/js/scene/SkyBox.d.ts +13 -0
- package/{src/scene/SkyBox.ts → lib/js/scene/SkyBox.js} +16 -37
- package/{src/scene/index.ts → lib/js/scene/index.d.ts} +0 -1
- package/lib/js/scene/index.js +5 -0
- package/lib/js/segment/Segment.d.ts +278 -0
- package/{src/segment/Segment.ts → lib/js/segment/Segment.js} +242 -913
- package/lib/js/segment/SegmentLonLat.d.ts +48 -0
- package/{src/segment/SegmentLonLat.ts → lib/js/segment/SegmentLonLat.js} +58 -132
- package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
- package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
- package/lib/js/segment/Slice.d.ts +13 -0
- package/{src/segment/Slice.ts → lib/js/segment/Slice.js} +4 -22
- package/lib/js/segment/segmentHelper.d.ts +18 -0
- package/{src/segment/segmentHelper.ts → lib/js/segment/segmentHelper.js} +30 -88
- package/lib/js/shaders/atmos.d.ts +4 -0
- package/{src/shaders/atmos.ts → lib/js/shaders/atmos.js} +8 -26
- package/lib/js/shaders/billboard.d.ts +3 -0
- package/{src/shaders/billboard.ts → lib/js/shaders/billboard.js} +9 -18
- package/lib/js/shaders/bloom.d.ts +2 -0
- package/{src/shaders/bloom.ts → lib/js/shaders/bloom.js} +5 -8
- package/lib/js/shaders/blur.d.ts +3 -0
- package/{src/shaders/blur.ts → lib/js/shaders/blur.js} +11 -19
- package/lib/js/shaders/depth.d.ts +2 -0
- package/{src/shaders/depth.ts → lib/js/shaders/depth.js} +3 -6
- package/lib/js/shaders/drawnode.d.ts +8 -0
- package/{src/shaders/drawnode.ts → lib/js/shaders/drawnode.js} +23 -75
- package/lib/js/shaders/geoObject.d.ts +3 -0
- package/{src/shaders/geoObject.ts → lib/js/shaders/geoObject.js} +51 -63
- package/lib/js/shaders/label.d.ts +4 -0
- package/{src/shaders/label.ts → lib/js/shaders/label.js} +12 -25
- package/lib/js/shaders/lumFilter.d.ts +2 -0
- package/{src/shaders/lumFilter.ts → lib/js/shaders/lumFilter.js} +4 -7
- package/lib/js/shaders/pickingMask.d.ts +2 -0
- package/{src/shaders/pickingMask.ts → lib/js/shaders/pickingMask.js} +5 -8
- package/lib/js/shaders/pointCloud.d.ts +2 -0
- package/{src/shaders/pointCloud.ts → lib/js/shaders/pointCloud.js} +4 -7
- package/lib/js/shaders/polyline.d.ts +3 -0
- package/{src/shaders/polyline.ts → lib/js/shaders/polyline.js} +7 -22
- package/lib/js/shaders/ray.d.ts +2 -0
- package/{src/shaders/ray.ts → lib/js/shaders/ray.js} +4 -7
- package/lib/js/shaders/screenFrame.d.ts +2 -0
- package/{src/shaders/screenFrame.ts → lib/js/shaders/screenFrame.js} +5 -8
- package/lib/js/shaders/skybox.d.ts +2 -0
- package/{src/shaders/skybox.ts → lib/js/shaders/skybox.js} +10 -13
- package/lib/js/shaders/toneMapping.d.ts +2 -0
- package/{src/shaders/toneMapping.ts → lib/js/shaders/toneMapping.js} +5 -8
- package/lib/js/shaders/utils.d.ts +1 -0
- package/{src/shaders/utils.ts → lib/js/shaders/utils.js} +1 -1
- package/lib/js/terrain/BilTerrain.d.ts +18 -0
- package/{src/terrain/BilTerrain.ts → lib/js/terrain/BilTerrain.js} +21 -118
- package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
- package/{src/terrain/EmptyTerrain.ts → lib/js/terrain/EmptyTerrain.js} +20 -144
- package/lib/js/terrain/Geoid.d.ts +33 -0
- package/lib/js/terrain/Geoid.js +191 -0
- package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
- package/{src/terrain/GlobusTerrain.ts → lib/js/terrain/GlobusTerrain.js} +82 -239
- package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
- package/{src/terrain/MapboxTerrain.ts → lib/js/terrain/MapboxTerrain.js} +46 -215
- package/{src/terrain/index.ts → lib/js/terrain/index.d.ts} +0 -1
- package/lib/js/terrain/index.js +5 -0
- package/lib/js/ui/Button.d.ts +32 -0
- package/lib/js/ui/Button.js +78 -0
- package/lib/js/ui/ButtonGroup.d.ts +16 -0
- package/lib/js/ui/ButtonGroup.js +41 -0
- package/lib/js/ui/Dialog.d.ts +55 -0
- package/lib/js/ui/Dialog.js +173 -0
- package/lib/js/ui/Slider.d.ts +38 -0
- package/lib/js/ui/Slider.js +129 -0
- package/lib/js/ui/ToggleButton.d.ts +20 -0
- package/lib/js/ui/ToggleButton.js +42 -0
- package/lib/js/ui/View.d.ts +37 -0
- package/{src/ui/View.ts → lib/js/ui/View.js} +31 -77
- package/lib/js/ui/icons.d.ts +1 -0
- package/{src/ui/icons.ts → lib/js/ui/icons.js} +1 -1
- package/lib/js/utils/BaseWorker.d.ts +14 -0
- package/{src/utils/BaseWorker.ts → lib/js/utils/BaseWorker.js} +15 -28
- package/lib/js/utils/FontAtlas.d.ts +82 -0
- package/{src/utils/FontAtlas.ts → lib/js/utils/FontAtlas.js} +45 -181
- package/lib/js/utils/GeoImageCreator.d.ts +34 -0
- package/{src/utils/GeoImageCreator.ts → lib/js/utils/GeoImageCreator.js} +34 -91
- package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
- package/{src/utils/ImagesCacheManager.ts → lib/js/utils/ImagesCacheManager.js} +16 -38
- package/lib/js/utils/Loader.d.ts +63 -0
- package/lib/js/utils/Loader.js +156 -0
- package/lib/js/utils/NormalMapCreator.d.ts +52 -0
- package/{src/utils/NormalMapCreator.ts → lib/js/utils/NormalMapCreator.js} +64 -195
- package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
- package/{src/utils/PlainSegmentWorker.ts → lib/js/utils/PlainSegmentWorker.js} +24 -56
- package/lib/js/utils/TerrainWorker.d.ts +28 -0
- package/{src/utils/TerrainWorker.ts → lib/js/utils/TerrainWorker.js} +19 -56
- package/lib/js/utils/TextureAtlas.d.ts +113 -0
- package/{src/utils/TextureAtlas.ts → lib/js/utils/TextureAtlas.js} +40 -131
- package/lib/js/utils/VectorTileCreator.d.ts +18 -0
- package/{src/utils/VectorTileCreator.ts → lib/js/utils/VectorTileCreator.js} +61 -147
- package/lib/js/utils/colorTable.d.ts +3 -0
- package/{src/utils/colorTable.ts → lib/js/utils/colorTable.js} +2 -2
- package/lib/js/utils/earcut.d.ts +7 -0
- package/{src/utils/earcut.ts → lib/js/utils/earcut.js} +95 -223
- package/lib/js/utils/objParser.d.ts +24 -0
- package/{src/utils/objParser.ts → lib/js/utils/objParser.js} +38 -93
- package/lib/js/utils/shared.d.ts +267 -0
- package/{src/utils/shared.ts → lib/js/utils/shared.js} +184 -341
- package/lib/js/utils/units.d.ts +16 -0
- package/lib/js/utils/units.js +61 -0
- package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
- package/{src/webgl/BaseFramebuffer.ts → lib/js/webgl/BaseFramebuffer.js} +22 -59
- package/lib/js/webgl/Framebuffer.d.ts +69 -0
- package/{src/webgl/Framebuffer.ts → lib/js/webgl/Framebuffer.js} +30 -87
- package/lib/js/webgl/Handler.d.ts +473 -0
- package/{src/webgl/Handler.ts → lib/js/webgl/Handler.js} +175 -586
- package/lib/js/webgl/Multisample.d.ts +27 -0
- package/lib/js/webgl/Multisample.js +77 -0
- package/lib/js/webgl/Program.d.ts +159 -0
- package/{src/webgl/Program.ts → lib/js/webgl/Program.js} +73 -210
- package/lib/js/webgl/ProgramController.d.ts +86 -0
- package/{src/webgl/ProgramController.ts → lib/js/webgl/ProgramController.js} +11 -45
- package/{src/webgl/index.ts → lib/js/webgl/index.d.ts} +1 -8
- package/lib/js/webgl/index.js +6 -0
- package/lib/js/webgl/types.d.ts +9 -0
- package/{src/webgl/types.ts → lib/js/webgl/types.js} +5 -8
- package/lib/js/webgl/variableHandlers.d.ts +22 -0
- package/lib/js/webgl/variableHandlers.js +78 -0
- package/package.json +23 -34
- package/dist/@openglobus/og.esm.js +0 -2
- package/dist/@openglobus/og.esm.js.map +0 -1
- package/dist/@openglobus/og.umd.js +0 -2
- package/dist/@openglobus/og.umd.js.map +0 -1
- package/src/Deferred.ts +0 -17
- package/src/control/MouseWheelZoomControl.ts +0 -269
- package/src/control/ScaleControl.ts +0 -131
- package/src/control/SegmentBoundVisualization.ts +0 -50
- package/src/control/ShowFps.ts +0 -28
- package/src/control/ToggleWireframe.ts +0 -35
- package/src/control/ruler/Ruler.ts +0 -35
- package/src/control/ruler/RulerScene.ts +0 -437
- package/src/control/timeline/timelineUtils.ts +0 -133
- package/src/ellipsoid/index.ts +0 -4
- package/src/entity/Geometry.ts +0 -486
- package/src/index.ts +0 -173
- package/src/layer/GeoTexture2d.ts +0 -56
- package/src/layer/index.ts +0 -12
- package/src/math/Line3.ts +0 -162
- package/src/math/index.ts +0 -26
- package/src/quadTree/EPSG4326QuadTreeStrategy.ts +0 -24
- package/src/quadTree/EarthQuadTreeStrategy.ts +0 -28
- package/src/quadTree/MarsQuadTreeStrategy.ts +0 -25
- package/src/quadTree/Wgs84QuadTreeStrategy.ts +0 -22
- package/src/quadTree/index.ts +0 -14
- package/src/scene/Axes.ts +0 -78
- package/src/segment/SegmentLonLatWgs84.ts +0 -33
- package/src/terrain/Geoid.ts +0 -273
- package/src/ui/Button.ts +0 -121
- package/src/ui/ButtonGroup.ts +0 -63
- package/src/ui/Dialog.ts +0 -244
- package/src/ui/Slider.ts +0 -188
- package/src/ui/ToggleButton.ts +0 -68
- package/src/utils/Loader.ts +0 -247
- package/src/utils/units.ts +0 -78
- package/src/webgl/Multisample.ts +0 -153
- package/src/webgl/variableHandlers.ts +0 -114
- /package/{dist → lib}/@openglobus/og.css +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.js +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/night-4326.png +0 -0
- /package/{dist → lib}/@openglobus/res/night.png +0 -0
- /package/{dist → lib}/@openglobus/res/spec.png +0 -0
|
@@ -1,249 +1,45 @@
|
|
|
1
|
-
import {Events
|
|
2
|
-
import {input} from "../input/input";
|
|
3
|
-
import {KeyboardHandler} from "../input/KeyboardHandler";
|
|
4
|
-
import {MouseHandler
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
export type RendererEventsHandler = RendererEvents & EventsHandler<RendererEventsType>;
|
|
11
|
-
|
|
12
|
-
export function createRendererEvents(renderer: Renderer) {
|
|
1
|
+
import { Events } from "../Events";
|
|
2
|
+
import { input } from "../input/input";
|
|
3
|
+
import { KeyboardHandler } from "../input/KeyboardHandler";
|
|
4
|
+
import { MouseHandler } from "../input/MouseHandler";
|
|
5
|
+
import { TouchHandler } from "../input/TouchHandler";
|
|
6
|
+
import { Vec2 } from "../math/Vec2";
|
|
7
|
+
import { Vec3 } from "../math/Vec3";
|
|
8
|
+
export function createRendererEvents(renderer) {
|
|
13
9
|
return new RendererEvents(renderer);
|
|
14
10
|
}
|
|
15
|
-
|
|
16
|
-
export type RendererEventsType = [
|
|
17
|
-
"draw",
|
|
18
|
-
"postdraw",
|
|
19
|
-
"resize",
|
|
20
|
-
"resizeend",
|
|
21
|
-
"mouseenter",
|
|
22
|
-
"mouseleave",
|
|
23
|
-
"mousemove",
|
|
24
|
-
"mousestop",
|
|
25
|
-
"lclick",
|
|
26
|
-
"rclick",
|
|
27
|
-
"mclick",
|
|
28
|
-
"ldblclick",
|
|
29
|
-
"rdblclick",
|
|
30
|
-
"mdblclick",
|
|
31
|
-
"lup",
|
|
32
|
-
"rup",
|
|
33
|
-
"mup",
|
|
34
|
-
"ldown",
|
|
35
|
-
"rdown",
|
|
36
|
-
"mdown",
|
|
37
|
-
"lhold",
|
|
38
|
-
"rhold",
|
|
39
|
-
"mhold",
|
|
40
|
-
"mousewheel",
|
|
41
|
-
"touchstart",
|
|
42
|
-
"touchend",
|
|
43
|
-
"touchcancel",
|
|
44
|
-
"touchmove",
|
|
45
|
-
"doubletouch",
|
|
46
|
-
"touchleave",
|
|
47
|
-
"touchenter"
|
|
48
|
-
];
|
|
49
|
-
|
|
50
|
-
export interface IBaseInputState {
|
|
51
|
-
/** Current screen mouse X position. */
|
|
52
|
-
clientX: number;
|
|
53
|
-
/** Current screen mouse Y position. */
|
|
54
|
-
clientY: number;
|
|
55
|
-
/** Current screen mouse position. */
|
|
56
|
-
pos: Vec2;
|
|
57
|
-
/** Current touch X - coordinate. */
|
|
58
|
-
x: number;
|
|
59
|
-
/** Current touch Y - coordinate. */
|
|
60
|
-
y: number;
|
|
61
|
-
/** Current touch X - coordinate from 0 to 1 */
|
|
62
|
-
nx: number;
|
|
63
|
-
/** Current touch Y - coordinate from 0 to 1 */
|
|
64
|
-
ny: number;
|
|
65
|
-
/** Previous touch X coordinate. */
|
|
66
|
-
prev_x: number;
|
|
67
|
-
/** Previous touch Y coordinate. */
|
|
68
|
-
prev_y: number,
|
|
69
|
-
/** Screen touch position world direction. */
|
|
70
|
-
direction: Vec3;
|
|
71
|
-
/** Current touched(picking) object. */
|
|
72
|
-
pickingObject: any | null;
|
|
73
|
-
/** Renderer instance. */
|
|
74
|
-
renderer: Renderer;
|
|
75
|
-
/** Touching is moving now. */
|
|
76
|
-
moving: boolean;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
export interface IMouseState extends IBaseInputState {
|
|
80
|
-
/** Left mouse button has stopped pushing down right now.*/
|
|
81
|
-
leftButtonUp: boolean;
|
|
82
|
-
/** Right mouse button has stopped pushing down right now.*/
|
|
83
|
-
rightButtonUp: boolean;
|
|
84
|
-
/** Middle mouse button has stopped pushing down right now.*/
|
|
85
|
-
middleButtonUp: boolean;
|
|
86
|
-
/** Left mouse button has pushed now.*/
|
|
87
|
-
leftButtonDown: boolean;
|
|
88
|
-
/** Right mouse button has pushed now.*/
|
|
89
|
-
rightButtonDown: boolean;
|
|
90
|
-
/** Middle mouse button has pushed now.*/
|
|
91
|
-
middleButtonDown: boolean;
|
|
92
|
-
/** Left mouse button is pushing.*/
|
|
93
|
-
leftButtonHold: boolean;
|
|
94
|
-
/** Right mouse button is pushing.*/
|
|
95
|
-
rightButtonHold: boolean;
|
|
96
|
-
/** Middle mouse button is pushing.*/
|
|
97
|
-
middleButtonHold: boolean;
|
|
98
|
-
/** Left mouse button has clicked twice now.*/
|
|
99
|
-
leftButtonDoubleClick: boolean;
|
|
100
|
-
/** Right mouse button has clicked twice now.*/
|
|
101
|
-
rightButtonDoubleClick: boolean;
|
|
102
|
-
/** Middle mouse button has clicked twice now.*/
|
|
103
|
-
middleButtonDoubleClick: boolean;
|
|
104
|
-
/** Left mouse button has clicked now. */
|
|
105
|
-
leftButtonClick: boolean;
|
|
106
|
-
/** Right mouse button has clicked now. */
|
|
107
|
-
rightButtonClick: boolean;
|
|
108
|
-
/** Middle mouse button has clicked now. */
|
|
109
|
-
middleButtonClick: boolean;
|
|
110
|
-
/** Mouse has just stopped now. */
|
|
111
|
-
justStopped: boolean;
|
|
112
|
-
/** Mose double click delay response time.*/
|
|
113
|
-
doubleClickDelay: number;
|
|
114
|
-
/** Mose click delay response time.*/
|
|
115
|
-
clickDelay: number;
|
|
116
|
-
/** Mouse wheel. */
|
|
117
|
-
wheelDelta: number;
|
|
118
|
-
/** JavaScript mouse system event message. */
|
|
119
|
-
sys: MouseEvent | null;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
export interface ITouchState extends IBaseInputState {
|
|
123
|
-
/** Touch has ended right now.*/
|
|
124
|
-
touchEnd: boolean;
|
|
125
|
-
/** Touch has started right now.*/
|
|
126
|
-
touchStart: boolean;
|
|
127
|
-
/** Touch canceled.*/
|
|
128
|
-
touchCancel: boolean;
|
|
129
|
-
/** Touched twice.*/
|
|
130
|
-
doubleTouch: boolean;
|
|
131
|
-
/** Double touching responce delay.*/
|
|
132
|
-
doubleTouchDelay: number;
|
|
133
|
-
/** Double touching responce radius in screen pixels.*/
|
|
134
|
-
doubleTouchRadius: number;
|
|
135
|
-
/** JavaScript mouse system event message. */
|
|
136
|
-
sys: TouchEventExt | null;
|
|
137
|
-
}
|
|
138
|
-
|
|
139
11
|
const LB_M = 0b0001;
|
|
140
12
|
const RB_M = 0b0010;
|
|
141
13
|
const MB_M = 0b0100;
|
|
142
|
-
|
|
143
14
|
let __skipFrames__ = 0;
|
|
144
15
|
const MAX_SKIP_FRAMES_ON_BLACK = 15;
|
|
145
|
-
|
|
146
|
-
const
|
|
147
|
-
const NOTBLACK = (c: NumberArray3 | Uint8Array): boolean => !!(c[0] || c[1] || c[2]);
|
|
148
|
-
|
|
16
|
+
const ISBLACK = (c) => !(c[0] || c[1] || c[2]);
|
|
17
|
+
const NOTBLACK = (c) => !!(c[0] || c[1] || c[2]);
|
|
149
18
|
/**
|
|
150
19
|
* Stores current picking rgb color.
|
|
151
20
|
* @type {Array.<number>} - (exactly 3 entries)
|
|
152
21
|
*/
|
|
153
22
|
let _currPickingColor = new Uint8Array(4);
|
|
154
23
|
let _tempCurrPickingColor = new Uint8Array(4);
|
|
155
|
-
|
|
156
24
|
/**
|
|
157
25
|
* Stores previous picked rgb color.
|
|
158
26
|
* @type {Array.<number>} - (exactly 3 entries)
|
|
159
27
|
*/
|
|
160
28
|
let _prevPickingColor = new Uint8Array(4);
|
|
161
|
-
|
|
162
29
|
/**
|
|
163
30
|
* Renderer events handler.
|
|
164
31
|
* @class
|
|
165
32
|
* @param {Renderer} renderer - Renderer object, events that works for.
|
|
166
33
|
*/
|
|
167
|
-
class RendererEvents extends Events
|
|
168
|
-
|
|
169
|
-
* Assigned renderer.
|
|
170
|
-
* @public
|
|
171
|
-
* @type {Renderer}
|
|
172
|
-
*/
|
|
173
|
-
public renderer: Renderer;
|
|
174
|
-
|
|
175
|
-
/**
|
|
176
|
-
* Low level touch events handler.
|
|
177
|
-
* @protected
|
|
178
|
-
* @type {TouchHandler}
|
|
179
|
-
*/
|
|
180
|
-
protected _touchHandler: TouchHandler;
|
|
181
|
-
|
|
182
|
-
/**
|
|
183
|
-
* Low level mouse events handler.
|
|
184
|
-
* @protected
|
|
185
|
-
* @type {MouseHandler}
|
|
186
|
-
*/
|
|
187
|
-
protected _mouseHandler: MouseHandler;
|
|
188
|
-
|
|
189
|
-
/**
|
|
190
|
-
* Low level keyboard events handler.
|
|
191
|
-
* @protected
|
|
192
|
-
* @type {KeyboardHandler}
|
|
193
|
-
*/
|
|
194
|
-
protected _keyboardHandler: KeyboardHandler;
|
|
195
|
-
|
|
196
|
-
protected _active: boolean;
|
|
197
|
-
|
|
198
|
-
public clickRadius: number;
|
|
199
|
-
|
|
200
|
-
/**
|
|
201
|
-
* Current mouse state.
|
|
202
|
-
* @public
|
|
203
|
-
* @type {IMouseState}
|
|
204
|
-
*/
|
|
205
|
-
public mouseState: IMouseState;
|
|
206
|
-
|
|
207
|
-
/**
|
|
208
|
-
* Current touch state.
|
|
209
|
-
* @public
|
|
210
|
-
* @type {ITouchState}
|
|
211
|
-
*/
|
|
212
|
-
public touchState: ITouchState;
|
|
213
|
-
|
|
214
|
-
protected _dblTchCoords: Vec2;
|
|
215
|
-
protected _oneTouchStart: boolean;
|
|
216
|
-
protected _dblTchBegins: number;
|
|
217
|
-
protected _mousestopThread: any | null;
|
|
218
|
-
protected _ldblClkBegins: number;
|
|
219
|
-
protected _rdblClkBegins: number;
|
|
220
|
-
protected _mdblClkBegins: number;
|
|
221
|
-
protected _lClkBegins: number;
|
|
222
|
-
protected _rClkBegins: number;
|
|
223
|
-
protected _mClkBegins: number;
|
|
224
|
-
protected _lclickX: number;
|
|
225
|
-
protected _lclickY: number;
|
|
226
|
-
protected _rclickX: number;
|
|
227
|
-
protected _rclickY: number;
|
|
228
|
-
protected _mclickX: number;
|
|
229
|
-
protected _mclickY: number;
|
|
230
|
-
|
|
231
|
-
constructor(renderer: Renderer) {
|
|
232
|
-
|
|
34
|
+
class RendererEvents extends Events {
|
|
35
|
+
constructor(renderer) {
|
|
233
36
|
super(RENDERER_EVENTS);
|
|
234
|
-
|
|
235
37
|
this.renderer = renderer;
|
|
236
|
-
|
|
237
|
-
this.
|
|
238
|
-
|
|
239
|
-
this._mouseHandler = new MouseHandler(renderer.handler.canvas!);
|
|
240
|
-
|
|
38
|
+
this._touchHandler = new TouchHandler(renderer.handler.canvas);
|
|
39
|
+
this._mouseHandler = new MouseHandler(renderer.handler.canvas);
|
|
241
40
|
this._keyboardHandler = new KeyboardHandler();
|
|
242
|
-
|
|
243
41
|
this._active = true;
|
|
244
|
-
|
|
245
42
|
this.clickRadius = 15;
|
|
246
|
-
|
|
247
43
|
this.mouseState = {
|
|
248
44
|
clientX: 0,
|
|
249
45
|
clientY: 0,
|
|
@@ -279,7 +75,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
279
75
|
pickingObject: null,
|
|
280
76
|
renderer: renderer
|
|
281
77
|
};
|
|
282
|
-
|
|
283
78
|
this.touchState = {
|
|
284
79
|
moving: false,
|
|
285
80
|
touchEnd: false,
|
|
@@ -302,7 +97,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
302
97
|
pickingObject: null,
|
|
303
98
|
renderer: renderer
|
|
304
99
|
};
|
|
305
|
-
|
|
306
100
|
this._dblTchCoords = new Vec2();
|
|
307
101
|
this._oneTouchStart = false;
|
|
308
102
|
this._dblTchBegins = 0;
|
|
@@ -320,327 +114,276 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
320
114
|
this._mclickX = 0;
|
|
321
115
|
this._mclickY = 0;
|
|
322
116
|
}
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
ts = this.touchState;
|
|
327
|
-
return (
|
|
328
|
-
ms.moving ||
|
|
117
|
+
pointerEvent() {
|
|
118
|
+
let ms = this.mouseState, ts = this.touchState;
|
|
119
|
+
return (ms.moving ||
|
|
329
120
|
ms.justStopped ||
|
|
330
121
|
ts.moving ||
|
|
331
122
|
ts.touchStart ||
|
|
332
123
|
ts.touchEnd ||
|
|
333
|
-
ms.wheelDelta !== 0
|
|
334
|
-
)
|
|
124
|
+
ms.wheelDelta !== 0);
|
|
335
125
|
}
|
|
336
|
-
|
|
337
|
-
public get active(): boolean {
|
|
126
|
+
get active() {
|
|
338
127
|
return this._active;
|
|
339
128
|
}
|
|
340
|
-
|
|
341
|
-
public set active(isActive: boolean) {
|
|
129
|
+
set active(isActive) {
|
|
342
130
|
this._active = isActive;
|
|
343
131
|
this._keyboardHandler.setActivity(isActive);
|
|
344
132
|
}
|
|
345
|
-
|
|
346
133
|
/**
|
|
347
134
|
* Used in render node frame.
|
|
348
135
|
* @public
|
|
349
136
|
*/
|
|
350
|
-
|
|
137
|
+
handleEvents() {
|
|
351
138
|
if (this._active) {
|
|
352
|
-
this.mouseState.direction = this.renderer.activeCamera
|
|
353
|
-
this.mouseState.x,
|
|
354
|
-
this.mouseState.y
|
|
355
|
-
);
|
|
139
|
+
this.mouseState.direction = this.renderer.activeCamera.unproject(this.mouseState.x, this.mouseState.y);
|
|
356
140
|
//
|
|
357
141
|
// TODO: Replace in some other place with a thought that we do
|
|
358
142
|
// not need to make unproject when we do not make touching
|
|
359
|
-
this.touchState.direction = this.renderer.activeCamera
|
|
360
|
-
this.touchState.x,
|
|
361
|
-
this.touchState.y
|
|
362
|
-
);
|
|
363
|
-
|
|
143
|
+
this.touchState.direction = this.renderer.activeCamera.unproject(this.touchState.x, this.touchState.y);
|
|
364
144
|
this._keyboardHandler.handleEvents();
|
|
365
145
|
this.handleMouseEvents();
|
|
366
146
|
this.handleTouchEvents();
|
|
367
147
|
this.entityPickingEvents();
|
|
368
148
|
}
|
|
369
149
|
}
|
|
370
|
-
|
|
371
|
-
public override on(name: string, p0: EventCallback | number, p1?: number | EventCallback, p2?: any, keyPriority?: number) {
|
|
150
|
+
on(name, p0, p1, p2, keyPriority) {
|
|
372
151
|
if (name === "keypress" || name === "charkeypress" || name === "keyfree") {
|
|
373
|
-
this._keyboardHandler.addEvent(name, p0
|
|
374
|
-
}
|
|
375
|
-
|
|
152
|
+
this._keyboardHandler.addEvent(name, p0, p1, p2, keyPriority);
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
super.on(name, p0, p1, p2);
|
|
376
156
|
}
|
|
377
157
|
}
|
|
378
|
-
|
|
379
|
-
public override off(name: string, p1?: EventCallback | number | null, p2?: EventCallback) {
|
|
158
|
+
off(name, p1, p2) {
|
|
380
159
|
if (name === "keypress" || name === "charkeypress" || name === "keyfree") {
|
|
381
|
-
this._keyboardHandler.removeEvent(name, p1
|
|
382
|
-
}
|
|
383
|
-
|
|
160
|
+
this._keyboardHandler.removeEvent(name, p1, p2);
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
super.off(name, p1);
|
|
384
164
|
}
|
|
385
165
|
}
|
|
386
|
-
|
|
387
166
|
/**
|
|
388
167
|
* Check key is pressed.
|
|
389
168
|
* @public
|
|
390
169
|
* @param {number} keyCode - Key code
|
|
391
170
|
* @return {boolean}
|
|
392
171
|
*/
|
|
393
|
-
|
|
172
|
+
isKeyPressed(keyCode) {
|
|
394
173
|
return this._keyboardHandler.isKeyPressed(keyCode);
|
|
395
174
|
}
|
|
396
|
-
|
|
397
|
-
public releaseKeys() {
|
|
175
|
+
releaseKeys() {
|
|
398
176
|
this._keyboardHandler.releaseKeys();
|
|
399
177
|
}
|
|
400
|
-
|
|
401
178
|
/**
|
|
402
179
|
* Renderer events initialization.
|
|
403
180
|
* @public
|
|
404
181
|
*/
|
|
405
|
-
|
|
182
|
+
initialize() {
|
|
406
183
|
this._mouseHandler.setEvent("mouseup", this, this.onMouseUp);
|
|
407
184
|
this._mouseHandler.setEvent("mousemove", this, this.onMouseMove);
|
|
408
185
|
this._mouseHandler.setEvent("mousedown", this, this.onMouseDown);
|
|
409
186
|
this._mouseHandler.setEvent("mousewheel", this, this.onMouseWheel);
|
|
410
187
|
this._mouseHandler.setEvent("mouseleave", this, this.onMouseLeave);
|
|
411
188
|
this._mouseHandler.setEvent("mouseenter", this, this.onMouseEnter);
|
|
412
|
-
|
|
413
189
|
this._touchHandler.setEvent("touchstart", this, this.onTouchStart);
|
|
414
190
|
this._touchHandler.setEvent("touchend", this, this.onTouchEnd);
|
|
415
191
|
this._touchHandler.setEvent("touchcancel", this, this.onTouchCancel);
|
|
416
192
|
this._touchHandler.setEvent("touchmove", this, this.onTouchMove);
|
|
417
193
|
}
|
|
418
|
-
|
|
419
194
|
/**
|
|
420
195
|
* @protected
|
|
421
196
|
*/
|
|
422
|
-
|
|
197
|
+
onMouseWheel(event) {
|
|
423
198
|
this.mouseState.sys = event;
|
|
424
199
|
this.mouseState.wheelDelta = event.wheelDelta || 0;
|
|
425
200
|
}
|
|
426
|
-
|
|
427
|
-
public updateButtonsStates(buttons: number) {
|
|
201
|
+
updateButtonsStates(buttons) {
|
|
428
202
|
let ms = this.mouseState;
|
|
429
203
|
if ((buttons & LB_M) && ms.leftButtonDown) {
|
|
430
204
|
ms.leftButtonDown = true;
|
|
431
|
-
}
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
432
207
|
ms.leftButtonHold = false;
|
|
433
208
|
ms.leftButtonDown = false;
|
|
434
209
|
}
|
|
435
|
-
|
|
436
210
|
if ((buttons & RB_M) && ms.rightButtonDown) {
|
|
437
211
|
ms.rightButtonDown = true;
|
|
438
|
-
}
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
439
214
|
ms.rightButtonHold = false;
|
|
440
215
|
ms.rightButtonDown = false;
|
|
441
216
|
}
|
|
442
|
-
|
|
443
217
|
if ((buttons & MB_M) && ms.middleButtonDown) {
|
|
444
218
|
ms.middleButtonDown = true;
|
|
445
|
-
}
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
446
221
|
ms.middleButtonHold = false;
|
|
447
222
|
ms.middleButtonDown = false;
|
|
448
223
|
}
|
|
449
224
|
}
|
|
450
|
-
|
|
451
|
-
protected onMouseMove(sys: MouseEvent, event?: MouseHandlerEvent) {
|
|
225
|
+
onMouseMove(sys, event) {
|
|
452
226
|
let ms = this.mouseState;
|
|
453
227
|
this.updateButtonsStates(sys.buttons);
|
|
454
228
|
ms.sys = sys;
|
|
455
|
-
|
|
456
|
-
let ex = event!.clientX,
|
|
457
|
-
ey = event!.clientY,
|
|
458
|
-
r = this.clickRadius;
|
|
459
|
-
|
|
229
|
+
let ex = event.clientX, ey = event.clientY, r = this.clickRadius;
|
|
460
230
|
if (Math.abs(this._lclickX - ex) >= r && Math.abs(this._lclickY - ey) >= r) {
|
|
461
231
|
this._ldblClkBegins = 0;
|
|
462
232
|
this._lClkBegins = 0;
|
|
463
233
|
}
|
|
464
|
-
|
|
465
234
|
if (Math.abs(this._rclickX - ex) >= r && Math.abs(this._rclickY - ey) >= r) {
|
|
466
235
|
this._rdblClkBegins = 0;
|
|
467
236
|
this._rClkBegins = 0;
|
|
468
237
|
}
|
|
469
|
-
|
|
470
238
|
if (Math.abs(this._mclickX - ex) >= r && Math.abs(this._mclickY - ey) >= r) {
|
|
471
239
|
this._mdblClkBegins = 0;
|
|
472
240
|
this._mClkBegins = 0;
|
|
473
241
|
}
|
|
474
|
-
|
|
475
|
-
if (ms.clientX === event!.clientX && ms.clientY === event!.clientY) {
|
|
242
|
+
if (ms.clientX === event.clientX && ms.clientY === event.clientY) {
|
|
476
243
|
return;
|
|
477
244
|
}
|
|
478
|
-
|
|
479
|
-
ms.
|
|
480
|
-
ms.clientY = event!.clientY;
|
|
481
|
-
|
|
245
|
+
ms.clientX = event.clientX;
|
|
246
|
+
ms.clientY = event.clientY;
|
|
482
247
|
let h = this.renderer.handler;
|
|
483
|
-
|
|
484
|
-
ms.pos.
|
|
485
|
-
ms.
|
|
486
|
-
|
|
487
|
-
ms.nx = ms.x / h.canvas!.width;
|
|
488
|
-
ms.ny = ms.y / h.canvas!.height;
|
|
489
|
-
|
|
248
|
+
ms.pos.x = ms.x = event.clientX * h.pixelRatio;
|
|
249
|
+
ms.pos.y = ms.y = event.clientY * h.pixelRatio;
|
|
250
|
+
ms.nx = ms.x / h.canvas.width;
|
|
251
|
+
ms.ny = ms.y / h.canvas.height;
|
|
490
252
|
ms.moving = true;
|
|
491
|
-
|
|
492
253
|
//dispatch stop mouse event
|
|
493
254
|
clearTimeout(this._mousestopThread);
|
|
494
255
|
this._mousestopThread = setTimeout(function () {
|
|
495
256
|
ms.justStopped = true;
|
|
496
257
|
}, 100);
|
|
497
258
|
}
|
|
498
|
-
|
|
499
|
-
protected onMouseLeave(sys: MouseEvent) {
|
|
259
|
+
onMouseLeave(sys) {
|
|
500
260
|
this.mouseState.sys = sys;
|
|
501
|
-
this.dispatch(
|
|
261
|
+
this.dispatch(this.mouseleave, this.mouseState);
|
|
502
262
|
}
|
|
503
|
-
|
|
504
|
-
protected onMouseEnter(sys: MouseEvent) {
|
|
263
|
+
onMouseEnter(sys) {
|
|
505
264
|
this.mouseState.sys = sys;
|
|
506
|
-
this.dispatch(
|
|
265
|
+
this.dispatch(this.mouseenter, this.mouseState);
|
|
507
266
|
}
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
if (event!.button === input.MB_LEFT) {
|
|
267
|
+
onMouseDown(sys, event) {
|
|
268
|
+
if (event.button === input.MB_LEFT) {
|
|
511
269
|
this._lClkBegins = window.performance.now();
|
|
512
|
-
this._lclickX = event
|
|
513
|
-
this._lclickY = event
|
|
270
|
+
this._lclickX = event.clientX;
|
|
271
|
+
this._lclickY = event.clientY;
|
|
514
272
|
this.mouseState.sys = sys;
|
|
515
273
|
this.mouseState.leftButtonDown = true;
|
|
516
|
-
}
|
|
274
|
+
}
|
|
275
|
+
else if (event.button === input.MB_RIGHT) {
|
|
517
276
|
this._rClkBegins = window.performance.now();
|
|
518
|
-
this._rclickX = event
|
|
519
|
-
this._rclickY = event
|
|
277
|
+
this._rclickX = event.clientX;
|
|
278
|
+
this._rclickY = event.clientY;
|
|
520
279
|
this.mouseState.sys = sys;
|
|
521
280
|
this.mouseState.rightButtonDown = true;
|
|
522
|
-
}
|
|
281
|
+
}
|
|
282
|
+
else if (event.button === input.MB_MIDDLE) {
|
|
523
283
|
this._mClkBegins = window.performance.now();
|
|
524
|
-
this._mclickX = event
|
|
525
|
-
this._mclickY = event
|
|
284
|
+
this._mclickX = event.clientX;
|
|
285
|
+
this._mclickY = event.clientY;
|
|
526
286
|
this.mouseState.sys = sys;
|
|
527
287
|
this.mouseState.middleButtonDown = true;
|
|
528
288
|
}
|
|
529
289
|
}
|
|
530
|
-
|
|
531
|
-
protected onMouseUp(sys: MouseEvent, event?: MouseHandlerEvent) {
|
|
290
|
+
onMouseUp(sys, event) {
|
|
532
291
|
let ms = this.mouseState;
|
|
533
292
|
ms.sys = sys;
|
|
534
293
|
let t = window.performance.now();
|
|
535
|
-
|
|
536
|
-
if (event!.button === input.MB_LEFT) {
|
|
294
|
+
if (event.button === input.MB_LEFT) {
|
|
537
295
|
ms.leftButtonDown = false;
|
|
538
296
|
ms.leftButtonUp = true;
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
Math.abs(this._lclickY - event!.clientY) < this.clickRadius &&
|
|
543
|
-
t - this._lClkBegins <= ms.clickDelay
|
|
544
|
-
) {
|
|
297
|
+
if (Math.abs(this._lclickX - event.clientX) < this.clickRadius &&
|
|
298
|
+
Math.abs(this._lclickY - event.clientY) < this.clickRadius &&
|
|
299
|
+
t - this._lClkBegins <= ms.clickDelay) {
|
|
545
300
|
if (this._ldblClkBegins) {
|
|
546
301
|
let deltatime = window.performance.now() - this._ldblClkBegins;
|
|
547
302
|
if (deltatime <= ms.doubleClickDelay) {
|
|
548
303
|
ms.leftButtonDoubleClick = true;
|
|
549
304
|
}
|
|
550
305
|
this._ldblClkBegins = 0;
|
|
551
|
-
}
|
|
306
|
+
}
|
|
307
|
+
else {
|
|
552
308
|
this._ldblClkBegins = window.performance.now();
|
|
553
309
|
}
|
|
554
|
-
|
|
555
310
|
ms.leftButtonClick = true;
|
|
556
311
|
this._lClkBegins = 0;
|
|
557
312
|
}
|
|
558
|
-
}
|
|
313
|
+
}
|
|
314
|
+
else if (event.button === input.MB_RIGHT) {
|
|
559
315
|
ms.rightButtonDown = false;
|
|
560
316
|
ms.rightButtonUp = true;
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
Math.abs(this._rclickY - event!.clientY) < this.clickRadius &&
|
|
565
|
-
t - this._rClkBegins <= ms.clickDelay
|
|
566
|
-
) {
|
|
317
|
+
if (Math.abs(this._rclickX - event.clientX) < this.clickRadius &&
|
|
318
|
+
Math.abs(this._rclickY - event.clientY) < this.clickRadius &&
|
|
319
|
+
t - this._rClkBegins <= ms.clickDelay) {
|
|
567
320
|
if (this._rdblClkBegins) {
|
|
568
321
|
let deltatime = window.performance.now() - this._rdblClkBegins;
|
|
569
322
|
if (deltatime <= ms.doubleClickDelay) {
|
|
570
323
|
ms.rightButtonDoubleClick = true;
|
|
571
324
|
}
|
|
572
325
|
this._rdblClkBegins = 0;
|
|
573
|
-
}
|
|
326
|
+
}
|
|
327
|
+
else {
|
|
574
328
|
this._rdblClkBegins = window.performance.now();
|
|
575
329
|
}
|
|
576
|
-
|
|
577
330
|
ms.rightButtonClick = true;
|
|
578
331
|
this._rClkBegins = 0;
|
|
579
332
|
}
|
|
580
|
-
}
|
|
333
|
+
}
|
|
334
|
+
else if (event.button === input.MB_MIDDLE) {
|
|
581
335
|
ms.middleButtonDown = false;
|
|
582
336
|
ms.middleButtonUp = true;
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
Math.abs(this._mclickY - event!.clientY) < this.clickRadius &&
|
|
587
|
-
t - this._mClkBegins <= ms.clickDelay
|
|
588
|
-
) {
|
|
337
|
+
if (Math.abs(this._mclickX - event.clientX) < this.clickRadius &&
|
|
338
|
+
Math.abs(this._mclickY - event.clientY) < this.clickRadius &&
|
|
339
|
+
t - this._mClkBegins <= ms.clickDelay) {
|
|
589
340
|
if (this._mdblClkBegins) {
|
|
590
341
|
let deltatime = window.performance.now() - this._mdblClkBegins;
|
|
591
342
|
if (deltatime <= ms.doubleClickDelay) {
|
|
592
343
|
ms.middleButtonDoubleClick = true;
|
|
593
344
|
}
|
|
594
345
|
this._mdblClkBegins = 0;
|
|
595
|
-
}
|
|
346
|
+
}
|
|
347
|
+
else {
|
|
596
348
|
this._mdblClkBegins = window.performance.now();
|
|
597
349
|
}
|
|
598
|
-
|
|
599
350
|
ms.middleButtonClick = true;
|
|
600
351
|
this._mClkBegins = 0;
|
|
601
352
|
}
|
|
602
353
|
}
|
|
603
354
|
}
|
|
604
|
-
|
|
605
|
-
protected onTouchStart(event: TouchEventExt) {
|
|
355
|
+
onTouchStart(event) {
|
|
606
356
|
let ts = this.touchState;
|
|
607
357
|
ts.sys = event;
|
|
608
|
-
|
|
609
|
-
ts.
|
|
610
|
-
ts.clientY = event.touches.item(0)!.clientY - event.offsetTop;
|
|
611
|
-
|
|
358
|
+
ts.clientX = event.touches.item(0).clientX - event.offsetLeft;
|
|
359
|
+
ts.clientY = event.touches.item(0).clientY - event.offsetTop;
|
|
612
360
|
let h = this.renderer.handler;
|
|
613
|
-
|
|
614
361
|
ts.pos.x = ts.x = ts.clientX * h.pixelRatio;
|
|
615
362
|
ts.pos.y = ts.y = ts.clientY * h.pixelRatio;
|
|
616
|
-
|
|
617
|
-
ts.
|
|
618
|
-
ts.ny = ts.y / h.canvas!.height;
|
|
363
|
+
ts.nx = ts.x / h.canvas.width;
|
|
364
|
+
ts.ny = ts.y / h.canvas.height;
|
|
619
365
|
ts.prev_x = ts.x;
|
|
620
366
|
ts.prev_y = ts.y;
|
|
621
367
|
ts.touchStart = true;
|
|
622
|
-
|
|
623
368
|
if (event.touches.length === 1) {
|
|
624
369
|
this._dblTchCoords.x = ts.x;
|
|
625
370
|
this._dblTchCoords.y = ts.y;
|
|
626
371
|
this._oneTouchStart = true;
|
|
627
|
-
}
|
|
372
|
+
}
|
|
373
|
+
else {
|
|
628
374
|
this._oneTouchStart = false;
|
|
629
375
|
}
|
|
630
376
|
}
|
|
631
|
-
|
|
632
377
|
/**
|
|
633
378
|
* @protected
|
|
634
379
|
*/
|
|
635
|
-
|
|
380
|
+
onTouchEnd(event) {
|
|
636
381
|
let ts = this.touchState;
|
|
637
382
|
ts.sys = event;
|
|
638
383
|
ts.touchEnd = true;
|
|
639
|
-
|
|
640
384
|
if (event.touches.length === 0) {
|
|
641
385
|
ts.prev_x = ts.x;
|
|
642
386
|
ts.prev_y = ts.y;
|
|
643
|
-
|
|
644
387
|
if (this._oneTouchStart) {
|
|
645
388
|
if (this._dblTchBegins) {
|
|
646
389
|
let deltatime = window.performance.now() - this._dblTchBegins;
|
|
@@ -654,83 +397,61 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
654
397
|
}
|
|
655
398
|
}
|
|
656
399
|
}
|
|
657
|
-
|
|
658
|
-
protected onTouchCancel(event: TouchEventExt) {
|
|
400
|
+
onTouchCancel(event) {
|
|
659
401
|
let ts = this.touchState;
|
|
660
402
|
ts.sys = event;
|
|
661
403
|
ts.touchCancel = true;
|
|
662
404
|
}
|
|
663
|
-
|
|
664
|
-
protected onTouchMove(event: TouchEventExt) {
|
|
405
|
+
onTouchMove(event) {
|
|
665
406
|
let ts = this.touchState;
|
|
666
|
-
|
|
667
|
-
ts.
|
|
668
|
-
ts.clientY = event.touches.item(0)!.clientY - event.offsetTop;
|
|
669
|
-
|
|
407
|
+
ts.clientX = event.touches.item(0).clientX - event.offsetLeft;
|
|
408
|
+
ts.clientY = event.touches.item(0).clientY - event.offsetTop;
|
|
670
409
|
let h = this.renderer.handler;
|
|
671
|
-
|
|
672
410
|
ts.x = ts.clientX * h.pixelRatio;
|
|
673
411
|
ts.y = ts.clientY * h.pixelRatio;
|
|
674
|
-
|
|
675
|
-
ts.
|
|
676
|
-
ts.ny = ts.y / h.canvas!.height;
|
|
677
|
-
|
|
412
|
+
ts.nx = ts.x / h.canvas.width;
|
|
413
|
+
ts.ny = ts.y / h.canvas.height;
|
|
678
414
|
ts.sys = event;
|
|
679
415
|
ts.moving = true;
|
|
680
|
-
|
|
681
|
-
let
|
|
682
|
-
let dY = ts.y - ts.prev_y
|
|
416
|
+
let dX = ts.x - ts.prev_x;
|
|
417
|
+
let dY = ts.y - ts.prev_y;
|
|
683
418
|
if (Math.abs(dX) > 9 || Math.abs(dY) > 9) {
|
|
684
419
|
this._dblTchBegins = 0;
|
|
685
420
|
this._oneTouchStart = false;
|
|
686
421
|
}
|
|
687
422
|
}
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
let ts = this.touchState,
|
|
691
|
-
ms = this.mouseState;
|
|
692
|
-
|
|
423
|
+
entityPickingEvents() {
|
|
424
|
+
let ts = this.touchState, ms = this.mouseState;
|
|
693
425
|
if (!(ms.leftButtonHold || ms.rightButtonHold || ms.middleButtonHold)) {
|
|
694
|
-
|
|
695
426
|
let r = this.renderer;
|
|
696
|
-
let c = _currPickingColor,
|
|
697
|
-
p = _prevPickingColor,
|
|
698
|
-
t = _tempCurrPickingColor;
|
|
699
|
-
|
|
427
|
+
let c = _currPickingColor, p = _prevPickingColor, t = _tempCurrPickingColor;
|
|
700
428
|
if (ts.x || ts.y) {
|
|
701
429
|
r.readPickingColor(ts.nx, 1 - ts.ny, t);
|
|
702
|
-
}
|
|
430
|
+
}
|
|
431
|
+
else {
|
|
703
432
|
r.readPickingColor(ms.nx, 1 - ms.ny, t);
|
|
704
433
|
}
|
|
705
|
-
|
|
706
434
|
// current is black
|
|
707
435
|
if (ISBLACK(t) && __skipFrames__++ < MAX_SKIP_FRAMES_ON_BLACK) {
|
|
708
436
|
return;
|
|
709
437
|
}
|
|
710
438
|
__skipFrames__ = 0;
|
|
711
|
-
|
|
712
439
|
p[0] = c[0];
|
|
713
440
|
p[1] = c[1];
|
|
714
441
|
p[2] = c[2];
|
|
715
|
-
|
|
716
442
|
c[0] = t[0];
|
|
717
443
|
c[1] = t[1];
|
|
718
444
|
c[2] = t[2];
|
|
719
|
-
|
|
720
445
|
ms.pickingObject = null;
|
|
721
446
|
ts.pickingObject = null;
|
|
722
|
-
|
|
723
|
-
let co = r.getPickingObjectArr<any>(c);
|
|
724
|
-
|
|
447
|
+
let co = r.getPickingObjectArr(c);
|
|
725
448
|
ms.pickingObject = co;
|
|
726
449
|
ts.pickingObject = co;
|
|
727
|
-
|
|
728
450
|
//object is changed
|
|
729
451
|
if (c[0] !== p[0] || c[1] !== p[1] || c[2] !== p[2]) {
|
|
730
|
-
|
|
731
452
|
//current is black
|
|
732
453
|
if (ISBLACK(c)) {
|
|
733
|
-
let po = r.getPickingObjectArr
|
|
454
|
+
let po = r.getPickingObjectArr(p);
|
|
734
455
|
if (po) {
|
|
735
456
|
let pe = po.rendererEvents;
|
|
736
457
|
ms.pickingObject = po;
|
|
@@ -738,12 +459,12 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
738
459
|
ts.pickingObject = po;
|
|
739
460
|
pe && pe.dispatch(pe.touchleave, ts);
|
|
740
461
|
}
|
|
741
|
-
}
|
|
462
|
+
}
|
|
463
|
+
else {
|
|
742
464
|
//current ia not black
|
|
743
|
-
|
|
744
465
|
//previous is not black
|
|
745
466
|
if (NOTBLACK(p)) {
|
|
746
|
-
let po = r.getPickingObjectArr
|
|
467
|
+
let po = r.getPickingObjectArr(p);
|
|
747
468
|
if (po) {
|
|
748
469
|
let pe = po.rendererEvents;
|
|
749
470
|
ms.pickingObject = po;
|
|
@@ -752,7 +473,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
752
473
|
pe && pe.dispatch(pe.touchleave, ts);
|
|
753
474
|
}
|
|
754
475
|
}
|
|
755
|
-
|
|
756
476
|
if (co) {
|
|
757
477
|
let ce = co.rendererEvents;
|
|
758
478
|
ms.pickingObject = co;
|
|
@@ -764,13 +484,10 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
764
484
|
}
|
|
765
485
|
}
|
|
766
486
|
}
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
let _this = this as RendererEventsHandler;
|
|
487
|
+
handleMouseEvents() {
|
|
488
|
+
let _this = this;
|
|
770
489
|
let ms = this.mouseState;
|
|
771
|
-
let po = ms.pickingObject,
|
|
772
|
-
pe = null;
|
|
773
|
-
|
|
490
|
+
let po = ms.pickingObject, pe = null;
|
|
774
491
|
if (ms.leftButtonClick) {
|
|
775
492
|
if (po) {
|
|
776
493
|
pe = po.rendererEvents;
|
|
@@ -779,7 +496,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
779
496
|
this.dispatch(_this.lclick, ms);
|
|
780
497
|
ms.leftButtonClick = false;
|
|
781
498
|
}
|
|
782
|
-
|
|
783
499
|
if (ms.rightButtonClick) {
|
|
784
500
|
if (po) {
|
|
785
501
|
pe = po.rendererEvents;
|
|
@@ -788,7 +504,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
788
504
|
this.dispatch(_this.rclick, ms);
|
|
789
505
|
ms.rightButtonClick = false;
|
|
790
506
|
}
|
|
791
|
-
|
|
792
507
|
if (ms.middleButtonClick) {
|
|
793
508
|
if (po) {
|
|
794
509
|
pe = po.rendererEvents;
|
|
@@ -797,7 +512,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
797
512
|
this.dispatch(_this.mclick, ms);
|
|
798
513
|
ms.middleButtonClick = false;
|
|
799
514
|
}
|
|
800
|
-
|
|
801
515
|
if (ms.leftButtonDown) {
|
|
802
516
|
if (ms.leftButtonHold) {
|
|
803
517
|
if (po) {
|
|
@@ -805,7 +519,8 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
805
519
|
pe && pe.dispatch(pe.lhold, ms);
|
|
806
520
|
}
|
|
807
521
|
this.dispatch(_this.lhold, ms);
|
|
808
|
-
}
|
|
522
|
+
}
|
|
523
|
+
else {
|
|
809
524
|
ms.leftButtonHold = true;
|
|
810
525
|
if (po) {
|
|
811
526
|
pe = po.rendererEvents;
|
|
@@ -814,7 +529,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
814
529
|
this.dispatch(_this.ldown, ms);
|
|
815
530
|
}
|
|
816
531
|
}
|
|
817
|
-
|
|
818
532
|
if (ms.rightButtonDown) {
|
|
819
533
|
if (ms.rightButtonHold) {
|
|
820
534
|
if (po) {
|
|
@@ -822,7 +536,8 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
822
536
|
pe && pe.dispatch(pe.rhold, ms);
|
|
823
537
|
}
|
|
824
538
|
this.dispatch(_this.rhold, ms);
|
|
825
|
-
}
|
|
539
|
+
}
|
|
540
|
+
else {
|
|
826
541
|
ms.rightButtonHold = true;
|
|
827
542
|
if (po) {
|
|
828
543
|
pe = po.rendererEvents;
|
|
@@ -831,7 +546,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
831
546
|
this.dispatch(_this.rdown, ms);
|
|
832
547
|
}
|
|
833
548
|
}
|
|
834
|
-
|
|
835
549
|
if (ms.middleButtonDown) {
|
|
836
550
|
if (ms.middleButtonHold) {
|
|
837
551
|
if (po) {
|
|
@@ -839,7 +553,8 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
839
553
|
pe && pe.dispatch(pe.mhold, ms);
|
|
840
554
|
}
|
|
841
555
|
this.dispatch(_this.mhold, ms);
|
|
842
|
-
}
|
|
556
|
+
}
|
|
557
|
+
else {
|
|
843
558
|
ms.middleButtonHold = true;
|
|
844
559
|
if (po) {
|
|
845
560
|
pe = po.rendererEvents;
|
|
@@ -848,7 +563,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
848
563
|
this.dispatch(_this.mdown, ms);
|
|
849
564
|
}
|
|
850
565
|
}
|
|
851
|
-
|
|
852
566
|
if (ms.leftButtonUp) {
|
|
853
567
|
if (po) {
|
|
854
568
|
pe = po.rendererEvents;
|
|
@@ -858,7 +572,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
858
572
|
ms.leftButtonUp = false;
|
|
859
573
|
ms.leftButtonHold = false;
|
|
860
574
|
}
|
|
861
|
-
|
|
862
575
|
if (ms.rightButtonUp) {
|
|
863
576
|
if (po) {
|
|
864
577
|
pe = po.rendererEvents;
|
|
@@ -868,7 +581,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
868
581
|
ms.rightButtonUp = false;
|
|
869
582
|
ms.rightButtonHold = false;
|
|
870
583
|
}
|
|
871
|
-
|
|
872
584
|
if (ms.middleButtonUp) {
|
|
873
585
|
if (po) {
|
|
874
586
|
pe = po.rendererEvents;
|
|
@@ -878,7 +590,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
878
590
|
ms.middleButtonUp = false;
|
|
879
591
|
ms.middleButtonHold = false;
|
|
880
592
|
}
|
|
881
|
-
|
|
882
593
|
if (ms.leftButtonDoubleClick) {
|
|
883
594
|
if (po) {
|
|
884
595
|
pe = po.rendererEvents;
|
|
@@ -887,7 +598,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
887
598
|
this.dispatch(_this.ldblclick, ms);
|
|
888
599
|
ms.leftButtonDoubleClick = false;
|
|
889
600
|
}
|
|
890
|
-
|
|
891
601
|
if (ms.rightButtonDoubleClick) {
|
|
892
602
|
if (po) {
|
|
893
603
|
pe = po.rendererEvents;
|
|
@@ -896,7 +606,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
896
606
|
this.dispatch(_this.rdblclick, ms);
|
|
897
607
|
ms.rightButtonDoubleClick = false;
|
|
898
608
|
}
|
|
899
|
-
|
|
900
609
|
if (ms.middleButtonDoubleClick) {
|
|
901
610
|
if (po) {
|
|
902
611
|
pe = po.rendererEvents;
|
|
@@ -905,7 +614,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
905
614
|
this.dispatch(_this.mdblclick, ms);
|
|
906
615
|
ms.middleButtonDoubleClick = false;
|
|
907
616
|
}
|
|
908
|
-
|
|
909
617
|
if (ms.wheelDelta) {
|
|
910
618
|
if (po) {
|
|
911
619
|
pe = po.rendererEvents;
|
|
@@ -913,7 +621,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
913
621
|
}
|
|
914
622
|
this.dispatch(_this.mousewheel, ms);
|
|
915
623
|
}
|
|
916
|
-
|
|
917
624
|
if (ms.moving) {
|
|
918
625
|
if (po) {
|
|
919
626
|
pe = po.rendererEvents;
|
|
@@ -923,36 +630,27 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
923
630
|
ms.prev_x = ms.x;
|
|
924
631
|
ms.prev_y = ms.y;
|
|
925
632
|
}
|
|
926
|
-
|
|
927
633
|
if (ms.justStopped) {
|
|
928
634
|
this.dispatch(_this.mousestop, ms);
|
|
929
635
|
}
|
|
930
636
|
}
|
|
931
|
-
|
|
932
637
|
/**
|
|
933
638
|
* @protected
|
|
934
639
|
*/
|
|
935
|
-
|
|
936
|
-
let _this = this
|
|
937
|
-
|
|
640
|
+
handleTouchEvents() {
|
|
641
|
+
let _this = this;
|
|
938
642
|
let ts = this.touchState;
|
|
939
|
-
|
|
940
|
-
let tpo = ts.pickingObject,
|
|
941
|
-
tpe = null;
|
|
942
|
-
|
|
643
|
+
let tpo = ts.pickingObject, tpe = null;
|
|
943
644
|
if (ts.touchCancel) {
|
|
944
645
|
this.dispatch(_this.touchcancel, ts);
|
|
945
646
|
ts.touchCancel = false;
|
|
946
647
|
}
|
|
947
|
-
|
|
948
648
|
if (ts.touchStart) {
|
|
949
649
|
let r = this.renderer;
|
|
950
|
-
|
|
951
|
-
r.pickingFramebuffer
|
|
952
|
-
r.pickingFramebuffer
|
|
953
|
-
r.
|
|
954
|
-
|
|
955
|
-
let co = r.getPickingObjectArr<any>(_currPickingColor);
|
|
650
|
+
r.pickingFramebuffer.activate();
|
|
651
|
+
r.pickingFramebuffer.readPixels(_currPickingColor, ts.nx, 1.0 - ts.ny, 1);
|
|
652
|
+
r.pickingFramebuffer.deactivate();
|
|
653
|
+
let co = r.getPickingObjectArr(_currPickingColor);
|
|
956
654
|
tpo = ts.pickingObject = co;
|
|
957
655
|
if (tpo) {
|
|
958
656
|
tpe = tpo.rendererEvents;
|
|
@@ -961,7 +659,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
961
659
|
this.dispatch(_this.touchstart, ts);
|
|
962
660
|
ts.touchStart = false;
|
|
963
661
|
}
|
|
964
|
-
|
|
965
662
|
if (ts.doubleTouch) {
|
|
966
663
|
if (tpo) {
|
|
967
664
|
tpe = tpo.rendererEvents;
|
|
@@ -970,7 +667,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
970
667
|
this.dispatch(_this.doubletouch, ts);
|
|
971
668
|
ts.doubleTouch = false;
|
|
972
669
|
}
|
|
973
|
-
|
|
974
670
|
if (ts.touchEnd) {
|
|
975
671
|
if (tpo) {
|
|
976
672
|
tpe = tpo.rendererEvents;
|
|
@@ -981,7 +677,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
981
677
|
ts.y = 0;
|
|
982
678
|
ts.touchEnd = false;
|
|
983
679
|
}
|
|
984
|
-
|
|
985
680
|
if (ts.moving) {
|
|
986
681
|
if (tpo) {
|
|
987
682
|
tpe = tpo.rendererEvents;
|
|
@@ -993,193 +688,161 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
|
|
|
993
688
|
}
|
|
994
689
|
}
|
|
995
690
|
}
|
|
996
|
-
|
|
997
|
-
const RENDERER_EVENTS: RendererEventsType = [
|
|
691
|
+
const RENDERER_EVENTS = [
|
|
998
692
|
/**
|
|
999
693
|
* Triggered before scene frame is rendered(before render nodes).
|
|
1000
694
|
* @event og.RendererEvents#draw
|
|
1001
695
|
*/
|
|
1002
696
|
"draw",
|
|
1003
|
-
|
|
1004
697
|
/**
|
|
1005
698
|
* Triggered after scene frame is rendered(after render nodes).
|
|
1006
699
|
* @event og.RendererEvents#postdraw
|
|
1007
700
|
*/
|
|
1008
701
|
"postdraw",
|
|
1009
|
-
|
|
1010
702
|
/**
|
|
1011
703
|
* Triggered when screen is resized.
|
|
1012
704
|
* @event og.RendererEvents#resize
|
|
1013
705
|
*/
|
|
1014
706
|
"resize",
|
|
1015
|
-
|
|
1016
707
|
/**
|
|
1017
708
|
* Triggered when screen is resized.
|
|
1018
709
|
* @event og.RendererEvents#resizeend
|
|
1019
710
|
*/
|
|
1020
711
|
"resizeend",
|
|
1021
|
-
|
|
1022
712
|
/**
|
|
1023
713
|
* Mouse enters the work screen
|
|
1024
714
|
* @event og.RendererEvents#mouseenter
|
|
1025
715
|
*/
|
|
1026
716
|
"mouseenter",
|
|
1027
|
-
|
|
1028
717
|
/**
|
|
1029
718
|
* Mouse leaves the work screen
|
|
1030
719
|
* @event og.RendererEvents#mouseleave
|
|
1031
720
|
*/
|
|
1032
721
|
"mouseleave",
|
|
1033
|
-
|
|
1034
722
|
/**
|
|
1035
723
|
* Mouse is moving.
|
|
1036
724
|
* @event og.RendererEvents#mousemove
|
|
1037
725
|
*/
|
|
1038
726
|
"mousemove",
|
|
1039
|
-
|
|
1040
727
|
/**
|
|
1041
728
|
* Mouse is just stopped.
|
|
1042
729
|
* @event og.RendererEvents#mousestop
|
|
1043
730
|
*/
|
|
1044
731
|
"mousestop",
|
|
1045
|
-
|
|
1046
732
|
/**
|
|
1047
733
|
* Mouse left button clicked.
|
|
1048
734
|
* @event og.RendererEvents#lclick
|
|
1049
735
|
*/
|
|
1050
736
|
"lclick",
|
|
1051
|
-
|
|
1052
737
|
/**
|
|
1053
738
|
* Mouse right button clicked.
|
|
1054
739
|
* @event og.RendererEvents#rclick
|
|
1055
740
|
*/
|
|
1056
741
|
"rclick",
|
|
1057
|
-
|
|
1058
742
|
/**
|
|
1059
743
|
* Mouse middle button clicked.
|
|
1060
744
|
* @event og.RendererEvents#mclick
|
|
1061
745
|
*/
|
|
1062
746
|
"mclick",
|
|
1063
|
-
|
|
1064
747
|
/**
|
|
1065
748
|
* Mouse left button double click.
|
|
1066
749
|
* @event og.RendererEvents#ldblclick
|
|
1067
750
|
*/
|
|
1068
751
|
"ldblclick",
|
|
1069
|
-
|
|
1070
752
|
/**
|
|
1071
753
|
* Mouse right button double click.
|
|
1072
754
|
* @event og.RendererEvents#rdblclick
|
|
1073
755
|
*/
|
|
1074
756
|
"rdblclick",
|
|
1075
|
-
|
|
1076
757
|
/**
|
|
1077
758
|
* Mouse middle button double click.
|
|
1078
759
|
* @event og.RendererEvents#mdblclick
|
|
1079
760
|
*/
|
|
1080
761
|
"mdblclick",
|
|
1081
|
-
|
|
1082
762
|
/**
|
|
1083
763
|
* Mouse left button up(stop pressing).
|
|
1084
764
|
* @event og.RendererEvents#lup
|
|
1085
765
|
*/
|
|
1086
766
|
"lup",
|
|
1087
|
-
|
|
1088
767
|
/**
|
|
1089
768
|
* Mouse right button up(stop pressing).
|
|
1090
769
|
* @event og.RendererEvents#rup
|
|
1091
770
|
*/
|
|
1092
771
|
"rup",
|
|
1093
|
-
|
|
1094
772
|
/**
|
|
1095
773
|
* Mouse middle button up(stop pressing).
|
|
1096
774
|
* @event og.RendererEvents#mup
|
|
1097
775
|
*/
|
|
1098
776
|
"mup",
|
|
1099
|
-
|
|
1100
777
|
/**
|
|
1101
778
|
* Mouse left button is just pressed down(start pressing).
|
|
1102
779
|
* @event og.RendererEvents#ldown
|
|
1103
780
|
*/
|
|
1104
781
|
"ldown",
|
|
1105
|
-
|
|
1106
782
|
/**
|
|
1107
783
|
* Mouse right button is just pressed down(start pressing).
|
|
1108
784
|
* @event og.RendererEvents#rdown
|
|
1109
785
|
*/
|
|
1110
786
|
"rdown",
|
|
1111
|
-
|
|
1112
787
|
/**
|
|
1113
788
|
* Mouse middle button is just pressed down(start pressing).
|
|
1114
789
|
* @event og.RendererEvents#mdown
|
|
1115
790
|
*/
|
|
1116
791
|
"mdown",
|
|
1117
|
-
|
|
1118
792
|
/**
|
|
1119
793
|
* Mouse left button is pressing.
|
|
1120
794
|
* @event og.RendererEvents#lhold
|
|
1121
795
|
*/
|
|
1122
796
|
"lhold",
|
|
1123
|
-
|
|
1124
797
|
/**
|
|
1125
798
|
* Mouse right button is pressing.
|
|
1126
799
|
* @event og.RendererEvents#rhold
|
|
1127
800
|
*/
|
|
1128
801
|
"rhold",
|
|
1129
|
-
|
|
1130
802
|
/**
|
|
1131
803
|
* Mouse middle button is pressing.
|
|
1132
804
|
* @event og.RendererEvents#mhold
|
|
1133
805
|
*/
|
|
1134
806
|
"mhold",
|
|
1135
|
-
|
|
1136
807
|
/**
|
|
1137
808
|
* Mouse wheel is rotated.
|
|
1138
809
|
* @event og.RendererEvents#mousewheel
|
|
1139
810
|
*/
|
|
1140
811
|
"mousewheel",
|
|
1141
|
-
|
|
1142
812
|
/**
|
|
1143
813
|
* Triggered when touching starts.
|
|
1144
814
|
* @event og.RendererEvents#touchstart
|
|
1145
815
|
*/
|
|
1146
816
|
"touchstart",
|
|
1147
|
-
|
|
1148
817
|
/**
|
|
1149
818
|
* Triggered when touching ends.
|
|
1150
819
|
* @event og.RendererEvents#touchend
|
|
1151
820
|
*/
|
|
1152
821
|
"touchend",
|
|
1153
|
-
|
|
1154
822
|
/**
|
|
1155
823
|
* Triggered when touching cancel.
|
|
1156
824
|
* @event og.RendererEvents#touchcancel
|
|
1157
825
|
*/
|
|
1158
826
|
"touchcancel",
|
|
1159
|
-
|
|
1160
827
|
/**
|
|
1161
828
|
* Triggered when touch is move.
|
|
1162
829
|
* @event og.RendererEvents#touchmove
|
|
1163
830
|
*/
|
|
1164
831
|
"touchmove",
|
|
1165
|
-
|
|
1166
832
|
/**
|
|
1167
833
|
* Triggered when double touch.
|
|
1168
834
|
* @event og.RendererEvents#doubletouch
|
|
1169
835
|
*/
|
|
1170
836
|
"doubletouch",
|
|
1171
|
-
|
|
1172
837
|
/**
|
|
1173
838
|
* Triggered when touch leaves picked object.
|
|
1174
839
|
* @event og.RendererEvents#touchleave
|
|
1175
840
|
*/
|
|
1176
841
|
"touchleave",
|
|
1177
|
-
|
|
1178
842
|
/**
|
|
1179
843
|
* Triggered when touch enter picking object.
|
|
1180
844
|
* @event og.RendererEvents#touchenter
|
|
1181
845
|
*/
|
|
1182
846
|
"touchenter"
|
|
1183
847
|
];
|
|
1184
|
-
|
|
1185
|
-
export {RendererEvents};
|
|
848
|
+
export { RendererEvents };
|