@cesium/engine 15.0.0 → 17.0.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/Workers/{chunk-XED3RXKO.js → chunk-236N6BJN.js} +4 -4
- package/Build/Workers/{chunk-TU6ZXHVU.js → chunk-2BJXFXD7.js} +46 -42
- package/Build/Workers/{chunk-3LHBH4TC.js → chunk-37PA7GZW.js} +7 -7
- package/Build/Workers/{chunk-FMZ5CX6V.js → chunk-4BGKMM7J.js} +1 -1
- package/Build/Workers/{chunk-L5SO4Y5V.js → chunk-4TIR5UPL.js} +1 -1
- package/Build/Workers/{chunk-NAGMYRDW.js → chunk-5PC577K7.js} +17 -20
- package/Build/Workers/{chunk-XDHM4G3P.js → chunk-5RPUEFSA.js} +129 -146
- package/Build/Workers/{chunk-ZVDLC3T4.js → chunk-5YEFZMMM.js} +25 -30
- package/Build/Workers/{chunk-VMVPONIV.js → chunk-77MDEA47.js} +5 -5
- package/Build/Workers/{chunk-QTEX3Y4V.js → chunk-7IIMO7ZZ.js} +33 -41
- package/Build/Workers/{chunk-Q5BHMNKU.js → chunk-7PHT4JHA.js} +27 -29
- package/Build/Workers/{chunk-25TOENEE.js → chunk-C5DCX2YQ.js} +9 -12
- package/Build/Workers/{chunk-B2Y4ZS6X.js → chunk-CAKU6ZPR.js} +9 -12
- package/Build/Workers/{chunk-RRN6LRDX.js → chunk-CBFJVM6I.js} +26 -28
- package/Build/Workers/{chunk-GGV2XJHE.js → chunk-CC2WKHIW.js} +13 -16
- package/Build/Workers/{chunk-K5G2WELR.js → chunk-CQMXZF4A.js} +12 -17
- package/Build/Workers/{chunk-67ONR44K.js → chunk-DRMXU674.js} +7 -10
- package/Build/Workers/{chunk-3LZF23RY.js → chunk-E7SMO47Q.js} +7 -10
- package/Build/Workers/{chunk-PUTA3AE2.js → chunk-G6JUXZUO.js} +4 -4
- package/Build/Workers/{chunk-CHX2K5AC.js → chunk-GO3RZX2R.js} +14 -17
- package/Build/Workers/{chunk-7ITUZTFH.js → chunk-HBNWBMAM.js} +1 -1
- package/Build/Workers/{chunk-3JZGPJMZ.js → chunk-HGEGZ67N.js} +6 -6
- package/Build/Workers/{chunk-GK4QU6QI.js → chunk-IFIS4CVK.js} +2 -2
- package/Build/Workers/{chunk-DYJHEP3B.js → chunk-IKDQX7DY.js} +6 -12
- package/Build/Workers/{chunk-FRAWHNSR.js → chunk-J2HTPGC7.js} +2 -2
- package/Build/Workers/{chunk-YNYCGTQH.js → chunk-K5JTWJPE.js} +5 -8
- package/Build/Workers/{chunk-6EDBC234.js → chunk-KE45DUDH.js} +18 -20
- package/Build/Workers/{chunk-TFCOEX3W.js → chunk-LPGOAMYH.js} +2 -2
- package/Build/Workers/{chunk-WPXU45PH.js → chunk-LVGYWPEX.js} +4 -4
- package/Build/Workers/{chunk-B2UQN3DH.js → chunk-MAIKDIBS.js} +6 -6
- package/Build/Workers/{chunk-MWJW37I7.js → chunk-MS5NWDHH.js} +2 -2
- package/Build/Workers/{chunk-2AVIUB5H.js → chunk-NZSBSY5K.js} +2 -2
- package/Build/Workers/{chunk-OYO6TKMU.js → chunk-OBHLT34A.js} +7 -7
- package/Build/Workers/{chunk-RO2Z3LCR.js → chunk-P2N5IDWU.js} +21 -23
- package/Build/Workers/{chunk-BD2TPFGC.js → chunk-P57PR3WM.js} +9 -11
- package/Build/Workers/{chunk-HYPB7FAV.js → chunk-PM4Q36WX.js} +15 -24
- package/Build/Workers/{chunk-CJGVEABL.js → chunk-PS3OKVOQ.js} +16 -19
- package/Build/Workers/{chunk-SLIA3GQP.js → chunk-QJTIOB2Z.js} +19 -22
- package/Build/Workers/{chunk-EZNAJPP5.js → chunk-QUFN3GEO.js} +18 -21
- package/Build/Workers/{chunk-ARVZCY6X.js → chunk-RX65FA7X.js} +7 -7
- package/Build/Workers/{chunk-E3H7AVMK.js → chunk-SQKTLDSD.js} +39 -41
- package/Build/Workers/{chunk-Z4SI54EB.js → chunk-SSLK4U3V.js} +14 -14
- package/Build/Workers/{chunk-IGINOLDX.js → chunk-UC7KH56Y.js} +6 -9
- package/Build/Workers/{chunk-VJ2PDF64.js → chunk-UFV3YUIN.js} +6 -9
- package/Build/Workers/{chunk-LCMJQVIF.js → chunk-UX5JWAC7.js} +17 -26
- package/Build/Workers/{chunk-ISQSYLZY.js → chunk-UZ6KXWCA.js} +4 -4
- package/Build/Workers/{chunk-JZAMRL5I.js → chunk-VXAKU6EV.js} +34 -36
- package/Build/Workers/{chunk-6EV4VOET.js → chunk-WP3IJYLC.js} +16 -19
- package/Build/Workers/{chunk-5S2B46UQ.js → chunk-XYGBWBD5.js} +1 -1
- package/Build/Workers/{chunk-F7ZI463G.js → chunk-YE6MDFDA.js} +21 -23
- package/Build/Workers/{chunk-I4HO2ED2.js → chunk-ZTBZMRQT.js} +9 -12
- package/Build/Workers/combineGeometry.js +21 -22
- package/Build/Workers/createBoxGeometry.js +15 -16
- package/Build/Workers/createBoxOutlineGeometry.js +20 -25
- package/Build/Workers/createCircleGeometry.js +26 -28
- package/Build/Workers/createCircleOutlineGeometry.js +19 -21
- package/Build/Workers/createCoplanarPolygonGeometry.js +38 -42
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +34 -36
- package/Build/Workers/createCorridorGeometry.js +42 -49
- package/Build/Workers/createCorridorOutlineGeometry.js +36 -43
- package/Build/Workers/createCylinderGeometry.js +17 -18
- package/Build/Workers/createCylinderOutlineGeometry.js +23 -25
- package/Build/Workers/createEllipseGeometry.js +23 -24
- package/Build/Workers/createEllipseOutlineGeometry.js +16 -17
- package/Build/Workers/createEllipsoidGeometry.js +16 -17
- package/Build/Workers/createEllipsoidOutlineGeometry.js +15 -16
- package/Build/Workers/createFrustumGeometry.js +15 -16
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -21
- package/Build/Workers/createGeometry.js +22 -25
- package/Build/Workers/createGroundPolylineGeometry.js +34 -42
- package/Build/Workers/createPlaneGeometry.js +19 -21
- package/Build/Workers/createPlaneOutlineGeometry.js +12 -13
- package/Build/Workers/createPolygonGeometry.js +45 -50
- package/Build/Workers/createPolygonOutlineGeometry.js +39 -44
- package/Build/Workers/createPolylineGeometry.js +33 -40
- package/Build/Workers/createPolylineVolumeGeometry.js +37 -44
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +32 -39
- package/Build/Workers/createRectangleGeometry.js +41 -51
- package/Build/Workers/createRectangleOutlineGeometry.js +28 -33
- package/Build/Workers/createSimplePolylineGeometry.js +29 -34
- package/Build/Workers/createSphereGeometry.js +17 -20
- package/Build/Workers/createSphereOutlineGeometry.js +16 -19
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +12 -13
- package/Build/Workers/createVectorTileGeometries.js +21 -22
- package/Build/Workers/createVectorTilePoints.js +11 -12
- package/Build/Workers/createVectorTilePolygons.js +19 -20
- package/Build/Workers/createVectorTilePolylines.js +12 -13
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +20 -23
- package/Build/Workers/createVerticesFromHeightmap.js +31 -58
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +17 -18
- package/Build/Workers/createWallGeometry.js +30 -35
- package/Build/Workers/createWallOutlineGeometry.js +28 -33
- package/Build/Workers/decodeDraco.js +10 -11
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -16
- package/Build/Workers/transcodeKTX2.js +7 -10
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +19 -20
- package/Source/Core/ApproximateTerrainHeights.js +2 -3
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +6 -6
- package/Source/Core/AxisAlignedBoundingBox.js +2 -3
- package/Source/Core/BingMapsGeocoderService.js +2 -2
- package/Source/Core/BoundingRectangle.js +7 -8
- package/Source/Core/BoundingSphere.js +10 -11
- package/Source/Core/BoxGeometry.js +7 -7
- package/Source/Core/BoxOutlineGeometry.js +7 -9
- package/Source/Core/Cartesian2.js +4 -5
- package/Source/Core/Cartesian3.js +7 -8
- package/Source/Core/Cartesian4.js +6 -7
- package/Source/Core/Cartographic.js +5 -6
- package/Source/Core/CatmullRomSpline.js +2 -2
- package/Source/Core/CesiumTerrainProvider.js +11 -14
- package/Source/Core/Check.d.ts +4 -1
- package/Source/Core/CircleGeometry.js +2 -2
- package/Source/Core/CircleOutlineGeometry.js +2 -2
- package/Source/Core/Clock.js +7 -10
- package/Source/Core/Color.js +28 -28
- package/Source/Core/ColorGeometryInstanceAttribute.js +4 -5
- package/Source/Core/ComponentDatatype.js +4 -6
- package/Source/Core/CoplanarPolygonGeometry.js +8 -10
- package/Source/Core/CoplanarPolygonOutlineGeometry.js +5 -5
- package/Source/Core/CorridorGeometry.js +15 -20
- package/Source/Core/CorridorOutlineGeometry.js +10 -15
- package/Source/Core/Credit.js +1 -2
- package/Source/Core/CullingVolume.js +1 -2
- package/Source/Core/CustomHeightmapTerrainProvider.js +3 -3
- package/Source/Core/CylinderGeometry.js +7 -7
- package/Source/Core/CylinderOutlineGeometry.js +7 -7
- package/Source/Core/DistanceDisplayCondition.js +4 -5
- package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +2 -3
- package/Source/Core/EarthOrientationParameters.js +4 -4
- package/Source/Core/EllipseGeometry.js +17 -23
- package/Source/Core/EllipseOutlineGeometry.js +12 -15
- package/Source/Core/Ellipsoid.js +7 -8
- package/Source/Core/EllipsoidGeodesic.js +1 -2
- package/Source/Core/EllipsoidGeometry.js +15 -15
- package/Source/Core/EllipsoidOutlineGeometry.js +15 -15
- package/Source/Core/EllipsoidRhumbLine.js +2 -3
- package/Source/Core/EllipsoidTangentPlane.js +1 -2
- package/Source/Core/EllipsoidTerrainProvider.js +4 -4
- package/Source/Core/EllipsoidalOccluder.js +2 -3
- package/Source/Core/FeatureDetection.js +1 -2
- package/Source/Core/Frozen.js +24 -0
- package/Source/Core/FrustumGeometry.js +7 -8
- package/Source/Core/FrustumOutlineGeometry.js +3 -4
- package/Source/Core/GeographicProjection.js +1 -2
- package/Source/Core/GeographicTilingScheme.js +6 -12
- package/Source/Core/Geometry.js +4 -7
- package/Source/Core/GeometryAttribute.js +3 -3
- package/Source/Core/GeometryAttributes.js +2 -2
- package/Source/Core/GeometryInstance.js +4 -6
- package/Source/Core/GeometryInstanceAttribute.js +3 -3
- package/Source/Core/GeometryPipeline.js +3 -4
- package/Source/Core/GoogleEarthEnterpriseMetadata.js +13 -24
- package/Source/Core/GoogleEarthEnterpriseTerrainData.js +9 -12
- package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +3 -3
- package/Source/Core/GoogleGeocoderService.js +2 -2
- package/Source/Core/GregorianDate.js +8 -9
- package/Source/Core/GroundPolylineGeometry.js +8 -8
- package/Source/Core/HeadingPitchRange.js +3 -4
- package/Source/Core/HeadingPitchRoll.js +3 -4
- package/Source/Core/Heap.js +3 -4
- package/Source/Core/HeightmapTerrainData.js +22 -38
- package/Source/Core/HeightmapTessellator.js +21 -37
- package/Source/Core/HermitePolynomialApproximation.js +1 -2
- package/Source/Core/HermiteSpline.js +5 -5
- package/Source/Core/ITwinPlatform.js +72 -15
- package/Source/Core/Iau2006XysData.js +8 -10
- package/Source/Core/IntersectionTests.js +1 -2
- package/Source/Core/Interval.js +2 -4
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/IonGeocoderService.js +6 -10
- package/Source/Core/IonResource.js +6 -6
- package/Source/Core/JulianDate.js +11 -12
- package/Source/Core/LinearSpline.js +2 -2
- package/Source/Core/ManagedArray.js +2 -3
- package/Source/Core/Math.js +36 -27
- package/Source/Core/Matrix2.js +7 -8
- package/Source/Core/Matrix3.js +12 -13
- package/Source/Core/Matrix4.js +28 -28
- package/Source/Core/MorphWeightSpline.js +2 -2
- package/Source/Core/NearFarScalar.js +6 -7
- package/Source/Core/Occluder.js +1 -2
- package/Source/Core/OffsetGeometryInstanceAttribute.js +3 -4
- package/Source/Core/OpenCageGeocoderService.js +1 -2
- package/Source/Core/OrientedBoundingBox.js +7 -8
- package/Source/Core/OrthographicFrustum.js +6 -6
- package/Source/Core/OrthographicOffCenterFrustum.js +4 -4
- package/Source/Core/PerspectiveFrustum.js +8 -8
- package/Source/Core/PerspectiveOffCenterFrustum.js +4 -4
- package/Source/Core/PlaneGeometry.js +5 -5
- package/Source/Core/PolygonGeometry.js +17 -19
- package/Source/Core/PolygonGeometryLibrary.js +1 -2
- package/Source/Core/PolygonOutlineGeometry.js +11 -14
- package/Source/Core/PolygonPipeline.js +5 -6
- package/Source/Core/PolylineGeometry.js +10 -15
- package/Source/Core/PolylinePipeline.js +7 -14
- package/Source/Core/PolylineVolumeGeometry.js +8 -13
- package/Source/Core/PolylineVolumeOutlineGeometry.js +7 -12
- package/Source/Core/QuantizedMeshTerrainData.js +12 -16
- package/Source/Core/Quaternion.js +7 -8
- package/Source/Core/QuaternionSpline.js +2 -2
- package/Source/Core/Ray.js +2 -3
- package/Source/Core/Rectangle.js +18 -19
- package/Source/Core/RectangleGeometry.js +17 -25
- package/Source/Core/RectangleGeometryLibrary.js +1 -1
- package/Source/Core/RectangleOutlineGeometry.js +11 -14
- package/Source/Core/Request.js +6 -6
- package/Source/Core/RequestScheduler.js +4 -6
- package/Source/Core/Resource.js +13 -16
- package/Source/Core/S2Cell.js +2 -3
- package/Source/Core/ScreenSpaceEventHandler.js +1 -2
- package/Source/Core/ShowGeometryInstanceAttribute.js +1 -2
- package/Source/Core/Simon1994PlanetaryPositions.js +9 -9
- package/Source/Core/SimplePolylineGeometry.js +8 -11
- package/Source/Core/SphereGeometry.js +1 -2
- package/Source/Core/SphereOutlineGeometry.js +1 -2
- package/Source/Core/Spherical.js +4 -5
- package/Source/Core/Spline.js +1 -2
- package/Source/Core/SteppedSpline.js +2 -2
- package/Source/Core/TaskProcessor.js +2 -9
- package/Source/Core/TerrainData.js +1 -1
- package/Source/Core/TerrainEncoding.js +4 -11
- package/Source/Core/TerrainMesh.js +1 -3
- package/Source/Core/TerrainProvider.js +1 -1
- package/Source/Core/TileProviderError.js +1 -2
- package/Source/Core/TimeInterval.js +7 -7
- package/Source/Core/TimeIntervalCollection.js +7 -7
- package/Source/Core/Tipsify.js +5 -5
- package/Source/Core/Transforms.js +10 -15
- package/Source/Core/TranslationRotationScale.js +3 -6
- package/Source/Core/VRTheWorldTerrainProvider.js +5 -5
- package/Source/Core/VertexFormat.js +10 -10
- package/Source/Core/VerticalExaggeration.js +1 -1
- package/Source/Core/VideoSynchronizer.js +6 -6
- package/Source/Core/WallGeometry.js +8 -11
- package/Source/Core/WallOutlineGeometry.js +7 -10
- package/Source/Core/WebMercatorProjection.js +1 -2
- package/Source/Core/WebMercatorTilingScheme.js +5 -11
- package/Source/Core/arrayRemoveDuplicates.js +1 -2
- package/Source/Core/clone.js +1 -3
- package/Source/Core/combine.js +1 -2
- package/Source/Core/createWorldBathymetryAsync.js +3 -3
- package/Source/Core/createWorldTerrainAsync.js +4 -4
- package/Source/Core/defaultValue.js +20 -1
- package/Source/Core/destroyObject.js +1 -5
- package/Source/Core/getAbsoluteUri.js +1 -2
- package/Source/Core/getMagic.js +1 -2
- package/Source/Core/getStringFromTypedArray.js +2 -3
- package/Source/Core/loadImageFromTypedArray.js +2 -6
- package/Source/Core/oneTimeWarning.js +1 -2
- package/Source/Core/writeTextToCanvas.js +10 -13
- package/Source/DataSources/BillboardGraphics.js +27 -53
- package/Source/DataSources/BoxGraphics.js +13 -18
- package/Source/DataSources/CallbackPositionProperty.js +1 -2
- package/Source/DataSources/Cesium3DTilesetGraphics.js +6 -8
- package/Source/DataSources/CheckerboardMaterialProperty.js +2 -2
- package/Source/DataSources/CompositePositionProperty.js +1 -2
- package/Source/DataSources/ConstantPositionProperty.js +1 -2
- package/Source/DataSources/CorridorGraphics.js +23 -35
- package/Source/DataSources/CylinderGraphics.js +18 -25
- package/Source/DataSources/CzmlDataSource.js +34 -60
- package/Source/DataSources/DataSourceClock.js +12 -13
- package/Source/DataSources/DataSourceCollection.js +2 -3
- package/Source/DataSources/DataSourceDisplay.js +2 -5
- package/Source/DataSources/EllipseGraphics.js +26 -40
- package/Source/DataSources/EllipsoidGeometryUpdater.js +1 -2
- package/Source/DataSources/EllipsoidGraphics.js +21 -32
- package/Source/DataSources/Entity.js +7 -9
- package/Source/DataSources/EntityCluster.js +9 -9
- package/Source/DataSources/EntityView.js +1 -2
- package/Source/DataSources/GeoJsonDataSource.js +12 -12
- package/Source/DataSources/GeometryUpdater.js +12 -17
- package/Source/DataSources/GeometryVisualizer.js +2 -3
- package/Source/DataSources/GpxDataSource.js +4 -7
- package/Source/DataSources/GridMaterialProperty.js +2 -2
- package/Source/DataSources/GroundGeometryUpdater.js +1 -2
- package/Source/DataSources/ImageMaterialProperty.js +2 -2
- package/Source/DataSources/KmlDataSource.js +84 -158
- package/Source/DataSources/LabelGraphics.js +27 -56
- package/Source/DataSources/LabelVisualizer.js +1 -2
- package/Source/DataSources/ModelGraphics.js +29 -63
- package/Source/DataSources/ModelVisualizer.js +1 -2
- package/Source/DataSources/NodeTransformationProperty.js +2 -2
- package/Source/DataSources/PathGraphics.js +10 -12
- package/Source/DataSources/PlaneGraphics.js +13 -15
- package/Source/DataSources/PointGraphics.js +17 -32
- package/Source/DataSources/PolygonGraphics.js +28 -45
- package/Source/DataSources/PolylineDashMaterialProperty.js +2 -2
- package/Source/DataSources/PolylineGeometryUpdater.js +9 -14
- package/Source/DataSources/PolylineGlowMaterialProperty.js +2 -2
- package/Source/DataSources/PolylineGraphics.js +16 -23
- package/Source/DataSources/PolylineOutlineMaterialProperty.js +2 -2
- package/Source/DataSources/PolylineVisualizer.js +2 -3
- package/Source/DataSources/PolylineVolumeGraphics.js +15 -17
- package/Source/DataSources/PositionPropertyArray.js +1 -2
- package/Source/DataSources/Property.js +1 -2
- package/Source/DataSources/PropertyBag.js +1 -2
- package/Source/DataSources/RectangleGraphics.js +23 -35
- package/Source/DataSources/Rotation.js +4 -5
- package/Source/DataSources/SampledPositionProperty.js +2 -3
- package/Source/DataSources/SampledProperty.js +6 -11
- package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +1 -2
- package/Source/DataSources/StripeMaterialProperty.js +2 -2
- package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +1 -2
- package/Source/DataSources/VelocityOrientationProperty.js +1 -2
- package/Source/DataSources/VelocityVectorProperty.js +1 -2
- package/Source/DataSources/WallGraphics.js +15 -23
- package/Source/DataSources/createPropertyDescriptor.js +2 -3
- package/Source/DataSources/exportKml.js +11 -14
- package/Source/Renderer/Buffer.js +5 -5
- package/Source/Renderer/ClearCommand.js +2 -2
- package/Source/Renderer/ComputeCommand.js +3 -3
- package/Source/Renderer/Context.js +22 -33
- package/Source/Renderer/CubeMap.js +6 -6
- package/Source/Renderer/CubeMapFace.js +11 -12
- package/Source/Renderer/DrawCommand.js +14 -25
- package/Source/Renderer/Framebuffer.js +3 -3
- package/Source/Renderer/FramebufferManager.js +25 -39
- package/Source/Renderer/MultisampleFramebuffer.js +2 -2
- package/Source/Renderer/RenderState.js +63 -92
- package/Source/Renderer/Renderbuffer.js +4 -4
- package/Source/Renderer/Sampler.js +2 -2
- package/Source/Renderer/ShaderBuilder.js +2 -3
- package/Source/Renderer/ShaderProgram.js +3 -3
- package/Source/Renderer/ShaderSource.js +3 -3
- package/Source/Renderer/Texture.js +10 -10
- package/Source/Renderer/TextureAtlas.js +4 -4
- package/Source/Renderer/UniformState.js +6 -11
- package/Source/Renderer/VertexArray.js +14 -23
- package/Source/Renderer/VertexArrayFacade.js +7 -11
- package/Source/Scene/Appearance.js +4 -4
- package/Source/Scene/ArcGisMapServerImageryProvider.js +23 -37
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/B3dmParser.js +2 -3
- package/Source/Scene/BatchTableHierarchy.js +6 -13
- package/Source/Scene/Billboard.js +22 -44
- package/Source/Scene/BillboardCollection.js +8 -22
- package/Source/Scene/BingMapsImageryProvider.js +6 -6
- package/Source/Scene/BoxEmitter.js +1 -2
- package/Source/Scene/BufferLoader.js +2 -2
- package/Source/Scene/Camera.js +43 -62
- package/Source/Scene/CameraFlightPath.js +6 -6
- package/Source/Scene/Cesium3DContentGroup.js +2 -2
- package/Source/Scene/Cesium3DTile.js +3 -4
- package/Source/Scene/Cesium3DTileBatchTable.js +6 -49
- package/Source/Scene/Cesium3DTileFeatureTable.js +2 -3
- package/Source/Scene/Cesium3DTilePointFeature.js +10 -18
- package/Source/Scene/Cesium3DTileStyle.js +4 -7
- package/Source/Scene/Cesium3DTilesVoxelProvider.js +57 -34
- package/Source/Scene/Cesium3DTileset.js +77 -143
- package/Source/Scene/Cesium3DTilesetMetadata.js +3 -3
- package/Source/Scene/CircleEmitter.js +2 -3
- package/Source/Scene/ClassificationPrimitive.js +15 -26
- package/Source/Scene/ClippingPlaneCollection.js +7 -12
- package/Source/Scene/ClippingPolygon.js +1 -2
- package/Source/Scene/ClippingPolygonCollection.js +4 -4
- package/Source/Scene/CloudCollection.js +9 -11
- package/Source/Scene/Composite3DTileContent.js +1 -2
- package/Source/Scene/ConeEmitter.js +1 -2
- package/Source/Scene/ContentMetadata.js +2 -2
- package/Source/Scene/CreditDisplay.js +5 -9
- package/Source/Scene/CumulusCloud.js +9 -15
- package/Source/Scene/DebugAppearance.js +7 -7
- package/Source/Scene/DebugCameraPrimitive.js +5 -5
- package/Source/Scene/DebugModelMatrixPrimitive.js +6 -8
- package/Source/Scene/DepthPlane.js +1 -2
- package/Source/Scene/DirectionalLight.js +2 -3
- package/Source/Scene/DiscardMissingTileImagePolicy.js +2 -2
- package/Source/Scene/DynamicEnvironmentMapManager.js +15 -24
- package/Source/Scene/EllipsoidPrimitive.js +11 -19
- package/Source/Scene/EllipsoidSurfaceAppearance.js +11 -15
- package/Source/Scene/FrameRateMonitor.js +12 -21
- package/Source/Scene/FrustumCommands.js +2 -3
- package/Source/Scene/Geometry3DTileContent.js +9 -16
- package/Source/Scene/Globe.js +3 -4
- package/Source/Scene/GlobeSurfaceTileProvider.js +9 -18
- package/Source/Scene/GlobeTranslucencyState.js +12 -25
- package/Source/Scene/GltfBufferViewLoader.js +4 -4
- package/Source/Scene/GltfDracoLoader.js +2 -2
- package/Source/Scene/GltfImageLoader.js +2 -2
- package/Source/Scene/GltfIndexBufferLoader.js +5 -5
- package/Source/Scene/GltfJsonLoader.js +2 -2
- package/Source/Scene/GltfLoader.js +17 -30
- package/Source/Scene/GltfLoaderUtil.js +11 -11
- package/Source/Scene/GltfPipeline/addDefaults.js +37 -64
- package/Source/Scene/GltfPipeline/addToArray.js +1 -3
- package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +2 -5
- package/Source/Scene/GltfPipeline/parseGlb.js +1 -5
- package/Source/Scene/GltfPipeline/removeUnusedElements.js +1 -2
- package/Source/Scene/GltfPipeline/updateVersion.js +28 -49
- package/Source/Scene/GltfStructuralMetadataLoader.js +5 -6
- package/Source/Scene/GltfTextureLoader.js +3 -3
- package/Source/Scene/GltfVertexBufferLoader.js +5 -5
- package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +2 -2
- package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +3 -4
- package/Source/Scene/GridImageryProvider.js +10 -13
- package/Source/Scene/GroundPolylinePrimitive.js +11 -22
- package/Source/Scene/GroundPrimitive.js +13 -24
- package/Source/Scene/GroupMetadata.js +2 -2
- package/Source/Scene/I3SDataProvider.js +10 -15
- package/Source/Scene/I3SNode.js +1 -6
- package/Source/Scene/I3SSublayer.js +1 -2
- package/Source/Scene/I3SSymbology.js +2 -3
- package/Source/Scene/I3dmParser.js +1 -2
- package/Source/Scene/ITwinData.js +11 -6
- package/Source/Scene/ImageBasedLighting.js +2 -2
- package/Source/Scene/ImageryLayer.js +44 -73
- package/Source/Scene/ImageryLayerCollection.js +2 -3
- package/Source/Scene/Implicit3DTileContent.js +3 -4
- package/Source/Scene/ImplicitAvailabilityBitstream.js +2 -5
- package/Source/Scene/ImplicitMetadataView.js +2 -2
- package/Source/Scene/ImplicitSubtree.js +8 -15
- package/Source/Scene/ImplicitSubtreeCache.js +3 -3
- package/Source/Scene/ImplicitSubtreeMetadata.js +2 -2
- package/Source/Scene/InstanceAttributeSemantic.js +1 -1
- package/Source/Scene/IonImageryProvider.js +3 -3
- package/Source/Scene/Label.js +19 -36
- package/Source/Scene/LabelCollection.js +6 -14
- package/Source/Scene/MapboxImageryProvider.js +4 -4
- package/Source/Scene/MapboxStyleImageryProvider.js +5 -5
- package/Source/Scene/Material.js +14 -20
- package/Source/Scene/MaterialAppearance.js +12 -18
- package/Source/Scene/Megatexture.js +1 -2
- package/Source/Scene/MetadataClass.js +4 -4
- package/Source/Scene/MetadataClassProperty.js +11 -14
- package/Source/Scene/MetadataEnum.js +4 -7
- package/Source/Scene/MetadataEnumValue.js +2 -2
- package/Source/Scene/MetadataSchema.js +4 -4
- package/Source/Scene/MetadataSchemaLoader.js +2 -2
- package/Source/Scene/MetadataTable.js +2 -2
- package/Source/Scene/MetadataTableProperty.js +17 -31
- package/Source/Scene/Model/AlphaPipelineStage.js +1 -2
- package/Source/Scene/Model/B3dmLoader.js +15 -26
- package/Source/Scene/Model/BatchTexturePipelineStage.js +1 -2
- package/Source/Scene/Model/ClassificationModelDrawCommand.js +2 -2
- package/Source/Scene/Model/CustomShader.js +10 -12
- package/Source/Scene/Model/Extensions/Gpm/GltfMeshPrimitiveGpmLoader.js +3 -3
- package/Source/Scene/Model/FeatureIdPipelineStage.js +1 -5
- package/Source/Scene/Model/GeoJsonLoader.js +5 -8
- package/Source/Scene/Model/I3dmLoader.js +13 -21
- package/Source/Scene/Model/MaterialPipelineStage.js +1 -2
- package/Source/Scene/Model/Model.js +40 -62
- package/Source/Scene/Model/ModelAnimation.js +5 -6
- package/Source/Scene/Model/ModelAnimationChannel.js +2 -2
- package/Source/Scene/Model/ModelAnimationCollection.js +4 -4
- package/Source/Scene/Model/ModelArticulation.js +2 -2
- package/Source/Scene/Model/ModelArticulationStage.js +2 -2
- package/Source/Scene/Model/ModelDrawCommand.js +3 -3
- package/Source/Scene/Model/ModelFeatureTable.js +3 -9
- package/Source/Scene/Model/ModelLightingOptions.js +3 -3
- package/Source/Scene/Model/ModelNode.js +1 -1
- package/Source/Scene/Model/ModelRuntimeNode.js +2 -2
- package/Source/Scene/Model/ModelRuntimePrimitive.js +2 -2
- package/Source/Scene/Model/ModelSceneGraph.js +2 -2
- package/Source/Scene/Model/ModelSkin.js +2 -2
- package/Source/Scene/Model/PickingPipelineStage.js +1 -2
- package/Source/Scene/Model/PntsLoader.js +6 -6
- package/Source/Scene/Model/PointCloudStylingPipelineStage.js +1 -5
- package/Source/Scene/Model/PrimitiveOutlineGenerator.js +2 -2
- package/Source/Scene/Model/SelectedFeatureIdPipelineStage.js +2 -3
- package/Source/Scene/Model/TextureUniform.js +5 -8
- package/Source/Scene/Model/VaryingType.js +2 -2
- package/Source/Scene/Model/pickModel.js +4 -5
- package/Source/Scene/Moon.js +5 -5
- package/Source/Scene/OpenStreetMapImageryProvider.js +7 -7
- package/Source/Scene/OrderedGroundPrimitiveCollection.js +1 -2
- package/Source/Scene/Particle.js +11 -17
- package/Source/Scene/ParticleBurst.js +5 -5
- package/Source/Scene/ParticleSystem.js +24 -54
- package/Source/Scene/PerInstanceColorAppearance.js +8 -8
- package/Source/Scene/PerformanceDisplay.js +3 -3
- package/Source/Scene/PickFramebuffer.js +4 -5
- package/Source/Scene/Picking.js +3 -4
- package/Source/Scene/PntsParser.js +1 -2
- package/Source/Scene/PointCloud.js +6 -12
- package/Source/Scene/PointCloudShading.js +9 -18
- package/Source/Scene/PointPrimitive.js +11 -21
- package/Source/Scene/PointPrimitiveCollection.js +6 -14
- package/Source/Scene/Polyline.js +5 -5
- package/Source/Scene/PolylineCollection.js +5 -10
- package/Source/Scene/PolylineColorAppearance.js +7 -11
- package/Source/Scene/PolylineMaterialAppearance.js +7 -11
- package/Source/Scene/PostProcessStage.js +2 -2
- package/Source/Scene/PostProcessStageComposite.js +3 -6
- package/Source/Scene/Primitive.js +21 -42
- package/Source/Scene/PrimitiveCollection.js +4 -4
- package/Source/Scene/PrimitivePipeline.js +1 -2
- package/Source/Scene/PropertyAttribute.js +2 -2
- package/Source/Scene/PropertyAttributeProperty.js +4 -4
- package/Source/Scene/PropertyTable.js +2 -2
- package/Source/Scene/PropertyTexture.js +2 -2
- package/Source/Scene/PropertyTextureProperty.js +4 -4
- package/Source/Scene/QuadtreePrimitive.js +89 -67
- package/Source/Scene/QuadtreeTile.js +170 -0
- package/Source/Scene/ResourceCache.js +11 -11
- package/Source/Scene/ResourceCacheKey.js +11 -11
- package/Source/Scene/Scene.js +27 -25
- package/Source/Scene/ScreenSpaceCameraController.js +10 -12
- package/Source/Scene/ShadowMap.js +15 -15
- package/Source/Scene/ShadowVolumeAppearance.js +1 -2
- package/Source/Scene/SingleTileImageryProvider.js +4 -4
- package/Source/Scene/SkyAtmosphere.js +1 -2
- package/Source/Scene/SkyBox.js +1 -2
- package/Source/Scene/SphereEmitter.js +2 -3
- package/Source/Scene/StructuralMetadata.js +2 -2
- package/Source/Scene/SunLight.js +4 -4
- package/Source/Scene/SupportedImageFormats.js +4 -4
- package/Source/Scene/TileBoundingRegion.js +4 -5
- package/Source/Scene/TileBoundingS2Cell.js +3 -4
- package/Source/Scene/TileCoordinatesImageryProvider.js +5 -5
- package/Source/Scene/TileMapServiceImageryProvider.js +18 -27
- package/Source/Scene/TileMetadata.js +2 -2
- package/Source/Scene/TilesetMetadata.js +2 -2
- package/Source/Scene/TimeDynamicImagery.js +2 -2
- package/Source/Scene/TimeDynamicPointCloud.js +8 -10
- package/Source/Scene/TweenCollection.js +13 -16
- package/Source/Scene/UrlTemplateImageryProvider.js +11 -15
- package/Source/Scene/Vector3DTileClampedPolylines.js +1 -2
- package/Source/Scene/Vector3DTileContent.js +16 -20
- package/Source/Scene/Vector3DTileGeometry.js +1 -2
- package/Source/Scene/Vector3DTilePolygons.js +2 -3
- package/Source/Scene/Vector3DTilePolylines.js +1 -2
- package/Source/Scene/Vector3DTilePrimitive.js +9 -13
- package/Source/Scene/VoxelBoxShape.js +38 -82
- package/Source/Scene/VoxelCylinderShape.js +130 -271
- package/Source/Scene/VoxelEllipsoidShape.js +2 -3
- package/Source/Scene/VoxelMetadataOrder.js +14 -2
- package/Source/Scene/VoxelPrimitive.js +17 -30
- package/Source/Scene/VoxelProvider.js +0 -12
- package/Source/Scene/VoxelRenderResources.js +17 -21
- package/Source/Scene/VoxelTraversal.js +2 -6
- package/Source/Scene/WebMapServiceImageryProvider.js +17 -24
- package/Source/Scene/WebMapTileServiceImageryProvider.js +7 -10
- package/Source/Scene/createElevationBandMaterial.js +4 -4
- package/Source/Scene/createGooglePhotorealistic3DTileset.js +8 -16
- package/Source/Scene/createOsmBuildingsAsync.js +3 -6
- package/Source/Scene/createTangentSpaceDebugPrimitive.js +4 -6
- package/Source/Scene/createWorldImageryAsync.js +3 -3
- package/Source/Scene/findContentMetadata.js +2 -5
- package/Source/Scene/findTileMetadata.js +2 -5
- package/Source/Scene/parseBatchTable.js +1 -5
- package/Source/Scene/parseFeatureMetadataLegacy.js +2 -2
- package/Source/Scene/parseStructuralMetadata.js +2 -2
- package/Source/Shaders/PolylineCommon.glsl +1 -1
- package/Source/Shaders/PolylineCommon.js +1 -1
- package/Source/Shaders/Voxels/Octree.glsl +1 -1
- package/Source/Shaders/Voxels/Octree.js +1 -1
- package/Source/Widget/CesiumWidget.js +17 -25
- package/Source/Workers/createGeometry.js +1 -2
- package/Source/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -2
- package/Source/Workers/decodeI3S.js +1 -5
- package/Source/Workers/transcodeKTX2.js +1 -2
- package/index.d.ts +83 -37
- package/index.js +179 -178
- package/package.json +2 -2
- package/Build/Workers/chunk-QZKN2RXM.js +0 -39
|
@@ -3,7 +3,6 @@ import Check from "../Core/Check.js";
|
|
|
3
3
|
import clone from "../Core/clone.js";
|
|
4
4
|
import Color from "../Core/Color.js";
|
|
5
5
|
import combine from "../Core/combine.js";
|
|
6
|
-
import defaultValue from "../Core/defaultValue.js";
|
|
7
6
|
import defined from "../Core/defined.js";
|
|
8
7
|
import deprecationWarning from "../Core/deprecationWarning.js";
|
|
9
8
|
import destroyObject from "../Core/destroyObject.js";
|
|
@@ -48,7 +47,7 @@ function Cesium3DTileBatchTable(
|
|
|
48
47
|
if (defined(batchTableJson)) {
|
|
49
48
|
extensions = batchTableJson.extensions;
|
|
50
49
|
}
|
|
51
|
-
this._extensions =
|
|
50
|
+
this._extensions = extensions ?? {};
|
|
52
51
|
|
|
53
52
|
const properties = initializeProperties(batchTableJson);
|
|
54
53
|
this._properties = properties;
|
|
@@ -266,13 +265,11 @@ Cesium3DTileBatchTable.prototype.applyStyle = function (style) {
|
|
|
266
265
|
for (let i = 0; i < length; ++i) {
|
|
267
266
|
const feature = content.getFeature(i);
|
|
268
267
|
const color = defined(style.color)
|
|
269
|
-
?
|
|
270
|
-
|
|
271
|
-
DEFAULT_COLOR_VALUE,
|
|
272
|
-
)
|
|
268
|
+
? (style.color.evaluateColor(feature, scratchColor) ??
|
|
269
|
+
DEFAULT_COLOR_VALUE)
|
|
273
270
|
: DEFAULT_COLOR_VALUE;
|
|
274
271
|
const show = defined(style.show)
|
|
275
|
-
?
|
|
272
|
+
? (style.show.evaluate(feature) ?? DEFAULT_SHOW_VALUE)
|
|
276
273
|
: DEFAULT_SHOW_VALUE;
|
|
277
274
|
this.setColor(i, color);
|
|
278
275
|
this.setShow(i, show);
|
|
@@ -783,45 +780,6 @@ Cesium3DTileBatchTable.prototype.getFragmentShaderCallback = function (
|
|
|
783
780
|
};
|
|
784
781
|
};
|
|
785
782
|
|
|
786
|
-
Cesium3DTileBatchTable.prototype.getClassificationFragmentShaderCallback =
|
|
787
|
-
function () {
|
|
788
|
-
if (this.featuresLength === 0) {
|
|
789
|
-
return;
|
|
790
|
-
}
|
|
791
|
-
return function (source) {
|
|
792
|
-
source = ShaderSource.replaceMain(source, "tile_main");
|
|
793
|
-
if (ContextLimits.maximumVertexTextureImageUnits > 0) {
|
|
794
|
-
// When VTF is supported, per-feature show/hide already happened in the fragment shader
|
|
795
|
-
source +=
|
|
796
|
-
"uniform sampler2D tile_pickTexture;\n" +
|
|
797
|
-
"in vec2 tile_featureSt; \n" +
|
|
798
|
-
"in vec4 tile_featureColor; \n" +
|
|
799
|
-
"void main() \n" +
|
|
800
|
-
"{ \n" +
|
|
801
|
-
" tile_main(); \n" +
|
|
802
|
-
" out_FragColor = tile_featureColor; \n" +
|
|
803
|
-
" out_FragColor.rgb *= out_FragColor.a; \n" +
|
|
804
|
-
"}";
|
|
805
|
-
} else {
|
|
806
|
-
source +=
|
|
807
|
-
"uniform sampler2D tile_batchTexture; \n" +
|
|
808
|
-
"uniform sampler2D tile_pickTexture;\n" +
|
|
809
|
-
"in vec2 tile_featureSt; \n" +
|
|
810
|
-
"void main() \n" +
|
|
811
|
-
"{ \n" +
|
|
812
|
-
" tile_main(); \n" +
|
|
813
|
-
" vec4 featureProperties = texture(tile_batchTexture, tile_featureSt); \n" +
|
|
814
|
-
" if (featureProperties.a == 0.0) { \n" + // show: alpha == 0 - false, non-zero - true
|
|
815
|
-
" discard; \n" +
|
|
816
|
-
" } \n" +
|
|
817
|
-
" out_FragColor = featureProperties; \n" +
|
|
818
|
-
" out_FragColor.rgb *= out_FragColor.a; \n" +
|
|
819
|
-
"} \n";
|
|
820
|
-
}
|
|
821
|
-
return source;
|
|
822
|
-
};
|
|
823
|
-
};
|
|
824
|
-
|
|
825
783
|
function getColorBlend(batchTable) {
|
|
826
784
|
const tileset = batchTable._content.tileset;
|
|
827
785
|
const colorBlendMode = tileset.colorBlendMode;
|
|
@@ -851,9 +809,8 @@ Cesium3DTileBatchTable.prototype.getUniformMapCallback = function () {
|
|
|
851
809
|
const batchUniformMap = {
|
|
852
810
|
tile_batchTexture: function () {
|
|
853
811
|
// PERFORMANCE_IDEA: we could also use a custom shader that avoids the texture read.
|
|
854
|
-
return
|
|
855
|
-
that._batchTexture.batchTexture
|
|
856
|
-
that._batchTexture.defaultTexture,
|
|
812
|
+
return (
|
|
813
|
+
that._batchTexture.batchTexture ?? that._batchTexture.defaultTexture
|
|
857
814
|
);
|
|
858
815
|
},
|
|
859
816
|
tile_textureDimensions: function () {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import ComponentDatatype from "../Core/ComponentDatatype.js";
|
|
2
|
-
import defaultValue from "../Core/defaultValue.js";
|
|
3
2
|
import defined from "../Core/defined.js";
|
|
4
3
|
|
|
5
4
|
/**
|
|
@@ -55,8 +54,8 @@ Cesium3DTileFeatureTable.prototype.getGlobalProperty = function (
|
|
|
55
54
|
}
|
|
56
55
|
|
|
57
56
|
if (defined(jsonValue.byteOffset)) {
|
|
58
|
-
componentType =
|
|
59
|
-
componentLength =
|
|
57
|
+
componentType = componentType ?? ComponentDatatype.UNSIGNED_INT;
|
|
58
|
+
componentLength = componentLength ?? 1;
|
|
60
59
|
return getTypedArrayFromBinary(
|
|
61
60
|
this,
|
|
62
61
|
semantic,
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import Cartographic from "../Core/Cartographic.js";
|
|
2
2
|
import Color from "../Core/Color.js";
|
|
3
|
-
import defaultValue from "../Core/defaultValue.js";
|
|
4
3
|
import defined from "../Core/defined.js";
|
|
5
4
|
import Cesium3DTileFeature from "./Cesium3DTileFeature.js";
|
|
6
5
|
import createBillboardPointCallback from "./createBillboardPointCallback.js";
|
|
@@ -411,7 +410,7 @@ Object.defineProperties(Cesium3DTilePointFeature.prototype, {
|
|
|
411
410
|
return this._heightOffset;
|
|
412
411
|
},
|
|
413
412
|
set: function (value) {
|
|
414
|
-
const offset =
|
|
413
|
+
const offset = this._heightOffset ?? 0.0;
|
|
415
414
|
|
|
416
415
|
const ellipsoid = this._content.tileset.ellipsoid;
|
|
417
416
|
const cart = ellipsoid.cartesianToCartographic(
|
|
@@ -652,22 +651,15 @@ function setBillboardImage(feature) {
|
|
|
652
651
|
return;
|
|
653
652
|
}
|
|
654
653
|
|
|
655
|
-
const newColor =
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
const
|
|
660
|
-
feature.
|
|
661
|
-
Cesium3DTilePointFeature.
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
feature._pointOutlineWidth,
|
|
665
|
-
Cesium3DTilePointFeature.defaultPointOutlineWidth,
|
|
666
|
-
);
|
|
667
|
-
const newPointSize = defaultValue(
|
|
668
|
-
feature._pointSize,
|
|
669
|
-
Cesium3DTilePointFeature.defaultPointSize,
|
|
670
|
-
);
|
|
654
|
+
const newColor = feature._color ?? Cesium3DTilePointFeature.defaultColor;
|
|
655
|
+
const newOutlineColor =
|
|
656
|
+
feature._pointOutlineColor ??
|
|
657
|
+
Cesium3DTilePointFeature.defaultPointOutlineColor;
|
|
658
|
+
const newOutlineWidth =
|
|
659
|
+
feature._pointOutlineWidth ??
|
|
660
|
+
Cesium3DTilePointFeature.defaultPointOutlineWidth;
|
|
661
|
+
const newPointSize =
|
|
662
|
+
feature._pointSize ?? Cesium3DTilePointFeature.defaultPointSize;
|
|
671
663
|
|
|
672
664
|
const currentColor = feature._billboardColor;
|
|
673
665
|
const currentOutlineColor = feature._billboardOutlineColor;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import clone from "../Core/clone.js";
|
|
2
|
-
import
|
|
2
|
+
import Frozen from "../Core/Frozen.js";
|
|
3
3
|
import defined from "../Core/defined.js";
|
|
4
4
|
import DeveloperError from "../Core/DeveloperError.js";
|
|
5
5
|
import Resource from "../Core/Resource.js";
|
|
@@ -86,7 +86,7 @@ function Cesium3DTileStyle(style) {
|
|
|
86
86
|
}
|
|
87
87
|
|
|
88
88
|
function setup(that, styleJson) {
|
|
89
|
-
styleJson =
|
|
89
|
+
styleJson = clone(styleJson, true) ?? that._style;
|
|
90
90
|
that._style = styleJson;
|
|
91
91
|
|
|
92
92
|
that.show = styleJson.show;
|
|
@@ -119,7 +119,7 @@ function setup(that, styleJson) {
|
|
|
119
119
|
const meta = {};
|
|
120
120
|
if (defined(styleJson.meta)) {
|
|
121
121
|
const defines = styleJson.defines;
|
|
122
|
-
const metaJson =
|
|
122
|
+
const metaJson = styleJson.meta ?? Frozen.EMPTY_OBJECT;
|
|
123
123
|
for (const property in metaJson) {
|
|
124
124
|
if (metaJson.hasOwnProperty(property)) {
|
|
125
125
|
meta[property] = new Expression(metaJson[property], defines);
|
|
@@ -133,10 +133,7 @@ function setup(that, styleJson) {
|
|
|
133
133
|
}
|
|
134
134
|
|
|
135
135
|
function getExpression(tileStyle, value) {
|
|
136
|
-
const defines =
|
|
137
|
-
tileStyle._style,
|
|
138
|
-
defaultValue.EMPTY_OBJECT,
|
|
139
|
-
).defines;
|
|
136
|
+
const defines = (tileStyle._style ?? Frozen.EMPTY_OBJECT).defines;
|
|
140
137
|
|
|
141
138
|
if (!defined(value)) {
|
|
142
139
|
return undefined;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Cartesian3 from "../Core/Cartesian3.js";
|
|
2
2
|
import Cesium3DTilesetMetadata from "./Cesium3DTilesetMetadata.js";
|
|
3
3
|
import Check from "../Core/Check.js";
|
|
4
|
-
import
|
|
4
|
+
import Frozen from "../Core/Frozen.js";
|
|
5
5
|
import defined from "../Core/defined.js";
|
|
6
6
|
import Ellipsoid from "../Core/Ellipsoid.js";
|
|
7
7
|
import hasExtension from "./hasExtension.js";
|
|
@@ -9,6 +9,7 @@ import ImplicitSubtree from "./ImplicitSubtree.js";
|
|
|
9
9
|
import ImplicitSubtreeCache from "./ImplicitSubtreeCache.js";
|
|
10
10
|
import ImplicitTileCoordinates from "./ImplicitTileCoordinates.js";
|
|
11
11
|
import ImplicitTileset from "./ImplicitTileset.js";
|
|
12
|
+
import Matrix3 from "../Core/Matrix3.js";
|
|
12
13
|
import Matrix4 from "../Core/Matrix4.js";
|
|
13
14
|
import MetadataSemantic from "./MetadataSemantic.js";
|
|
14
15
|
import MetadataType from "./MetadataType.js";
|
|
@@ -17,11 +18,11 @@ import preprocess3DTileContent from "./preprocess3DTileContent.js";
|
|
|
17
18
|
import Resource from "../Core/Resource.js";
|
|
18
19
|
import ResourceCache from "./ResourceCache.js";
|
|
19
20
|
import RuntimeError from "../Core/RuntimeError.js";
|
|
20
|
-
import VoxelBoxShape from "./VoxelBoxShape.js";
|
|
21
21
|
import VoxelContent from "./VoxelContent.js";
|
|
22
|
-
import VoxelCylinderShape from "./VoxelCylinderShape.js";
|
|
23
22
|
import VoxelMetadataOrder from "./VoxelMetadataOrder.js";
|
|
24
23
|
import VoxelShapeType from "./VoxelShapeType.js";
|
|
24
|
+
import CesiumMath from "../Core/Math.js";
|
|
25
|
+
import Quaternion from "../Core/Quaternion.js";
|
|
25
26
|
|
|
26
27
|
/**
|
|
27
28
|
* @typedef {Object} Cesium3DTilesVoxelProvider.ConstructorOptions
|
|
@@ -68,7 +69,7 @@ import VoxelShapeType from "./VoxelShapeType.js";
|
|
|
68
69
|
* @experimental This feature is not final and is subject to change without Cesium's standard deprecation policy.
|
|
69
70
|
*/
|
|
70
71
|
function Cesium3DTilesVoxelProvider(options) {
|
|
71
|
-
options =
|
|
72
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
72
73
|
|
|
73
74
|
const {
|
|
74
75
|
className,
|
|
@@ -109,7 +110,10 @@ function Cesium3DTilesVoxelProvider(options) {
|
|
|
109
110
|
this._names = names;
|
|
110
111
|
this._types = types;
|
|
111
112
|
this._componentTypes = componentTypes;
|
|
112
|
-
this._metadataOrder =
|
|
113
|
+
this._metadataOrder =
|
|
114
|
+
shape === VoxelShapeType.ELLIPSOID
|
|
115
|
+
? VoxelMetadataOrder.Z_UP
|
|
116
|
+
: VoxelMetadataOrder.Y_UP;
|
|
113
117
|
this._minimumValues = minimumValues;
|
|
114
118
|
this._maximumValues = maximumValues;
|
|
115
119
|
this._maximumTileCount = maximumTileCount;
|
|
@@ -287,6 +291,7 @@ Object.defineProperties(Cesium3DTilesVoxelProvider.prototype, {
|
|
|
287
291
|
* @memberof Cesium3DTilesVoxelProvider.prototype
|
|
288
292
|
* @type {VoxelMetadataOrder}
|
|
289
293
|
* @readonly
|
|
294
|
+
* @private
|
|
290
295
|
*/
|
|
291
296
|
metadataOrder: {
|
|
292
297
|
get: function () {
|
|
@@ -406,6 +411,11 @@ Cesium3DTilesVoxelProvider.fromUrl = async function (url) {
|
|
|
406
411
|
|
|
407
412
|
const providerOptions = getAttributeInfo(tilesetMetadata, className);
|
|
408
413
|
Object.assign(providerOptions, getShape(root));
|
|
414
|
+
if (defined(root.transform)) {
|
|
415
|
+
providerOptions.globalTransform = Matrix4.unpack(root.transform);
|
|
416
|
+
} else {
|
|
417
|
+
providerOptions.globalTransform = Matrix4.clone(Matrix4.IDENTITY);
|
|
418
|
+
}
|
|
409
419
|
|
|
410
420
|
providerOptions.dimensions = Cartesian3.unpack(voxel.dimensions);
|
|
411
421
|
providerOptions.maximumTileCount = getTileCount(tilesetMetadata);
|
|
@@ -472,21 +482,13 @@ function validate(tileset) {
|
|
|
472
482
|
function getShape(tile) {
|
|
473
483
|
const boundingVolume = tile.boundingVolume;
|
|
474
484
|
|
|
475
|
-
let tileTransform;
|
|
476
|
-
if (defined(tile.transform)) {
|
|
477
|
-
tileTransform = Matrix4.unpack(tile.transform);
|
|
478
|
-
} else {
|
|
479
|
-
tileTransform = Matrix4.clone(Matrix4.IDENTITY);
|
|
480
|
-
}
|
|
481
|
-
|
|
482
485
|
if (defined(boundingVolume.box)) {
|
|
483
|
-
return getBoxShape(boundingVolume.box
|
|
486
|
+
return getBoxShape(boundingVolume.box);
|
|
484
487
|
} else if (defined(boundingVolume.region)) {
|
|
485
488
|
return getEllipsoidShape(boundingVolume.region);
|
|
486
489
|
} else if (hasExtension(boundingVolume, "3DTILES_bounding_volume_cylinder")) {
|
|
487
490
|
return getCylinderShape(
|
|
488
|
-
boundingVolume.extensions["3DTILES_bounding_volume_cylinder"]
|
|
489
|
-
tileTransform,
|
|
491
|
+
boundingVolume.extensions["3DTILES_bounding_volume_cylinder"],
|
|
490
492
|
);
|
|
491
493
|
}
|
|
492
494
|
|
|
@@ -513,39 +515,60 @@ function getEllipsoidShape(region) {
|
|
|
513
515
|
minBounds: minBounds,
|
|
514
516
|
maxBounds: maxBounds,
|
|
515
517
|
shapeTransform: shapeTransform,
|
|
516
|
-
globalTransform: Matrix4.clone(Matrix4.IDENTITY),
|
|
517
518
|
};
|
|
518
519
|
}
|
|
519
520
|
|
|
520
|
-
|
|
521
|
+
const scratchScale = new Cartesian3();
|
|
522
|
+
const scratchRotation = new Matrix3();
|
|
523
|
+
|
|
524
|
+
function getBoxShape(box) {
|
|
521
525
|
const obb = OrientedBoundingBox.unpack(box);
|
|
522
|
-
const
|
|
523
|
-
|
|
524
|
-
obb.center,
|
|
525
|
-
);
|
|
526
|
+
const scale = Matrix3.getScale(obb.halfAxes, scratchScale);
|
|
527
|
+
const rotation = Matrix3.getRotation(obb.halfAxes, scratchRotation);
|
|
526
528
|
|
|
527
529
|
return {
|
|
528
530
|
shape: VoxelShapeType.BOX,
|
|
529
|
-
minBounds: Cartesian3.
|
|
530
|
-
maxBounds: Cartesian3.clone(
|
|
531
|
-
shapeTransform:
|
|
532
|
-
globalTransform: tileTransform,
|
|
531
|
+
minBounds: Cartesian3.negate(scale, new Cartesian3()),
|
|
532
|
+
maxBounds: Cartesian3.clone(scale),
|
|
533
|
+
shapeTransform: Matrix4.fromRotationTranslation(rotation, obb.center),
|
|
533
534
|
};
|
|
534
535
|
}
|
|
535
536
|
|
|
536
|
-
function getCylinderShape(cylinder
|
|
537
|
-
const
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
537
|
+
function getCylinderShape(cylinder) {
|
|
538
|
+
const {
|
|
539
|
+
minRadius,
|
|
540
|
+
maxRadius,
|
|
541
|
+
height,
|
|
542
|
+
minAngle = -CesiumMath.PI,
|
|
543
|
+
maxAngle = CesiumMath.PI,
|
|
544
|
+
translation = [0, 0, 0],
|
|
545
|
+
rotation = [0, 0, 0, 1],
|
|
546
|
+
} = cylinder;
|
|
547
|
+
|
|
548
|
+
//>>includeStart('debug', pragmas.debug);
|
|
549
|
+
Check.typeOf.number("minRadius", minRadius);
|
|
550
|
+
Check.typeOf.number("maxRadius", maxRadius);
|
|
551
|
+
Check.typeOf.number("height", height);
|
|
552
|
+
Check.typeOf.number("minAngle", minAngle);
|
|
553
|
+
Check.typeOf.number("maxAngle", maxAngle);
|
|
554
|
+
Check.typeOf.object("translation", translation);
|
|
555
|
+
Check.typeOf.object("rotation", rotation);
|
|
556
|
+
//>>includeEnd('debug');
|
|
557
|
+
|
|
558
|
+
const minHeight = -0.5 * height + translation[2];
|
|
559
|
+
const maxHeight = 0.5 * height + translation[2];
|
|
560
|
+
|
|
561
|
+
const shapeTransform = Matrix4.fromTranslationQuaternionRotationScale(
|
|
562
|
+
Cartesian3.unpack(translation),
|
|
563
|
+
Quaternion.unpack(rotation),
|
|
564
|
+
Cartesian3.ONE,
|
|
541
565
|
);
|
|
542
566
|
|
|
543
567
|
return {
|
|
544
568
|
shape: VoxelShapeType.CYLINDER,
|
|
545
|
-
minBounds: Cartesian3.
|
|
546
|
-
maxBounds: Cartesian3.
|
|
569
|
+
minBounds: Cartesian3.fromElements(minRadius, minAngle, minHeight),
|
|
570
|
+
maxBounds: Cartesian3.fromElements(maxRadius, maxAngle, maxHeight),
|
|
547
571
|
shapeTransform: shapeTransform,
|
|
548
|
-
globalTransform: tileTransform,
|
|
549
572
|
};
|
|
550
573
|
}
|
|
551
574
|
|
|
@@ -668,7 +691,7 @@ async function getSubtree(provider, subtreeCoord) {
|
|
|
668
691
|
* @returns {Promise<VoxelContent>|undefined} A promise resolving to a VoxelContent containing the data for the tile, or undefined if the request could not be scheduled this frame.
|
|
669
692
|
*/
|
|
670
693
|
Cesium3DTilesVoxelProvider.prototype.requestData = async function (options) {
|
|
671
|
-
options =
|
|
694
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
672
695
|
const {
|
|
673
696
|
tileLevel = 0,
|
|
674
697
|
tileX = 0,
|