@cesium/engine 26.0.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-7J2HKPRH.js → chunk-27FWRTJI.js} +9 -9
- package/Build/Workers/{chunk-EF2QYXGA.js → chunk-2EFYUSUY.js} +14 -14
- package/Build/Workers/chunk-2H5264K7.js +1284 -0
- package/Build/Workers/{chunk-DOBXCNC3.js → chunk-2H73KDBM.js} +13 -13
- package/Build/Workers/chunk-2RGJPWQX.js +1284 -0
- package/Build/Workers/chunk-2Z4ZLVOD.js +352 -0
- package/Build/Workers/{chunk-F6QDY6HU.js → chunk-2ZKH2QZB.js} +13 -13
- package/Build/Workers/chunk-36NI5E6W.js +3820 -0
- package/Build/Workers/{chunk-ZK3CF7ZD.js → chunk-37SW7SYS.js} +12 -12
- 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-Y57HREW5.js → chunk-3PSS3T43.js} +4 -4
- package/Build/Workers/chunk-3QR662HH.js +3820 -0
- package/Build/Workers/{chunk-QN67VG36.js → chunk-3SX2WYSO.js} +6 -6
- package/Build/Workers/{chunk-G7PXZRVF.js → chunk-3UDN6LYX.js} +7 -7
- package/Build/Workers/chunk-47MCBSXI.js +9237 -0
- package/Build/Workers/{chunk-KKOSKAZB.js → chunk-4E626OCE.js} +17 -17
- package/Build/Workers/chunk-4NW2MJKH.js +455 -0
- package/Build/Workers/{chunk-DBOEKL43.js → chunk-52YK5BSN.js} +7 -7
- package/Build/Workers/{chunk-KFSTQKNM.js → chunk-5LSOO2KD.js} +7 -7
- package/Build/Workers/chunk-5RNAQZK6.js +9234 -0
- package/Build/Workers/chunk-5YPQBFRD.js +519 -0
- package/Build/Workers/{chunk-S4MCOY6I.js → chunk-6FHT43QR.js} +5 -5
- package/Build/Workers/chunk-6FZDPMTO.js +455 -0
- package/Build/Workers/{chunk-VQYETPWC.js → chunk-6HK6IXK2.js} +4 -4
- package/Build/Workers/chunk-6R5X2GUA.js +1284 -0
- package/Build/Workers/{chunk-AYKR4VBR.js → chunk-6YR6JBMY.js} +2 -2
- package/Build/Workers/chunk-76FDC45O.js +511 -0
- package/Build/Workers/chunk-7A2OGDHT.js +305 -0
- package/Build/Workers/chunk-7CGEQUM2.js +305 -0
- package/Build/Workers/{chunk-54I6Y66F.js → chunk-7D2HZKH7.js} +6 -6
- package/Build/Workers/{chunk-3VFEWOBI.js → chunk-7I325HV6.js} +7 -7
- package/Build/Workers/{chunk-4MGMYHOO.js → chunk-7KVKHY7O.js} +6 -6
- 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-DDWSZVMY.js → chunk-7XM5JK5F.js} +5 -5
- package/Build/Workers/chunk-7YG3ND3P.js +454 -0
- package/Build/Workers/{chunk-IRBKFCEJ.js → chunk-A3O6EDBK.js} +2 -2
- package/Build/Workers/chunk-A62YI6S6.js +305 -0
- package/Build/Workers/{chunk-V7VQKN6N.js → chunk-A6X24AZI.js} +5 -5
- 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-52JDLOEM.js → chunk-AF7DTMJ7.js} +14 -14
- package/Build/Workers/{chunk-ZP7JMQV4.js → chunk-AHWAZRBV.js} +6 -2
- package/Build/Workers/chunk-AJSFRY4U.js +1344 -0
- package/Build/Workers/{chunk-EBSIOBXY.js → chunk-ARZICEEP.js} +8 -8
- package/Build/Workers/chunk-B3QHNA4A.js +147 -0
- package/Build/Workers/{chunk-YLY7NKAB.js → chunk-B4CQSLZJ.js} +4 -4
- package/Build/Workers/chunk-BKPQFCXH.js +511 -0
- package/Build/Workers/{chunk-O3EA5HS7.js → chunk-BSPCI2LO.js} +10 -10
- package/Build/Workers/chunk-BUJWSX5S.js +301 -0
- package/Build/Workers/{chunk-J6BWOHUF.js → chunk-C7JQVRLM.js} +3 -3
- package/Build/Workers/chunk-C7QDUNI3.js +138 -0
- package/Build/Workers/{chunk-KSSWJIZW.js → chunk-CDJDJ5LK.js} +2 -2
- package/Build/Workers/chunk-CEEZE3YZ.js +476 -0
- package/Build/Workers/chunk-CIV5DJOQ.js +778 -0
- package/Build/Workers/{chunk-INUEEEQA.js → chunk-CLCTQVVL.js} +8 -8
- package/Build/Workers/{chunk-C6J67V5A.js → chunk-CQNFIAZU.js} +1 -1
- package/Build/Workers/chunk-CRCGE4J4.js +9237 -0
- package/Build/Workers/{chunk-SMQZZOW6.js → chunk-CUTRKXUQ.js} +10 -10
- package/Build/Workers/{chunk-Q3PY526V.js → chunk-D6AY775A.js} +6 -6
- package/Build/Workers/chunk-DBD5WWG2.js +959 -0
- package/Build/Workers/{chunk-E7VQ76KE.js → chunk-DIGUUD6G.js} +6 -6
- package/Build/Workers/{chunk-P3CK7MCY.js → chunk-DSGLDRTI.js} +4 -4
- 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-424RNO3D.js → chunk-E7NZJOK7.js} +196 -22
- package/Build/Workers/{chunk-UOOIQ3KX.js → chunk-EB3Y5P3A.js} +12 -12
- package/Build/Workers/{chunk-ACXQXN46.js → chunk-EHTS2YPT.js} +16 -16
- package/Build/Workers/{chunk-EPYXRCDB.js → chunk-ELE6SC2C.js} +12 -12
- package/Build/Workers/{chunk-VWV2IJRB.js → chunk-ENNFMWDW.js} +11 -11
- 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-FRQZECAO.js → chunk-FCP2QY4G.js} +5 -5
- package/Build/Workers/{chunk-ZZ46LWL6.js → chunk-FDK4K5IA.js} +1 -1
- package/Build/Workers/{chunk-C6KNZ7T4.js → chunk-FGQFQHN5.js} +17 -17
- package/Build/Workers/chunk-FJWZMGOQ.js +1992 -0
- package/Build/Workers/{chunk-Y5BF6AFU.js → chunk-FQ42MT7M.js} +2 -2
- 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-CZEYZU4N.js → chunk-GNKXEN4C.js} +10 -10
- package/Build/Workers/{chunk-MYP774IS.js → chunk-GSWMAFTE.js} +8 -8
- package/Build/Workers/chunk-GVA7XQI2.js +368 -0
- package/Build/Workers/chunk-GXDHRC4J.js +1344 -0
- package/Build/Workers/chunk-GXWQZBAI.js +58 -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-HHV3MCGV.js +162 -0
- package/Build/Workers/chunk-HLW2ZRVK.js +368 -0
- package/Build/Workers/chunk-HS6AD4P2.js +398 -0
- package/Build/Workers/chunk-HT6FASOT.js +973 -0
- package/Build/Workers/chunk-I74ZH5LK.js +959 -0
- package/Build/Workers/{chunk-7WM2PX4V.js → chunk-IDVHUDZT.js} +5 -5
- package/Build/Workers/chunk-IGAZBTFZ.js +3201 -0
- package/Build/Workers/chunk-IJZJMIUY.js +789 -0
- package/Build/Workers/chunk-ILME5BXA.js +301 -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-JKXV6PG5.js +56 -0
- package/Build/Workers/chunk-JW6OZT4R.js +288 -0
- package/Build/Workers/{chunk-CXOYE2WM.js → chunk-JXYLJCTC.js} +5 -5
- package/Build/Workers/{chunk-CFQP6LYM.js → chunk-K27QOAW6.js} +4 -4
- package/Build/Workers/chunk-KGXSYGBG.js +387 -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-LD64RPYV.js +368 -0
- package/Build/Workers/{chunk-U3ZA64U7.js → chunk-LDRQSYBN.js} +2 -2
- package/Build/Workers/chunk-LGNDTZVX.js +97 -0
- package/Build/Workers/chunk-LNSQVXFH.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-TKKIREQ6.js → chunk-N7CCOFLX.js} +1 -1
- package/Build/Workers/chunk-NAWU5RF4.js +162 -0
- package/Build/Workers/{chunk-M3B5JKSM.js → chunk-NCL22ZUX.js} +1 -1
- package/Build/Workers/chunk-NEFDMMLY.js +241 -0
- package/Build/Workers/{chunk-UA25D5MX.js → chunk-NIWITKQK.js} +10 -10
- 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-OBEU25PI.js +1067 -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-QVLAFFJY.js +56 -0
- package/Build/Workers/{chunk-6YEE6JDR.js → chunk-R4FPNAZ2.js} +6 -6
- 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-RG4F5R57.js +454 -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-SF6K72D7.js +124 -0
- package/Build/Workers/chunk-SGRGNDOD.js +682 -0
- package/Build/Workers/{chunk-QRWGUWI6.js → chunk-SJYSIOEM.js} +11 -11
- package/Build/Workers/chunk-SM2CDCYF.js +198 -0
- package/Build/Workers/chunk-SMTGMFBL.js +97 -0
- package/Build/Workers/chunk-SS5ABQGY.js +102 -0
- package/Build/Workers/{chunk-IYOUHCZB.js → chunk-SXSP3JHS.js} +1 -1
- package/Build/Workers/chunk-T5QBPLE3.js +414 -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-TVZD72WJ.js +778 -0
- package/Build/Workers/chunk-U5LV3F3Z.js +1054 -0
- package/Build/Workers/chunk-UAZUP4I5.js +1992 -0
- package/Build/Workers/chunk-UEY73NRN.js +38 -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-UVO6COT2.js +352 -0
- package/Build/Workers/chunk-V46YGZE6.js +352 -0
- package/Build/Workers/chunk-VAL7DYNR.js +278 -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-4S7IE3LB.js → chunk-W5OCKMPJ.js} +2 -2
- package/Build/Workers/chunk-WBSY7HDY.js +837 -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-XDWCTQCZ.js +101 -0
- package/Build/Workers/chunk-XGA23TAX.js +73 -0
- package/Build/Workers/chunk-XLQZNQ4Z.js +163 -0
- package/Build/Workers/chunk-XLXSDIP5.js +973 -0
- package/Build/Workers/chunk-XQ3SKCMM.js +140 -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-XZMBNNDX.js → chunk-YKU2Q3A2.js} +9 -9
- 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-ZMBHFYOX.js +1344 -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-MPZHGZU6.js → chunk-ZSGUV73H.js} +4 -4
- package/Build/Workers/chunk-ZZUVT5BM.js +476 -0
- 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 +35 -35
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createCorridorGeometry.js +31 -33
- package/Build/Workers/createCorridorOutlineGeometry.js +29 -31
- 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 +24 -24
- package/Build/Workers/createPlaneGeometry.js +16 -16
- package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
- package/Build/Workers/createPolygonGeometry.js +34 -34
- package/Build/Workers/createPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createPolylineGeometry.js +26 -26
- 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 +21 -21
- package/Build/Workers/createSimplePolylineGeometry.js +24 -24
- 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 +24 -24
- package/Build/Workers/decodeDraco.js +10 -10
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +987 -2320
- 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/ArcGISTiledElevationTerrainProvider.js +1 -5
- package/Source/Core/BoundingRectangle.js +6 -8
- package/Source/Core/BoundingSphere.js +0 -3
- package/Source/Core/Cesium3DTilesTerrainGeometryProcessor.js +3 -4
- package/Source/Core/Color.js +1 -0
- 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 +58 -50
- 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/TerrainMesh.js +3 -3
- package/Source/Core/TerrainPicker.js +180 -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/Core/writeTextToCanvas.js +1 -0
- package/Source/DataSources/CompositeEntityCollection.js +0 -1
- package/Source/DataSources/CzmlDataSource.js +14 -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 +529 -557
- package/Source/DataSources/PathGraphics.js +8 -1
- package/Source/DataSources/PathMode.js +27 -0
- package/Source/DataSources/PathVisualizer.js +298 -1
- 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 +12 -1
- package/Source/Renderer/UniformState.js +7 -0
- package/Source/Renderer/VertexArray.js +1 -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/BillboardTexture.js +5 -3
- package/Source/Scene/BufferPrimitiveCollection.js +27 -5
- package/Source/Scene/Camera.js +71 -5
- package/Source/Scene/Cesium3DTileOptimizations.js +4 -6
- package/Source/Scene/Cesium3DTileset.js +1 -1
- package/Source/Scene/ClippingPlaneCollection.js +4 -4
- package/Source/Scene/ClippingPolygon.js +2 -0
- package/Source/Scene/ClippingPolygonCollection.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 +98 -0
- package/Source/Scene/EdgeFramebuffer.js +1 -5
- package/Source/Scene/Expression.js +6 -8
- 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 +511 -409
- package/Source/Scene/GlobeSurfaceTile.js +575 -398
- package/Source/Scene/GlobeSurfaceTileProvider.js +1382 -1151
- package/Source/Scene/GltfBufferViewLoader.js +3 -3
- package/Source/Scene/GltfLoader.js +33 -3
- package/Source/Scene/GltfLoaderUtil.js +20 -4
- package/Source/Scene/GltfPipeline/forEachTextureInMaterial.js +10 -0
- package/Source/Scene/GltfPipeline/removeUnusedElements.js +21 -11
- 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/ImageryLayer.js +2 -2
- package/Source/Scene/ImageryLayerCollection.js +190 -6
- 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/Material.js +1 -0
- package/Source/Scene/Model/B3dmLoader.js +1 -2
- package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +10 -8
- package/Source/Scene/Model/Extensions/Gpm/GltfGpmLoader.js +4 -0
- 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 +11 -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/ModelUtility.js +1 -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 +19 -3
- package/Source/Scene/PlanarFillIdFramebuffer.js +172 -0
- package/Source/Scene/PntsParser.js +1 -1
- package/Source/Scene/PolylineCollection.js +1 -1
- package/Source/Scene/PostProcessStage.js +4 -2
- package/Source/Scene/QuadtreePrimitive.js +3 -2
- package/Source/Scene/ResourceCache.js +7 -4
- package/Source/Scene/ResourceCacheKey.js +21 -18
- package/Source/Scene/Scene.js +203 -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/findMeshoptExtension.js +23 -0
- package/Source/Scene/renderBufferPointCollection.js +14 -10
- package/Source/Scene/renderBufferPolygonCollection.js +10 -15
- package/Source/Scene/renderBufferPolylineCollection.js +121 -194
- 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/Source/Workers/decodeGoogleEarthEnterprisePacket.js +2 -2
- package/Source/Workers/incrementallyBuildTerrainPicker.js +2 -0
- package/index.d.ts +825 -260
- package/index.js +29 -10
- package/package.json +4 -4
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
|
|
1
3
|
import AxisAlignedBoundingBox from "./AxisAlignedBoundingBox.js";
|
|
2
4
|
import Cartesian3 from "./Cartesian3.js";
|
|
3
5
|
import defined from "./defined.js";
|
|
@@ -12,147 +14,198 @@ import Check from "./Check.js";
|
|
|
12
14
|
import DeveloperError from "./DeveloperError.js";
|
|
13
15
|
import CesiumMath from "./Math.js";
|
|
14
16
|
|
|
15
|
-
|
|
17
|
+
/** @import TerrainEncoding from "./TerrainEncoding.js"; */
|
|
18
|
+
/** @import MapProjection from "./MapProjection.js"; */
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Terrain picker can be 4 levels deep (0-3)
|
|
22
|
+
* @ignore
|
|
23
|
+
*/
|
|
16
24
|
const MAXIMUM_TERRAIN_PICKER_LEVEL = 3;
|
|
17
25
|
|
|
18
26
|
/**
|
|
19
27
|
* Creates an object that handles arbitrary ray intersections with a terrain mesh using a spatial acceleration structure.
|
|
20
28
|
*
|
|
21
|
-
* @alias TerrainPicker
|
|
22
|
-
* @constructor
|
|
23
|
-
*
|
|
24
|
-
* @param {Float64Array} vertices The terrain mesh's vertex buffer.
|
|
25
|
-
* @param {Uint8Array|Uint16Array|Uint32Array} indices The terrain mesh's index buffer.
|
|
26
|
-
* @param {TerrainEncoding} encoding The terrain mesh's vertex encoding.
|
|
27
|
-
*
|
|
28
29
|
* @private
|
|
29
30
|
*/
|
|
30
|
-
|
|
31
|
-
//>>includeStart('debug', pragmas.debug);
|
|
32
|
-
Check.defined("vertices", vertices);
|
|
33
|
-
Check.defined("indices", indices);
|
|
34
|
-
Check.defined("encoding", encoding);
|
|
35
|
-
//>>includeEnd('debug');
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* The terrain mesh's vertex buffer.
|
|
39
|
-
* @type {Float64Array}
|
|
40
|
-
*/
|
|
41
|
-
this._vertices = vertices;
|
|
42
|
-
/**
|
|
43
|
-
* The terrain mesh's index buffer.
|
|
44
|
-
* @type {Uint32Array}
|
|
45
|
-
*/
|
|
46
|
-
this._indices = indices;
|
|
31
|
+
class TerrainPicker {
|
|
47
32
|
/**
|
|
48
|
-
* The terrain mesh's vertex
|
|
49
|
-
* @
|
|
33
|
+
* @param {Float64Array} vertices The terrain mesh's vertex buffer.
|
|
34
|
+
* @param {Uint8Array|Uint16Array|Uint32Array} indices The terrain mesh's index buffer.
|
|
35
|
+
* @param {TerrainEncoding} encoding The terrain mesh's vertex encoding.
|
|
50
36
|
*/
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
37
|
+
constructor(vertices, indices, encoding) {
|
|
38
|
+
//>>includeStart('debug', pragmas.debug);
|
|
39
|
+
Check.defined("vertices", vertices);
|
|
40
|
+
Check.defined("indices", indices);
|
|
41
|
+
Check.defined("encoding", encoding);
|
|
42
|
+
//>>includeEnd('debug');
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* The terrain mesh's vertex buffer.
|
|
46
|
+
* @type {Float64Array}
|
|
47
|
+
*/
|
|
48
|
+
this._vertices = vertices;
|
|
49
|
+
/**
|
|
50
|
+
* The terrain mesh's index buffer.
|
|
51
|
+
* @type {Uint8Array|Uint16Array|Uint32Array}
|
|
52
|
+
*/
|
|
53
|
+
this._indices = indices;
|
|
54
|
+
/**
|
|
55
|
+
* The terrain mesh's vertex encoding.
|
|
56
|
+
* @type {TerrainEncoding}
|
|
57
|
+
*/
|
|
58
|
+
this._encoding = encoding;
|
|
59
|
+
/**
|
|
60
|
+
* The inverse of the terrain mesh tile's transform from world space to local space.
|
|
61
|
+
* @type {Matrix4}
|
|
62
|
+
*/
|
|
63
|
+
this._inverseTransform = new Matrix4(); // Compute as-needed on rebuild
|
|
64
|
+
/**
|
|
65
|
+
* Whether or not to reset this terrain mesh's picker on the next ray intersection.
|
|
66
|
+
* @type {Boolean}
|
|
67
|
+
*/
|
|
68
|
+
this._needsRebuild = true;
|
|
69
|
+
/**
|
|
70
|
+
* The root node of the terrain picker's quadtree.
|
|
71
|
+
* @type {TerrainPickerNode}
|
|
72
|
+
*/
|
|
73
|
+
this._rootNode = new TerrainPickerNode();
|
|
74
|
+
}
|
|
75
|
+
|
|
57
76
|
/**
|
|
58
|
-
*
|
|
59
|
-
* @type {
|
|
77
|
+
* Indicates whether the terrain picker needs to be rebuilt due to changes in the underlying terrain mesh's vertices or indices.
|
|
78
|
+
* @type {boolean}
|
|
60
79
|
*/
|
|
61
|
-
|
|
80
|
+
get needsRebuild() {
|
|
81
|
+
return this._needsRebuild;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
set needsRebuild(value) {
|
|
85
|
+
this._needsRebuild = value;
|
|
86
|
+
}
|
|
87
|
+
|
|
62
88
|
/**
|
|
63
|
-
*
|
|
64
|
-
* @
|
|
89
|
+
* Determines the point on the mesh where the given ray intersects.
|
|
90
|
+
* @param {Ray} ray The ray to test.
|
|
91
|
+
* @param {Matrix4} tileTransform The terrain mesh tile's transform from local space to world space.
|
|
92
|
+
* @param {Boolean} cullBackFaces Whether to consider back-facing triangles as intersections.
|
|
93
|
+
* @param {SceneMode} mode The scene mode (2D/3D/Columbus View).
|
|
94
|
+
* @param {MapProjection} projection The map projection.
|
|
95
|
+
* @returns {Cartesian3 | undefined} result The intersection point, or undefined if there is no intersection.
|
|
96
|
+
* @private
|
|
65
97
|
*/
|
|
66
|
-
|
|
98
|
+
rayIntersect(ray, tileTransform, cullBackFaces, mode, projection) {
|
|
99
|
+
// Lazily (re)create the terrain picker
|
|
100
|
+
if (this._needsRebuild) {
|
|
101
|
+
reset(this, tileTransform);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
const invTransform = this._inverseTransform;
|
|
105
|
+
|
|
106
|
+
const transformedRay = scratchTransformedRay;
|
|
107
|
+
|
|
108
|
+
transformedRay.origin = Matrix4.multiplyByPoint(
|
|
109
|
+
invTransform,
|
|
110
|
+
ray.origin,
|
|
111
|
+
transformedRay.origin,
|
|
112
|
+
);
|
|
113
|
+
transformedRay.direction = Matrix4.multiplyByPointAsVector(
|
|
114
|
+
invTransform,
|
|
115
|
+
ray.direction,
|
|
116
|
+
transformedRay.direction,
|
|
117
|
+
);
|
|
118
|
+
|
|
119
|
+
/** @type {IntersectingNode[]} */
|
|
120
|
+
const intersections = [];
|
|
121
|
+
getNodesIntersectingRay(this._rootNode, transformedRay, intersections);
|
|
122
|
+
|
|
123
|
+
return findClosestPointInClosestNode(
|
|
124
|
+
this,
|
|
125
|
+
intersections,
|
|
126
|
+
ray,
|
|
127
|
+
cullBackFaces,
|
|
128
|
+
mode,
|
|
129
|
+
projection,
|
|
130
|
+
);
|
|
131
|
+
}
|
|
67
132
|
}
|
|
68
133
|
|
|
69
134
|
const incrementallyBuildTerrainPickerTaskProcessor = new TaskProcessor(
|
|
70
135
|
"incrementallyBuildTerrainPicker",
|
|
71
136
|
);
|
|
72
137
|
|
|
73
|
-
Object.defineProperties(TerrainPicker.prototype, {
|
|
74
|
-
/**
|
|
75
|
-
* Indicates whether the terrain picker needs to be rebuilt due to changes in the underlying terrain mesh's vertices or indices.
|
|
76
|
-
* @memberof TerrainPicker.prototype
|
|
77
|
-
* @type {boolean}
|
|
78
|
-
*/
|
|
79
|
-
needsRebuild: {
|
|
80
|
-
get: function () {
|
|
81
|
-
return this._needsRebuild;
|
|
82
|
-
},
|
|
83
|
-
set: function (value) {
|
|
84
|
-
this._needsRebuild = value;
|
|
85
|
-
},
|
|
86
|
-
},
|
|
87
|
-
});
|
|
88
|
-
|
|
89
138
|
/**
|
|
90
139
|
* A node in the terrain picker quadtree.
|
|
91
|
-
* @constructor
|
|
92
140
|
* @private
|
|
93
141
|
*/
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
142
|
+
class TerrainPickerNode {
|
|
143
|
+
constructor() {
|
|
144
|
+
/**
|
|
145
|
+
* The tree-space x-coordinate of this node.
|
|
146
|
+
* @type {number}
|
|
147
|
+
*/
|
|
148
|
+
this.x = 0;
|
|
149
|
+
/**
|
|
150
|
+
* The tree-space y-coordinate of this node.
|
|
151
|
+
* @type {number}
|
|
152
|
+
*/
|
|
153
|
+
this.y = 0;
|
|
154
|
+
/**
|
|
155
|
+
* The level of this node in the quadtree.
|
|
156
|
+
* @type {number}
|
|
157
|
+
*/
|
|
158
|
+
this.level = 0;
|
|
159
|
+
/**
|
|
160
|
+
* The axis-aligned bounding box of this node (in the tree's local space).
|
|
161
|
+
* @type {AxisAlignedBoundingBox}
|
|
162
|
+
*/
|
|
163
|
+
this.aabb = createAABBForNode(this.x, this.y, this.level);
|
|
164
|
+
/**
|
|
165
|
+
* The indices of the triangles that intersect this node.
|
|
166
|
+
* @type {Uint32Array}
|
|
167
|
+
*/
|
|
168
|
+
this.intersectingTriangles = new Uint32Array(0);
|
|
169
|
+
/**
|
|
170
|
+
* The child terrain picker nodes of this node.
|
|
171
|
+
* @type {TerrainPickerNode[]}
|
|
172
|
+
*/
|
|
173
|
+
this.children = [];
|
|
174
|
+
/**
|
|
175
|
+
* Whether or not this node is currently building its children on a worker.
|
|
176
|
+
* @type {Boolean}
|
|
177
|
+
*/
|
|
178
|
+
this.buildingChildren = false;
|
|
179
|
+
}
|
|
180
|
+
|
|
125
181
|
/**
|
|
126
|
-
*
|
|
127
|
-
*
|
|
182
|
+
* Adds a child node to this node.
|
|
183
|
+
*
|
|
184
|
+
* @param {number} childIdx The index of the child to add (0-3).
|
|
128
185
|
*/
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
186
|
+
addChild(childIdx) {
|
|
187
|
+
//>>includeStart('debug', pragmas.debug);
|
|
188
|
+
if (childIdx < 0 || childIdx > 3) {
|
|
189
|
+
throw new DeveloperError(
|
|
190
|
+
"TerrainPickerNode child index must be between 0 and 3, inclusive.",
|
|
191
|
+
);
|
|
192
|
+
}
|
|
193
|
+
//>>includeEnd('debug');
|
|
194
|
+
|
|
195
|
+
const childNode = new TerrainPickerNode();
|
|
196
|
+
// Use bitwise operations to get child x,y from child index and parent x,y
|
|
197
|
+
childNode.x = this.x * 2 + (childIdx & 1);
|
|
198
|
+
childNode.y = this.y * 2 + ((childIdx >> 1) & 1);
|
|
199
|
+
childNode.level = this.level + 1;
|
|
200
|
+
childNode.aabb = createAABBForNode(
|
|
201
|
+
childNode.x,
|
|
202
|
+
childNode.y,
|
|
203
|
+
childNode.level,
|
|
143
204
|
);
|
|
144
|
-
}
|
|
145
|
-
//>>includeEnd('debug');
|
|
146
|
-
|
|
147
|
-
const childNode = new TerrainPickerNode();
|
|
148
|
-
// Use bitwise operations to get child x,y from child index and parent x,y
|
|
149
|
-
childNode.x = this.x * 2 + (childIdx & 1);
|
|
150
|
-
childNode.y = this.y * 2 + ((childIdx >> 1) & 1);
|
|
151
|
-
childNode.level = this.level + 1;
|
|
152
|
-
childNode.aabb = createAABBForNode(childNode.x, childNode.y, childNode.level);
|
|
153
205
|
|
|
154
|
-
|
|
155
|
-
}
|
|
206
|
+
this.children[childIdx] = childNode;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
156
209
|
|
|
157
210
|
const scratchTransformedRay = new Ray();
|
|
158
211
|
const scratchTrianglePoints = [
|
|
@@ -161,60 +214,10 @@ const scratchTrianglePoints = [
|
|
|
161
214
|
new Cartesian3(),
|
|
162
215
|
];
|
|
163
216
|
|
|
164
|
-
/**
|
|
165
|
-
* Determines the point on the mesh where the given ray intersects.
|
|
166
|
-
* @param {Ray} ray The ray to test.
|
|
167
|
-
* @param {Matrix4} tileTransform The terrain mesh tile's transform from local space to world space.
|
|
168
|
-
* @param {Boolean} cullBackFaces Whether to consider back-facing triangles as intersections.
|
|
169
|
-
* @param {SceneMode} mode The scene mode (2D/3D/Columbus View).
|
|
170
|
-
* @param {MapProjection} projection The map projection.
|
|
171
|
-
* @returns {Cartesian3 | undefined} result The intersection point, or undefined if there is no intersection.
|
|
172
|
-
* @memberof TerrainPicker
|
|
173
|
-
* @private
|
|
174
|
-
*/
|
|
175
|
-
TerrainPicker.prototype.rayIntersect = function (
|
|
176
|
-
ray,
|
|
177
|
-
tileTransform,
|
|
178
|
-
cullBackFaces,
|
|
179
|
-
mode,
|
|
180
|
-
projection,
|
|
181
|
-
) {
|
|
182
|
-
// Lazily (re)create the terrain picker
|
|
183
|
-
if (this._needsRebuild) {
|
|
184
|
-
reset(this, tileTransform);
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
const invTransform = this._inverseTransform;
|
|
188
|
-
|
|
189
|
-
const transformedRay = scratchTransformedRay;
|
|
190
|
-
|
|
191
|
-
transformedRay.origin = Matrix4.multiplyByPoint(
|
|
192
|
-
invTransform,
|
|
193
|
-
ray.origin,
|
|
194
|
-
transformedRay.origin,
|
|
195
|
-
);
|
|
196
|
-
transformedRay.direction = Matrix4.multiplyByPointAsVector(
|
|
197
|
-
invTransform,
|
|
198
|
-
ray.direction,
|
|
199
|
-
transformedRay.direction,
|
|
200
|
-
);
|
|
201
|
-
|
|
202
|
-
const intersections = [];
|
|
203
|
-
getNodesIntersectingRay(this._rootNode, transformedRay, intersections);
|
|
204
|
-
|
|
205
|
-
return findClosestPointInClosestNode(
|
|
206
|
-
this,
|
|
207
|
-
intersections,
|
|
208
|
-
ray,
|
|
209
|
-
cullBackFaces,
|
|
210
|
-
mode,
|
|
211
|
-
projection,
|
|
212
|
-
);
|
|
213
|
-
};
|
|
214
|
-
|
|
215
217
|
/**
|
|
216
218
|
* Resets the terrain picker's quadtree structure to just the root node. Done whenever the underlying terrain mesh changes.
|
|
217
|
-
* @param terrainPicker The terrain picker to reset.
|
|
219
|
+
* @param {TerrainPicker} terrainPicker The terrain picker to reset.
|
|
220
|
+
* @param {Matrix4} tileTransform
|
|
218
221
|
* @private
|
|
219
222
|
*/
|
|
220
223
|
function reset(terrainPicker, tileTransform) {
|
|
@@ -246,6 +249,7 @@ const scratchAABBMax = new Cartesian3();
|
|
|
246
249
|
* @param {number} y The y coordinate of the node.
|
|
247
250
|
* @param {number} level The level of the node.
|
|
248
251
|
* @returns {AxisAlignedBoundingBox} The axis-aligned bounding box for the node.
|
|
252
|
+
* @ignore
|
|
249
253
|
*/
|
|
250
254
|
function createAABBForNode(x, y, level) {
|
|
251
255
|
const sizeAtLevel = 1.0 / Math.pow(2, level);
|
|
@@ -286,16 +290,19 @@ function packTriangleBuffers(
|
|
|
286
290
|
) {
|
|
287
291
|
Cartesian3.pack(
|
|
288
292
|
trianglePositions[0],
|
|
293
|
+
// @ts-expect-error https://github.com/CesiumGS/cesium/pull/13302
|
|
289
294
|
trianglePositionsBuffer,
|
|
290
295
|
9 * bufferIndex,
|
|
291
296
|
);
|
|
292
297
|
Cartesian3.pack(
|
|
293
298
|
trianglePositions[1],
|
|
299
|
+
// @ts-expect-error https://github.com/CesiumGS/cesium/pull/13302
|
|
294
300
|
trianglePositionsBuffer,
|
|
295
301
|
9 * bufferIndex + 3,
|
|
296
302
|
);
|
|
297
303
|
Cartesian3.pack(
|
|
298
304
|
trianglePositions[2],
|
|
305
|
+
// @ts-expect-error https://github.com/CesiumGS/cesium/pull/13302
|
|
299
306
|
trianglePositionsBuffer,
|
|
300
307
|
9 * bufferIndex + 6,
|
|
301
308
|
);
|
|
@@ -557,7 +564,7 @@ function getVertexPosition(
|
|
|
557
564
|
* Adds triangles to the child nodes of the given node by launching a worker process to do AABB-triangle testing.
|
|
558
565
|
*
|
|
559
566
|
* @param {Matrix4} inverseTransform
|
|
560
|
-
* @param {
|
|
567
|
+
* @param {TerrainPickerNode} node
|
|
561
568
|
* @param {Uint32Array} triangleIndices
|
|
562
569
|
* @param {Float64Array} trianglePositions
|
|
563
570
|
* @returns {Promise<void>} A promise that resolves when the triangles have been added to the child nodes.
|
|
@@ -573,11 +580,14 @@ async function addTrianglesToChildrenNodes(
|
|
|
573
580
|
|
|
574
581
|
// Prepare data to be sent to a worker
|
|
575
582
|
const inverseTransformPacked = new Float64Array(16);
|
|
583
|
+
// @ts-expect-error https://github.com/CesiumGS/cesium/pull/13302
|
|
576
584
|
Matrix4.pack(inverseTransform, inverseTransformPacked, 0);
|
|
577
585
|
|
|
578
586
|
const aabbArray = new Float64Array(6 * 4); // 6 elements per AABB, 4 children
|
|
579
587
|
for (let i = 0; i < 4; i++) {
|
|
588
|
+
// @ts-expect-error https://github.com/CesiumGS/cesium/pull/13302
|
|
580
589
|
Cartesian3.pack(node.children[i].aabb.minimum, aabbArray, i * 6);
|
|
590
|
+
// @ts-expect-error https://github.com/CesiumGS/cesium/pull/13302
|
|
581
591
|
Cartesian3.pack(node.children[i].aabb.maximum, aabbArray, i * 6 + 3);
|
|
582
592
|
}
|
|
583
593
|
|
|
@@ -609,7 +619,9 @@ async function addTrianglesToChildrenNodes(
|
|
|
609
619
|
|
|
610
620
|
// After worker completes, it transfers back a buffer of intersecting triangles for each child node
|
|
611
621
|
// Assign these to the child nodes
|
|
612
|
-
const result =
|
|
622
|
+
const result = /** @type {{intersectingTrianglesArrays: ArrayBuffer[]}} */ (
|
|
623
|
+
await incrementallyBuildTerrainPickerPromise
|
|
624
|
+
);
|
|
613
625
|
result.intersectingTrianglesArrays.forEach((buffer, index) => {
|
|
614
626
|
// Guard against case where tree is reset while waiting for worker
|
|
615
627
|
if (defined(node.children[index])) {
|
|
@@ -782,7 +782,7 @@ TimeIntervalCollection.fromJulianDateArray = function (options, result) {
|
|
|
782
782
|
}
|
|
783
783
|
|
|
784
784
|
for (let i = 0; i < length - 1; ++i) {
|
|
785
|
-
|
|
785
|
+
const startDate = julianDates[i];
|
|
786
786
|
const endDate = julianDates[i + 1];
|
|
787
787
|
|
|
788
788
|
interval = new TimeInterval({
|
|
@@ -795,8 +795,6 @@ TimeIntervalCollection.fromJulianDateArray = function (options, result) {
|
|
|
795
795
|
? dataCallback(interval, result.length)
|
|
796
796
|
: result.length;
|
|
797
797
|
result.addInterval(interval);
|
|
798
|
-
|
|
799
|
-
startDate = endDate;
|
|
800
798
|
}
|
|
801
799
|
|
|
802
800
|
if (trailingInterval) {
|
package/Source/Core/Tipsify.js
CHANGED
|
@@ -819,7 +819,11 @@ Transforms.computeMoonFixedToIcrfMatrix = function (date, result) {
|
|
|
819
819
|
CesiumMath.toRadians(0.064) * Math.sin(e3) +
|
|
820
820
|
CesiumMath.toRadians(0.016) * Math.sin(e4) +
|
|
821
821
|
CesiumMath.toRadians(0.025) * Math.sin(e5);
|
|
822
|
-
return Matrix3.fromHeadingPitchRoll(
|
|
822
|
+
return Matrix3.fromHeadingPitchRoll(
|
|
823
|
+
scratchHpr,
|
|
824
|
+
scratchRotationMatrix,
|
|
825
|
+
result,
|
|
826
|
+
);
|
|
823
827
|
};
|
|
824
828
|
|
|
825
829
|
/**
|