@cesium/engine 26.1.0 → 26.2.0
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/Build/ThirdParty/Workers/zip-web-worker.js +586 -480
- package/Build/Workers/chunk-27FWRTJI.js +454 -0
- package/Build/Workers/chunk-2H5264K7.js +1284 -0
- package/Build/Workers/chunk-2H73KDBM.js +511 -0
- package/Build/Workers/chunk-2RGJPWQX.js +1284 -0
- package/Build/Workers/chunk-2Z4ZLVOD.js +352 -0
- package/Build/Workers/chunk-2ZKH2QZB.js +387 -0
- package/Build/Workers/chunk-36NI5E6W.js +3820 -0
- package/Build/Workers/chunk-37SW7SYS.js +778 -0
- package/Build/Workers/chunk-3GHVJ3SO.js +455 -0
- package/Build/Workers/chunk-3LB4UVPU.js +387 -0
- package/Build/Workers/chunk-3PONLKEL.js +778 -0
- package/Build/Workers/chunk-3PSS3T43.js +102 -0
- package/Build/Workers/chunk-3QR662HH.js +3820 -0
- package/Build/Workers/chunk-3SX2WYSO.js +973 -0
- package/Build/Workers/chunk-3UDN6LYX.js +476 -0
- package/Build/Workers/chunk-47MCBSXI.js +9237 -0
- package/Build/Workers/chunk-4E626OCE.js +1067 -0
- package/Build/Workers/chunk-4NW2MJKH.js +455 -0
- package/Build/Workers/chunk-52YK5BSN.js +198 -0
- package/Build/Workers/chunk-5RNAQZK6.js +9234 -0
- package/Build/Workers/chunk-5YPQBFRD.js +519 -0
- package/Build/Workers/chunk-6FHT43QR.js +140 -0
- package/Build/Workers/chunk-6FZDPMTO.js +455 -0
- package/Build/Workers/chunk-6R5X2GUA.js +1284 -0
- package/Build/Workers/chunk-7A2OGDHT.js +305 -0
- package/Build/Workers/chunk-7CGEQUM2.js +305 -0
- package/Build/Workers/chunk-7I325HV6.js +1344 -0
- package/Build/Workers/chunk-7MM3N2VE.js +1067 -0
- package/Build/Workers/chunk-7TKLTCZW.js +219 -0
- package/Build/Workers/chunk-7UUKBDH6.js +1054 -0
- package/Build/Workers/chunk-7W6DUHAB.js +693 -0
- package/Build/Workers/chunk-7XM5JK5F.js +162 -0
- package/Build/Workers/chunk-7YG3ND3P.js +454 -0
- package/Build/Workers/chunk-A62YI6S6.js +305 -0
- package/Build/Workers/chunk-A7TTWVTF.js +2719 -0
- package/Build/Workers/chunk-ACTVJHSP.js +519 -0
- package/Build/Workers/chunk-ADX3CBKD.js +9234 -0
- package/Build/Workers/chunk-AF7DTMJ7.js +398 -0
- package/Build/Workers/chunk-AJSFRY4U.js +1344 -0
- package/Build/Workers/chunk-ARZICEEP.js +301 -0
- package/Build/Workers/chunk-B3QHNA4A.js +147 -0
- package/Build/Workers/chunk-BKPQFCXH.js +511 -0
- package/Build/Workers/chunk-BSPCI2LO.js +959 -0
- package/Build/Workers/chunk-BUJWSX5S.js +301 -0
- package/Build/Workers/chunk-C7QDUNI3.js +138 -0
- package/Build/Workers/chunk-CIV5DJOQ.js +778 -0
- package/Build/Workers/chunk-CQNFIAZU.js +56 -0
- package/Build/Workers/chunk-CRCGE4J4.js +9237 -0
- package/Build/Workers/chunk-CUTRKXUQ.js +288 -0
- package/Build/Workers/chunk-D6AY775A.js +3201 -0
- package/Build/Workers/chunk-DSGLDRTI.js +278 -0
- package/Build/Workers/chunk-DZBQUULR.js +138 -0
- package/Build/Workers/chunk-DZUFEE4L.js +140 -0
- package/Build/Workers/chunk-E2NKV5YT.js +3820 -0
- package/Build/Workers/chunk-EB3Y5P3A.js +368 -0
- package/Build/Workers/chunk-ELE6SC2C.js +837 -0
- package/Build/Workers/chunk-EOWDZN5S.js +288 -0
- package/Build/Workers/chunk-ERKUET22.js +3201 -0
- package/Build/Workers/chunk-EZGQPOIG.js +162 -0
- package/Build/Workers/chunk-F2IMBMZY.js +241 -0
- package/Build/Workers/chunk-F4CSNRZO.js +219 -0
- package/Build/Workers/chunk-FBP4DUQJ.js +693 -0
- package/Build/Workers/chunk-FJWZMGOQ.js +1992 -0
- package/Build/Workers/chunk-FQ42MT7M.js +58 -0
- package/Build/Workers/chunk-FU4BGABC.js +398 -0
- package/Build/Workers/chunk-FX3VEAIU.js +2719 -0
- package/Build/Workers/chunk-GGNWQWSB.js +301 -0
- package/Build/Workers/chunk-GHXVQVUM.js +1344 -0
- package/Build/Workers/chunk-GNKXEN4C.js +682 -0
- package/Build/Workers/chunk-GVA7XQI2.js +368 -0
- package/Build/Workers/chunk-GXDHRC4J.js +1344 -0
- package/Build/Workers/chunk-GYSYP6PC.js +1067 -0
- package/Build/Workers/chunk-H2WCFXLP.js +241 -0
- package/Build/Workers/chunk-HDL4HOXZ.js +778 -0
- package/Build/Workers/chunk-HLW2ZRVK.js +368 -0
- package/Build/Workers/chunk-HT6FASOT.js +973 -0
- package/Build/Workers/chunk-I74ZH5LK.js +959 -0
- package/Build/Workers/chunk-IDVHUDZT.js +352 -0
- package/Build/Workers/chunk-IJZJMIUY.js +789 -0
- package/Build/Workers/chunk-IMBVP57H.js +44 -0
- package/Build/Workers/chunk-IOO7Z2AV.js +57 -0
- package/Build/Workers/chunk-IUIFLOYO.js +44 -0
- package/Build/Workers/chunk-J73T2VOY.js +171 -0
- package/Build/Workers/chunk-JALGQYDY.js +288 -0
- package/Build/Workers/chunk-JXYLJCTC.js +124 -0
- package/Build/Workers/chunk-K27QOAW6.js +97 -0
- package/Build/Workers/chunk-KMV25A63.js +789 -0
- package/Build/Workers/chunk-KP5QD7WU.js +693 -0
- package/Build/Workers/chunk-KZWFWJML.js +2719 -0
- package/Build/Workers/chunk-LCXRRALY.js +387 -0
- package/Build/Workers/chunk-LDRQSYBN.js +1800 -0
- package/Build/Workers/chunk-M4JZ6TSZ.js +959 -0
- package/Build/Workers/chunk-M6QKXVAU.js +1054 -0
- package/Build/Workers/chunk-MAAHFYPC.js +198 -0
- package/Build/Workers/chunk-MCJDRDJQ.js +102 -0
- package/Build/Workers/chunk-MEENMEAH.js +198 -0
- package/Build/Workers/chunk-NAWU5RF4.js +162 -0
- package/Build/Workers/chunk-NCL22ZUX.js +56 -0
- package/Build/Workers/chunk-NEFDMMLY.js +241 -0
- package/Build/Workers/chunk-NJVBJG63.js +124 -0
- package/Build/Workers/chunk-NLLCQBX3.js +73 -0
- package/Build/Workers/chunk-NSKZ6SBK.js +1483 -0
- package/Build/Workers/chunk-NXGQBQWE.js +837 -0
- package/Build/Workers/chunk-O3DKEX7Q.js +352 -0
- package/Build/Workers/chunk-O3XFXGPZ.js +476 -0
- package/Build/Workers/chunk-OA6MYL2C.js +837 -0
- package/Build/Workers/chunk-OHP4ELS7.js +198 -0
- package/Build/Workers/chunk-OZGPS7FB.js +138 -0
- package/Build/Workers/chunk-PCL3Y7H5.js +82 -0
- package/Build/Workers/chunk-PD4GK4EM.js +57 -0
- package/Build/Workers/chunk-PEDU33QG.js +2342 -0
- package/Build/Workers/chunk-PRWUMCXF.js +682 -0
- package/Build/Workers/chunk-PVTSNNVI.js +288 -0
- package/Build/Workers/chunk-QFSSCLLZ.js +973 -0
- package/Build/Workers/chunk-QHPZH22L.js +241 -0
- package/Build/Workers/chunk-QIZDWZK6.js +301 -0
- package/Build/Workers/chunk-QV6DG2YX.js +1483 -0
- package/Build/Workers/chunk-R4K7EHOU.js +171 -0
- package/Build/Workers/chunk-R7JGHDD6.js +789 -0
- package/Build/Workers/chunk-RASQEYD4.js +1483 -0
- package/Build/Workers/chunk-RW6ITX7Q.js +3820 -0
- package/Build/Workers/chunk-RYSQVJR6.js +398 -0
- package/Build/Workers/chunk-S6RJU5NM.js +1054 -0
- package/Build/Workers/chunk-SA2A2AN5.js +2342 -0
- package/Build/Workers/chunk-SDFHDNS4.js +147 -0
- package/Build/Workers/chunk-SJYSIOEM.js +414 -0
- package/Build/Workers/chunk-SMTGMFBL.js +97 -0
- package/Build/Workers/chunk-SXSP3JHS.js +38 -0
- package/Build/Workers/chunk-TN35HP5B.js +1067 -0
- package/Build/Workers/chunk-TNWKJNUZ.js +454 -0
- package/Build/Workers/chunk-TOAF47AQ.js +102 -0
- package/Build/Workers/chunk-TQ4QCOXT.js +2719 -0
- package/Build/Workers/chunk-TSDSILQB.js +124 -0
- package/Build/Workers/chunk-U5LV3F3Z.js +1054 -0
- package/Build/Workers/chunk-UAZUP4I5.js +1992 -0
- package/Build/Workers/chunk-UF46SZEZ.js +789 -0
- package/Build/Workers/chunk-UNRTMCET.js +398 -0
- package/Build/Workers/chunk-UTB7U3O6.js +1992 -0
- package/Build/Workers/chunk-V46YGZE6.js +352 -0
- package/Build/Workers/chunk-VDGOCROW.js +57 -0
- package/Build/Workers/chunk-VFWSSBPT.js +511 -0
- package/Build/Workers/chunk-VVYMXI3I.js +1284 -0
- package/Build/Workers/chunk-VXWHPYQM.js +837 -0
- package/Build/Workers/chunk-VXYUBRSB.js +219 -0
- package/Build/Workers/chunk-VZLDLEWI.js +387 -0
- package/Build/Workers/chunk-W5OCKMPJ.js +101 -0
- package/Build/Workers/chunk-WN3F4CVG.js +3201 -0
- package/Build/Workers/chunk-WPRUWXGV.js +693 -0
- package/Build/Workers/chunk-WTO2ERBP.js +414 -0
- package/Build/Workers/chunk-WVHMDVG4.js +959 -0
- package/Build/Workers/chunk-XCBZVTIV.js +280 -0
- package/Build/Workers/chunk-XGA23TAX.js +73 -0
- package/Build/Workers/chunk-XLQZNQ4Z.js +163 -0
- package/Build/Workers/chunk-XQH66YJC.js +147 -0
- package/Build/Workers/chunk-XTA7BXJG.js +682 -0
- package/Build/Workers/chunk-XTIDAFRS.js +476 -0
- package/Build/Workers/chunk-XUEDWBUD.js +682 -0
- package/Build/Workers/chunk-XYFLRH3H.js +124 -0
- package/Build/Workers/chunk-Y7JRTRTO.js +305 -0
- package/Build/Workers/chunk-Y7QSMDCJ.js +352 -0
- package/Build/Workers/chunk-YCB5TYTR.js +1483 -0
- package/Build/Workers/chunk-YEYOSTJX.js +219 -0
- package/Build/Workers/chunk-YGFVAGYF.js +630 -0
- package/Build/Workers/chunk-YIIACKQO.js +368 -0
- package/Build/Workers/chunk-YJGSP6PE.js +511 -0
- package/Build/Workers/chunk-Z4LR5EHE.js +454 -0
- package/Build/Workers/chunk-Z66EVE2A.js +44 -0
- package/Build/Workers/chunk-ZHIHHHTB.js +414 -0
- package/Build/Workers/chunk-ZNWHFSLE.js +171 -0
- package/Build/Workers/chunk-ZQLZG4IN.js +2342 -0
- package/Build/Workers/chunk-ZRTSMUZ2.js +414 -0
- package/Build/Workers/chunk-ZZUVT5BM.js +476 -0
- package/Build/Workers/combineGeometry.js +16 -16
- package/Build/Workers/createBoxGeometry.js +10 -10
- package/Build/Workers/createBoxOutlineGeometry.js +8 -8
- package/Build/Workers/createCircleGeometry.js +18 -18
- package/Build/Workers/createCircleOutlineGeometry.js +11 -11
- package/Build/Workers/createCoplanarPolygonGeometry.js +27 -27
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +23 -23
- package/Build/Workers/createCorridorGeometry.js +23 -25
- package/Build/Workers/createCorridorOutlineGeometry.js +21 -23
- package/Build/Workers/createCylinderGeometry.js +12 -12
- package/Build/Workers/createCylinderOutlineGeometry.js +10 -10
- package/Build/Workers/createEllipseGeometry.js +18 -18
- package/Build/Workers/createEllipseOutlineGeometry.js +11 -11
- package/Build/Workers/createEllipsoidGeometry.js +11 -11
- package/Build/Workers/createEllipsoidOutlineGeometry.js +10 -10
- package/Build/Workers/createFrustumGeometry.js +11 -11
- package/Build/Workers/createFrustumOutlineGeometry.js +11 -11
- package/Build/Workers/createGeometry.js +16 -16
- package/Build/Workers/createGroundPolylineGeometry.js +16 -16
- package/Build/Workers/createPlaneGeometry.js +9 -9
- package/Build/Workers/createPlaneOutlineGeometry.js +8 -8
- package/Build/Workers/createPolygonGeometry.js +25 -25
- package/Build/Workers/createPolygonOutlineGeometry.js +22 -22
- package/Build/Workers/createPolylineGeometry.js +18 -18
- package/Build/Workers/createPolylineVolumeGeometry.js +24 -24
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +20 -20
- package/Build/Workers/createRectangleGeometry.js +19 -19
- package/Build/Workers/createRectangleOutlineGeometry.js +13 -13
- package/Build/Workers/createSimplePolylineGeometry.js +16 -16
- package/Build/Workers/createSphereGeometry.js +11 -11
- package/Build/Workers/createSphereOutlineGeometry.js +10 -10
- package/Build/Workers/createVectorTileClampedPolylines.js +7 -7
- package/Build/Workers/createVectorTileGeometries.js +15 -15
- package/Build/Workers/createVectorTilePoints.js +6 -6
- package/Build/Workers/createVectorTilePolygons.js +14 -14
- package/Build/Workers/createVectorTilePolylines.js +7 -7
- package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +17 -17
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +14 -14
- package/Build/Workers/createVerticesFromHeightmap.js +14 -14
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +12 -12
- package/Build/Workers/createWallGeometry.js +17 -17
- package/Build/Workers/createWallOutlineGeometry.js +17 -17
- package/Build/Workers/decodeDraco.js +2 -2
- package/Build/Workers/decodeI3S.js +5 -5
- package/Build/Workers/incrementallyBuildTerrainPicker.js +4 -4
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +14 -14
- package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +17 -17
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +1 -5
- package/Source/Core/BoundingSphere.js +0 -3
- package/Source/Core/Cesium3DTilesTerrainGeometryProcessor.js +3 -4
- package/Source/Core/CoplanarPolygonGeometry.js +2 -2
- package/Source/Core/CorridorGeometry.js +2 -4
- package/Source/Core/CorridorOutlineGeometry.js +1 -3
- package/Source/Core/EarthOrientationParameters.js +2 -2
- package/Source/Core/EllipseGeometryLibrary.js +2 -2
- package/Source/Core/EllipsoidGeodesic.js +3 -3
- package/Source/Core/EllipsoidRhumbLine.js +1 -1
- package/Source/Core/GroundPolylineGeometry.js +2 -2
- package/Source/Core/Heap.js +1 -1
- package/Source/Core/HermitePolynomialApproximation.js +215 -179
- package/Source/Core/InterpolationAlgorithm.js +1 -0
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/JulianDate.js +1 -1
- package/Source/Core/LagrangePolynomialApproximation.js +55 -52
- package/Source/Core/LinearApproximation.js +69 -66
- package/Source/Core/Math.js +59 -0
- package/Source/Core/Matrix2.js +2 -2
- package/Source/Core/Matrix3.js +2 -2
- package/Source/Core/OrthographicFrustum.js +1 -1
- package/Source/Core/PerspectiveFrustum.js +1 -1
- package/Source/Core/PolygonGeometry.js +2 -2
- package/Source/Core/PolygonGeometryLibrary.js +1 -1
- package/Source/Core/PolygonOutlineGeometry.js +1 -1
- package/Source/Core/PolylineGeometry.js +1 -1
- package/Source/Core/PolylineVolumeGeometryLibrary.js +1 -1
- package/Source/Core/Rectangle.js +7 -1
- package/Source/Core/RectangleOutlineGeometry.js +1 -1
- package/Source/Core/SimplePolylineGeometry.js +1 -1
- package/Source/Core/TerrainEncoding.js +2 -2
- package/Source/Core/TerrainPicker.js +179 -168
- package/Source/Core/TimeIntervalCollection.js +1 -3
- package/Source/Core/Tipsify.js +1 -1
- package/Source/Core/Transforms.js +5 -1
- package/Source/Core/VectorPipeline.js +1117 -0
- package/Source/Core/VectorProvider.js +429 -0
- package/Source/Core/WallOutlineGeometry.js +1 -1
- package/Source/Core/getTimestamp.js +4 -2
- package/Source/DataSources/CompositeEntityCollection.js +0 -1
- package/Source/DataSources/CzmlDataSource.js +2 -0
- package/Source/DataSources/DataSourceDisplay.js +1 -1
- package/Source/DataSources/GeoJsonDataSource.js +0 -1
- package/Source/DataSources/GeometryVisualizer.js +1 -1
- package/Source/DataSources/KmlDataSource.js +1 -2
- package/Source/DataSources/PolylineVisualizer.js +1 -1
- package/Source/DataSources/StaticOutlineGeometryBatch.js +1 -1
- package/Source/Renderer/AutomaticUniforms.js +23 -0
- package/Source/Renderer/Context.js +9 -3
- package/Source/Renderer/DrawCommand.js +22 -0
- package/Source/Renderer/Framebuffer.js +4 -0
- package/Source/Renderer/Pass.js +11 -10
- package/Source/Renderer/Texture.js +11 -0
- package/Source/Renderer/UniformState.js +7 -0
- package/Source/Renderer/VertexArray.js +0 -1
- package/Source/Scene/ArcGisMapServerImageryProvider.js +0 -5
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/Billboard.js +2 -1
- package/Source/Scene/BillboardCollection.js +7 -3
- package/Source/Scene/BufferPrimitiveCollection.js +27 -5
- package/Source/Scene/Camera.js +71 -5
- package/Source/Scene/Cesium3DTileset.js +1 -1
- package/Source/Scene/ClippingPlaneCollection.js +2 -2
- package/Source/Scene/Controllers/Controller.js +63 -0
- package/Source/Scene/Controllers/ControllerHost.js +78 -0
- package/Source/Scene/Controllers/HybridScreenSpacePanCameraController.js +106 -0
- package/Source/Scene/Controllers/MouseButton.js +32 -0
- package/Source/Scene/Controllers/ScreenSpaceElevatorCameraController.js +295 -0
- package/Source/Scene/Controllers/ScreenSpaceInputBindings.js +154 -0
- package/Source/Scene/Controllers/ScreenSpaceMapCameraController.js +310 -0
- package/Source/Scene/Controllers/ScreenSpaceTiltOrbitCameraController.js +642 -0
- package/Source/Scene/Controllers/ScreenSpaceZoomCameraController.js +431 -0
- package/Source/Scene/Controllers/defaultPickWorldPosition.js +84 -0
- package/Source/Scene/DerivedCommand.js +94 -0
- package/Source/Scene/EdgeFramebuffer.js +1 -5
- package/Source/Scene/FrameState.js +17 -0
- package/Source/Scene/Globe.js +20 -0
- package/Source/Scene/GlobeDepth.js +27 -1
- package/Source/Scene/GlobeSurfaceShaderSet.js +12 -2
- package/Source/Scene/GlobeSurfaceTile.js +48 -10
- package/Source/Scene/GlobeSurfaceTileProvider.js +121 -3
- package/Source/Scene/GltfLoader.js +32 -3
- package/Source/Scene/GltfSpzLoader.js +1 -1
- package/Source/Scene/GltfVertexBufferLoader.js +6 -3
- package/Source/Scene/I3SDataProvider.js +1 -1
- package/Source/Scene/I3SLayer.js +1 -1
- package/Source/Scene/I3SNode.js +2 -2
- package/Source/Scene/ImageryLayerCollection.js +188 -4
- package/Source/Scene/IonImageryProvider.js +1 -5
- package/Source/Scene/Label.js +4 -4
- package/Source/Scene/LabelCollection.js +1 -1
- package/Source/Scene/MVTDataProvider.js +2 -0
- package/Source/Scene/Model/B3dmLoader.js +1 -2
- package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +10 -8
- package/Source/Scene/Model/I3dmLoader.js +1 -1
- package/Source/Scene/Model/InstancingPipelineStage.js +4 -7
- package/Source/Scene/Model/MaterialPipelineStage.js +124 -1
- package/Source/Scene/Model/Model.js +8 -10
- package/Source/Scene/Model/ModelClippingPlanesPipelineStage.js +28 -1
- package/Source/Scene/Model/ModelDrawCommand.js +160 -16
- package/Source/Scene/Model/ModelDrawCommands.js +4 -0
- package/Source/Scene/Model/ModelSceneGraph.js +21 -0
- package/Source/Scene/Model/PickingPipelineStage.js +29 -0
- package/Source/Scene/Model/PrimitiveRenderResources.js +24 -0
- package/Source/Scene/ModelComponents.js +71 -0
- package/Source/Scene/Picking.js +16 -5
- package/Source/Scene/PlanarFillIdFramebuffer.js +172 -0
- package/Source/Scene/PntsParser.js +0 -1
- package/Source/Scene/PolylineCollection.js +1 -1
- package/Source/Scene/PostProcessStage.js +4 -2
- package/Source/Scene/ResourceCache.js +7 -4
- package/Source/Scene/ResourceCacheKey.js +16 -13
- package/Source/Scene/Scene.js +202 -5
- package/Source/Scene/ScreenSpaceCameraController.js +1 -2
- package/Source/Scene/ShadowMap.js +9 -3
- package/Source/Scene/ShadowMapShader.js +50 -2
- package/Source/Scene/SnapFramebuffer.js +121 -0
- package/Source/Scene/Snapping.js +184 -0
- package/Source/Scene/TerrainFillMesh.js +3 -2
- package/Source/Scene/UrlTemplate3DTilesDataProvider.js +1 -1
- package/Source/Scene/Vector3DTileContent.js +2 -3
- package/Source/Scene/VectorGltf3DTileContent.js +23 -3
- package/Source/Scene/View.js +10 -8
- package/Source/Scene/VoxelTraversal.js +1 -1
- package/Source/Scene/createElevationBandMaterial.js +1 -1
- package/Source/Scene/renderBufferPointCollection.js +1 -2
- package/Source/Scene/renderBufferPolygonCollection.js +1 -2
- package/Source/Scene/renderBufferPolylineCollection.js +1 -2
- package/Source/Shaders/Builtin/Constants/passCesium3DTile.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTile.js +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.js +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.js +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTilePlanarFillId.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTilePlanarFillId.js +11 -0
- package/Source/Shaders/Builtin/Constants/passClassification.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passClassification.js +1 -1
- package/Source/Shaders/Builtin/Constants/passGaussianSplats.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passGaussianSplats.js +1 -1
- package/Source/Shaders/Builtin/Constants/passOpaque.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passOpaque.js +1 -1
- package/Source/Shaders/Builtin/Constants/passTranslucent.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passTranslucent.js +1 -1
- package/Source/Shaders/Builtin/Constants/passVoxels.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passVoxels.js +1 -1
- package/Source/Shaders/Builtin/CzmBuiltins.js +2 -0
- package/Source/Shaders/GlobeFS.glsl +10 -5
- package/Source/Shaders/GlobeFS.js +9 -5
- package/Source/Shaders/Materials/PolylineGlowMaterial.glsl +1 -1
- package/Source/Shaders/Materials/PolylineGlowMaterial.js +1 -1
- package/Source/Shaders/Model/MaterialStageFS.glsl +8 -2
- package/Source/Shaders/Model/MaterialStageFS.js +8 -2
- package/Source/Shaders/Model/ModelFS.glsl +105 -0
- package/Source/Shaders/Model/ModelFS.js +105 -0
- package/Source/Shaders/VectorCommon.glsl +178 -0
- package/Source/Shaders/VectorCommon.js +75 -0
- package/Source/ThirdParty/Workers/zip-web-worker.js +1 -1
- package/Source/ThirdParty/zip-module.wasm +0 -0
- package/Source/Widget/CesiumWidget.js +30 -0
- package/index.d.ts +770 -10
- package/index.js +177 -160
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -619,10 +619,9 @@ export namespace ArcGISTiledElevationTerrainProvider {
|
|
|
619
619
|
* token: "KED1aF_I4UzXOHy3BnhwyBHU4l5oY6rO6walkmHoYqGp4XyIWUd5YZUC1ZrLAzvV40pR6gBXQayh0eFA8m6vPg.."
|
|
620
620
|
* });
|
|
621
621
|
* viewer.terrainProvider = terrainProvider;
|
|
622
|
-
* @param [options] - A url or an object describing initialization options
|
|
623
622
|
*/
|
|
624
623
|
export class ArcGISTiledElevationTerrainProvider {
|
|
625
|
-
constructor(
|
|
624
|
+
constructor();
|
|
626
625
|
/**
|
|
627
626
|
* Gets an event that is raised when the terrain provider encounters an asynchronous error. By subscribing
|
|
628
627
|
* to the event, you will be notified of the error and can potentially recover from it. Event listeners
|
|
@@ -8448,6 +8447,10 @@ export class HeightmapTerrainData {
|
|
|
8448
8447
|
* An {@link InterpolationAlgorithm} for performing Hermite interpolation.
|
|
8449
8448
|
*/
|
|
8450
8449
|
export namespace HermitePolynomialApproximation {
|
|
8450
|
+
/**
|
|
8451
|
+
* Gets the name of this interpolation algorithm.
|
|
8452
|
+
*/
|
|
8453
|
+
var type: string;
|
|
8451
8454
|
/**
|
|
8452
8455
|
* Given the desired degree, returns the number of data points required for interpolation.
|
|
8453
8456
|
* @param degree - The desired degree of interpolation.
|
|
@@ -8776,7 +8779,7 @@ export interface InterpolationAlgorithm {
|
|
|
8776
8779
|
* @param [result] - An existing array into which to store the result.
|
|
8777
8780
|
* @returns The array of interpolated values, or the result parameter if one was provided.
|
|
8778
8781
|
*/
|
|
8779
|
-
interpolate(x: number, xTable: number[], yTable: number[], yStride: number, inputOrder: number, outputOrder: number, result?: number[]): number[];
|
|
8782
|
+
interpolate?(x: number, xTable: number[], yTable: number[], yStride: number, inputOrder: number, outputOrder: number, result?: number[]): number[];
|
|
8780
8783
|
}
|
|
8781
8784
|
|
|
8782
8785
|
/**
|
|
@@ -9429,6 +9432,10 @@ export enum KeyboardEventModifier {
|
|
|
9429
9432
|
* An {@link InterpolationAlgorithm} for performing Lagrange interpolation.
|
|
9430
9433
|
*/
|
|
9431
9434
|
export namespace LagrangePolynomialApproximation {
|
|
9435
|
+
/**
|
|
9436
|
+
* Gets the name of this interpolation algorithm.
|
|
9437
|
+
*/
|
|
9438
|
+
var type: string;
|
|
9432
9439
|
/**
|
|
9433
9440
|
* Given the desired degree, returns the number of data points required for interpolation.
|
|
9434
9441
|
* @param degree - The desired degree of interpolation.
|
|
@@ -9473,6 +9480,10 @@ export class LeapSecond {
|
|
|
9473
9480
|
* An {@link InterpolationAlgorithm} for performing linear interpolation.
|
|
9474
9481
|
*/
|
|
9475
9482
|
export namespace LinearApproximation {
|
|
9483
|
+
/**
|
|
9484
|
+
* Gets the name of this interpolation algorithm.
|
|
9485
|
+
*/
|
|
9486
|
+
var type: string;
|
|
9476
9487
|
/**
|
|
9477
9488
|
* Given the desired degree, returns the number of data points required for interpolation.
|
|
9478
9489
|
* Since linear interpolation can only generate a first degree polynomial, this function
|
|
@@ -9788,6 +9799,26 @@ export namespace Math {
|
|
|
9788
9799
|
* @returns The linearly interpolated value.
|
|
9789
9800
|
*/
|
|
9790
9801
|
function lerp(p: number, q: number, time: number): number;
|
|
9802
|
+
/**
|
|
9803
|
+
* @property value - The new value after applying the smooth damp.
|
|
9804
|
+
* @property velocity - The updated current velocity.
|
|
9805
|
+
*/
|
|
9806
|
+
type SmoothDampResult = {
|
|
9807
|
+
value: number;
|
|
9808
|
+
velocity: number;
|
|
9809
|
+
};
|
|
9810
|
+
/**
|
|
9811
|
+
* Gradually changes a value towards a target value over time. The smoothing function uses a spring-damping algorithm based on Game Programming Gems 4 Chapter 1.10.
|
|
9812
|
+
* @param p - The current value.
|
|
9813
|
+
* @param q - The target value.
|
|
9814
|
+
* @param velocity - The current velocity.
|
|
9815
|
+
* @param [deltaTime = 0.0] - The time since the last call to this function. Value must be greater than or equal to 0.0.
|
|
9816
|
+
* @param [maximumSpeed = Number.POSITIVE_INFINITY] - Optionally allows clamping to the specified maximum speed.
|
|
9817
|
+
* @param [smoothTime = 0.0001] - Approximately the time it will take to reach the target. A smaller value will reach the target faster. This value must be greater than or equal to 0.0001.
|
|
9818
|
+
* @param [result] - An object to store the result. If not provided, a new object will be created and returned.
|
|
9819
|
+
* @returns An object containing the new value and the updated current velocity.
|
|
9820
|
+
*/
|
|
9821
|
+
function smoothDamp(p: number, q: number, velocity: number, deltaTime?: number, maximumSpeed?: number, smoothTime?: number, result?: SmoothDampResult): SmoothDampResult;
|
|
9791
9822
|
/**
|
|
9792
9823
|
* pi
|
|
9793
9824
|
*/
|
|
@@ -18082,6 +18113,8 @@ export class VRTheWorldTerrainProvider {
|
|
|
18082
18113
|
loadTileDataAvailability(x: number, y: number, level: number): undefined | Promise<void>;
|
|
18083
18114
|
}
|
|
18084
18115
|
|
|
18116
|
+
export const GRID_TARGET_SEGMENTS_PER_CELL = 16;
|
|
18117
|
+
|
|
18085
18118
|
/**
|
|
18086
18119
|
* A vertex format defines what attributes make up a vertex. A VertexFormat can be provided
|
|
18087
18120
|
* to a {@link Geometry} to request that certain properties be computed, e.g., just position,
|
|
@@ -26904,8 +26937,9 @@ export class Billboard {
|
|
|
26904
26937
|
*/
|
|
26905
26938
|
rotation: number;
|
|
26906
26939
|
/**
|
|
26907
|
-
*
|
|
26940
|
+
* The aligned axis is the direction vector that the billboard up vector points towards.
|
|
26908
26941
|
* The default is the zero vector, which means the billboard is aligned to the screen up vector.
|
|
26942
|
+
* Note that only the zero vector (0,0,0) resets the alignment to screen up.
|
|
26909
26943
|
* @example
|
|
26910
26944
|
* // Example 1.
|
|
26911
26945
|
* // Have the billboard up vector point north
|
|
@@ -28939,6 +28973,13 @@ export class Camera {
|
|
|
28939
28973
|
* @param [offset] - The offset from the target in a reference frame centered at the target.
|
|
28940
28974
|
*/
|
|
28941
28975
|
lookAtTransform(transform: Matrix4, offset?: Cartesian3 | HeadingPitchRange): void;
|
|
28976
|
+
/**
|
|
28977
|
+
* Sets the camera orientation to look at a target position in world coordinates. The camera's up vector will be oriented to the world up vector at the target position.
|
|
28978
|
+
* If the camera is at the target position, the camera will be oriented to the world up vector at the target position.
|
|
28979
|
+
* @param target - The target position in world coordinates.
|
|
28980
|
+
* @param [ellipsoid = Ellipsoid.default] - The ellipsoid to use for determining the world up.
|
|
28981
|
+
*/
|
|
28982
|
+
lookAtWorldPosition(target: Cartesian3, ellipsoid?: Ellipsoid): void;
|
|
28942
28983
|
/**
|
|
28943
28984
|
* Get the camera position needed to view a rectangle on an ellipsoid or map
|
|
28944
28985
|
* @param rectangle - The rectangle to view.
|
|
@@ -30708,7 +30749,7 @@ export namespace Cesium3DTileset {
|
|
|
30708
30749
|
* @property [clippingPlanes] - The {@link ClippingPlaneCollection} used to selectively disable rendering the tileset.
|
|
30709
30750
|
* @property [clippingPolygons] - The {@link ClippingPolygonCollection} used to selectively disable rendering the tileset.
|
|
30710
30751
|
* @property [classificationType] - Determines whether terrain, 3D Tiles or both will be classified by this tileset. See {@link Cesium3DTileset#classificationType} for details about restrictions and limitations.
|
|
30711
|
-
* @property [heightReference] - Sets the {@link HeightReference} for
|
|
30752
|
+
* @property [heightReference] - Sets the {@link HeightReference} for features in vector tilesets.
|
|
30712
30753
|
* @property [scene] - The {@link CesiumWidget#scene} that the tileset will be rendered in, required for tilesets that specify a {@link heightReference} value for clamping 3D Tiles vector data content- like points, lines, and labels- to terrain or 3D tiles.
|
|
30713
30754
|
* @property [ellipsoid = Ellipsoid.WGS84] - The ellipsoid determining the size and shape of the globe.
|
|
30714
30755
|
* @property [pointCloudShading] - Options for constructing a {@link PointCloudShading} object to control point attenuation based on geometric error and lighting.
|
|
@@ -32580,6 +32621,605 @@ export class ConeEmitter {
|
|
|
32580
32621
|
constructor(angle?: number);
|
|
32581
32622
|
}
|
|
32582
32623
|
|
|
32624
|
+
/**
|
|
32625
|
+
* An interface for a camera controller that can be registered with the scene to handle input events, camera animations, and other interactions. Implementations of this interface are expected to be registered with the scene via a {@link ControllerHost}.
|
|
32626
|
+
* This type describes an
|
|
32627
|
+
* interface and is not intended to be instantiated directly.
|
|
32628
|
+
*/
|
|
32629
|
+
export class Controller {
|
|
32630
|
+
/**
|
|
32631
|
+
* Determines if the controller is enabled and should be updated by the host scene.
|
|
32632
|
+
*/
|
|
32633
|
+
enabled: boolean;
|
|
32634
|
+
/**
|
|
32635
|
+
* Invoked when the controller is added to the DOM. Implement <code>connectedCallback</code> to set up any DOM event listeners.
|
|
32636
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32637
|
+
*/
|
|
32638
|
+
connectedCallback(element: HTMLElement): void;
|
|
32639
|
+
/**
|
|
32640
|
+
* Invoked when the controller is removed from the DOM. Implement <code>disconnectedCallback</code> to tear down any DOM event listeners.
|
|
32641
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32642
|
+
*/
|
|
32643
|
+
disconnectedCallback(element: HTMLElement): void;
|
|
32644
|
+
/**
|
|
32645
|
+
* Invoked once per frame. Implement <code>update</code> to modify the camera or other parts of the scene.
|
|
32646
|
+
* @param time - The current simulation time.
|
|
32647
|
+
*/
|
|
32648
|
+
update(scene: Scene, time: JulianDate): void;
|
|
32649
|
+
/**
|
|
32650
|
+
* Invoked when the controller is being updated the first time, immediately before <code>update</code> is called. Implement <code>firstUpdate</code> to perform one-time work after the relevant scene has begun its render loop. Some examples might include initializing simulation time values or adding a primitive to the scene.
|
|
32651
|
+
* @param time - The current simulation time.
|
|
32652
|
+
*/
|
|
32653
|
+
firstUpdate(scene: Scene, time: JulianDate): void;
|
|
32654
|
+
}
|
|
32655
|
+
|
|
32656
|
+
/**
|
|
32657
|
+
* Creates an instance of a <code>ControllerHost</code>. Typically, a <code>ControllerHost</code> is created by the Scene constructor and accessed via {@link Scene#controllerHost}.
|
|
32658
|
+
*/
|
|
32659
|
+
export class ControllerHost {
|
|
32660
|
+
/**
|
|
32661
|
+
* The number of controllers registered to this host.
|
|
32662
|
+
*/
|
|
32663
|
+
readonly controllerCount: number;
|
|
32664
|
+
/**
|
|
32665
|
+
* Registers a controller implementation with this host.
|
|
32666
|
+
* @param controller - An implementation of the Controller interface to register with this host.
|
|
32667
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32668
|
+
* @param [priority = 0] - An index, less than or equal to the current count of registed controllers, that defines the precedence of the new controller relative to those previously registered. A priority of <code>0</code> would mean the new controller would apply its updates before any other controller. As subsequent controllers are updated, their effects are applied on top of any previous update effects. If omitted, the new controller becomes the highest priority, i.e., its updates are applied after all other controllers.
|
|
32669
|
+
*/
|
|
32670
|
+
registerController(controller: Controller, element: HTMLElement, priority?: number): void;
|
|
32671
|
+
/**
|
|
32672
|
+
* Unregisters a controller implementation from this host.
|
|
32673
|
+
* @param controller - An implementation of the Controller interface to unregister from this host.
|
|
32674
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32675
|
+
*/
|
|
32676
|
+
unregisterController(controller: Controller, element: HTMLElement): void;
|
|
32677
|
+
/**
|
|
32678
|
+
* Invoked once per frame by the host scene. Updates all registered controllers in order of their priority.
|
|
32679
|
+
* @param scene - The host scene.
|
|
32680
|
+
* @param time - The current simulation time.
|
|
32681
|
+
*/
|
|
32682
|
+
update(scene: Scene, time: JulianDate): void;
|
|
32683
|
+
}
|
|
32684
|
+
|
|
32685
|
+
export interface HybridScreenSpacePanCameraController extends Controller {
|
|
32686
|
+
}
|
|
32687
|
+
|
|
32688
|
+
/**
|
|
32689
|
+
* A contextual camera controller that combines screenspace map panning and screenspace elevator panning. The controller automatically switches between the two based on the camera's angle relative to nadir. If the camera is looking mostly down (within angleThreshold of nadir), <code>ScreenSpaceMapCameraController</code> is used.
|
|
32690
|
+
* If the camera is looking towards the horizon (beyond angleThreshold from nadir), the <code>ScreenSpaceElevatorCameraController</code> is used.
|
|
32691
|
+
* @example
|
|
32692
|
+
* viewer.scene.screenSpaceCameraController.enableInputs = false;
|
|
32693
|
+
* viewer.scene.screenSpaceCameraController.enableCollisionDetection = false;
|
|
32694
|
+
*
|
|
32695
|
+
* const hybridController = new HybridScreenSpacePanCameraController();
|
|
32696
|
+
* viewer.addController(hybridController);
|
|
32697
|
+
*/
|
|
32698
|
+
export class HybridScreenSpacePanCameraController implements Controller {
|
|
32699
|
+
/**
|
|
32700
|
+
* The angle threshold in radians that determines which controller is used. If the camera is looking within this angle of nadir, the map controller is used. Otherwise, the elevator controller is used.
|
|
32701
|
+
*/
|
|
32702
|
+
angleThreshold: number;
|
|
32703
|
+
/**
|
|
32704
|
+
* The controller that is used when the camera is looking more horizontally (beyond angleThreshold from nadir).
|
|
32705
|
+
*/
|
|
32706
|
+
readonly elevatorController: ScreenSpaceElevatorCameraController;
|
|
32707
|
+
/**
|
|
32708
|
+
* The controller that is used when the camera is looking mostly down (within angleThreshold of nadir).
|
|
32709
|
+
*/
|
|
32710
|
+
readonly mapController: ScreenSpaceMapCameraController;
|
|
32711
|
+
/**
|
|
32712
|
+
* Determines if the controller is enabled and should be updated by the host scene.
|
|
32713
|
+
*/
|
|
32714
|
+
enabled: boolean;
|
|
32715
|
+
/**
|
|
32716
|
+
* Invoked when the controller is added to the DOM. Implement <code>connectedCallback</code> to set up any DOM event listeners.
|
|
32717
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32718
|
+
*/
|
|
32719
|
+
connectedCallback(element: HTMLElement): void;
|
|
32720
|
+
/**
|
|
32721
|
+
* Invoked when the controller is removed from the DOM. Implement <code>disconnectedCallback</code> to tear down any DOM event listeners.
|
|
32722
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32723
|
+
*/
|
|
32724
|
+
disconnectedCallback(element: HTMLElement): void;
|
|
32725
|
+
/**
|
|
32726
|
+
* Invoked once per frame. Implement <code>update</code> to modify the camera or other parts of the scene.
|
|
32727
|
+
* @param time - The current simulation time.
|
|
32728
|
+
*/
|
|
32729
|
+
update(scene: Scene, time: JulianDate): void;
|
|
32730
|
+
/**
|
|
32731
|
+
* Invoked when the controller is being updated the first time, immediately before <code>update</code> is called. Implement <code>firstUpdate</code> to perform one-time work after the relevant scene has begun its render loop. Some examples might include initializing simulation time values or adding a primitive to the scene.
|
|
32732
|
+
* @param time - The current simulation time.
|
|
32733
|
+
*/
|
|
32734
|
+
firstUpdate(scene: Scene, time: JulianDate): void;
|
|
32735
|
+
}
|
|
32736
|
+
|
|
32737
|
+
/**
|
|
32738
|
+
* This enumerated type is for classifying mouse buttons: left, middle, and right.
|
|
32739
|
+
*/
|
|
32740
|
+
export enum MouseButton {
|
|
32741
|
+
/**
|
|
32742
|
+
* Represents a mouse left button.
|
|
32743
|
+
*/
|
|
32744
|
+
LEFT = 0,
|
|
32745
|
+
/**
|
|
32746
|
+
* Represents a mouse middle button.
|
|
32747
|
+
*/
|
|
32748
|
+
MIDDLE = 1,
|
|
32749
|
+
/**
|
|
32750
|
+
* Represents a mouse right button.
|
|
32751
|
+
*/
|
|
32752
|
+
RIGHT = 2
|
|
32753
|
+
}
|
|
32754
|
+
|
|
32755
|
+
export namespace ScreenSpaceElevatorCameraController {
|
|
32756
|
+
/**
|
|
32757
|
+
* @property [dragInputs] - The drag input bindings that control panning.
|
|
32758
|
+
*/
|
|
32759
|
+
type ControllerOptions = {
|
|
32760
|
+
dragInputs?: ScreenSpaceInputBindings.InputBinding[];
|
|
32761
|
+
};
|
|
32762
|
+
}
|
|
32763
|
+
|
|
32764
|
+
export interface ScreenSpaceElevatorCameraController extends Controller {
|
|
32765
|
+
}
|
|
32766
|
+
|
|
32767
|
+
/**
|
|
32768
|
+
* Creates an instance of a ScreenSpaceElevatorCameraController.
|
|
32769
|
+
* @example
|
|
32770
|
+
* viewer.scene.screenSpaceCameraController.enableInputs = false;
|
|
32771
|
+
* viewer.scene.screenSpaceCameraController.enableCollisionDetection = false;
|
|
32772
|
+
*
|
|
32773
|
+
* const elevatorCameraController = new Cesium.ScreenSpaceElevatorCameraController();
|
|
32774
|
+
* viewer.addController(elevatorCameraController);
|
|
32775
|
+
* @example
|
|
32776
|
+
* // Configure the controller to use the right mouse button for panning instead of the default left mouse button.
|
|
32777
|
+
* const elevatorCameraController = new Cesium.ScreenSpaceElevatorCameraController({
|
|
32778
|
+
* dragInputs: [{ button: Cesium.MouseButton.RIGHT}]
|
|
32779
|
+
* });
|
|
32780
|
+
* viewer.addController(elevatorCameraController);
|
|
32781
|
+
* @param [options] - The options for configuring the controller.
|
|
32782
|
+
*/
|
|
32783
|
+
export class ScreenSpaceElevatorCameraController implements Controller {
|
|
32784
|
+
constructor(options?: ScreenSpaceElevatorCameraController.ControllerOptions);
|
|
32785
|
+
/**
|
|
32786
|
+
* The drag input bindings that control vertical panning. Each binding is a combination of the mouse button
|
|
32787
|
+
* and an optional keyboard modifier.
|
|
32788
|
+
*/
|
|
32789
|
+
dragInputs: ScreenSpaceInputBindings.InputBinding[];
|
|
32790
|
+
/**
|
|
32791
|
+
* A callback function used to pick the world position from which to pan. The function is called with {@link Scene}, the {@link Cartesian2} screen space position, and a {@link Cartesian3} instance to store the result. The function should return the {@link Cartesian3} world position from which to pan, or <code>undefined</code> if no position could be picked. If <code>undefined</code> is returned, the camera will pan relative to the ellipsoid surface below the camera.
|
|
32792
|
+
* @example
|
|
32793
|
+
* const elevatorCameraController = new Cesium.ScreenSpaceElevatorCameraController();
|
|
32794
|
+
* elevatorCameraController.pickWorldPosition = function (scene, windowPosition, result) {
|
|
32795
|
+
* // Pick the world position from the depth buffer
|
|
32796
|
+
* return scene.pickPosition(windowPosition, result);
|
|
32797
|
+
* };
|
|
32798
|
+
* viewer.addController(elevatorCameraController);
|
|
32799
|
+
*/
|
|
32800
|
+
pickWorldPosition: (...params: any[]) => any;
|
|
32801
|
+
/**
|
|
32802
|
+
* The speed in meters per pixel at which the camera pans.
|
|
32803
|
+
*/
|
|
32804
|
+
panSpeed: number;
|
|
32805
|
+
/**
|
|
32806
|
+
* Enable or disable inertia when panning. When enabled, the camera will continue to move after the user stops dragging, gradually slowing down based on {@link ScreenSpaceMapCameraController#inertialDecay}.
|
|
32807
|
+
*/
|
|
32808
|
+
inertiaEnabled: boolean;
|
|
32809
|
+
/**
|
|
32810
|
+
* The rate at which the camera's pan velocity decays over time.
|
|
32811
|
+
*/
|
|
32812
|
+
inertialDecay: number;
|
|
32813
|
+
/**
|
|
32814
|
+
* A parameter in the range <code>[0, 1)</code> used to limit the range
|
|
32815
|
+
* of inputs to a percentage of the window width/height per animation frame.
|
|
32816
|
+
* This helps keep the camera under control in low-frame-rate situations.
|
|
32817
|
+
*/
|
|
32818
|
+
maximumMovementRatio: number;
|
|
32819
|
+
/**
|
|
32820
|
+
* Determines if the controller is enabled and should be updated by the host scene.
|
|
32821
|
+
*/
|
|
32822
|
+
enabled: boolean;
|
|
32823
|
+
/**
|
|
32824
|
+
* Invoked when the controller is added to the DOM. Implement <code>connectedCallback</code> to set up any DOM event listeners.
|
|
32825
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32826
|
+
*/
|
|
32827
|
+
connectedCallback(element: HTMLElement): void;
|
|
32828
|
+
/**
|
|
32829
|
+
* Invoked when the controller is removed from the DOM. Implement <code>disconnectedCallback</code> to tear down any DOM event listeners.
|
|
32830
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32831
|
+
*/
|
|
32832
|
+
disconnectedCallback(element: HTMLElement): void;
|
|
32833
|
+
/**
|
|
32834
|
+
* Invoked once per frame. Implement <code>update</code> to modify the camera or other parts of the scene.
|
|
32835
|
+
* @param time - The current simulation time.
|
|
32836
|
+
*/
|
|
32837
|
+
update(scene: Scene, time: JulianDate): void;
|
|
32838
|
+
/**
|
|
32839
|
+
* Invoked when the controller is being updated the first time, immediately before <code>update</code> is called. Implement <code>firstUpdate</code> to perform one-time work after the relevant scene has begun its render loop. Some examples might include initializing simulation time values or adding a primitive to the scene.
|
|
32840
|
+
* @param time - The current simulation time.
|
|
32841
|
+
*/
|
|
32842
|
+
firstUpdate(scene: Scene, time: JulianDate): void;
|
|
32843
|
+
}
|
|
32844
|
+
|
|
32845
|
+
export namespace ScreenSpaceInputBindings {
|
|
32846
|
+
/**
|
|
32847
|
+
* @property button - The mouse button used for drag start/stop.
|
|
32848
|
+
* @property [modifier] - The optional keyboard modifier to register.
|
|
32849
|
+
*/
|
|
32850
|
+
type InputBinding = {
|
|
32851
|
+
button: MouseButton;
|
|
32852
|
+
modifier?: number;
|
|
32853
|
+
};
|
|
32854
|
+
/**
|
|
32855
|
+
* @property [start] - Called on drag start.
|
|
32856
|
+
* @property [end] - Called on drag stop.
|
|
32857
|
+
* @property [change] - Called on drag move.
|
|
32858
|
+
*/
|
|
32859
|
+
type DragInputActions = {
|
|
32860
|
+
start?: (...params: any[]) => any;
|
|
32861
|
+
end?: (...params: any[]) => any;
|
|
32862
|
+
change?: (...params: any[]) => any;
|
|
32863
|
+
};
|
|
32864
|
+
/**
|
|
32865
|
+
* @property isDragging - True if a drag is in progress, false otherwise.
|
|
32866
|
+
*/
|
|
32867
|
+
type DragInputState = {
|
|
32868
|
+
isDragging: boolean;
|
|
32869
|
+
};
|
|
32870
|
+
/**
|
|
32871
|
+
* Registers drag input bindings on a screen space event handler.
|
|
32872
|
+
* @param handler - The screen space event handler.
|
|
32873
|
+
* @param inputBindings - The drag bindings to register.
|
|
32874
|
+
* @param dragInputActions - The callbacks to invoke for drag actions.
|
|
32875
|
+
* @returns The drag input state.
|
|
32876
|
+
*/
|
|
32877
|
+
function registerDragInputBindings(handler: ScreenSpaceEventHandler, inputBindings: InputBinding[], dragInputActions: DragInputActions): DragInputState;
|
|
32878
|
+
}
|
|
32879
|
+
|
|
32880
|
+
export namespace ScreenSpaceMapCameraController {
|
|
32881
|
+
/**
|
|
32882
|
+
* @property [dragInputs] - The drag input bindings that control panning.
|
|
32883
|
+
*/
|
|
32884
|
+
type ControllerOptions = {
|
|
32885
|
+
dragInputs?: ScreenSpaceInputBindings.InputBinding[];
|
|
32886
|
+
};
|
|
32887
|
+
}
|
|
32888
|
+
|
|
32889
|
+
export interface ScreenSpaceMapCameraController extends Controller {
|
|
32890
|
+
}
|
|
32891
|
+
|
|
32892
|
+
/**
|
|
32893
|
+
* Creates an instance of a ScreenSpaceMapCameraController.
|
|
32894
|
+
* @example
|
|
32895
|
+
* viewer.scene.screenSpaceCameraController.enableInputs = false;
|
|
32896
|
+
*
|
|
32897
|
+
* const mapCameraController = new Cesium.ScreenSpaceMapCameraController();
|
|
32898
|
+
* viewer.addController(mapCameraController);
|
|
32899
|
+
* @example
|
|
32900
|
+
* // Configure the controller to use the right mouse button for panning instead of the default left mouse button.
|
|
32901
|
+
* const mapCameraController = new Cesium.ScreenSpaceMapCameraController({
|
|
32902
|
+
* dragInputs: [{ button: Cesium.MouseButton.RIGHT}]
|
|
32903
|
+
* });
|
|
32904
|
+
* viewer.addController(mapCameraController);
|
|
32905
|
+
* @param [options] - The options for configuring the controller.
|
|
32906
|
+
*/
|
|
32907
|
+
export class ScreenSpaceMapCameraController implements Controller {
|
|
32908
|
+
constructor(options?: ScreenSpaceMapCameraController.ControllerOptions);
|
|
32909
|
+
/**
|
|
32910
|
+
* The drag input bindings that map panning. Each binding is a combination of the mouse button
|
|
32911
|
+
* and an optional keyboard modifier.
|
|
32912
|
+
*/
|
|
32913
|
+
dragInputs: ScreenSpaceInputBindings.InputBinding[];
|
|
32914
|
+
/**
|
|
32915
|
+
* A callback function used to pick the world position from which to pan. The function is called with {@link Scene}, the {@link Cartesian2} screen space position, and a {@link Cartesian3} instance to store the result. The function should return the {@link Cartesian3} world position from which to pan, or <code>undefined</code> if no position could be picked. If <code>undefined</code> is returned, the camera will pan relative to the ellipsoid surface below the camera.
|
|
32916
|
+
* @example
|
|
32917
|
+
* const mapCameraController = new Cesium.ScreenSpaceMapCameraController();
|
|
32918
|
+
* mapCameraController.pickWorldPosition = function (scene, windowPosition, result) {
|
|
32919
|
+
* // Pick the world position from the depth buffer
|
|
32920
|
+
* return scene.pickPosition(windowPosition, result);
|
|
32921
|
+
* };
|
|
32922
|
+
* viewer.addController(mapCameraController);
|
|
32923
|
+
*/
|
|
32924
|
+
pickWorldPosition: (...params: any[]) => any;
|
|
32925
|
+
/**
|
|
32926
|
+
* The speed in meters per pixel at which the camera pans.
|
|
32927
|
+
*/
|
|
32928
|
+
panSpeed: number;
|
|
32929
|
+
/**
|
|
32930
|
+
* Enable or disable inertia when panning. When enabled, the camera will continue to move after the user stops dragging, gradually slowing down based on {@link ScreenSpaceMapCameraController#inertialDecay}.
|
|
32931
|
+
*/
|
|
32932
|
+
inertiaEnabled: boolean;
|
|
32933
|
+
/**
|
|
32934
|
+
* The rate at which the camera's pan velocity decays over time.
|
|
32935
|
+
*/
|
|
32936
|
+
inertialDecay: number;
|
|
32937
|
+
/**
|
|
32938
|
+
* A parameter in the range <code>[0, 1)</code> used to limit the range
|
|
32939
|
+
* of inputs to a percentage of the window width/height per animation frame.
|
|
32940
|
+
* This helps keep the camera under control in low-frame-rate situations.
|
|
32941
|
+
*/
|
|
32942
|
+
maximumMovementRatio: number;
|
|
32943
|
+
/**
|
|
32944
|
+
* Determines if the controller is enabled and should be updated by the host scene.
|
|
32945
|
+
*/
|
|
32946
|
+
enabled: boolean;
|
|
32947
|
+
/**
|
|
32948
|
+
* Invoked when the controller is added to the DOM. Implement <code>connectedCallback</code> to set up any DOM event listeners.
|
|
32949
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32950
|
+
*/
|
|
32951
|
+
connectedCallback(element: HTMLElement): void;
|
|
32952
|
+
/**
|
|
32953
|
+
* Invoked when the controller is removed from the DOM. Implement <code>disconnectedCallback</code> to tear down any DOM event listeners.
|
|
32954
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
32955
|
+
*/
|
|
32956
|
+
disconnectedCallback(element: HTMLElement): void;
|
|
32957
|
+
/**
|
|
32958
|
+
* Invoked once per frame. Implement <code>update</code> to modify the camera or other parts of the scene.
|
|
32959
|
+
* @param time - The current simulation time.
|
|
32960
|
+
*/
|
|
32961
|
+
update(scene: Scene, time: JulianDate): void;
|
|
32962
|
+
/**
|
|
32963
|
+
* Invoked when the controller is being updated the first time, immediately before <code>update</code> is called. Implement <code>firstUpdate</code> to perform one-time work after the relevant scene has begun its render loop. Some examples might include initializing simulation time values or adding a primitive to the scene.
|
|
32964
|
+
* @param time - The current simulation time.
|
|
32965
|
+
*/
|
|
32966
|
+
firstUpdate(scene: Scene, time: JulianDate): void;
|
|
32967
|
+
}
|
|
32968
|
+
|
|
32969
|
+
export namespace ScreenSpaceTiltOrbitCameraController {
|
|
32970
|
+
/**
|
|
32971
|
+
* @property [dragInputs] - The drag input bindings that control tilting and orbiting.
|
|
32972
|
+
*/
|
|
32973
|
+
type ControllerOptions = {
|
|
32974
|
+
dragInputs?: ScreenSpaceInputBindings.InputBinding[];
|
|
32975
|
+
};
|
|
32976
|
+
}
|
|
32977
|
+
|
|
32978
|
+
export interface ScreenSpaceTiltOrbitCameraController extends Controller {
|
|
32979
|
+
}
|
|
32980
|
+
|
|
32981
|
+
/**
|
|
32982
|
+
* Creates a new instance of <code>ScreenSpaceTiltOrbitCameraController</code>.
|
|
32983
|
+
* @example
|
|
32984
|
+
* viewer.scene.screenSpaceCameraController.enableInputs = false;
|
|
32985
|
+
* viewer.scene.screenSpaceCameraController.enableCollisionDetection = false;
|
|
32986
|
+
*
|
|
32987
|
+
* const tiltOrbitController = new Cesium.ScreenSpaceTiltOrbitCameraController();
|
|
32988
|
+
* viewer.addController(tiltOrbitController);
|
|
32989
|
+
* @example
|
|
32990
|
+
* // Tilt around the position under the cursor or tap when dragging starts instead of the position at the center of the screen.
|
|
32991
|
+
* viewer.scene.screenSpaceCameraController.enableInputs = false;
|
|
32992
|
+
* viewer.scene.screenSpaceCameraController.enableCollisionDetection = false;
|
|
32993
|
+
*
|
|
32994
|
+
* const tiltOrbitController = new Cesium.ScreenSpaceTiltOrbitCameraController();
|
|
32995
|
+
* tiltOrbitController.useDragPosition = true;
|
|
32996
|
+
* viewer.addController(tiltOrbitController);
|
|
32997
|
+
* @example
|
|
32998
|
+
* // Configure the controller to use the left mouse button for tilting and orbiting instead of the default right mouse button.
|
|
32999
|
+
* const tiltOrbitController = new Cesium.ScreenSpaceTiltOrbitCameraController({
|
|
33000
|
+
* dragInputs: [{ button: Cesium.MouseButton.LEFT }]
|
|
33001
|
+
* });
|
|
33002
|
+
* viewer.addController(tiltOrbitController);
|
|
33003
|
+
* @param [options] - The options for configuring the controller.
|
|
33004
|
+
*/
|
|
33005
|
+
export class ScreenSpaceTiltOrbitCameraController implements Controller {
|
|
33006
|
+
constructor(options?: ScreenSpaceTiltOrbitCameraController.ControllerOptions);
|
|
33007
|
+
/**
|
|
33008
|
+
* Enabled dragging to tilt the camera.
|
|
33009
|
+
*/
|
|
33010
|
+
tiltEnabled: boolean;
|
|
33011
|
+
/**
|
|
33012
|
+
* Enabled dragging to orbit the camera.
|
|
33013
|
+
*/
|
|
33014
|
+
orbitEnabled: boolean;
|
|
33015
|
+
/**
|
|
33016
|
+
* If false, the camera will orbit and tilt around the position at the center of the screen. If true, the camera will orbit and tilt around the position under the cursor or tap when dragging starts.
|
|
33017
|
+
*/
|
|
33018
|
+
useDragPosition: boolean;
|
|
33019
|
+
/**
|
|
33020
|
+
* The drag input bindings that control tilting. Each binding is a combination of the mouse button
|
|
33021
|
+
* and an optional keyboard modifier.
|
|
33022
|
+
*/
|
|
33023
|
+
dragInputs: ScreenSpaceInputBindings.InputBinding[];
|
|
33024
|
+
/**
|
|
33025
|
+
* A callback function used to pick the world position around which to tilt or orbit. The function is called with {@link Scene}, the {@link Cartesian2} screen space position, and a {@link Cartesian3} instance to store the result. The function should return the {@link Cartesian3} world position from which to tilt or orbit, or <code>undefined</code> if no position could be picked.
|
|
33026
|
+
* @example
|
|
33027
|
+
* const tiltOrbitCameraController = new Cesium.ScreenSpaceTiltOrbitCameraController();
|
|
33028
|
+
* tiltOrbitCameraController.pickWorldPosition = function (scene, windowPosition, result) {
|
|
33029
|
+
* // Pick the world position from the depth buffer
|
|
33030
|
+
* return scene.pickPosition(windowPosition, result);
|
|
33031
|
+
* };
|
|
33032
|
+
* viewer.addController(tiltOrbitCameraController);
|
|
33033
|
+
*/
|
|
33034
|
+
pickWorldPosition: (...params: any[]) => any;
|
|
33035
|
+
/**
|
|
33036
|
+
* The amount at which the camera tilts per dragged pixel. A value of 1.0 means that dragging the mouse across the entire canvas will tilt the camera by 90 degrees.
|
|
33037
|
+
*/
|
|
33038
|
+
tiltMagnitude: number;
|
|
33039
|
+
/**
|
|
33040
|
+
* Enables or disables damping for tilt and orbit animations. Damping smooths out the camera movement and makes it feel more natural or weighty, but it can also introduce a slight delay in the camera response. If damping is disabled, the camera will respond immediately to user input.
|
|
33041
|
+
*/
|
|
33042
|
+
dampingEnabled: boolean;
|
|
33043
|
+
/**
|
|
33044
|
+
* Specifies the length of time in seconds in which a single tilt animation is targeted to complete.
|
|
33045
|
+
*/
|
|
33046
|
+
tiltAnimationDuration: number;
|
|
33047
|
+
/**
|
|
33048
|
+
* The maximum tilt velocity in radians per second. A value of Number.POSITIVE_INFINITY means that the maximum tilt velocity is unbounded.
|
|
33049
|
+
*/
|
|
33050
|
+
maximumTiltVelocity: number;
|
|
33051
|
+
/**
|
|
33052
|
+
* The amount at which the camera orbits per dragged pixel. A value of 1.0 means that dragging the mouse across the entire canvas will orbit the camera by 180 degrees.
|
|
33053
|
+
*/
|
|
33054
|
+
orbitMagnitude: number;
|
|
33055
|
+
/**
|
|
33056
|
+
* Specifies the length of time in seconds in which a single orbit animation completes.
|
|
33057
|
+
*/
|
|
33058
|
+
orbitAnimationDuration: number;
|
|
33059
|
+
/**
|
|
33060
|
+
* The maximum orbit velocity in radians per second. A value of Number.POSITIVE_INFINITY means that the maximum orbit velocity is unbounded.
|
|
33061
|
+
*/
|
|
33062
|
+
maximumOrbitVelocity: number;
|
|
33063
|
+
/**
|
|
33064
|
+
* A parameter in the range <code>[0, 1)</code> used to limit the range
|
|
33065
|
+
* of inputs to a percentage of the window width/height per animation frame.
|
|
33066
|
+
* This helps keep the camera under control in low-frame-rate situations.
|
|
33067
|
+
*/
|
|
33068
|
+
maximumMovementRatio: number;
|
|
33069
|
+
/**
|
|
33070
|
+
* Attempts to orbit the camera around the specified origin by the specified amount in radians. Positive values orbit the camera clockwise, negative values orbit the camera counterclockwise. If the drag origin is not on the ellipsoid, no orbit is applied.
|
|
33071
|
+
* @param camera - The camera to orbit.
|
|
33072
|
+
* @param target - The origin position to orbit around in world coordinates.
|
|
33073
|
+
* @param axis - The axis to orbit around, typically the negative of the surface normal at the target position.
|
|
33074
|
+
* @param amount - The amount to orbit the camera in radians. Positive values orbit the camera clockwise, negative values orbit the camera counterclockwise.
|
|
33075
|
+
* @param dt - The time delta in seconds since the last update.
|
|
33076
|
+
* @param [ellipsoid = Ellipsoid.default] - The ellipsoid to pick for the orbit origin. If undefined, the default ellipsoid is used.
|
|
33077
|
+
*/
|
|
33078
|
+
orbit(camera: Camera, target: Cartesian3, axis: Cartesian3, amount: number, dt: number, ellipsoid?: Ellipsoid): void;
|
|
33079
|
+
/**
|
|
33080
|
+
* Attempts to tilt the camera by the specified amount in radians. Positive values tilt the camera down, negative values tilt the camera up. If the drag origin is not on the ellipsoid, no tilt is applied.
|
|
33081
|
+
* @param camera - The camera to tilt.
|
|
33082
|
+
* @param target - The origin position to tilt around in world coordinates.
|
|
33083
|
+
* @param axis - The axis to tilt around, typically the negative of the surface normal at the target position.
|
|
33084
|
+
* @param amount - The amount to tilt the camera in radians. Positive values tilt the camera down, negative values tilt the camera up.
|
|
33085
|
+
* @param dt - The time delta in seconds since the last update. Value must be greater than 0.
|
|
33086
|
+
* @param [ellipsoid = Ellipsoid.default] - The ellipsoid to pick for the tilt origin. If undefined, the default ellipsoid is used.
|
|
33087
|
+
*/
|
|
33088
|
+
tilt(camera: Camera, target: Cartesian3, axis: Cartesian3, amount: number, dt: number, ellipsoid?: Ellipsoid): void;
|
|
33089
|
+
/**
|
|
33090
|
+
* Determines if the controller is enabled and should be updated by the host scene.
|
|
33091
|
+
*/
|
|
33092
|
+
enabled: boolean;
|
|
33093
|
+
/**
|
|
33094
|
+
* Invoked when the controller is added to the DOM. Implement <code>connectedCallback</code> to set up any DOM event listeners.
|
|
33095
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
33096
|
+
*/
|
|
33097
|
+
connectedCallback(element: HTMLElement): void;
|
|
33098
|
+
/**
|
|
33099
|
+
* Invoked when the controller is removed from the DOM. Implement <code>disconnectedCallback</code> to tear down any DOM event listeners.
|
|
33100
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
33101
|
+
*/
|
|
33102
|
+
disconnectedCallback(element: HTMLElement): void;
|
|
33103
|
+
/**
|
|
33104
|
+
* Invoked once per frame. Implement <code>update</code> to modify the camera or other parts of the scene.
|
|
33105
|
+
* @param time - The current simulation time.
|
|
33106
|
+
*/
|
|
33107
|
+
update(scene: Scene, time: JulianDate): void;
|
|
33108
|
+
/**
|
|
33109
|
+
* Invoked when the controller is being updated the first time, immediately before <code>update</code> is called. Implement <code>firstUpdate</code> to perform one-time work after the relevant scene has begun its render loop. Some examples might include initializing simulation time values or adding a primitive to the scene.
|
|
33110
|
+
* @param time - The current simulation time.
|
|
33111
|
+
*/
|
|
33112
|
+
firstUpdate(scene: Scene, time: JulianDate): void;
|
|
33113
|
+
}
|
|
33114
|
+
|
|
33115
|
+
export namespace ScreenSpaceZoomCameraController {
|
|
33116
|
+
/**
|
|
33117
|
+
* @property [dragInputs] - The drag input bindings that control zooming.
|
|
33118
|
+
* @property [scrollInputs] - The scroll input bindings that control zooming.
|
|
33119
|
+
*/
|
|
33120
|
+
type ControllerOptions = {
|
|
33121
|
+
dragInputs?: ScreenSpaceInputBindings.InputBinding[];
|
|
33122
|
+
scrollInputs?: ScreenSpaceEventType[];
|
|
33123
|
+
};
|
|
33124
|
+
}
|
|
33125
|
+
|
|
33126
|
+
export interface ScreenSpaceZoomCameraController extends Controller {
|
|
33127
|
+
}
|
|
33128
|
+
|
|
33129
|
+
/**
|
|
33130
|
+
* Creates a new instance of <code>ScreenSpaceZoomCameraController</code>.
|
|
33131
|
+
* @example
|
|
33132
|
+
* viewer.scene.screenSpaceCameraController.enableInputs = false;
|
|
33133
|
+
* viewer.scene.screenSpaceCameraController.enableCollisionDetection = false;
|
|
33134
|
+
*
|
|
33135
|
+
* const zoomCameraController = new Cesium.ScreenSpaceZoomCameraController();
|
|
33136
|
+
* viewer.addController(zoomCameraController);
|
|
33137
|
+
* @param [options] - The options for configuring the controller.
|
|
33138
|
+
*/
|
|
33139
|
+
export class ScreenSpaceZoomCameraController implements Controller {
|
|
33140
|
+
constructor(options?: ScreenSpaceZoomCameraController.ControllerOptions);
|
|
33141
|
+
/**
|
|
33142
|
+
* If false, the camera will zoom to the position at the center of the screen. If true, the camera will zoom to the position under the cursor or tap when dragging starts or when scrolling with the scroll wheel.
|
|
33143
|
+
*/
|
|
33144
|
+
usePointerPosition: boolean;
|
|
33145
|
+
/**
|
|
33146
|
+
* The drag input bindings that control zooming. Each binding is a combination of the mouse button
|
|
33147
|
+
* and an optional keyboard modifier.
|
|
33148
|
+
*/
|
|
33149
|
+
dragInputs: ScreenSpaceInputBindings.InputBinding[];
|
|
33150
|
+
/**
|
|
33151
|
+
* The scroll input bindings that control zooming.
|
|
33152
|
+
*/
|
|
33153
|
+
scrollInputs: ScreenSpaceEventType[];
|
|
33154
|
+
/**
|
|
33155
|
+
* The rate at which the camera zooms in and out based on the mouse wheel delta.
|
|
33156
|
+
*/
|
|
33157
|
+
zoomSensitivity: number;
|
|
33158
|
+
/**
|
|
33159
|
+
* A callback function used to pick the world position from which to zoom. The function is called with {@link Scene}, the {@link Cartesian2} screen space position, and a {@link Cartesian3} instance to store the result. The function should return the {@link Cartesian3} world position from which to zoom, or <code>undefined</code> if no position could be picked.
|
|
33160
|
+
* @example
|
|
33161
|
+
* const zoomCameraController = new Cesium.ScreenSpaceZoomCameraController();
|
|
33162
|
+
* zoomCameraController.pickWorldPosition = function (scene, windowPosition, result) {
|
|
33163
|
+
* // Pick the world position from the depth buffer
|
|
33164
|
+
* return scene.pickPosition(windowPosition, result);
|
|
33165
|
+
* };
|
|
33166
|
+
* viewer.addController(zoomCameraController);
|
|
33167
|
+
*/
|
|
33168
|
+
pickWorldPosition: (...params: any[]) => any;
|
|
33169
|
+
/**
|
|
33170
|
+
* The ratio of the camera's distance to the zoom target that defines how much the camera zooms in and out per second.
|
|
33171
|
+
*/
|
|
33172
|
+
zoomDistanceRatio: number;
|
|
33173
|
+
/**
|
|
33174
|
+
* Enable or disable inertia when zooming. When enabled, the camera will continue to move after the user input stops, gradually slowing down based on {@link ScreenSpaceZoomCameraController#inertialDecay}.
|
|
33175
|
+
*/
|
|
33176
|
+
inertiaEnabled: boolean;
|
|
33177
|
+
/**
|
|
33178
|
+
* The rate at which the camera's zoom velocity decays over time.
|
|
33179
|
+
*/
|
|
33180
|
+
inertialDecay: number;
|
|
33181
|
+
/**
|
|
33182
|
+
* Maximum distance from the zoom target that the camera can move away.
|
|
33183
|
+
*/
|
|
33184
|
+
maximumZoomDistance: number;
|
|
33185
|
+
/**
|
|
33186
|
+
* The maximum zoom velocity in meters per second. This limits the speed at which the camera can zoom in and out.
|
|
33187
|
+
*/
|
|
33188
|
+
maximumZoomVelocity: number;
|
|
33189
|
+
/**
|
|
33190
|
+
* Enables or disables damping for zooming. Damping smooths out the camera movement and makes it feel more natural or weighty, but it can also introduce a slight delay in the camera response. If damping is disabled, the camera will respond immediately to user input.
|
|
33191
|
+
*/
|
|
33192
|
+
dampingEnabled: boolean;
|
|
33193
|
+
/**
|
|
33194
|
+
* Specifies the length of time in seconds in which a single zoom animation is targeted to complete.
|
|
33195
|
+
*/
|
|
33196
|
+
zoomAnimationDuration: number;
|
|
33197
|
+
/**
|
|
33198
|
+
* Determines if the controller is enabled and should be updated by the host scene.
|
|
33199
|
+
*/
|
|
33200
|
+
enabled: boolean;
|
|
33201
|
+
/**
|
|
33202
|
+
* Invoked when the controller is added to the DOM. Implement <code>connectedCallback</code> to set up any DOM event listeners.
|
|
33203
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
33204
|
+
*/
|
|
33205
|
+
connectedCallback(element: HTMLElement): void;
|
|
33206
|
+
/**
|
|
33207
|
+
* Invoked when the controller is removed from the DOM. Implement <code>disconnectedCallback</code> to tear down any DOM event listeners.
|
|
33208
|
+
* @param element - The DOM element containing the Cesium scene.
|
|
33209
|
+
*/
|
|
33210
|
+
disconnectedCallback(element: HTMLElement): void;
|
|
33211
|
+
/**
|
|
33212
|
+
* Invoked once per frame. Implement <code>update</code> to modify the camera or other parts of the scene.
|
|
33213
|
+
* @param time - The current simulation time.
|
|
33214
|
+
*/
|
|
33215
|
+
update(scene: Scene, time: JulianDate): void;
|
|
33216
|
+
/**
|
|
33217
|
+
* Invoked when the controller is being updated the first time, immediately before <code>update</code> is called. Implement <code>firstUpdate</code> to perform one-time work after the relevant scene has begun its render loop. Some examples might include initializing simulation time values or adding a primitive to the scene.
|
|
33218
|
+
* @param time - The current simulation time.
|
|
33219
|
+
*/
|
|
33220
|
+
firstUpdate(scene: Scene, time: JulianDate): void;
|
|
33221
|
+
}
|
|
33222
|
+
|
|
32583
33223
|
/**
|
|
32584
33224
|
* The credit display is responsible for displaying credits on screen.
|
|
32585
33225
|
* @example
|
|
@@ -37057,10 +37697,9 @@ export namespace IonImageryProvider {
|
|
|
37057
37697
|
* @example
|
|
37058
37698
|
* const imageryLayer = Cesium.ImageryLayer.fromProviderAsync(Cesium.IonImageryProvider.fromAssetId(3812));
|
|
37059
37699
|
* viewer.imageryLayers.add(imageryLayer);
|
|
37060
|
-
* @param [options] - Object describing initialization options
|
|
37061
37700
|
*/
|
|
37062
37701
|
export class IonImageryProvider {
|
|
37063
|
-
constructor(
|
|
37702
|
+
constructor();
|
|
37064
37703
|
/**
|
|
37065
37704
|
* Gets the rectangle, in radians, of the imagery provided by the instance.
|
|
37066
37705
|
*/
|
|
@@ -37758,7 +38397,7 @@ export class Light {
|
|
|
37758
38397
|
* This object is normally not instantiated directly, use {@link MVTDataProvider.fromUrl}.
|
|
37759
38398
|
* </div>
|
|
37760
38399
|
*/
|
|
37761
|
-
export class MVTDataProvider {
|
|
38400
|
+
export class MVTDataProvider extends UrlTemplate3DTilesDataProvider {
|
|
37762
38401
|
/**
|
|
37763
38402
|
* Creates an MVTDataProvider from the specified URL template and options.
|
|
37764
38403
|
* @param url - URL template, containing {z}, {x}, and {y} placeholders.
|
|
@@ -37773,7 +38412,7 @@ export class MVTDataProvider {
|
|
|
37773
38412
|
maxZoom?: number;
|
|
37774
38413
|
extent?: Rectangle;
|
|
37775
38414
|
featureIdProperty?: string;
|
|
37776
|
-
}):
|
|
38415
|
+
}): Promise<MVTDataProvider>;
|
|
37777
38416
|
}
|
|
37778
38417
|
|
|
37779
38418
|
/**
|
|
@@ -39605,7 +40244,7 @@ export enum LightingModel {
|
|
|
39605
40244
|
* {@link https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Vendor/EXT_mesh_gpu_instancing|EXT_mesh_gpu_instancing}
|
|
39606
40245
|
* </li>
|
|
39607
40246
|
* <li>
|
|
39608
|
-
* {@link https://github.com/KhronosGroup/glTF/
|
|
40247
|
+
* {@link https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Vendor/EXT_mesh_primitive_restart|EXT_mesh_primitive_restart}
|
|
39609
40248
|
* </li>
|
|
39610
40249
|
* <li>
|
|
39611
40250
|
* {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
|
|
@@ -39637,6 +40276,10 @@ export enum LightingModel {
|
|
|
39637
40276
|
* {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_materials_unlit/README.md|KHR_materials_unlit}
|
|
39638
40277
|
* </li>
|
|
39639
40278
|
* <li>
|
|
40279
|
+
* {@link https://github.com/KhronosGroup/glTF/pull/2569|KHR_mesh_primitive_restart}
|
|
40280
|
+
* (requires a WebGL 2 context; behavior on WebGL 1 is undefined)
|
|
40281
|
+
* </li>
|
|
40282
|
+
* <li>
|
|
39640
40283
|
* {@link https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Khronos/KHR_mesh_quantization|KHR_mesh_quantization}
|
|
39641
40284
|
* </li>
|
|
39642
40285
|
* <li>
|
|
@@ -43634,6 +44277,16 @@ export class Scene {
|
|
|
43634
44277
|
* Gets or sets the camera.
|
|
43635
44278
|
*/
|
|
43636
44279
|
readonly camera: Camera;
|
|
44280
|
+
/**
|
|
44281
|
+
* Collects an array of <code>Controller</code> objects that can be registered with the scene to handle input events, camera animations, and other interactions.
|
|
44282
|
+
* @example
|
|
44283
|
+
* scene.screenSpaceCameraController.enableInputs = false;
|
|
44284
|
+
* scene.screenSpaceCameraController.enableCollisionDetection = false;
|
|
44285
|
+
*
|
|
44286
|
+
* const tiltOrbitController = new Cesium.ScreenSpaceTiltOrbitCameraController();
|
|
44287
|
+
* scene.controllerHost.registerController(tiltOrbitController, scene.canvas.parentNode);
|
|
44288
|
+
*/
|
|
44289
|
+
readonly controllerHost: ControllerHost;
|
|
43637
44290
|
/**
|
|
43638
44291
|
* Gets the controller for camera input handling.
|
|
43639
44292
|
*/
|
|
@@ -43805,6 +44458,27 @@ export class Scene {
|
|
|
43805
44458
|
* @returns Object containing the picked primitive or <code>undefined</code> if nothing is at the location.
|
|
43806
44459
|
*/
|
|
43807
44460
|
pick(windowPosition: Cartesian2, width?: number, height?: number): any | undefined;
|
|
44461
|
+
/**
|
|
44462
|
+
* Returns the best snap target in a screen-space region around <code>windowPosition</code>.
|
|
44463
|
+
* Edges are preferred over surfaces; among hits of the same kind the one
|
|
44464
|
+
* nearest the cursor wins. Returns <code>undefined</code> if the region contains
|
|
44465
|
+
* no snappable geometry.
|
|
44466
|
+
* <p>
|
|
44467
|
+
* Only primitives rendered through the Model pipeline (e.g. 3D Tiles and glTF
|
|
44468
|
+
* models) are snappable. Snapping requires float color attachments
|
|
44469
|
+
* (WebGL2 with <code>EXT_color_buffer_float</code>); if unsupported, this
|
|
44470
|
+
* function returns <code>undefined</code>.
|
|
44471
|
+
* </p>
|
|
44472
|
+
* @param windowPosition - Window coordinates at the center of the search region.
|
|
44473
|
+
* @param [options] - Object with the following properties:
|
|
44474
|
+
* @param [options.width = 25] - Width of the search region in pixels.
|
|
44475
|
+
* @param [options.height = options.width] - Height of the search region in pixels.
|
|
44476
|
+
* @returns The best snap target in the region, or <code>undefined</code> if there is none.
|
|
44477
|
+
*/
|
|
44478
|
+
snap(windowPosition: Cartesian2, options?: {
|
|
44479
|
+
width?: number;
|
|
44480
|
+
height?: number;
|
|
44481
|
+
}): SceneSnapResult | undefined;
|
|
43808
44482
|
/**
|
|
43809
44483
|
* Performs the same operation as Scene.pick but asynchonosly without blocking the main render thread.
|
|
43810
44484
|
* Requires WebGL2 else using fallback.
|
|
@@ -44044,6 +44718,20 @@ export class Scene {
|
|
|
44044
44718
|
destroy(): void;
|
|
44045
44719
|
}
|
|
44046
44720
|
|
|
44721
|
+
/**
|
|
44722
|
+
* The result of a snap operation. See {@link Scene#snap}.
|
|
44723
|
+
* @property object - The snapped primitive or feature.
|
|
44724
|
+
* @property position - The world-space position of the snap point, un-projected from the snap framebuffer's eye-space depth.
|
|
44725
|
+
* @property screenPosition - The window coordinates of the snap point.
|
|
44726
|
+
* @property isEdge - <code>true</code> if the snap point lies on an edge; <code>false</code> if it lies on a surface.
|
|
44727
|
+
*/
|
|
44728
|
+
export type SceneSnapResult = {
|
|
44729
|
+
object: any;
|
|
44730
|
+
position: Cartesian3;
|
|
44731
|
+
screenPosition: Cartesian2;
|
|
44732
|
+
isEdge: boolean;
|
|
44733
|
+
};
|
|
44734
|
+
|
|
44047
44735
|
/**
|
|
44048
44736
|
* Indicates if the scene is viewed in 3D, 2D, or 2.5D Columbus view.
|
|
44049
44737
|
*/
|
|
@@ -45440,6 +46128,60 @@ export enum Tonemapper {
|
|
|
45440
46128
|
PBR_NEUTRAL = "PBR_NEUTRAL"
|
|
45441
46129
|
}
|
|
45442
46130
|
|
|
46131
|
+
/**
|
|
46132
|
+
* Base provider for URL-template vector sources that are rendered through a
|
|
46133
|
+
* runtime-generated 3D Tiles tileset.
|
|
46134
|
+
* @param urlTemplate - URL template containing {z}, {x}, and {y} placeholders.
|
|
46135
|
+
* @param [options] - Provider options.
|
|
46136
|
+
* @param [options.minZoom = 0] - Minimum zoom level represented in the generated tileset.
|
|
46137
|
+
* @param [options.maxZoom = 14] - Maximum zoom level represented in the generated tileset.
|
|
46138
|
+
* @param [options.extent] - Optional geographic extent in radians to constrain the generated tile tree.
|
|
46139
|
+
* @param [options.featureIdProperty] - Feature property name to use as feature ID when supported by content decoding.
|
|
46140
|
+
*/
|
|
46141
|
+
export class UrlTemplate3DTilesDataProvider {
|
|
46142
|
+
constructor(urlTemplate: Resource | string, options?: {
|
|
46143
|
+
minZoom?: number;
|
|
46144
|
+
maxZoom?: number;
|
|
46145
|
+
extent?: Rectangle;
|
|
46146
|
+
featureIdProperty?: string;
|
|
46147
|
+
});
|
|
46148
|
+
/**
|
|
46149
|
+
* Creates a provider from a URL template.
|
|
46150
|
+
* @param url - URL template containing {z}, {x}, and {y} placeholders.
|
|
46151
|
+
* @param [options] - Provider options.
|
|
46152
|
+
*/
|
|
46153
|
+
static fromUrl(url: Resource | string, options?: any): Promise<UrlTemplate3DTilesDataProvider>;
|
|
46154
|
+
/**
|
|
46155
|
+
* URL template containing {z}/{x}/{y}.
|
|
46156
|
+
*/
|
|
46157
|
+
readonly urlTemplate: string;
|
|
46158
|
+
/**
|
|
46159
|
+
* Resource derived from the URL template.
|
|
46160
|
+
*/
|
|
46161
|
+
readonly resource: Resource;
|
|
46162
|
+
/**
|
|
46163
|
+
* Optional geographic extent in radians used to generate tile headers.
|
|
46164
|
+
*/
|
|
46165
|
+
readonly extent: Rectangle | undefined;
|
|
46166
|
+
/**
|
|
46167
|
+
* Backing 3D Tileset.
|
|
46168
|
+
*/
|
|
46169
|
+
readonly tileset: Cesium3DTileset | undefined;
|
|
46170
|
+
/**
|
|
46171
|
+
* Determines if the generated tileset is shown.
|
|
46172
|
+
*/
|
|
46173
|
+
show: boolean;
|
|
46174
|
+
protected _createRuntimeTilesetOptions(): void;
|
|
46175
|
+
protected _createTilesetLoadOptions(): any;
|
|
46176
|
+
protected _configureTileset(_tileset: Cesium3DTileset): void;
|
|
46177
|
+
/**
|
|
46178
|
+
* Subclasses must return a runtime content codec describing how to turn
|
|
46179
|
+
* a downloaded tile payload into a {@link Cesium3DTileContent}. See
|
|
46180
|
+
* {@link Cesium3DTileset#_runtimeContentCodec} for the expected shape.
|
|
46181
|
+
*/
|
|
46182
|
+
protected _createCodec(): any;
|
|
46183
|
+
}
|
|
46184
|
+
|
|
45443
46185
|
export namespace UrlTemplateImageryProvider {
|
|
45444
46186
|
/**
|
|
45445
46187
|
* Initialization options for the UrlTemplateImageryProvider constructor
|
|
@@ -47234,6 +47976,24 @@ export class CesiumWidget {
|
|
|
47234
47976
|
* unless <code>useDefaultRenderLoop</code> is set to false;
|
|
47235
47977
|
*/
|
|
47236
47978
|
render(): void;
|
|
47979
|
+
/**
|
|
47980
|
+
* Adds a controller— an implementation of the {@link Controller} interface used to handle input events, camera animations, and other interactions— to the widget's scene.
|
|
47981
|
+
* @example
|
|
47982
|
+
* widget.scene.screenSpaceCameraController.enableInputs = false;
|
|
47983
|
+
* widget.scene.screenSpaceCameraController.enableCollisionDetection = false;
|
|
47984
|
+
*
|
|
47985
|
+
* const tiltOrbitController = new Cesium.ScreenSpaceTiltOrbitCameraController();
|
|
47986
|
+
* widget.addController(tiltOrbitController);
|
|
47987
|
+
* @param controller - An implementation of the <code>Controller</code> interface.
|
|
47988
|
+
*/
|
|
47989
|
+
addController(controller: Controller): void;
|
|
47990
|
+
/**
|
|
47991
|
+
* Removes a controller— an implementation of the {@link Controller} interface used to handle input events, camera animations, and other interactions— from the widget's scene.
|
|
47992
|
+
* @example
|
|
47993
|
+
* widget.removeController(tiltOrbitController);
|
|
47994
|
+
* @param controller - An implementation of the <code>Controller</code> interface.
|
|
47995
|
+
*/
|
|
47996
|
+
removeController(controller: Controller): void;
|
|
47237
47997
|
/**
|
|
47238
47998
|
* Asynchronously sets the camera to view the provided entity, entities, or data source.
|
|
47239
47999
|
* If the data source is still in the process of loading or the visualization is otherwise still loading,
|