@cesium/engine 26.2.0 → 26.3.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 +656 -518
- package/Build/Workers/{chunk-FU4BGABC.js → chunk-2DKJSPYF.js} +14 -14
- package/Build/Workers/{chunk-NCL22ZUX.js → chunk-2PWVICP6.js} +1 -1
- package/Build/Workers/{chunk-ILME5BXA.js → chunk-2YY724ZX.js} +8 -8
- package/Build/Workers/{chunk-IJZJMIUY.js → chunk-4DMAXPKB.js} +11 -11
- package/Build/Workers/{chunk-IMBVP57H.js → chunk-4LRFYRBX.js} +2 -2
- package/Build/Workers/{chunk-76FDC45O.js → chunk-5JCZHJUU.js} +13 -13
- package/Build/Workers/{chunk-5LSOO2KD.js → chunk-5KG7KDDW.js} +7 -7
- package/Build/Workers/{chunk-UAZUP4I5.js → chunk-6BSNYZZG.js} +5 -5
- package/Build/Workers/{chunk-D6AY775A.js → chunk-6R6SGKYN.js} +6 -6
- package/Build/Workers/{chunk-3PSS3T43.js → chunk-6V2KDEHL.js} +4 -4
- package/Build/Workers/{chunk-GHXVQVUM.js → chunk-75BC2IHI.js} +7 -7
- package/Build/Workers/{chunk-SMTGMFBL.js → chunk-7SESBH2I.js} +4 -4
- package/Build/Workers/{chunk-NEFDMMLY.js → chunk-7WXBTNRV.js} +8 -8
- package/Build/Workers/{chunk-NXGQBQWE.js → chunk-A7SMPV6B.js} +12 -12
- package/Build/Workers/{chunk-O3XFXGPZ.js → chunk-ATSXKJ3L.js} +7 -7
- package/Build/Workers/{chunk-AHWAZRBV.js → chunk-B4AVL7VI.js} +1 -1
- package/Build/Workers/{chunk-OZGPS7FB.js → chunk-B7Q2WF6Q.js} +4 -4
- package/Build/Workers/{chunk-2RGJPWQX.js → chunk-BNDSDQ7D.js} +9 -9
- package/Build/Workers/{chunk-2Z4ZLVOD.js → chunk-CKK6CUXK.js} +6 -6
- package/Build/Workers/{chunk-FCP2QY4G.js → chunk-COKOYTRS.js} +5 -5
- package/Build/Workers/{chunk-6FZDPMTO.js → chunk-CQ4TZXAT.js} +6 -6
- package/Build/Workers/{chunk-HDL4HOXZ.js → chunk-DKSANM4A.js} +12 -12
- package/Build/Workers/{chunk-XCBZVTIV.js → chunk-DZK34ZVD.js} +1 -1
- package/Build/Workers/{chunk-N7CCOFLX.js → chunk-E7G32DWL.js} +1 -1
- package/Build/Workers/{chunk-XDWCTQCZ.js → chunk-EDETO6NY.js} +2 -2
- package/Build/Workers/{chunk-NSKZ6SBK.js → chunk-F34TJJLA.js} +14 -14
- package/Build/Workers/{chunk-GXWQZBAI.js → chunk-GLHDTTTO.js} +2 -2
- package/Build/Workers/{chunk-SJYSIOEM.js → chunk-GS7RY2DH.js} +11 -11
- package/Build/Workers/{chunk-5YPQBFRD.js → chunk-HDD3RFLT.js} +3 -3
- package/Build/Workers/{chunk-36NI5E6W.js → chunk-HDPNFEPP.js} +18 -18
- package/Build/Workers/{chunk-DSGLDRTI.js → chunk-JBJ6BRIM.js} +4 -4
- package/Build/Workers/{chunk-DZUFEE4L.js → chunk-JKTWW7IO.js} +5 -5
- package/Build/Workers/{chunk-O3DKEX7Q.js → chunk-JL4NWWQY.js} +5 -5
- package/Build/Workers/{chunk-I74ZH5LK.js → chunk-JMUUAW4X.js} +10 -10
- package/Build/Workers/{chunk-SXSP3JHS.js → chunk-KBGAHN5R.js} +1 -1
- package/Build/Workers/{chunk-GVA7XQI2.js → chunk-KEWK6VZL.js} +12 -12
- package/Build/Workers/{chunk-EOWDZN5S.js → chunk-L73K5UPP.js} +10 -10
- package/Build/Workers/{chunk-J73T2VOY.js → chunk-LL2SGJYH.js} +6 -6
- package/Build/Workers/{chunk-QFSSCLLZ.js → chunk-LYJUL4XQ.js} +6 -6
- package/Build/Workers/{chunk-MAAHFYPC.js → chunk-M6W46OAP.js} +7 -7
- package/Build/Workers/{chunk-FX3VEAIU.js → chunk-MDDKCLMF.js} +16 -16
- package/Build/Workers/{chunk-M6QKXVAU.js → chunk-MUW4DJV7.js} +17 -17
- package/Build/Workers/{chunk-EZGQPOIG.js → chunk-N5YK44FS.js} +5 -5
- package/Build/Workers/{chunk-27FWRTJI.js → chunk-NZQUP52G.js} +9 -9
- package/Build/Workers/{chunk-A62YI6S6.js → chunk-PKZA44LH.js} +4 -4
- package/Build/Workers/{chunk-7MM3N2VE.js → chunk-Q2JS5LCB.js} +17 -17
- package/Build/Workers/{chunk-KGXSYGBG.js → chunk-QTAEVUED.js} +13 -13
- package/Build/Workers/{chunk-KP5QD7WU.js → chunk-SEJIXZZ4.js} +10 -10
- package/Build/Workers/{chunk-PRWUMCXF.js → chunk-SL2HCFYW.js} +10 -10
- package/Build/Workers/{chunk-NJVBJG63.js → chunk-SLHK3KAR.js} +5 -5
- package/Build/Workers/{chunk-JKXV6PG5.js → chunk-UZY5XRL2.js} +1 -1
- package/Build/Workers/{chunk-LDRQSYBN.js → chunk-VRECSMG3.js} +2 -2
- package/Build/Workers/{chunk-NLLCQBX3.js → chunk-X27HKF5E.js} +2 -2
- package/Build/Workers/{chunk-B3QHNA4A.js → chunk-XBY3354M.js} +6 -6
- package/Build/Workers/{chunk-CRCGE4J4.js → chunk-XRZCS3HE.js} +8 -8
- package/Build/Workers/{chunk-XLQZNQ4Z.js → chunk-XSIUYAT6.js} +2 -2
- package/Build/Workers/{chunk-SA2A2AN5.js → chunk-Z2DW5NM2.js} +4 -4
- package/Build/Workers/combineGeometry.js +24 -24
- package/Build/Workers/createBoxGeometry.js +18 -18
- package/Build/Workers/createBoxOutlineGeometry.js +16 -16
- package/Build/Workers/createCircleGeometry.js +26 -26
- package/Build/Workers/createCircleOutlineGeometry.js +19 -19
- package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createCorridorGeometry.js +29 -29
- package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
- package/Build/Workers/createCylinderGeometry.js +20 -20
- package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
- package/Build/Workers/createEllipseGeometry.js +26 -26
- package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
- package/Build/Workers/createEllipsoidGeometry.js +19 -19
- package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
- package/Build/Workers/createFrustumGeometry.js +18 -18
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
- package/Build/Workers/createGeometry.js +24 -24
- package/Build/Workers/createGroundPolylineGeometry.js +22 -22
- package/Build/Workers/createPlaneGeometry.js +16 -16
- package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
- package/Build/Workers/createPolygonGeometry.js +32 -32
- package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
- package/Build/Workers/createPolylineGeometry.js +25 -25
- package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
- package/Build/Workers/createRectangleGeometry.js +27 -27
- package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
- package/Build/Workers/createSimplePolylineGeometry.js +23 -23
- package/Build/Workers/createSphereGeometry.js +19 -19
- package/Build/Workers/createSphereOutlineGeometry.js +18 -18
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
- package/Build/Workers/createVectorTileGeometries.js +24 -24
- package/Build/Workers/createVectorTilePoints.js +13 -13
- package/Build/Workers/createVectorTilePolygons.js +22 -22
- package/Build/Workers/createVectorTilePolylines.js +14 -14
- package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
- package/Build/Workers/createVerticesFromHeightmap.js +22 -22
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +20 -20
- package/Build/Workers/createWallGeometry.js +24 -24
- package/Build/Workers/createWallOutlineGeometry.js +23 -23
- package/Build/Workers/decodeDraco.js +10 -10
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -10
- package/Build/Workers/gaussianSplatSorter.js +4 -4
- package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
- package/Build/Workers/incrementallyBuildTerrainPicker.js +10 -10
- package/Build/Workers/transcodeKTX2.js +6 -6
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
- package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/IonResource.js +5 -0
- package/Source/Core/IonSnapGeometryType.js +59 -0
- package/Source/Core/IonSnapHeat.js +33 -0
- package/Source/Core/IonSnapMode.js +45 -0
- package/Source/Core/IonSnapParentGeometryType.js +52 -0
- package/Source/Core/IonSnapService.js +369 -0
- package/Source/Core/SnapService.js +63 -0
- package/Source/Core/VectorPipeline.js +139 -45
- package/Source/Core/VectorProvider.js +311 -71
- package/Source/Renderer/AutomaticUniforms.js +44 -2
- package/Source/Renderer/ShaderBuilder.js +1 -1
- package/Source/Renderer/UniformState.js +47 -1
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/BufferPointCollection.js +4 -7
- package/Source/Scene/BufferPolygonCollection.js +56 -27
- package/Source/Scene/BufferPolylineCollection.js +61 -8
- package/Source/Scene/BufferPolylineMaterial.js +6 -5
- package/Source/Scene/BufferPrimitiveCollection.js +199 -29
- package/Source/Scene/Cesium3DTile.js +12 -0
- package/Source/Scene/Cesium3DTileset.js +61 -8
- package/Source/Scene/Cesium3DTilesetBaseTraversal.js +15 -3
- package/Source/Scene/Cesium3DTilesetCache.js +15 -0
- package/Source/Scene/ClippingPolygon.js +154 -100
- package/Source/Scene/ClippingPolygonCollection.js +352 -694
- package/Source/Scene/CreditDisplay.js +62 -0
- package/Source/Scene/GeoJsonPrimitive.js +114 -24
- package/Source/Scene/GlobeSurfaceShaderSet.js +33 -54
- package/Source/Scene/GlobeSurfaceTile.js +14 -1
- package/Source/Scene/GlobeSurfaceTileProvider.js +232 -25
- package/Source/Scene/GltfLoader.js +56 -6
- package/Source/Scene/HeightReference.js +1 -1
- package/Source/Scene/MVTDataProvider.js +9 -0
- package/Source/Scene/Model/Model.js +242 -16
- package/Source/Scene/Model/Model3DTileContent.js +5 -0
- package/Source/Scene/Model/ModelClippingPolygonsPipelineStage.js +54 -19
- package/Source/Scene/Model/ModelRenderResources.js +2 -3
- package/Source/Scene/Model/ModelSceneGraph.js +10 -1
- package/Source/Scene/Model/ModelVectorLookupPipelineStage.js +205 -0
- package/Source/Scene/Model/PickingPipelineStage.js +4 -0
- package/Source/Scene/PostProcessStage.js +22 -3
- package/Source/Scene/Scene.js +56 -1
- package/Source/Scene/Snapping.js +57 -0
- package/Source/Scene/UrlTemplate3DTilesDataProvider.js +12 -1
- package/Source/Scene/VectorGltf3DTileContent.js +10 -2
- package/Source/Scene/WebMapServiceImageryProvider.js +5 -1
- package/Source/Scene/WebMapTileServiceImageryProvider.js +6 -1
- package/Source/Scene/renderBufferPolylineCollection.js +5 -1
- package/Source/Shaders/BufferPolylineMaterialVS.glsl +14 -2
- package/Source/Shaders/BufferPolylineMaterialVS.js +14 -2
- package/Source/Shaders/Builtin/CzmBuiltins.js +2 -4
- package/Source/Shaders/Builtin/Functions/eyeToCartographicDelta.glsl +74 -0
- package/Source/Shaders/Builtin/Functions/eyeToCartographicDelta.js +76 -0
- package/Source/Shaders/GlobeFS.glsl +10 -9
- package/Source/Shaders/GlobeFS.js +11 -9
- package/Source/Shaders/GlobeVS.glsl +0 -32
- package/Source/Shaders/GlobeVS.js +0 -32
- package/Source/Shaders/Model/ModelClippingPolygonsStageFS.glsl +15 -3
- package/Source/Shaders/Model/ModelClippingPolygonsStageFS.js +15 -3
- package/Source/Shaders/Model/ModelClippingPolygonsStageVS.glsl +20 -24
- package/Source/Shaders/Model/ModelClippingPolygonsStageVS.js +20 -24
- package/Source/Shaders/Model/ModelFS.glsl +4 -0
- package/Source/Shaders/Model/ModelFS.js +4 -0
- package/Source/Shaders/Model/ModelVS.glsl +7 -2
- package/Source/Shaders/Model/ModelVS.js +7 -2
- package/Source/Shaders/Model/ModelVectorLookupStageFS.glsl +6 -0
- package/Source/Shaders/Model/ModelVectorLookupStageFS.js +8 -0
- package/Source/Shaders/Model/ModelVectorLookupStageVS.glsl +15 -0
- package/Source/Shaders/Model/ModelVectorLookupStageVS.js +17 -0
- package/Source/Shaders/Model/VerticalExaggerationStageVS.glsl +9 -10
- package/Source/Shaders/Model/VerticalExaggerationStageVS.js +9 -11
- package/Source/Shaders/VectorCommon.glsl +177 -50
- package/Source/Shaders/VectorCommon.js +251 -19
- package/Source/ThirdParty/Workers/zip-web-worker.js +1 -1
- package/index.d.ts +556 -55
- package/index.js +20 -13
- package/package.json +6 -6
- package/Build/Workers/chunk-2EFYUSUY.js +0 -1483
- package/Build/Workers/chunk-2H5264K7.js +0 -1284
- package/Build/Workers/chunk-2H73KDBM.js +0 -511
- package/Build/Workers/chunk-2ZKH2QZB.js +0 -387
- package/Build/Workers/chunk-37SW7SYS.js +0 -778
- package/Build/Workers/chunk-3GHVJ3SO.js +0 -455
- package/Build/Workers/chunk-3LB4UVPU.js +0 -387
- package/Build/Workers/chunk-3PONLKEL.js +0 -778
- package/Build/Workers/chunk-3QR662HH.js +0 -3820
- package/Build/Workers/chunk-3SX2WYSO.js +0 -973
- package/Build/Workers/chunk-3UDN6LYX.js +0 -476
- package/Build/Workers/chunk-47MCBSXI.js +0 -9237
- package/Build/Workers/chunk-4E626OCE.js +0 -1067
- package/Build/Workers/chunk-4NW2MJKH.js +0 -455
- package/Build/Workers/chunk-52YK5BSN.js +0 -198
- package/Build/Workers/chunk-5RNAQZK6.js +0 -9234
- package/Build/Workers/chunk-6FHT43QR.js +0 -140
- package/Build/Workers/chunk-6HK6IXK2.js +0 -138
- package/Build/Workers/chunk-6R5X2GUA.js +0 -1284
- package/Build/Workers/chunk-6YR6JBMY.js +0 -163
- package/Build/Workers/chunk-7A2OGDHT.js +0 -305
- package/Build/Workers/chunk-7CGEQUM2.js +0 -305
- package/Build/Workers/chunk-7D2HZKH7.js +0 -455
- package/Build/Workers/chunk-7I325HV6.js +0 -1344
- package/Build/Workers/chunk-7KVKHY7O.js +0 -147
- package/Build/Workers/chunk-7TKLTCZW.js +0 -219
- package/Build/Workers/chunk-7UUKBDH6.js +0 -1054
- package/Build/Workers/chunk-7W6DUHAB.js +0 -693
- package/Build/Workers/chunk-7XM5JK5F.js +0 -162
- package/Build/Workers/chunk-7YG3ND3P.js +0 -454
- package/Build/Workers/chunk-A3O6EDBK.js +0 -73
- package/Build/Workers/chunk-A6X24AZI.js +0 -1992
- package/Build/Workers/chunk-A7TTWVTF.js +0 -2719
- package/Build/Workers/chunk-ACTVJHSP.js +0 -519
- package/Build/Workers/chunk-ADX3CBKD.js +0 -9234
- package/Build/Workers/chunk-AF7DTMJ7.js +0 -398
- package/Build/Workers/chunk-AJSFRY4U.js +0 -1344
- package/Build/Workers/chunk-ARZICEEP.js +0 -301
- package/Build/Workers/chunk-B4CQSLZJ.js +0 -305
- package/Build/Workers/chunk-BKPQFCXH.js +0 -511
- package/Build/Workers/chunk-BSPCI2LO.js +0 -959
- package/Build/Workers/chunk-BUJWSX5S.js +0 -301
- package/Build/Workers/chunk-C7JQVRLM.js +0 -497
- package/Build/Workers/chunk-C7QDUNI3.js +0 -138
- package/Build/Workers/chunk-CDJDJ5LK.js +0 -44
- package/Build/Workers/chunk-CEEZE3YZ.js +0 -476
- package/Build/Workers/chunk-CIV5DJOQ.js +0 -778
- package/Build/Workers/chunk-CLCTQVVL.js +0 -241
- package/Build/Workers/chunk-CQNFIAZU.js +0 -56
- package/Build/Workers/chunk-CUTRKXUQ.js +0 -288
- package/Build/Workers/chunk-DBD5WWG2.js +0 -959
- package/Build/Workers/chunk-DIGUUD6G.js +0 -171
- package/Build/Workers/chunk-DZBQUULR.js +0 -138
- package/Build/Workers/chunk-E2NKV5YT.js +0 -3820
- package/Build/Workers/chunk-E7NZJOK7.js +0 -3792
- package/Build/Workers/chunk-EB3Y5P3A.js +0 -368
- package/Build/Workers/chunk-EHTS2YPT.js +0 -2719
- package/Build/Workers/chunk-ELE6SC2C.js +0 -837
- package/Build/Workers/chunk-ENNFMWDW.js +0 -789
- package/Build/Workers/chunk-ERKUET22.js +0 -3201
- package/Build/Workers/chunk-F2IMBMZY.js +0 -241
- package/Build/Workers/chunk-F4CSNRZO.js +0 -219
- package/Build/Workers/chunk-FBP4DUQJ.js +0 -693
- package/Build/Workers/chunk-FDK4K5IA.js +0 -280
- package/Build/Workers/chunk-FGQFQHN5.js +0 -1054
- package/Build/Workers/chunk-FJWZMGOQ.js +0 -1992
- package/Build/Workers/chunk-FQ42MT7M.js +0 -58
- package/Build/Workers/chunk-GGNWQWSB.js +0 -301
- package/Build/Workers/chunk-GNKXEN4C.js +0 -682
- package/Build/Workers/chunk-GSWMAFTE.js +0 -9230
- package/Build/Workers/chunk-GXDHRC4J.js +0 -1344
- package/Build/Workers/chunk-GYSYP6PC.js +0 -1067
- package/Build/Workers/chunk-H2WCFXLP.js +0 -241
- package/Build/Workers/chunk-HHV3MCGV.js +0 -162
- package/Build/Workers/chunk-HLW2ZRVK.js +0 -368
- package/Build/Workers/chunk-HS6AD4P2.js +0 -398
- package/Build/Workers/chunk-HT6FASOT.js +0 -973
- package/Build/Workers/chunk-IDVHUDZT.js +0 -352
- package/Build/Workers/chunk-IGAZBTFZ.js +0 -3201
- package/Build/Workers/chunk-IOO7Z2AV.js +0 -57
- package/Build/Workers/chunk-IUIFLOYO.js +0 -44
- package/Build/Workers/chunk-JALGQYDY.js +0 -288
- package/Build/Workers/chunk-JW6OZT4R.js +0 -288
- package/Build/Workers/chunk-JXYLJCTC.js +0 -124
- package/Build/Workers/chunk-K27QOAW6.js +0 -97
- package/Build/Workers/chunk-KMV25A63.js +0 -789
- package/Build/Workers/chunk-KZWFWJML.js +0 -2719
- package/Build/Workers/chunk-LCXRRALY.js +0 -387
- package/Build/Workers/chunk-LD64RPYV.js +0 -368
- package/Build/Workers/chunk-LGNDTZVX.js +0 -97
- package/Build/Workers/chunk-LNSQVXFH.js +0 -1800
- package/Build/Workers/chunk-M4JZ6TSZ.js +0 -959
- package/Build/Workers/chunk-MCJDRDJQ.js +0 -102
- package/Build/Workers/chunk-MEENMEAH.js +0 -198
- package/Build/Workers/chunk-NAWU5RF4.js +0 -162
- package/Build/Workers/chunk-NIWITKQK.js +0 -693
- package/Build/Workers/chunk-OA6MYL2C.js +0 -837
- package/Build/Workers/chunk-OBEU25PI.js +0 -1067
- package/Build/Workers/chunk-OHP4ELS7.js +0 -198
- package/Build/Workers/chunk-PCL3Y7H5.js +0 -82
- package/Build/Workers/chunk-PD4GK4EM.js +0 -57
- package/Build/Workers/chunk-PEDU33QG.js +0 -2342
- package/Build/Workers/chunk-PVTSNNVI.js +0 -288
- package/Build/Workers/chunk-QHPZH22L.js +0 -241
- package/Build/Workers/chunk-QIZDWZK6.js +0 -301
- package/Build/Workers/chunk-QV6DG2YX.js +0 -1483
- package/Build/Workers/chunk-QVLAFFJY.js +0 -56
- package/Build/Workers/chunk-R4FPNAZ2.js +0 -352
- package/Build/Workers/chunk-R4K7EHOU.js +0 -171
- package/Build/Workers/chunk-R7JGHDD6.js +0 -789
- package/Build/Workers/chunk-RASQEYD4.js +0 -1483
- package/Build/Workers/chunk-RG4F5R57.js +0 -454
- package/Build/Workers/chunk-RW6ITX7Q.js +0 -3820
- package/Build/Workers/chunk-RYSQVJR6.js +0 -398
- package/Build/Workers/chunk-S6RJU5NM.js +0 -1054
- package/Build/Workers/chunk-SDFHDNS4.js +0 -147
- package/Build/Workers/chunk-SF6K72D7.js +0 -124
- package/Build/Workers/chunk-SGRGNDOD.js +0 -682
- package/Build/Workers/chunk-SM2CDCYF.js +0 -198
- package/Build/Workers/chunk-SS5ABQGY.js +0 -102
- package/Build/Workers/chunk-T5QBPLE3.js +0 -414
- package/Build/Workers/chunk-TN35HP5B.js +0 -1067
- package/Build/Workers/chunk-TNWKJNUZ.js +0 -454
- package/Build/Workers/chunk-TOAF47AQ.js +0 -102
- package/Build/Workers/chunk-TQ4QCOXT.js +0 -2719
- package/Build/Workers/chunk-TSDSILQB.js +0 -124
- package/Build/Workers/chunk-TVZD72WJ.js +0 -778
- package/Build/Workers/chunk-U5LV3F3Z.js +0 -1054
- package/Build/Workers/chunk-UEY73NRN.js +0 -38
- package/Build/Workers/chunk-UF46SZEZ.js +0 -789
- package/Build/Workers/chunk-UNRTMCET.js +0 -398
- package/Build/Workers/chunk-UTB7U3O6.js +0 -1992
- package/Build/Workers/chunk-UVO6COT2.js +0 -352
- package/Build/Workers/chunk-V46YGZE6.js +0 -352
- package/Build/Workers/chunk-VAL7DYNR.js +0 -278
- package/Build/Workers/chunk-VDGOCROW.js +0 -57
- package/Build/Workers/chunk-VFWSSBPT.js +0 -511
- package/Build/Workers/chunk-VVYMXI3I.js +0 -1284
- package/Build/Workers/chunk-VXWHPYQM.js +0 -837
- package/Build/Workers/chunk-VXYUBRSB.js +0 -219
- package/Build/Workers/chunk-VZLDLEWI.js +0 -387
- package/Build/Workers/chunk-W5OCKMPJ.js +0 -101
- package/Build/Workers/chunk-WBSY7HDY.js +0 -837
- package/Build/Workers/chunk-WN3F4CVG.js +0 -3201
- package/Build/Workers/chunk-WPRUWXGV.js +0 -693
- package/Build/Workers/chunk-WTO2ERBP.js +0 -414
- package/Build/Workers/chunk-WVHMDVG4.js +0 -959
- package/Build/Workers/chunk-XGA23TAX.js +0 -73
- package/Build/Workers/chunk-XLXSDIP5.js +0 -973
- package/Build/Workers/chunk-XQ3SKCMM.js +0 -140
- package/Build/Workers/chunk-XQH66YJC.js +0 -147
- package/Build/Workers/chunk-XTA7BXJG.js +0 -682
- package/Build/Workers/chunk-XTIDAFRS.js +0 -476
- package/Build/Workers/chunk-XUEDWBUD.js +0 -682
- package/Build/Workers/chunk-XYFLRH3H.js +0 -124
- package/Build/Workers/chunk-Y7JRTRTO.js +0 -305
- package/Build/Workers/chunk-Y7QSMDCJ.js +0 -352
- package/Build/Workers/chunk-YCB5TYTR.js +0 -1483
- package/Build/Workers/chunk-YEYOSTJX.js +0 -219
- package/Build/Workers/chunk-YGFVAGYF.js +0 -630
- package/Build/Workers/chunk-YIIACKQO.js +0 -368
- package/Build/Workers/chunk-YJGSP6PE.js +0 -511
- package/Build/Workers/chunk-YKU2Q3A2.js +0 -1287
- package/Build/Workers/chunk-Z4LR5EHE.js +0 -454
- package/Build/Workers/chunk-Z66EVE2A.js +0 -44
- package/Build/Workers/chunk-ZHIHHHTB.js +0 -414
- package/Build/Workers/chunk-ZMBHFYOX.js +0 -1344
- package/Build/Workers/chunk-ZNWHFSLE.js +0 -171
- package/Build/Workers/chunk-ZQLZG4IN.js +0 -2342
- package/Build/Workers/chunk-ZRTSMUZ2.js +0 -414
- package/Build/Workers/chunk-ZSGUV73H.js +0 -2342
- package/Build/Workers/chunk-ZZUVT5BM.js +0 -476
- package/Source/Shaders/Builtin/Functions/clipPolygons.glsl +0 -37
- package/Source/Shaders/Builtin/Functions/clipPolygons.js +0 -39
- package/Source/Shaders/Builtin/Functions/unpackClippingExtents.glsl +0 -14
- package/Source/Shaders/Builtin/Functions/unpackClippingExtents.js +0 -15
- package/Source/Shaders/PolygonSignedDistanceFS.glsl +0 -131
- package/Source/Shaders/PolygonSignedDistanceFS.js +0 -132
package/index.d.ts
CHANGED
|
@@ -9164,6 +9164,252 @@ export class IonResource extends Resource {
|
|
|
9164
9164
|
}): Promise<ImageBitmap | HTMLImageElement> | undefined;
|
|
9165
9165
|
}
|
|
9166
9166
|
|
|
9167
|
+
/**
|
|
9168
|
+
* The type of geometry a snap resolved to, reported by {@link IonSnapService#snap}
|
|
9169
|
+
* as {@link IonSnapService.Result} <code>geometryType</code>. Values match the iTwin.js
|
|
9170
|
+
* {@link https://www.itwinjs.org/reference/core-frontend/locatingelements/hitgeomtype/|HitGeomType} enum.
|
|
9171
|
+
*/
|
|
9172
|
+
export enum IonSnapGeometryType {
|
|
9173
|
+
/**
|
|
9174
|
+
* No geometry type.
|
|
9175
|
+
*/
|
|
9176
|
+
NONE = 0,
|
|
9177
|
+
/**
|
|
9178
|
+
* A point.
|
|
9179
|
+
*/
|
|
9180
|
+
POINT = 1,
|
|
9181
|
+
/**
|
|
9182
|
+
* A line segment.
|
|
9183
|
+
*/
|
|
9184
|
+
SEGMENT = 2,
|
|
9185
|
+
/**
|
|
9186
|
+
* A curve.
|
|
9187
|
+
*/
|
|
9188
|
+
CURVE = 3,
|
|
9189
|
+
/**
|
|
9190
|
+
* An arc.
|
|
9191
|
+
*/
|
|
9192
|
+
ARC = 4,
|
|
9193
|
+
/**
|
|
9194
|
+
* A surface.
|
|
9195
|
+
* <p>
|
|
9196
|
+
* With {@link IonSnapMode} <code>NEAREST</code>, this value indicates
|
|
9197
|
+
* the snap tracked the surface under the cursor because no edge was within
|
|
9198
|
+
* the snap aperture. This means the snap point was not pulled to an edge.
|
|
9199
|
+
* Edge snaps report one of the other types along with the edge geometry in
|
|
9200
|
+
* {@link IonSnapService.Result} <code>curve</code>, which is absent when
|
|
9201
|
+
* tracking a surface.
|
|
9202
|
+
* </p>
|
|
9203
|
+
*/
|
|
9204
|
+
SURFACE = 5
|
|
9205
|
+
}
|
|
9206
|
+
|
|
9207
|
+
/**
|
|
9208
|
+
* How close a snap result is to the cursor, reported by {@link IonSnapService#snap}
|
|
9209
|
+
* as {@link IonSnapService.Result} <code>heat</code>. Values match the iTwin.js
|
|
9210
|
+
* {@link https://www.itwinjs.org/reference/core-frontend/locatingelements/snapheat/|SnapHeat} enum.
|
|
9211
|
+
*/
|
|
9212
|
+
export enum IonSnapHeat {
|
|
9213
|
+
/**
|
|
9214
|
+
* The snap is not close to the cursor.
|
|
9215
|
+
*/
|
|
9216
|
+
NONE = 0,
|
|
9217
|
+
/**
|
|
9218
|
+
* The snap is of interest, but outside the snap aperture.
|
|
9219
|
+
*/
|
|
9220
|
+
NOT_IN_RANGE = 1,
|
|
9221
|
+
/**
|
|
9222
|
+
* The snap point is within the snap aperture of the close point in view space.
|
|
9223
|
+
*/
|
|
9224
|
+
IN_RANGE = 2
|
|
9225
|
+
}
|
|
9226
|
+
|
|
9227
|
+
/**
|
|
9228
|
+
* The snap modes supported by {@link IonSnapService#snap}. These follow the
|
|
9229
|
+
* MicroStation snap mode semantics; see the
|
|
9230
|
+
* {@link https://docs.bentley.com/LiveContent/web/MicroStation%20Help-v27/en/GUID-77D54C0B-D6FF-13DA-5EC8-3196330F5244.html|MicroStation documentation}
|
|
9231
|
+
* for reference.
|
|
9232
|
+
*/
|
|
9233
|
+
export enum IonSnapMode {
|
|
9234
|
+
/**
|
|
9235
|
+
* Snaps to the point on the element nearest to the cursor. When the cursor
|
|
9236
|
+
* is farther than the snap aperture from an edge, tracks the surface under
|
|
9237
|
+
* the cursor instead.
|
|
9238
|
+
*/
|
|
9239
|
+
NEAREST = 1,
|
|
9240
|
+
/**
|
|
9241
|
+
* Snaps to the nearest of the element's keypoints. Keypoints are defined by
|
|
9242
|
+
* the element's geometry type and the snap divisor.
|
|
9243
|
+
* <p>
|
|
9244
|
+
* On linear elements, keypoints are regularly spaced along each segment:
|
|
9245
|
+
* the number of keypoints on a segment is one greater than the snap
|
|
9246
|
+
* divisor, and a segment's midpoint is a keypoint only when the divisor is
|
|
9247
|
+
* even. The ion API does not currently accept a snap divisor, so the
|
|
9248
|
+
* server's default divisor applies.
|
|
9249
|
+
* </p>
|
|
9250
|
+
*/
|
|
9251
|
+
NEAREST_KEYPOINT = 2,
|
|
9252
|
+
/**
|
|
9253
|
+
* Snaps to the center of elements that have centers (such as circles and
|
|
9254
|
+
* arcs). For other elements, may snap to the centroid.
|
|
9255
|
+
*/
|
|
9256
|
+
CENTER = 8
|
|
9257
|
+
}
|
|
9258
|
+
|
|
9259
|
+
/**
|
|
9260
|
+
* The type of the parent geometry a snap resolved to, reported by
|
|
9261
|
+
* {@link IonSnapService#snap} as {@link IonSnapService.Result} <code>parentGeometryType</code>.
|
|
9262
|
+
* Values match the iTwin.js
|
|
9263
|
+
* {@link https://www.itwinjs.org/reference/core-frontend/locatingelements/hitparentgeomtype/|HitParentGeomType} enum.
|
|
9264
|
+
*/
|
|
9265
|
+
export enum IonSnapParentGeometryType {
|
|
9266
|
+
/**
|
|
9267
|
+
* No parent geometry type.
|
|
9268
|
+
*/
|
|
9269
|
+
NONE = 0,
|
|
9270
|
+
/**
|
|
9271
|
+
* A wire body.
|
|
9272
|
+
*/
|
|
9273
|
+
WIRE = 1,
|
|
9274
|
+
/**
|
|
9275
|
+
* A sheet body.
|
|
9276
|
+
*/
|
|
9277
|
+
SHEET = 2,
|
|
9278
|
+
/**
|
|
9279
|
+
* A solid body.
|
|
9280
|
+
*/
|
|
9281
|
+
SOLID = 3,
|
|
9282
|
+
/**
|
|
9283
|
+
* A mesh.
|
|
9284
|
+
*/
|
|
9285
|
+
MESH = 4,
|
|
9286
|
+
/**
|
|
9287
|
+
* Text.
|
|
9288
|
+
*/
|
|
9289
|
+
TEXT = 5
|
|
9290
|
+
}
|
|
9291
|
+
|
|
9292
|
+
export namespace IonSnapService {
|
|
9293
|
+
/**
|
|
9294
|
+
* The result of a successful {@link IonSnapService#snap}. Extends
|
|
9295
|
+
* {@link SnapService.Result} with ion-specific fields.
|
|
9296
|
+
* @property [snapPoint] - The snapped point. This is the point to consume.
|
|
9297
|
+
* @property [hitPoint] - The point where the cursor hit the geometry: the nearest edge point when within the snap aperture, otherwise the surface point under the cursor.
|
|
9298
|
+
* @property [heat] - How close the snap point is to the close point in view space.
|
|
9299
|
+
* @property [geometryType] - The type of geometry snapped to.
|
|
9300
|
+
* @property [parentGeometryType] - The type of the parent geometry snapped to.
|
|
9301
|
+
* @property [normal] - The surface normal at the snap point, in the model's local cartesian frame.
|
|
9302
|
+
* @property [curve] - The curve geometry near the snap point, with points as WGS84 degrees objects.
|
|
9303
|
+
*/
|
|
9304
|
+
type Result = {
|
|
9305
|
+
snapPoint?: Cartesian3;
|
|
9306
|
+
hitPoint?: Cartesian3;
|
|
9307
|
+
heat?: IonSnapHeat;
|
|
9308
|
+
geometryType?: IonSnapGeometryType;
|
|
9309
|
+
parentGeometryType?: IonSnapParentGeometryType;
|
|
9310
|
+
normal?: any;
|
|
9311
|
+
curve?: any;
|
|
9312
|
+
};
|
|
9313
|
+
}
|
|
9314
|
+
|
|
9315
|
+
/**
|
|
9316
|
+
* Provides interactive snap-to-geometry against a Cesium ion 3D Tiles asset
|
|
9317
|
+
* backed by a BIM/CAD Database model, using the ion REST API's element snap
|
|
9318
|
+
* endpoint.
|
|
9319
|
+
*
|
|
9320
|
+
* This class handles conversions between the reference frame of a
|
|
9321
|
+
* source BIM/CAD Database and the view-dependent screen space pixel
|
|
9322
|
+
* coordinates. Each snap, it transforms using the ion asset's source
|
|
9323
|
+
* reference frame, the camera's transform, and the canvas
|
|
9324
|
+
* dimensions so that view-dependent features— such as the pixel aperture,
|
|
9325
|
+
* nearest position, or surface tracking— behave correctly.
|
|
9326
|
+
*
|
|
9327
|
+
* This object is normally not instantiated directly, use {@link IonSnapService.fromAssetId}.
|
|
9328
|
+
* @example
|
|
9329
|
+
* const snapper = await Cesium.IonSnapService.fromAssetId(123456);
|
|
9330
|
+
* const canvas = viewer.scene.canvas;
|
|
9331
|
+
* const result = await snapper.snap({
|
|
9332
|
+
* elementId: "0x30000000df2",
|
|
9333
|
+
* testPoint: pickedPosition,
|
|
9334
|
+
* camera: viewer.camera,
|
|
9335
|
+
* canvasWidth: canvas.clientWidth,
|
|
9336
|
+
* canvasHeight: canvas.clientHeight,
|
|
9337
|
+
* });
|
|
9338
|
+
* if (Cesium.defined(result)) {
|
|
9339
|
+
* console.log("snapped to", result.snapPoint);
|
|
9340
|
+
* }
|
|
9341
|
+
* @param options - Object with the following properties:
|
|
9342
|
+
* @param options.assetId - The ion asset id.
|
|
9343
|
+
* @param options.resource - The asset's ion API resource.
|
|
9344
|
+
* @param options.ecefTransform - A 4x4 transformation matrix from the source BIM/CAD Database reference frame local to the world's fixed reference frame.
|
|
9345
|
+
*/
|
|
9346
|
+
export class IonSnapService {
|
|
9347
|
+
constructor(options: {
|
|
9348
|
+
assetId: number;
|
|
9349
|
+
resource: Resource;
|
|
9350
|
+
ecefTransform: Matrix4;
|
|
9351
|
+
});
|
|
9352
|
+
/**
|
|
9353
|
+
* A 4x4 transformation matrix from the source BIM/CAD Database reference frame local to the world's fixed reference frame.
|
|
9354
|
+
*/
|
|
9355
|
+
readonly ecefTransform: Matrix4;
|
|
9356
|
+
/**
|
|
9357
|
+
* The ion asset id this snapper operates on.
|
|
9358
|
+
*/
|
|
9359
|
+
readonly assetId: number;
|
|
9360
|
+
/**
|
|
9361
|
+
* Creates an {@link IonSnapService} for the given ion asset, fetching
|
|
9362
|
+
* the asset's ECEF transform from the ion REST API.
|
|
9363
|
+
* @param assetId - The ion ID of a 3D Tiles asset backed by a BIM/CAD Database model.
|
|
9364
|
+
* @param [options] - Object with the following properties:
|
|
9365
|
+
* @param [options.accessToken = Ion.defaultAccessToken] - The ion access token to use.
|
|
9366
|
+
* @param [options.server = Ion.defaultServer] - The ion API server to use.
|
|
9367
|
+
* @returns A snapper bound to the asset.
|
|
9368
|
+
*/
|
|
9369
|
+
static fromAssetId(assetId: number, options?: {
|
|
9370
|
+
accessToken?: string;
|
|
9371
|
+
server?: string | Resource;
|
|
9372
|
+
}): Promise<IonSnapService>;
|
|
9373
|
+
/**
|
|
9374
|
+
* Requests a snap against an element of this asset.
|
|
9375
|
+
*
|
|
9376
|
+
* A view-correct world-to-view matrix is composed from
|
|
9377
|
+
* <code>options.camera</code>, <code>options.canvasWidth</code>, and
|
|
9378
|
+
* <code>options.canvasHeight</code> so view-dependent snapping (nearest
|
|
9379
|
+
* ordering, pixel apertures, surface tracking) matches the current view.
|
|
9380
|
+
*
|
|
9381
|
+
* Only 3D views are supported: the camera must be viewing in
|
|
9382
|
+
* {@link SceneMode.SCENE3D}.
|
|
9383
|
+
* @param options - Object with the following properties:
|
|
9384
|
+
* @param options.elementId - The element id to snap to, as a hex string, e.g. <code>"0x30000000df2"</code>.
|
|
9385
|
+
* @param options.testPoint - The point to snap from, typically the picked cursor position.
|
|
9386
|
+
* @param options.camera - The camera defining the current view. Must be viewing in {@link SceneMode.SCENE3D}.
|
|
9387
|
+
* @param options.canvasWidth - The canvas width in CSS pixels.
|
|
9388
|
+
* @param options.canvasHeight - The canvas height in CSS pixels.
|
|
9389
|
+
* @param [options.closePoint = options.testPoint] - A reference point near the target geometry that seeds the snap search.
|
|
9390
|
+
* @param [options.snapAperture = IonSnapService.DEFAULT_SNAP_APERTURE] - The snap tolerance in CSS pixels of the world-to-view output space.
|
|
9391
|
+
* @param [options.snapMode = IonSnapMode.NEAREST] - The type of snap to perform.
|
|
9392
|
+
* @returns The snap result, or <code>undefined</code> if the element was not found or no snap was possible for it.
|
|
9393
|
+
*/
|
|
9394
|
+
snap(options: {
|
|
9395
|
+
elementId: string;
|
|
9396
|
+
testPoint: Cartesian3;
|
|
9397
|
+
camera: Camera;
|
|
9398
|
+
canvasWidth: number;
|
|
9399
|
+
canvasHeight: number;
|
|
9400
|
+
closePoint?: Cartesian3;
|
|
9401
|
+
snapAperture?: number;
|
|
9402
|
+
snapMode?: IonSnapMode;
|
|
9403
|
+
}): Promise<IonSnapService.Result | undefined>;
|
|
9404
|
+
/**
|
|
9405
|
+
* The default snap tolerance used by {@link IonSnapService#snap} when
|
|
9406
|
+
* <code>options.snapAperture</code> is not provided, in CSS pixels of the
|
|
9407
|
+
* world-to-view output space. This is {@link SnapService}'s
|
|
9408
|
+
* <code>DEFAULT_SNAP_APERTURE</code> for this implementation.
|
|
9409
|
+
*/
|
|
9410
|
+
static readonly DEFAULT_SNAP_APERTURE: number;
|
|
9411
|
+
}
|
|
9412
|
+
|
|
9167
9413
|
/**
|
|
9168
9414
|
* Constants related to ISO8601 support.
|
|
9169
9415
|
*/
|
|
@@ -16393,6 +16639,61 @@ export class SimplePolylineGeometry {
|
|
|
16393
16639
|
static createGeometry(simplePolylineGeometry: SimplePolylineGeometry): Geometry | undefined;
|
|
16394
16640
|
}
|
|
16395
16641
|
|
|
16642
|
+
export namespace SnapService {
|
|
16643
|
+
/**
|
|
16644
|
+
* The result of a successful {@link SnapService#snap}.
|
|
16645
|
+
*
|
|
16646
|
+
* Implementations may return additional properties beyond those listed here.
|
|
16647
|
+
* @property [snapPoint] - The snapped point. This is the point to consume.
|
|
16648
|
+
* @property [hitPoint] - The point where the cursor hit the geometry: the nearest edge point when within the snap aperture, otherwise the surface point under the cursor.
|
|
16649
|
+
*/
|
|
16650
|
+
type Result = {
|
|
16651
|
+
snapPoint?: Cartesian3;
|
|
16652
|
+
hitPoint?: Cartesian3;
|
|
16653
|
+
};
|
|
16654
|
+
}
|
|
16655
|
+
|
|
16656
|
+
/**
|
|
16657
|
+
* Provides snap-to-geometry through an external service, which snaps against
|
|
16658
|
+
* source geometry hosted remotely rather than geometry loaded in the scene.
|
|
16659
|
+
* This type describes an interface and is not intended to be used.
|
|
16660
|
+
*/
|
|
16661
|
+
export class SnapService {
|
|
16662
|
+
/**
|
|
16663
|
+
* Requests a snap against geometry known to the service.
|
|
16664
|
+
*
|
|
16665
|
+
* The camera and canvas dimensions describe the current view so the
|
|
16666
|
+
* implementation can perform view-dependent snapping (nearest ordering,
|
|
16667
|
+
* pixel apertures, surface tracking) correctly.
|
|
16668
|
+
*
|
|
16669
|
+
* Implementations may accept additional options beyond those listed here.
|
|
16670
|
+
* @param options - Object with the following properties:
|
|
16671
|
+
* @param options.elementId - An implementation-defined identifier of the geometry to snap to.
|
|
16672
|
+
* @param options.testPoint - The point to snap from, typically the picked cursor position.
|
|
16673
|
+
* @param options.camera - The camera defining the current view.
|
|
16674
|
+
* @param options.canvasWidth - The canvas width in CSS pixels.
|
|
16675
|
+
* @param options.canvasHeight - The canvas height in CSS pixels.
|
|
16676
|
+
* @param [options.closePoint = options.testPoint] - A reference point near the target geometry that seeds the snap search.
|
|
16677
|
+
* @param [options.snapAperture = SnapService.DEFAULT_SNAP_APERTURE] - The snap tolerance in CSS pixels.
|
|
16678
|
+
* @returns The snap result, or <code>undefined</code> if no snap was possible.
|
|
16679
|
+
*/
|
|
16680
|
+
snap(options: {
|
|
16681
|
+
elementId: string;
|
|
16682
|
+
testPoint: Cartesian3;
|
|
16683
|
+
camera: Camera;
|
|
16684
|
+
canvasWidth: number;
|
|
16685
|
+
canvasHeight: number;
|
|
16686
|
+
closePoint?: Cartesian3;
|
|
16687
|
+
snapAperture?: number;
|
|
16688
|
+
}): Promise<SnapService.Result | undefined>;
|
|
16689
|
+
/**
|
|
16690
|
+
* The default snap tolerance used by {@link SnapService#snap} when
|
|
16691
|
+
* <code>options.snapAperture</code> is not provided, in CSS pixels.
|
|
16692
|
+
* The value is implementation-defined.
|
|
16693
|
+
*/
|
|
16694
|
+
static readonly DEFAULT_SNAP_APERTURE: number;
|
|
16695
|
+
}
|
|
16696
|
+
|
|
16396
16697
|
/**
|
|
16397
16698
|
* A description of a sphere centered at the origin.
|
|
16398
16699
|
* @example
|
|
@@ -27971,6 +28272,38 @@ export type BufferPolygonOptions = {
|
|
|
27971
28272
|
triangles?: TypedArray;
|
|
27972
28273
|
};
|
|
27973
28274
|
|
|
28275
|
+
/**
|
|
28276
|
+
* @property [primitiveCountMax = BufferPrimitiveCollection.DEFAULT_CAPACITY] - Maximum number of polygons.
|
|
28277
|
+
* @property [vertexCountMax = BufferPrimitiveCollection.DEFAULT_CAPACITY] - Maximum number of vertices.
|
|
28278
|
+
* @property [holeCountMax = BufferPrimitiveCollection.DEFAULT_CAPACITY] - Maximum number of holes.
|
|
28279
|
+
* @property [triangleCountMax = BufferPrimitiveCollection.DEFAULT_CAPACITY] - Maximum number of triangles.
|
|
28280
|
+
* @property [positionDatatype = ComponentDatatype.DOUBLE] - The component datatype used to store position values.
|
|
28281
|
+
* @property [positionNormalized = false] - When <code>true</code>, integer position values are treated as normalized,
|
|
28282
|
+
* where the full integer range maps to [-1, 1] (signed) or [0, 1] (unsigned). Only relevant for integer position datatypes
|
|
28283
|
+
* (BYTE, UNSIGNED_BYTE, SHORT, UNSIGNED_SHORT).
|
|
28284
|
+
* @property [allowPicking = true] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
|
|
28285
|
+
* @property [boundingVolume] - Bounding volume, in world space, for the collection. When
|
|
28286
|
+
* unspecified, a bounding volume is computed automatically and updated when primitive positions change. When
|
|
28287
|
+
* specified, users are responsible for updating bounding volume as needed. Pre-computing the bounding volume
|
|
28288
|
+
* manually, and updating it only as needed, will improve performance for larger dynamic collections.
|
|
28289
|
+
* @property [heightReference = HeightReference.NONE] - When set to a clamping value, the
|
|
28290
|
+
* collection is draped onto terrain and/or 3D Tiles, rather than drawn as geometry of its own.
|
|
28291
|
+
*/
|
|
28292
|
+
export type BufferPolygonCollectionOptions = {
|
|
28293
|
+
primitiveCountMax?: number;
|
|
28294
|
+
vertexCountMax?: number;
|
|
28295
|
+
holeCountMax?: number;
|
|
28296
|
+
triangleCountMax?: number;
|
|
28297
|
+
positionDatatype?: ComponentDatatype;
|
|
28298
|
+
positionNormalized?: boolean;
|
|
28299
|
+
show?: boolean;
|
|
28300
|
+
allowPicking?: boolean;
|
|
28301
|
+
boundingVolume?: BoundingSphere;
|
|
28302
|
+
debugShowBoundingVolume?: boolean;
|
|
28303
|
+
blendOption?: BlendOption;
|
|
28304
|
+
heightReference?: HeightReference;
|
|
28305
|
+
};
|
|
28306
|
+
|
|
27974
28307
|
/**
|
|
27975
28308
|
* Collection of polygons held in ArrayBuffer storage for performance and memory optimization.
|
|
27976
28309
|
*
|
|
@@ -28006,26 +28339,9 @@ export type BufferPolygonOptions = {
|
|
|
28006
28339
|
* collection.get(i, polygon);
|
|
28007
28340
|
* polygon.setMaterial(material);
|
|
28008
28341
|
* }
|
|
28009
|
-
* @param [options.allowPicking = true] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
|
|
28010
|
-
* @param [options.boundingVolume] - Bounding volume, in world space, for the collection. When
|
|
28011
|
-
* unspecified, a bounding volume is computed automatically and updated when primitive positions change. When
|
|
28012
|
-
* specified, users are responsible for updating bounding volume as needed. Pre-computing the bounding volume
|
|
28013
|
-
* manually, and updating it only as needed, will improve performance for larger dynamic collections.
|
|
28014
28342
|
*/
|
|
28015
28343
|
export class BufferPolygonCollection extends BufferPrimitiveCollection<BufferPolygon> {
|
|
28016
|
-
constructor(options
|
|
28017
|
-
primitiveCountMax?: number;
|
|
28018
|
-
vertexCountMax?: number;
|
|
28019
|
-
holeCountMax?: number;
|
|
28020
|
-
triangleCountMax?: number;
|
|
28021
|
-
positionDatatype?: ComponentDatatype;
|
|
28022
|
-
positionNormalized?: boolean;
|
|
28023
|
-
show?: boolean;
|
|
28024
|
-
allowPicking?: boolean;
|
|
28025
|
-
boundingVolume?: BoundingSphere;
|
|
28026
|
-
debugShowBoundingVolume?: boolean;
|
|
28027
|
-
blendOption?: BlendOption;
|
|
28028
|
-
});
|
|
28344
|
+
constructor(options?: BufferPolygonCollectionOptions);
|
|
28029
28345
|
/**
|
|
28030
28346
|
* Duplicates the contents of this collection into the result collection.
|
|
28031
28347
|
* Result collection is not resized, and must contain enough space for all
|
|
@@ -28037,8 +28353,18 @@ export class BufferPolygonCollection extends BufferPrimitiveCollection<BufferPol
|
|
|
28037
28353
|
* @example
|
|
28038
28354
|
* const result = new BufferPolygonCollection({ ... }); // allocate larger 'result' collection
|
|
28039
28355
|
* BufferPolygonCollection.clone(collection, result); // copy polygons from 'collection' into 'result'
|
|
28356
|
+
* @param [predicate] - When provided, only polygons for which this returns <code>true</code> are copied. Surviving polygons are compacted into contiguous indices.
|
|
28040
28357
|
*/
|
|
28041
|
-
static clone(collection: BufferPolygonCollection, result: BufferPolygonCollection): BufferPolygonCollection;
|
|
28358
|
+
static clone(collection: BufferPolygonCollection, result: BufferPolygonCollection, predicate?: (...params: any[]) => any): BufferPolygonCollection;
|
|
28359
|
+
/**
|
|
28360
|
+
* Returns a copy of the given collection, overriding any constructor options
|
|
28361
|
+
* provided. Omitted options are inherited from the source collection. Any
|
|
28362
|
+
* resized buffers must be large enough to hold every polygon.
|
|
28363
|
+
* @param collection - Source collection to copy.
|
|
28364
|
+
* @param [options] - Constructor options to override. Omitted options are inherited from the source collection.
|
|
28365
|
+
* @param [predicate] - When provided, only polygons for which this returns <code>true</code> are copied. Surviving polygons are compacted into contiguous indices.
|
|
28366
|
+
*/
|
|
28367
|
+
static fromCollection(collection: BufferPolygonCollection, options?: BufferPolygonCollectionOptions, predicate?: (...params: any[]) => any): BufferPolygonCollection;
|
|
28042
28368
|
/**
|
|
28043
28369
|
* Adds a new polygon to the collection, with the specified options. A
|
|
28044
28370
|
* {@link BufferPolygon} instance is linked to the new polygon, using
|
|
@@ -28190,8 +28516,34 @@ export type BufferPolylineOptions = {
|
|
|
28190
28516
|
* collection.get(i, polyline);
|
|
28191
28517
|
* polyline.setMaterial(material);
|
|
28192
28518
|
* }
|
|
28519
|
+
* @param [options.modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
|
|
28520
|
+
* @param [options.allowPicking = false] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
|
|
28521
|
+
* @param [options.boundingVolume] - Bounding volume, in world space, for the collection.
|
|
28522
|
+
* @param [options.widthUnits = "pixels"] - Unit of polyline widths in this collection:
|
|
28523
|
+
* <code>"pixels"</code> on the screen, or <code>"meters"</code> in world space. A clamped
|
|
28524
|
+
* {@link HeightReference} measures those meters on the ellipsoid surface, so elevation and terrain
|
|
28525
|
+
* slope stretch the drawn width.
|
|
28193
28526
|
*/
|
|
28194
28527
|
export class BufferPolylineCollection extends BufferPrimitiveCollection<BufferPolyline> {
|
|
28528
|
+
constructor(options?: {
|
|
28529
|
+
modelMatrix?: Matrix4;
|
|
28530
|
+
primitiveCountMax?: number;
|
|
28531
|
+
vertexCountMax?: number;
|
|
28532
|
+
show?: boolean;
|
|
28533
|
+
positionDatatype?: ComponentDatatype;
|
|
28534
|
+
positionNormalized?: boolean;
|
|
28535
|
+
allowPicking?: boolean;
|
|
28536
|
+
boundingVolume?: BoundingSphere;
|
|
28537
|
+
debugShowBoundingVolume?: boolean;
|
|
28538
|
+
blendOption?: BlendOption;
|
|
28539
|
+
heightReference?: HeightReference;
|
|
28540
|
+
widthUnits?: "pixels" | "meters";
|
|
28541
|
+
});
|
|
28542
|
+
/**
|
|
28543
|
+
* Unit of polyline widths in this collection: <code>"pixels"</code> on the screen, or
|
|
28544
|
+
* <code>"meters"</code> in world space, measured on the ellipsoid surface when clamped.
|
|
28545
|
+
*/
|
|
28546
|
+
readonly widthUnits: "pixels" | "meters";
|
|
28195
28547
|
/**
|
|
28196
28548
|
* Adds a new polyline to the collection, with the specified options. A
|
|
28197
28549
|
* {@link BufferPolyline} instance is linked to the new polyline, using
|
|
@@ -28206,7 +28558,8 @@ export class BufferPolylineCollection extends BufferPrimitiveCollection<BufferPo
|
|
|
28206
28558
|
* @property [color = Color.WHITE] - Color of fill.
|
|
28207
28559
|
* @property [outlineColor = Color.WHITE] - Color of outline.
|
|
28208
28560
|
* @property [outlineWidth = 0.0] - Width of outline, 0-255px.
|
|
28209
|
-
* @property [width = 1.0] - Width of line,
|
|
28561
|
+
* @property [width = 1.0] - Width of line, in the unit selected by
|
|
28562
|
+
* {@link BufferPolylineCollection#widthUnits}.
|
|
28210
28563
|
*/
|
|
28211
28564
|
export type BufferPolylineMaterialOptions = {
|
|
28212
28565
|
color?: Color;
|
|
@@ -28225,7 +28578,7 @@ export type BufferPolylineMaterialOptions = {
|
|
|
28225
28578
|
export class BufferPolylineMaterial extends BufferPrimitiveMaterial {
|
|
28226
28579
|
constructor(options?: BufferPolylineMaterialOptions);
|
|
28227
28580
|
/**
|
|
28228
|
-
* Width of polyline,
|
|
28581
|
+
* Width of polyline, in the unit selected by {@link BufferPolylineCollection#widthUnits}.
|
|
28229
28582
|
*/
|
|
28230
28583
|
width: number;
|
|
28231
28584
|
static pack(material: BufferPolylineMaterial, view: DataView, byteOffset: number): void;
|
|
@@ -28296,6 +28649,39 @@ export type BufferPrimitiveOptions = {
|
|
|
28296
28649
|
pickObject?: any;
|
|
28297
28650
|
};
|
|
28298
28651
|
|
|
28652
|
+
/**
|
|
28653
|
+
* @property [modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
|
|
28654
|
+
* @property [primitiveCountMax = BufferPrimitiveCollection.DEFAULT_CAPACITY] - Maximum number of primitives.
|
|
28655
|
+
* @property [vertexCountMax = BufferPrimitiveCollection.DEFAULT_CAPACITY] - Maximum number of vertices.
|
|
28656
|
+
* @property [positionDatatype = ComponentDatatype.DOUBLE] - The component datatype used to store position values.
|
|
28657
|
+
* @property [positionNormalized = false] - When <code>true</code>, integer position values are treated as normalized,
|
|
28658
|
+
* where the full integer range maps to [-1, 1] (signed) or [0, 1] (unsigned). Only relevant for integer position datatypes
|
|
28659
|
+
* (BYTE, UNSIGNED_BYTE, SHORT, UNSIGNED_SHORT).
|
|
28660
|
+
* @property [allowPicking = false] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
|
|
28661
|
+
* @property [boundingVolume] - Bounding volume, in world space, for the collection. When
|
|
28662
|
+
* unspecified, a bounding volume is computed automatically and updated when primitive positions change. When
|
|
28663
|
+
* specified, users are responsible for updating bounding volume as needed. Pre-computing the bounding volume
|
|
28664
|
+
* manually, and updating it only as needed, will improve performance for larger dynamic collections.
|
|
28665
|
+
* @property [options.heightReference = HeightReference.NONE] - When set to a clamping value, the
|
|
28666
|
+
* collection is draped onto the surfaces selected by the value: {@link HeightReference.CLAMP_TO_TERRAIN} drapes
|
|
28667
|
+
* onto the globe, {@link HeightReference.CLAMP_TO_3D_TILE} drapes onto 3D Tiles, and
|
|
28668
|
+
* {@link HeightReference.CLAMP_TO_GROUND} drapes onto both. Only {@link BufferPolylineCollection} and
|
|
28669
|
+
* {@link BufferPolygonCollection} support draping, and only once the collection has been added to
|
|
28670
|
+
* {@link Scene#primitives}. A draped collection is not also drawn as geometry of its own.
|
|
28671
|
+
*/
|
|
28672
|
+
export type BufferPrimitiveCollectionOptions = {
|
|
28673
|
+
modelMatrix?: Matrix4;
|
|
28674
|
+
primitiveCountMax?: number;
|
|
28675
|
+
vertexCountMax?: number;
|
|
28676
|
+
show?: boolean;
|
|
28677
|
+
positionDatatype?: ComponentDatatype;
|
|
28678
|
+
positionNormalized?: boolean;
|
|
28679
|
+
allowPicking?: boolean;
|
|
28680
|
+
boundingVolume?: BoundingSphere;
|
|
28681
|
+
debugShowBoundingVolume?: boolean;
|
|
28682
|
+
blendOption?: BlendOption;
|
|
28683
|
+
};
|
|
28684
|
+
|
|
28299
28685
|
/**
|
|
28300
28686
|
* Collection of primitives held in ArrayBuffer storage for performance and memory optimization.
|
|
28301
28687
|
*
|
|
@@ -28303,33 +28689,14 @@ export type BufferPrimitiveOptions = {
|
|
|
28303
28689
|
* be careful to avoid allocating "N" instances of any related JavaScript object. {@link BufferPrimitive},
|
|
28304
28690
|
* {@link Color}, {@link Cartesian3}, and other objects can all be reused when working with large collections,
|
|
28305
28691
|
* using the {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweight pattern}.</p>
|
|
28306
|
-
* @param [options.modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
|
|
28307
|
-
* @param [options.positionNormalized = false] - When <code>true</code>, integer position values are treated as normalized,
|
|
28308
|
-
* where the full integer range maps to [-1, 1] (signed) or [0, 1] (unsigned). Only relevant for integer position datatypes
|
|
28309
|
-
* (BYTE, UNSIGNED_BYTE, SHORT, UNSIGNED_SHORT).
|
|
28310
|
-
* @param [options.allowPicking = false] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
|
|
28311
|
-
* @param [options.boundingVolume] - Bounding volume, in world space, for the collection. When
|
|
28312
|
-
* unspecified, a bounding volume is computed automatically and updated when primitive positions change. When
|
|
28313
|
-
* specified, users are responsible for updating bounding volume as needed. Pre-computing the bounding volume
|
|
28314
|
-
* manually, and updating it only as needed, will improve performance for larger dynamic collections.
|
|
28315
28692
|
*/
|
|
28316
28693
|
export class BufferPrimitiveCollection<T extends BufferPrimitive> {
|
|
28317
|
-
constructor(options
|
|
28318
|
-
modelMatrix?: Matrix4;
|
|
28319
|
-
primitiveCountMax?: number;
|
|
28320
|
-
vertexCountMax?: number;
|
|
28321
|
-
show?: boolean;
|
|
28322
|
-
positionDatatype?: ComponentDatatype;
|
|
28323
|
-
positionNormalized?: boolean;
|
|
28324
|
-
allowPicking?: boolean;
|
|
28325
|
-
boundingVolume?: BoundingSphere;
|
|
28326
|
-
debugShowBoundingVolume?: boolean;
|
|
28327
|
-
blendOption?: BlendOption;
|
|
28328
|
-
});
|
|
28694
|
+
constructor(options?: BufferPrimitiveCollectionOptions);
|
|
28329
28695
|
/**
|
|
28330
28696
|
* Determines if primitives in this collection will be shown.
|
|
28331
28697
|
*/
|
|
28332
28698
|
show: boolean;
|
|
28699
|
+
protected readonly _heightReference: HeightReference;
|
|
28333
28700
|
/**
|
|
28334
28701
|
* Transforms geometry from model to world coordinates.
|
|
28335
28702
|
*/
|
|
@@ -28373,8 +28740,37 @@ export class BufferPrimitiveCollection<T extends BufferPrimitive> {
|
|
|
28373
28740
|
* @example
|
|
28374
28741
|
* const result = new BufferPrimitiveCollection({ ... }); // allocate larger 'result' collection
|
|
28375
28742
|
* BufferPrimitiveCollection.clone(collection, result); // copy primitives from 'collection' into 'result'
|
|
28743
|
+
* @param [predicate] - When provided, only primitives for which this returns <code>true</code> are copied. Surviving primitives are compacted into contiguous indices.
|
|
28744
|
+
*/
|
|
28745
|
+
static clone<T extends BufferPrimitive>(collection: BufferPrimitiveCollection<T>, result: BufferPrimitiveCollection<T>, predicate?: (...params: any[]) => any): void;
|
|
28746
|
+
/**
|
|
28747
|
+
* Returns a copy of the given collection, overriding any constructor options
|
|
28748
|
+
* provided. Omitted options are inherited from the source collection. Any
|
|
28749
|
+
* resized buffers must be large enough to hold every primitive.
|
|
28750
|
+
*
|
|
28751
|
+
* <p>Collection-level state (model matrix, blend option, picking, bounding-volume
|
|
28752
|
+
* mode, etc.) is carried over, but GPU resources are not: the source collection
|
|
28753
|
+
* retains ownership of its renderer resources, so the caller is responsible for
|
|
28754
|
+
* calling {@link BufferPrimitiveCollection#destroy} on the source once it is no
|
|
28755
|
+
* longer needed.</p>
|
|
28756
|
+
* @example
|
|
28757
|
+
* const grown = BufferPrimitiveCollection.fromCollection(collection, {
|
|
28758
|
+
* primitiveCountMax: collection.primitiveCountMax * 2,
|
|
28759
|
+
* vertexCountMax: collection.vertexCountMax * 2,
|
|
28760
|
+
* });
|
|
28761
|
+
* collection.destroy(); // release the source collection's GPU resources
|
|
28762
|
+
* @example
|
|
28763
|
+
* // Grow while dropping hidden primitives.
|
|
28764
|
+
* const compacted = BufferPrimitiveCollection.fromCollection(
|
|
28765
|
+
* collection,
|
|
28766
|
+
* { primitiveCountMax: collection.primitiveCountMax * 2 },
|
|
28767
|
+
* (primitive) => primitive.show,
|
|
28768
|
+
* );
|
|
28769
|
+
* @param collection - Source collection to copy.
|
|
28770
|
+
* @param [options] - Constructor options to override. Omitted options are inherited from the source collection.
|
|
28771
|
+
* @param [predicate] - When provided, only primitives for which this returns <code>true</code> are copied. Surviving primitives are compacted into contiguous indices.
|
|
28376
28772
|
*/
|
|
28377
|
-
static
|
|
28773
|
+
static fromCollection<T extends BufferPrimitive>(collection: BufferPrimitiveCollection<T>, options?: BufferPrimitiveCollectionOptions, predicate?: (...params: any[]) => any): BufferPrimitiveCollection<T>;
|
|
28378
28774
|
/**
|
|
28379
28775
|
* Makes the given {@link BufferPrimitive} a view onto this collection's
|
|
28380
28776
|
* primitive at the given index, for use when reading/writing primitive
|
|
@@ -28444,6 +28840,12 @@ export class BufferPrimitiveCollection<T extends BufferPrimitive> {
|
|
|
28444
28840
|
* (unsigned).
|
|
28445
28841
|
*/
|
|
28446
28842
|
readonly positionNormalized: boolean;
|
|
28843
|
+
/**
|
|
28844
|
+
* Determines which surfaces the collection is draped onto, in addition to
|
|
28845
|
+
* being drawn as standalone geometry. Draping requires that the collection
|
|
28846
|
+
* has been added to {@link Scene#primitives}.
|
|
28847
|
+
*/
|
|
28848
|
+
readonly heightReference: HeightReference;
|
|
28447
28849
|
/**
|
|
28448
28850
|
* Returns a JSON-serializable array representing the collection. This encoding
|
|
28449
28851
|
* is not memory-efficient, and should generally be used for debugging and
|
|
@@ -32160,26 +32562,66 @@ export class ClippingPlaneCollection {
|
|
|
32160
32562
|
* const polygon = new Cesium.ClippingPolygon({
|
|
32161
32563
|
* positions: positions
|
|
32162
32564
|
* });
|
|
32565
|
+
* @example
|
|
32566
|
+
* // A clipping polygon with two holes. Regions inside the holes are not clipped.
|
|
32567
|
+
* const outerRing = Cesium.Cartesian3.fromDegreesArray([
|
|
32568
|
+
* -100.0, 40.0,
|
|
32569
|
+
* -90.0, 40.0,
|
|
32570
|
+
* -90.0, 50.0,
|
|
32571
|
+
* -100.0, 50.0,
|
|
32572
|
+
* ]);
|
|
32573
|
+
*
|
|
32574
|
+
* const firstHole = Cesium.Cartesian3.fromDegreesArray([
|
|
32575
|
+
* -98.0, 42.0,
|
|
32576
|
+
* -96.0, 42.0,
|
|
32577
|
+
* -96.0, 44.0,
|
|
32578
|
+
* -98.0, 44.0,
|
|
32579
|
+
* ]);
|
|
32580
|
+
*
|
|
32581
|
+
* const secondHole = Cesium.Cartesian3.fromDegreesArray([
|
|
32582
|
+
* -94.0, 46.0,
|
|
32583
|
+
* -92.0, 46.0,
|
|
32584
|
+
* -92.0, 48.0,
|
|
32585
|
+
* -94.0, 48.0,
|
|
32586
|
+
* ]);
|
|
32587
|
+
*
|
|
32588
|
+
* const polygonWithHoles = new Cesium.ClippingPolygon({
|
|
32589
|
+
* positions: outerRing,
|
|
32590
|
+
* holes: [firstHole, secondHole],
|
|
32591
|
+
* });
|
|
32163
32592
|
* @param options - Object with the following properties:
|
|
32164
32593
|
* @param options.positions - A list of three or more Cartesian coordinates defining the outer ring of the clipping polygon.
|
|
32594
|
+
* @param [options.holes] - An array of interior rings (holes), each a list of three or more Cartesian coordinates. Regions inside a hole are excluded from the polygon.
|
|
32165
32595
|
*/
|
|
32166
32596
|
export class ClippingPolygon {
|
|
32167
32597
|
constructor(options: {
|
|
32168
32598
|
positions: Cartesian3[];
|
|
32599
|
+
holes?: Cartesian3[][];
|
|
32169
32600
|
ellipsoid?: Ellipsoid;
|
|
32170
32601
|
});
|
|
32171
32602
|
/**
|
|
32172
|
-
* Returns the total number of positions in the polygon,
|
|
32603
|
+
* Returns the total number of positions in the polygon, including any holes.
|
|
32173
32604
|
*/
|
|
32174
32605
|
readonly length: number;
|
|
32175
32606
|
/**
|
|
32176
|
-
* Returns the outer ring of positions.
|
|
32607
|
+
* Returns the outer ring of positions. A ClippingPolygon's geometry is
|
|
32608
|
+
* immutable; the returned array and its coordinates are frozen.
|
|
32177
32609
|
*/
|
|
32178
32610
|
readonly positions: Cartesian3[];
|
|
32611
|
+
/**
|
|
32612
|
+
* Returns the interior rings (holes) of the polygon, each a list of positions.
|
|
32613
|
+
*/
|
|
32614
|
+
readonly holes: Cartesian3[][];
|
|
32179
32615
|
/**
|
|
32180
32616
|
* Returns the ellipsoid used to project the polygon onto surfaces when clipping.
|
|
32181
32617
|
*/
|
|
32182
32618
|
readonly ellipsoid: Ellipsoid;
|
|
32619
|
+
/**
|
|
32620
|
+
* Returns the cartographic rectangle enclosing the polygon, computed once on
|
|
32621
|
+
* construction. Since a ClippingPolygon's geometry is immutable, this rectangle
|
|
32622
|
+
* never changes.
|
|
32623
|
+
*/
|
|
32624
|
+
readonly rectangle: Rectangle;
|
|
32183
32625
|
/**
|
|
32184
32626
|
* Clones the ClippingPolygon without setting its ownership.
|
|
32185
32627
|
* @param polygon - The ClippingPolygon to be cloned
|
|
@@ -32203,6 +32645,8 @@ export class ClippingPolygon {
|
|
|
32203
32645
|
computeRectangle(result?: Rectangle): Rectangle;
|
|
32204
32646
|
}
|
|
32205
32647
|
|
|
32648
|
+
export const bufferPolygonScratch: any;
|
|
32649
|
+
|
|
32206
32650
|
/**
|
|
32207
32651
|
* Specifies a set of clipping polygons. Clipping polygons selectively disable rendering in a region
|
|
32208
32652
|
* inside or outside the specified list of {@link ClippingPolygon} objects for a single glTF model, 3D Tileset, or the globe.
|
|
@@ -32233,7 +32677,8 @@ export class ClippingPolygon {
|
|
|
32233
32677
|
* @param [options.polygons = []] - An array of {@link ClippingPolygon} objects used to selectively disable rendering on the inside of each polygon.
|
|
32234
32678
|
* @param [options.enabled = true] - Determines whether the clipping polygons are active.
|
|
32235
32679
|
* @param [options.inverse = false] - If true, a region will be clipped if it is outside of every polygon in the collection. Otherwise, a region will only be clipped if it is on the inside of any polygon.
|
|
32236
|
-
* @param [options.quality = 1.0] - A scalar that controls the resolution of the signed distance texture used for clipping. Values greater than 1.0 increase quality, values less than 1.0 decrease it. Must be greater than 0.0.
|
|
32680
|
+
* @param [options.quality = 1.0] - A scalar that controls the resolution of the signed distance texture used for clipping. Values greater than 1.0 increase quality, values less than 1.0 decrease it. Must be greater than 0.0. <p>Deprecated in CesiumJS 1.145 and will be removed in 1.147. Signed distance field clipping was replaced with vector clipping, so this option no longer has any effect.</p>
|
|
32681
|
+
* @param [options.ellipsoid = Ellipsoid.default] - The ellipsoid to use to project the clipping polygons onto the globe.
|
|
32237
32682
|
*/
|
|
32238
32683
|
export class ClippingPolygonCollection {
|
|
32239
32684
|
constructor(options?: {
|
|
@@ -32241,6 +32686,7 @@ export class ClippingPolygonCollection {
|
|
|
32241
32686
|
enabled?: boolean;
|
|
32242
32687
|
inverse?: boolean;
|
|
32243
32688
|
quality?: number;
|
|
32689
|
+
ellipsoid?: Ellipsoid;
|
|
32244
32690
|
});
|
|
32245
32691
|
/**
|
|
32246
32692
|
* If true, clipping will be enabled.
|
|
@@ -32252,11 +32698,6 @@ export class ClippingPolygonCollection {
|
|
|
32252
32698
|
* inside of any polygon.
|
|
32253
32699
|
*/
|
|
32254
32700
|
inverse: boolean;
|
|
32255
|
-
/**
|
|
32256
|
-
* A scalar that controls the resolution of the signed distance texture used for clipping.
|
|
32257
|
-
* Values greater than 1.0 increase quality, values less than 1.0 decrease it. Must be greater than 0.0.
|
|
32258
|
-
*/
|
|
32259
|
-
quality: number;
|
|
32260
32701
|
/**
|
|
32261
32702
|
* An event triggered when a new clipping polygon is added to the collection. Event handlers
|
|
32262
32703
|
* are passed the new polygon and the index at which it was added.
|
|
@@ -32267,12 +32708,24 @@ export class ClippingPolygonCollection {
|
|
|
32267
32708
|
* are passed the new polygon and the index from which it was removed.
|
|
32268
32709
|
*/
|
|
32269
32710
|
polygonRemoved: Event;
|
|
32711
|
+
/**
|
|
32712
|
+
* The ellipsoid to use to project the clipping polygons onto the globe.
|
|
32713
|
+
*/
|
|
32714
|
+
ellipsoid: Ellipsoid;
|
|
32270
32715
|
/**
|
|
32271
32716
|
* Returns the number of polygons in this collection. This is commonly used with
|
|
32272
32717
|
* {@link ClippingPolygonCollection#get} to iterate over all the polygons
|
|
32273
32718
|
* in the collection.
|
|
32274
32719
|
*/
|
|
32275
32720
|
readonly length: number;
|
|
32721
|
+
/**
|
|
32722
|
+
* If true, a debug texture visualizing the signed distance field is shown.
|
|
32723
|
+
*/
|
|
32724
|
+
debugShowDistanceTexture: boolean;
|
|
32725
|
+
/**
|
|
32726
|
+
* A scalar that controlled the resolution of the signed distance texture used for clipping.
|
|
32727
|
+
*/
|
|
32728
|
+
quality: number;
|
|
32276
32729
|
/**
|
|
32277
32730
|
* Adds the specified {@link ClippingPolygon} to the collection to be used to selectively disable rendering
|
|
32278
32731
|
* on the inside of each polygon. Use {@link ClippingPolygonCollection#unionClippingRegions} to modify
|
|
@@ -34617,6 +35070,11 @@ export class GaussianSplat3DTileContent implements Cesium3DTileContent {
|
|
|
34617
35070
|
getFeature(batchId: number): Cesium3DTileFeature;
|
|
34618
35071
|
}
|
|
34619
35072
|
|
|
35073
|
+
/**
|
|
35074
|
+
* @property [heightReference = HeightReference.NONE] - Allows clamping (draping)
|
|
35075
|
+
* polylines and polygons on terrain and 3D Tiles. Point clamping is not currently supported.
|
|
35076
|
+
* @property [scene] - Required for primitives that use a clamping {@link HeightReference}.
|
|
35077
|
+
*/
|
|
34620
35078
|
export type GeoJsonPrimitiveConstructorOptions = {
|
|
34621
35079
|
geoJson?: any;
|
|
34622
35080
|
url?: Resource | string;
|
|
@@ -34624,6 +35082,8 @@ export type GeoJsonPrimitiveConstructorOptions = {
|
|
|
34624
35082
|
allowPicking?: boolean;
|
|
34625
35083
|
show?: boolean;
|
|
34626
35084
|
pickObjectFactory?: (...params: any[]) => any;
|
|
35085
|
+
heightReference?: HeightReference;
|
|
35086
|
+
scene?: Scene;
|
|
34627
35087
|
};
|
|
34628
35088
|
|
|
34629
35089
|
/**
|
|
@@ -34635,14 +35095,33 @@ export type GeoJsonPrimitiveConstructorOptions = {
|
|
|
34635
35095
|
* Instead, it exposes high-throughput buffer primitive collections that can be
|
|
34636
35096
|
* added directly to {@link Scene#primitives}.
|
|
34637
35097
|
* @example
|
|
35098
|
+
* // Load GeoJSON
|
|
34638
35099
|
* const loader = await Cesium.GeoJsonPrimitive.fromUrl("./data.geojson");
|
|
34639
35100
|
* viewer.scene.primitives.add(loader);
|
|
34640
|
-
*
|
|
35101
|
+
* @example
|
|
35102
|
+
* // Access GeoJSON features and properties
|
|
34641
35103
|
* loader.points; // BufferPointCollection | undefined
|
|
34642
35104
|
* loader.polylines; // BufferPolylineCollection | undefined
|
|
34643
35105
|
* loader.polygons; // BufferPolygonCollection | undefined
|
|
34644
35106
|
* loader.ids; // source feature IDs
|
|
34645
35107
|
* loader.properties; // source feature properties
|
|
35108
|
+
* @example
|
|
35109
|
+
* // Style GeoJSON
|
|
35110
|
+
* const material = new Cesium.BufferPolylineMaterial({
|
|
35111
|
+
* color: Cesium.Color.RED,
|
|
35112
|
+
* width: 4,
|
|
35113
|
+
* });
|
|
35114
|
+
*
|
|
35115
|
+
* const polyline = new Cesium.BufferPolyline();
|
|
35116
|
+
* const count = primitive.polylines.primitiveCount;
|
|
35117
|
+
* for (let i = 0; i < count; i++) {
|
|
35118
|
+
* primitive.polylines.get(i, polyline);
|
|
35119
|
+
*
|
|
35120
|
+
* const properties = primitive.getProperties(polyline.featureId);
|
|
35121
|
+
* if (properties.myCustomProperty === true) {
|
|
35122
|
+
* polyline.setMaterial(material);
|
|
35123
|
+
* }
|
|
35124
|
+
* }
|
|
34646
35125
|
*/
|
|
34647
35126
|
export class GeoJsonPrimitive {
|
|
34648
35127
|
constructor(options?: GeoJsonPrimitiveConstructorOptions);
|
|
@@ -36302,7 +36781,7 @@ export enum HeightReference {
|
|
|
36302
36781
|
*/
|
|
36303
36782
|
RELATIVE_TO_GROUND = 2,
|
|
36304
36783
|
/**
|
|
36305
|
-
* The position is clamped to
|
|
36784
|
+
* The position is clamped to terrain.
|
|
36306
36785
|
*/
|
|
36307
36786
|
CLAMP_TO_TERRAIN = 3,
|
|
36308
36787
|
/**
|
|
@@ -38406,12 +38885,20 @@ export class MVTDataProvider extends UrlTemplate3DTilesDataProvider {
|
|
|
38406
38885
|
* @param [options.maxZoom = 14] - Maximum zoom level represented in the generated tileset.
|
|
38407
38886
|
* @param [options.extent] - Optional geographic extent in radians to constrain the generated tile tree.
|
|
38408
38887
|
* @param [options.featureIdProperty] - MVT property name to use as feature ID.
|
|
38888
|
+
* @param [options.heightReference] - Drapes the decoded points, lines and polygons onto the
|
|
38889
|
+
* surfaces selected by the value: {@link HeightReference.CLAMP_TO_TERRAIN} drapes onto the globe,
|
|
38890
|
+
* {@link HeightReference.CLAMP_TO_3D_TILE} drapes onto 3D Tiles and models, and
|
|
38891
|
+
* {@link HeightReference.CLAMP_TO_GROUND} drapes onto both. Requires <code>options.scene</code>.
|
|
38892
|
+
* @param [options.scene] - The scene the generated tileset is rendered in, required when
|
|
38893
|
+
* <code>options.heightReference</code> is a clamping value.
|
|
38409
38894
|
*/
|
|
38410
38895
|
static fromUrl(url: Resource | string, options?: {
|
|
38411
38896
|
minZoom?: number;
|
|
38412
38897
|
maxZoom?: number;
|
|
38413
38898
|
extent?: Rectangle;
|
|
38414
38899
|
featureIdProperty?: string;
|
|
38900
|
+
heightReference?: HeightReference;
|
|
38901
|
+
scene?: Scene;
|
|
38415
38902
|
}): Promise<MVTDataProvider>;
|
|
38416
38903
|
}
|
|
38417
38904
|
|
|
@@ -44722,12 +45209,14 @@ export class Scene {
|
|
|
44722
45209
|
* The result of a snap operation. See {@link Scene#snap}.
|
|
44723
45210
|
* @property object - The snapped primitive or feature.
|
|
44724
45211
|
* @property position - The world-space position of the snap point, un-projected from the snap framebuffer's eye-space depth.
|
|
45212
|
+
* @property surfacePosition - The world-space position of the same object's surface fragment nearest the snap point. For a surface snap this equals <code>position</code>; for an edge snap it is a point on a face of the object rather than on its silhouette, or <code>undefined</code> if no surface fragment of the object is visible in the search region.
|
|
44725
45213
|
* @property screenPosition - The window coordinates of the snap point.
|
|
44726
45214
|
* @property isEdge - <code>true</code> if the snap point lies on an edge; <code>false</code> if it lies on a surface.
|
|
44727
45215
|
*/
|
|
44728
45216
|
export type SceneSnapResult = {
|
|
44729
45217
|
object: any;
|
|
44730
45218
|
position: Cartesian3;
|
|
45219
|
+
surfacePosition: Cartesian3 | undefined;
|
|
44731
45220
|
screenPosition: Cartesian2;
|
|
44732
45221
|
isEdge: boolean;
|
|
44733
45222
|
};
|
|
@@ -46137,6 +46626,10 @@ export enum Tonemapper {
|
|
|
46137
46626
|
* @param [options.maxZoom = 14] - Maximum zoom level represented in the generated tileset.
|
|
46138
46627
|
* @param [options.extent] - Optional geographic extent in radians to constrain the generated tile tree.
|
|
46139
46628
|
* @param [options.featureIdProperty] - Feature property name to use as feature ID when supported by content decoding.
|
|
46629
|
+
* @param [options.heightReference] - Drapes the vector content onto the surfaces selected by the
|
|
46630
|
+
* value. Requires <code>options.scene</code>.
|
|
46631
|
+
* @param [options.scene] - The scene the generated tileset is rendered in, required when
|
|
46632
|
+
* <code>options.heightReference</code> is a clamping value.
|
|
46140
46633
|
*/
|
|
46141
46634
|
export class UrlTemplate3DTilesDataProvider {
|
|
46142
46635
|
constructor(urlTemplate: Resource | string, options?: {
|
|
@@ -46144,6 +46637,8 @@ export class UrlTemplate3DTilesDataProvider {
|
|
|
46144
46637
|
maxZoom?: number;
|
|
46145
46638
|
extent?: Rectangle;
|
|
46146
46639
|
featureIdProperty?: string;
|
|
46640
|
+
heightReference?: HeightReference;
|
|
46641
|
+
scene?: Scene;
|
|
46147
46642
|
});
|
|
46148
46643
|
/**
|
|
46149
46644
|
* Creates a provider from a URL template.
|
|
@@ -47030,7 +47525,10 @@ export namespace WebMapServiceImageryProvider {
|
|
|
47030
47525
|
* @property [getFeatureInfoParameters = WebMapServiceImageryProvider.GetFeatureInfoDefaultParameters] - Additional parameters to pass to the WMS server in the GetFeatureInfo URL.
|
|
47031
47526
|
* @property [getFeatureInfoUrl] - The getFeatureInfo URL of the WMS service. If the property is not defined then we use the property value of url.
|
|
47032
47527
|
* @property [getFeatureInfoFormats = WebMapServiceImageryProvider.DefaultGetFeatureInfoFormats] - The formats
|
|
47033
|
-
* in which to try WMS GetFeatureInfo requests.
|
|
47528
|
+
* in which to try WMS GetFeatureInfo requests. Since feature info responses vary across WMS services,
|
|
47529
|
+
* you may need to supply a custom format and parsing callback; see the
|
|
47530
|
+
* {@link https://sandcastle.cesium.com/?id=web-map-tile-service-picking|Sandcastle example} for a complete
|
|
47531
|
+
* example of writing your own callback.
|
|
47034
47532
|
* @property [rectangle = Rectangle.MAX_VALUE] - The rectangle of the layer.
|
|
47035
47533
|
* @property [tilingScheme = new GeographicTilingScheme()] - The tiling scheme to use to divide the world into tiles.
|
|
47036
47534
|
* @property [ellipsoid] - The ellipsoid. If the tilingScheme is specified,
|
|
@@ -47241,7 +47739,10 @@ export namespace WebMapTileServiceImageryProvider {
|
|
|
47241
47739
|
* @property [getFeatureInfoParameters] - Additional parameters to include in GetFeatureInfo requests. Keys are lowercased internally.
|
|
47242
47740
|
* @property [getFeatureInfoUrl] - The GetFeatureInfo URL of the WMTS service. If not specified, the value of <code>url</code> is used.
|
|
47243
47741
|
* @property [getFeatureInfoFormats = WebMapTileServiceImageryProvider.DefaultGetFeatureInfoFormats] - The formats
|
|
47244
|
-
* in which to try WMTS GetFeatureInfo requests.
|
|
47742
|
+
* in which to try WMTS GetFeatureInfo requests. Since feature info responses vary across WMTS services,
|
|
47743
|
+
* you may need to supply a custom format and parsing callback; see the
|
|
47744
|
+
* {@link https://sandcastle.cesium.com/?id=web-map-tile-service-picking|Sandcastle example} for a complete
|
|
47745
|
+
* example of writing your own callback.
|
|
47245
47746
|
* @property [rectangle = Rectangle.MAX_VALUE] - The rectangle covered by the layer.
|
|
47246
47747
|
* @property [tilingScheme] - The tiling scheme corresponding to the organization of the tiles in the TileMatrixSet.
|
|
47247
47748
|
* @property [ellipsoid] - The ellipsoid. If not specified, the WGS84 ellipsoid is used.
|