@cesium/engine 14.0.0 → 16.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-WVNLSTOF.js → chunk-2TQ64T4I.js} +2 -2
- package/Build/Workers/{chunk-ED6GLQTK.js → chunk-34EWMUFG.js} +1 -1
- package/Build/Workers/{chunk-HEZHXDYB.js → chunk-4LHK6E47.js} +1 -1
- package/Build/Workers/{chunk-7EO56M5R.js → chunk-5TN3LG2T.js} +2 -2
- package/Build/Workers/{chunk-7ZB2RVIQ.js → chunk-6B7KGA5P.js} +16 -19
- package/Build/Workers/{chunk-3QLSKXKF.js → chunk-B75OO2DU.js} +7 -10
- package/Build/Workers/{chunk-Q4ZVWJXX.js → chunk-COOLDICB.js} +9 -11
- package/Build/Workers/{chunk-3PIZQT3I.js → chunk-CQNYYX3N.js} +4 -4
- package/Build/Workers/{chunk-JPDKYBLF.js → chunk-CUJH7PS5.js} +27 -29
- package/Build/Workers/{chunk-CI2HEJFC.js → chunk-EAWYQ44R.js} +39 -41
- package/Build/Workers/{chunk-SDIDRZDG.js → chunk-EJJDBH5W.js} +7 -7
- package/Build/Workers/{chunk-5KWRW7YL.js → chunk-EO44CO62.js} +2 -2
- package/Build/Workers/{chunk-N2XAJBC6.js → chunk-EOIUWEAK.js} +26 -28
- package/Build/Workers/{chunk-YJX7X577.js → chunk-ERKJ7IWJ.js} +21 -23
- package/Build/Workers/{chunk-J7IH4EYI.js → chunk-ESED7XBA.js} +13 -16
- package/Build/Workers/{chunk-F4CUH4MR.js → chunk-FW2OX42E.js} +18 -21
- package/Build/Workers/{chunk-FX4R4MTH.js → chunk-GH6I7PBY.js} +6 -9
- package/Build/Workers/{chunk-FYGLNDKG.js → chunk-GQVSADCI.js} +19 -22
- package/Build/Workers/{chunk-TY4DKOWR.js → chunk-ICU72UPR.js} +4 -4
- package/Build/Workers/{chunk-DT5NFR5C.js → chunk-ILVAXLMC.js} +7 -7
- package/Build/Workers/{chunk-ZGFIT57T.js → chunk-KKV6XBF5.js} +27 -23
- package/Build/Workers/{chunk-HKHQ3EDR.js → chunk-KV6TEHXY.js} +4 -4
- package/Build/Workers/{chunk-B4GSRXE3.js → chunk-LCSH4ZOB.js} +7 -10
- package/Build/Workers/{chunk-LNSWJ43X.js → chunk-M5J3S3HY.js} +17 -26
- package/Build/Workers/{chunk-LJBJM6VI.js → chunk-NB6D74SQ.js} +6 -6
- package/Build/Workers/{chunk-4CHMVQTQ.js → chunk-NREPBWCX.js} +14 -14
- package/Build/Workers/{chunk-PWF4EY5P.js → chunk-OD4Q7HE5.js} +4 -4
- package/Build/Workers/{chunk-77XPS7ZA.js → chunk-OMFZ4IN6.js} +15 -24
- package/Build/Workers/{chunk-HUFQVUMY.js → chunk-OMZGZVHI.js} +12 -17
- package/Build/Workers/{chunk-LOZ4NKY3.js → chunk-ORIMMEHO.js} +18 -20
- package/Build/Workers/{chunk-5S5OOA6U.js → chunk-OWLBD6BL.js} +1 -1
- package/Build/Workers/{chunk-VCNOFQYH.js → chunk-PB6SE3SZ.js} +9 -12
- package/Build/Workers/{chunk-3JBEPBPL.js → chunk-PT6U7UNY.js} +25 -30
- package/Build/Workers/{chunk-G3BVMPWG.js → chunk-RWAFHSX3.js} +2 -2
- package/Build/Workers/{chunk-KHWLAQVA.js → chunk-S2NKKWYE.js} +1 -1
- package/Build/Workers/{chunk-FFBJDW4A.js → chunk-S3IQBSIB.js} +6 -6
- package/Build/Workers/{chunk-3LYROPON.js → chunk-SCUQTTCN.js} +16 -19
- package/Build/Workers/{chunk-ZMNLEL6W.js → chunk-TBSA4MNF.js} +5 -8
- package/Build/Workers/{chunk-EWDGNOJE.js → chunk-TEUGW455.js} +9 -12
- package/Build/Workers/{chunk-XK4OP6VA.js → chunk-TL5YKZJF.js} +33 -41
- package/Build/Workers/{chunk-KM6MITPF.js → chunk-V4Y7C25O.js} +46 -42
- package/Build/Workers/{chunk-OMXHEJTK.js → chunk-VNDECE6N.js} +2 -2
- package/Build/Workers/{chunk-LS3KVHYY.js → chunk-VVTAI2TN.js} +6 -9
- package/Build/Workers/{chunk-WEHZP4SE.js → chunk-VXAAIRJ7.js} +129 -146
- package/Build/Workers/{chunk-MVM4JV5U.js → chunk-WGIOUM2S.js} +9 -12
- package/Build/Workers/{chunk-JHBPC4LK.js → chunk-XF6EBVKV.js} +7 -7
- package/Build/Workers/{chunk-D7ZBZPHV.js → chunk-XMKE4XB2.js} +5 -5
- package/Build/Workers/{chunk-7UHKH6M3.js → chunk-YA4XALD5.js} +34 -36
- package/Build/Workers/{chunk-KSYBJA4M.js → chunk-YFXXUW6U.js} +6 -12
- package/Build/Workers/{chunk-Z3QWTHI7.js → chunk-YL26OJCG.js} +21 -23
- package/Build/Workers/{chunk-K4AH3TDT.js → chunk-ZLJDDRGB.js} +14 -17
- 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 +50 -46
- 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/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 +3 -4
- 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 +66 -12
- 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 +16 -19
- package/Source/Core/PolygonGeometryLibrary.js +27 -6
- 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 +10 -13
- 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/TexturePacker.js +166 -0
- 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/BillboardVisualizer.js +3 -3
- 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 +53 -28
- 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 -37
- 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 +16 -15
- package/Source/Renderer/TextureAtlas.js +802 -0
- 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 +105 -182
- package/Source/Scene/BillboardCollection.js +140 -224
- package/Source/Scene/BillboardLoadState.js +44 -0
- package/Source/Scene/BillboardTexture.js +348 -0
- 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 +45 -64
- 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 +419 -137
- package/Source/Scene/Cesium3DTileset.js +77 -143
- package/Source/Scene/Cesium3DTilesetMetadata.js +3 -3
- package/Source/Scene/Cesium3DTilesetStatistics.js +0 -1
- 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/Expression.js +1 -0
- 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 +22 -37
- 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 +42 -71
- 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 +10 -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/KeyframeNode.js +16 -2
- package/Source/Scene/Label.js +19 -36
- package/Source/Scene/LabelCollection.js +218 -196
- 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 +145 -82
- 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 -14
- 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 +41 -63
- 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/ModelUtility.js +5 -1
- 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 +84 -66
- 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 +66 -40
- package/Source/Scene/ScreenSpaceCameraController.js +10 -20
- 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/SpatialNode.js +4 -11
- 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/Vector3DTilePoints.js +2 -5
- 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 +14 -8
- package/Source/Scene/VoxelCell.js +6 -5
- package/Source/Scene/VoxelContent.js +171 -107
- package/Source/Scene/VoxelCylinderShape.js +69 -69
- package/Source/Scene/VoxelEllipsoidShape.js +17 -8
- package/Source/Scene/VoxelMetadataOrder.js +24 -0
- package/Source/Scene/VoxelPrimitive.js +134 -79
- package/Source/Scene/VoxelProvider.js +22 -29
- package/Source/Scene/VoxelRenderResources.js +26 -7
- package/Source/Scene/VoxelShape.js +10 -3
- package/Source/Scene/VoxelTraversal.js +260 -180
- 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/Scene/processVoxelProperties.js +3 -0
- package/Source/Shaders/GlobeFS.glsl +10 -1
- package/Source/Shaders/GlobeFS.js +10 -1
- package/Source/Shaders/Voxels/Megatexture.glsl +4 -16
- package/Source/Shaders/Voxels/Megatexture.js +4 -16
- package/Source/Shaders/Voxels/Octree.glsl +44 -7
- package/Source/Shaders/Voxels/Octree.js +44 -7
- package/Source/Shaders/Voxels/VoxelFS.glsl +9 -15
- package/Source/Shaders/Voxels/VoxelFS.js +9 -15
- package/Source/Shaders/Voxels/convertUvToCylinder.glsl +15 -15
- package/Source/Shaders/Voxels/convertUvToCylinder.js +15 -15
- 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 +231 -92
- package/index.js +315 -310
- package/package.json +3 -3
- package/Build/Workers/chunk-TVL3F7IU.js +0 -39
- package/Source/Scene/TextureAtlas.js +0 -558
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import defaultValue from "../Core/defaultValue.js";
|
|
2
1
|
import BoundingSphere from "../Core/BoundingSphere.js";
|
|
3
2
|
import Cartesian2 from "../Core/Cartesian2.js";
|
|
4
3
|
import Cartesian3 from "../Core/Cartesian3.js";
|
|
@@ -26,6 +25,7 @@ function VoxelCylinderShape() {
|
|
|
26
25
|
/**
|
|
27
26
|
* An oriented bounding box containing the bounded shape.
|
|
28
27
|
* The update function must be called before accessing this value.
|
|
28
|
+
* @private
|
|
29
29
|
* @type {OrientedBoundingBox}
|
|
30
30
|
* @readonly
|
|
31
31
|
*/
|
|
@@ -34,6 +34,7 @@ function VoxelCylinderShape() {
|
|
|
34
34
|
/**
|
|
35
35
|
* A bounding sphere containing the bounded shape.
|
|
36
36
|
* The update function must be called before accessing this value.
|
|
37
|
+
* @private
|
|
37
38
|
* @type {BoundingSphere}
|
|
38
39
|
* @readonly
|
|
39
40
|
*/
|
|
@@ -42,6 +43,7 @@ function VoxelCylinderShape() {
|
|
|
42
43
|
/**
|
|
43
44
|
* A transformation matrix containing the bounded shape.
|
|
44
45
|
* The update function must be called before accessing this value.
|
|
46
|
+
* @private
|
|
45
47
|
* @type {Matrix4}
|
|
46
48
|
* @readonly
|
|
47
49
|
*/
|
|
@@ -50,6 +52,7 @@ function VoxelCylinderShape() {
|
|
|
50
52
|
/**
|
|
51
53
|
* A transformation matrix containing the shape, ignoring the bounds.
|
|
52
54
|
* The update function must be called before accessing this value.
|
|
55
|
+
* @private
|
|
53
56
|
* @type {Matrix4}
|
|
54
57
|
* @readonly
|
|
55
58
|
*/
|
|
@@ -71,42 +74,44 @@ function VoxelCylinderShape() {
|
|
|
71
74
|
* @type {number}
|
|
72
75
|
* @private
|
|
73
76
|
*/
|
|
74
|
-
this.
|
|
77
|
+
this._minimumAngle = VoxelCylinderShape.DefaultMinBounds.y;
|
|
75
78
|
|
|
76
79
|
/**
|
|
77
80
|
* @type {number}
|
|
78
81
|
* @private
|
|
79
82
|
*/
|
|
80
|
-
this.
|
|
83
|
+
this._maximumAngle = VoxelCylinderShape.DefaultMaxBounds.y;
|
|
81
84
|
|
|
82
85
|
/**
|
|
83
86
|
* @type {number}
|
|
84
87
|
* @private
|
|
85
88
|
*/
|
|
86
|
-
this.
|
|
89
|
+
this._minimumHeight = VoxelCylinderShape.DefaultMinBounds.z;
|
|
87
90
|
|
|
88
91
|
/**
|
|
89
92
|
* @type {number}
|
|
90
93
|
* @private
|
|
91
94
|
*/
|
|
92
|
-
this.
|
|
95
|
+
this._maximumHeight = VoxelCylinderShape.DefaultMaxBounds.z;
|
|
93
96
|
|
|
94
97
|
/**
|
|
98
|
+
* @private
|
|
95
99
|
* @type {Object<string, any>}
|
|
96
100
|
* @readonly
|
|
97
101
|
*/
|
|
98
102
|
this.shaderUniforms = {
|
|
99
|
-
cylinderRenderHeightMinMax: new Cartesian2(),
|
|
100
103
|
cylinderRenderRadiusMinMax: new Cartesian2(),
|
|
101
104
|
cylinderRenderAngleMinMax: new Cartesian2(),
|
|
105
|
+
cylinderRenderHeightMinMax: new Cartesian2(),
|
|
102
106
|
cylinderUvToShapeUvRadius: new Cartesian2(),
|
|
103
|
-
cylinderUvToShapeUvHeight: new Cartesian2(),
|
|
104
107
|
cylinderUvToShapeUvAngle: new Cartesian2(),
|
|
108
|
+
cylinderUvToShapeUvHeight: new Cartesian2(),
|
|
105
109
|
cylinderShapeUvAngleMinMax: new Cartesian2(),
|
|
106
110
|
cylinderShapeUvAngleRangeZeroMid: 0.0,
|
|
107
111
|
};
|
|
108
112
|
|
|
109
113
|
/**
|
|
114
|
+
* @private
|
|
110
115
|
* @type {Object<string, any>}
|
|
111
116
|
* @readonly
|
|
112
117
|
*/
|
|
@@ -132,6 +137,7 @@ function VoxelCylinderShape() {
|
|
|
132
137
|
|
|
133
138
|
/**
|
|
134
139
|
* The maximum number of intersections against the shape for any ray direction.
|
|
140
|
+
* @private
|
|
135
141
|
* @type {number}
|
|
136
142
|
* @readonly
|
|
137
143
|
*/
|
|
@@ -142,7 +148,7 @@ const scratchScale = new Cartesian3();
|
|
|
142
148
|
|
|
143
149
|
/**
|
|
144
150
|
* Update the shape's state.
|
|
145
|
-
*
|
|
151
|
+
* @private
|
|
146
152
|
* @param {Matrix4} modelMatrix The model matrix.
|
|
147
153
|
* @param {Cartesian3} minBounds The minimum bounds.
|
|
148
154
|
* @param {Cartesian3} maxBounds The maximum bounds.
|
|
@@ -157,14 +163,8 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
157
163
|
clipMinBounds,
|
|
158
164
|
clipMaxBounds,
|
|
159
165
|
) {
|
|
160
|
-
clipMinBounds =
|
|
161
|
-
|
|
162
|
-
VoxelCylinderShape.DefaultMinBounds,
|
|
163
|
-
);
|
|
164
|
-
clipMaxBounds = defaultValue(
|
|
165
|
-
clipMaxBounds,
|
|
166
|
-
VoxelCylinderShape.DefaultMaxBounds,
|
|
167
|
-
);
|
|
166
|
+
clipMinBounds = clipMinBounds ?? VoxelCylinderShape.DefaultMinBounds;
|
|
167
|
+
clipMaxBounds = clipMaxBounds ?? VoxelCylinderShape.DefaultMaxBounds;
|
|
168
168
|
//>>includeStart('debug', pragmas.debug);
|
|
169
169
|
Check.typeOf.object("modelMatrix", modelMatrix);
|
|
170
170
|
Check.typeOf.object("minBounds", minBounds);
|
|
@@ -173,10 +173,10 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
173
173
|
|
|
174
174
|
const defaultMinRadius = VoxelCylinderShape.DefaultMinBounds.x;
|
|
175
175
|
const defaultMaxRadius = VoxelCylinderShape.DefaultMaxBounds.x;
|
|
176
|
-
const
|
|
177
|
-
const
|
|
178
|
-
const
|
|
179
|
-
const
|
|
176
|
+
const defaultMinAngle = VoxelCylinderShape.DefaultMinBounds.y;
|
|
177
|
+
const defaultMaxAngle = VoxelCylinderShape.DefaultMaxBounds.y;
|
|
178
|
+
const defaultMinHeight = VoxelCylinderShape.DefaultMinBounds.z;
|
|
179
|
+
const defaultMaxHeight = VoxelCylinderShape.DefaultMaxBounds.z;
|
|
180
180
|
const defaultAngleRange = defaultMaxAngle - defaultMinAngle;
|
|
181
181
|
const defaultAngleRangeHalf = 0.5 * defaultAngleRange;
|
|
182
182
|
|
|
@@ -208,38 +208,38 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
208
208
|
const renderMinRadius = Math.max(shapeMinRadius, clipMinRadius);
|
|
209
209
|
const renderMaxRadius = Math.min(shapeMaxRadius, clipMaxRadius);
|
|
210
210
|
|
|
211
|
+
// Clamp the angles to the valid range
|
|
212
|
+
const shapeMinAngle = CesiumMath.negativePiToPi(minBounds.y);
|
|
213
|
+
const shapeMaxAngle = CesiumMath.negativePiToPi(maxBounds.y);
|
|
214
|
+
const clipMinAngle = CesiumMath.negativePiToPi(clipMinBounds.y);
|
|
215
|
+
const clipMaxAngle = CesiumMath.negativePiToPi(clipMaxBounds.y);
|
|
216
|
+
const renderMinAngle = Math.max(shapeMinAngle, clipMinAngle);
|
|
217
|
+
const renderMaxAngle = Math.min(shapeMaxAngle, clipMaxAngle);
|
|
218
|
+
|
|
211
219
|
// Clamp the heights to the valid range
|
|
212
220
|
const shapeMinHeight = CesiumMath.clamp(
|
|
213
|
-
minBounds.
|
|
221
|
+
minBounds.z,
|
|
214
222
|
defaultMinHeight,
|
|
215
223
|
defaultMaxHeight,
|
|
216
224
|
);
|
|
217
225
|
const shapeMaxHeight = CesiumMath.clamp(
|
|
218
|
-
maxBounds.
|
|
226
|
+
maxBounds.z,
|
|
219
227
|
defaultMinHeight,
|
|
220
228
|
defaultMaxHeight,
|
|
221
229
|
);
|
|
222
230
|
const clipMinHeight = CesiumMath.clamp(
|
|
223
|
-
clipMinBounds.
|
|
231
|
+
clipMinBounds.z,
|
|
224
232
|
defaultMinHeight,
|
|
225
233
|
defaultMaxHeight,
|
|
226
234
|
);
|
|
227
235
|
const clipMaxHeight = CesiumMath.clamp(
|
|
228
|
-
clipMaxBounds.
|
|
236
|
+
clipMaxBounds.z,
|
|
229
237
|
defaultMinHeight,
|
|
230
238
|
defaultMaxHeight,
|
|
231
239
|
);
|
|
232
240
|
const renderMinHeight = Math.max(shapeMinHeight, clipMinHeight);
|
|
233
241
|
const renderMaxHeight = Math.min(shapeMaxHeight, clipMaxHeight);
|
|
234
242
|
|
|
235
|
-
// Clamp the angles to the valid range
|
|
236
|
-
const shapeMinAngle = CesiumMath.negativePiToPi(minBounds.z);
|
|
237
|
-
const shapeMaxAngle = CesiumMath.negativePiToPi(maxBounds.z);
|
|
238
|
-
const clipMinAngle = CesiumMath.negativePiToPi(clipMinBounds.z);
|
|
239
|
-
const clipMaxAngle = CesiumMath.negativePiToPi(clipMaxBounds.z);
|
|
240
|
-
const renderMinAngle = Math.max(shapeMinAngle, clipMinAngle);
|
|
241
|
-
const renderMaxAngle = Math.min(shapeMaxAngle, clipMaxAngle);
|
|
242
|
-
|
|
243
243
|
const scale = Matrix4.getScale(modelMatrix, scratchScale);
|
|
244
244
|
|
|
245
245
|
// Exit early if the shape is not visible.
|
|
@@ -263,20 +263,20 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
263
263
|
|
|
264
264
|
this._minimumRadius = shapeMinRadius; // [0,1]
|
|
265
265
|
this._maximumRadius = shapeMaxRadius; // [0,1]
|
|
266
|
-
this._minimumHeight = shapeMinHeight; // [-1,+1]
|
|
267
|
-
this._maximumHeight = shapeMaxHeight; // [-1,+1]
|
|
268
266
|
this._minimumAngle = shapeMinAngle; // [-pi,+pi]
|
|
269
267
|
this._maximumAngle = shapeMaxAngle; // [-pi,+pi]
|
|
268
|
+
this._minimumHeight = shapeMinHeight; // [-1,+1]
|
|
269
|
+
this._maximumHeight = shapeMaxHeight; // [-1,+1]
|
|
270
270
|
|
|
271
271
|
this.shapeTransform = Matrix4.clone(modelMatrix, this.shapeTransform);
|
|
272
272
|
|
|
273
273
|
this.orientedBoundingBox = getCylinderChunkObb(
|
|
274
274
|
renderMinRadius,
|
|
275
275
|
renderMaxRadius,
|
|
276
|
-
renderMinHeight,
|
|
277
|
-
renderMaxHeight,
|
|
278
276
|
renderMinAngle,
|
|
279
277
|
renderMaxAngle,
|
|
278
|
+
renderMinHeight,
|
|
279
|
+
renderMaxHeight,
|
|
280
280
|
this.shapeTransform,
|
|
281
281
|
this.orientedBoundingBox,
|
|
282
282
|
);
|
|
@@ -296,8 +296,6 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
296
296
|
const shapeIsDefaultMinRadius = shapeMinRadius === defaultMinRadius;
|
|
297
297
|
const shapeIsDefaultRadius =
|
|
298
298
|
shapeIsDefaultMinRadius && shapeIsDefaultMaxRadius;
|
|
299
|
-
const shapeIsDefaultHeight =
|
|
300
|
-
shapeMinHeight === defaultMinHeight && shapeMaxHeight === defaultMaxHeight;
|
|
301
299
|
const shapeIsAngleReversed = shapeMaxAngle < shapeMinAngle;
|
|
302
300
|
const shapeAngleRange =
|
|
303
301
|
shapeMaxAngle - shapeMinAngle + shapeIsAngleReversed * defaultAngleRange;
|
|
@@ -323,6 +321,8 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
323
321
|
undefined,
|
|
324
322
|
epsilonAngleDiscontinuity,
|
|
325
323
|
);
|
|
324
|
+
const shapeIsDefaultHeight =
|
|
325
|
+
shapeMinHeight === defaultMinHeight && shapeMaxHeight === defaultMaxHeight;
|
|
326
326
|
|
|
327
327
|
const renderIsDefaultMinRadius = renderMinRadius === defaultMinRadius;
|
|
328
328
|
const renderIsAngleReversed = renderMaxAngle < renderMinAngle;
|
|
@@ -504,7 +504,7 @@ VoxelCylinderShape.prototype.update = function (
|
|
|
504
504
|
/**
|
|
505
505
|
* Computes an oriented bounding box for a specified tile.
|
|
506
506
|
* The update function must be called before calling this function.
|
|
507
|
-
*
|
|
507
|
+
* @private
|
|
508
508
|
* @param {number} tileLevel The tile's level.
|
|
509
509
|
* @param {number} tileX The tile's x coordinate.
|
|
510
510
|
* @param {number} tileY The tile's y coordinate.
|
|
@@ -529,10 +529,10 @@ VoxelCylinderShape.prototype.computeOrientedBoundingBoxForTile = function (
|
|
|
529
529
|
|
|
530
530
|
const minimumRadius = this._minimumRadius;
|
|
531
531
|
const maximumRadius = this._maximumRadius;
|
|
532
|
-
const minimumHeight = this._minimumHeight;
|
|
533
|
-
const maximumHeight = this._maximumHeight;
|
|
534
532
|
const minimumAngle = this._minimumAngle;
|
|
535
533
|
const maximumAngle = this._maximumAngle;
|
|
534
|
+
const minimumHeight = this._minimumHeight;
|
|
535
|
+
const maximumHeight = this._maximumHeight;
|
|
536
536
|
|
|
537
537
|
const sizeAtLevel = 1.0 / Math.pow(2.0, tileLevel);
|
|
538
538
|
|
|
@@ -546,34 +546,34 @@ VoxelCylinderShape.prototype.computeOrientedBoundingBoxForTile = function (
|
|
|
546
546
|
maximumRadius,
|
|
547
547
|
(tileX + 1) * sizeAtLevel,
|
|
548
548
|
);
|
|
549
|
-
const heightStart = CesiumMath.lerp(
|
|
550
|
-
minimumHeight,
|
|
551
|
-
maximumHeight,
|
|
552
|
-
tileY * sizeAtLevel,
|
|
553
|
-
);
|
|
554
|
-
const heightEnd = CesiumMath.lerp(
|
|
555
|
-
minimumHeight,
|
|
556
|
-
maximumHeight,
|
|
557
|
-
(tileY + 1) * sizeAtLevel,
|
|
558
|
-
);
|
|
559
549
|
const angleStart = CesiumMath.lerp(
|
|
560
550
|
minimumAngle,
|
|
561
551
|
maximumAngle,
|
|
562
|
-
|
|
552
|
+
tileY * sizeAtLevel,
|
|
563
553
|
);
|
|
564
554
|
const angleEnd = CesiumMath.lerp(
|
|
565
555
|
minimumAngle,
|
|
566
556
|
maximumAngle,
|
|
557
|
+
(tileY + 1) * sizeAtLevel,
|
|
558
|
+
);
|
|
559
|
+
const heightStart = CesiumMath.lerp(
|
|
560
|
+
minimumHeight,
|
|
561
|
+
maximumHeight,
|
|
562
|
+
tileZ * sizeAtLevel,
|
|
563
|
+
);
|
|
564
|
+
const heightEnd = CesiumMath.lerp(
|
|
565
|
+
minimumHeight,
|
|
566
|
+
maximumHeight,
|
|
567
567
|
(tileZ + 1) * sizeAtLevel,
|
|
568
568
|
);
|
|
569
569
|
|
|
570
570
|
return getCylinderChunkObb(
|
|
571
571
|
radiusStart,
|
|
572
572
|
radiusEnd,
|
|
573
|
-
heightStart,
|
|
574
|
-
heightEnd,
|
|
575
573
|
angleStart,
|
|
576
574
|
angleEnd,
|
|
575
|
+
heightStart,
|
|
576
|
+
heightEnd,
|
|
577
577
|
this.shapeTransform,
|
|
578
578
|
result,
|
|
579
579
|
);
|
|
@@ -586,7 +586,7 @@ const scratchTileMaxBounds = new Cartesian3();
|
|
|
586
586
|
/**
|
|
587
587
|
* Computes an oriented bounding box for a specified sample within a specified tile.
|
|
588
588
|
* The update function must be called before calling this function.
|
|
589
|
-
*
|
|
589
|
+
* @private
|
|
590
590
|
* @param {SpatialNode} spatialNode The spatial node containing the sample
|
|
591
591
|
* @param {Cartesian3} tileDimensions The size of the tile in number of samples, before padding
|
|
592
592
|
* @param {Cartesian3} tileUv The sample coordinate within the tile
|
|
@@ -651,17 +651,17 @@ VoxelCylinderShape.prototype.computeOrientedBoundingBoxForSample = function (
|
|
|
651
651
|
return getCylinderChunkObb(
|
|
652
652
|
radiusStart,
|
|
653
653
|
radiusEnd,
|
|
654
|
-
heightStart,
|
|
655
|
-
heightEnd,
|
|
656
654
|
angleStart,
|
|
657
655
|
angleEnd,
|
|
656
|
+
heightStart,
|
|
657
|
+
heightEnd,
|
|
658
658
|
this.shapeTransform,
|
|
659
659
|
result,
|
|
660
660
|
);
|
|
661
661
|
};
|
|
662
662
|
|
|
663
663
|
/**
|
|
664
|
-
* Defines the minimum bounds of the shape. Corresponds to minimum radius,
|
|
664
|
+
* Defines the minimum bounds of the shape. Corresponds to minimum radius, angle, and height.
|
|
665
665
|
*
|
|
666
666
|
* @type {Cartesian3}
|
|
667
667
|
* @constant
|
|
@@ -670,11 +670,11 @@ VoxelCylinderShape.prototype.computeOrientedBoundingBoxForSample = function (
|
|
|
670
670
|
* @private
|
|
671
671
|
*/
|
|
672
672
|
VoxelCylinderShape.DefaultMinBounds = Object.freeze(
|
|
673
|
-
new Cartesian3(0.0, -
|
|
673
|
+
new Cartesian3(0.0, -CesiumMath.PI, -1.0),
|
|
674
674
|
);
|
|
675
675
|
|
|
676
676
|
/**
|
|
677
|
-
* Defines the maximum bounds of the shape. Corresponds to maximum radius,
|
|
677
|
+
* Defines the maximum bounds of the shape. Corresponds to maximum radius, angle, height.
|
|
678
678
|
*
|
|
679
679
|
* @type {Cartesian3}
|
|
680
680
|
* @constant
|
|
@@ -683,7 +683,7 @@ VoxelCylinderShape.DefaultMinBounds = Object.freeze(
|
|
|
683
683
|
* @private
|
|
684
684
|
*/
|
|
685
685
|
VoxelCylinderShape.DefaultMaxBounds = Object.freeze(
|
|
686
|
-
new Cartesian3(1.0, +
|
|
686
|
+
new Cartesian3(1.0, +CesiumMath.PI, +1.0),
|
|
687
687
|
);
|
|
688
688
|
|
|
689
689
|
const maxTestAngles = 5;
|
|
@@ -744,10 +744,10 @@ function computeLooseOrientedBoundingBox(matrix, result) {
|
|
|
744
744
|
*
|
|
745
745
|
* @param {number} radiusStart The radiusStart.
|
|
746
746
|
* @param {number} radiusEnd The radiusEnd.
|
|
747
|
-
* @param {number} heightStart The heightStart.
|
|
748
|
-
* @param {number} heightEnd The heightEnd.
|
|
749
747
|
* @param {number} angleStart The angleStart.
|
|
750
748
|
* @param {number} angleEnd The angleEnd.
|
|
749
|
+
* @param {number} heightStart The heightStart.
|
|
750
|
+
* @param {number} heightEnd The heightEnd.
|
|
751
751
|
* @param {Matrix4} matrix The matrix to transform the points.
|
|
752
752
|
* @param {OrientedBoundingBox} result The object onto which to store the result.
|
|
753
753
|
* @returns {OrientedBoundingBox} The oriented bounding box that contains this subregion.
|
|
@@ -757,10 +757,10 @@ function computeLooseOrientedBoundingBox(matrix, result) {
|
|
|
757
757
|
function getCylinderChunkObb(
|
|
758
758
|
radiusStart,
|
|
759
759
|
radiusEnd,
|
|
760
|
-
heightStart,
|
|
761
|
-
heightEnd,
|
|
762
760
|
angleStart,
|
|
763
761
|
angleEnd,
|
|
762
|
+
heightStart,
|
|
763
|
+
heightEnd,
|
|
764
764
|
matrix,
|
|
765
765
|
result,
|
|
766
766
|
) {
|
|
@@ -768,10 +768,10 @@ function getCylinderChunkObb(
|
|
|
768
768
|
const defaultMaxBounds = VoxelCylinderShape.DefaultMaxBounds;
|
|
769
769
|
const defaultMinRadius = defaultMinBounds.x; // 0
|
|
770
770
|
const defaultMaxRadius = defaultMaxBounds.x; // 1
|
|
771
|
-
const
|
|
772
|
-
const
|
|
773
|
-
const
|
|
774
|
-
const
|
|
771
|
+
const defaultMinAngle = defaultMinBounds.y; // -pi
|
|
772
|
+
const defaultMaxAngle = defaultMaxBounds.y; // +pi
|
|
773
|
+
const defaultMinHeight = defaultMinBounds.z; // -1
|
|
774
|
+
const defaultMaxHeight = defaultMaxBounds.z; // +1
|
|
775
775
|
|
|
776
776
|
// Return early if using the default bounds
|
|
777
777
|
if (
|
|
@@ -8,7 +8,6 @@ import Matrix3 from "../Core/Matrix3.js";
|
|
|
8
8
|
import Matrix4 from "../Core/Matrix4.js";
|
|
9
9
|
import OrientedBoundingBox from "../Core/OrientedBoundingBox.js";
|
|
10
10
|
import Rectangle from "../Core/Rectangle.js";
|
|
11
|
-
import defaultValue from "../Core/defaultValue.js";
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* An ellipsoid {@link VoxelShape}.
|
|
@@ -29,6 +28,7 @@ function VoxelEllipsoidShape() {
|
|
|
29
28
|
* The update function must be called before accessing this value.
|
|
30
29
|
* @type {OrientedBoundingBox}
|
|
31
30
|
* @readonly
|
|
31
|
+
* @private
|
|
32
32
|
*/
|
|
33
33
|
this.orientedBoundingBox = new OrientedBoundingBox();
|
|
34
34
|
|
|
@@ -37,6 +37,7 @@ function VoxelEllipsoidShape() {
|
|
|
37
37
|
* The update function must be called before accessing this value.
|
|
38
38
|
* @type {BoundingSphere}
|
|
39
39
|
* @readonly
|
|
40
|
+
* @private
|
|
40
41
|
*/
|
|
41
42
|
this.boundingSphere = new BoundingSphere();
|
|
42
43
|
|
|
@@ -45,6 +46,7 @@ function VoxelEllipsoidShape() {
|
|
|
45
46
|
* The update function must be called before accessing this value.
|
|
46
47
|
* @type {Matrix4}
|
|
47
48
|
* @readonly
|
|
49
|
+
* @private
|
|
48
50
|
*/
|
|
49
51
|
this.boundTransform = new Matrix4();
|
|
50
52
|
|
|
@@ -53,11 +55,13 @@ function VoxelEllipsoidShape() {
|
|
|
53
55
|
* The update function must be called before accessing this value.
|
|
54
56
|
* @type {Matrix4}
|
|
55
57
|
* @readonly
|
|
58
|
+
* @private
|
|
56
59
|
*/
|
|
57
60
|
this.shapeTransform = new Matrix4();
|
|
58
61
|
|
|
59
62
|
/**
|
|
60
63
|
* @type {Rectangle}
|
|
64
|
+
* @private
|
|
61
65
|
*/
|
|
62
66
|
this._rectangle = new Rectangle();
|
|
63
67
|
|
|
@@ -81,17 +85,20 @@ function VoxelEllipsoidShape() {
|
|
|
81
85
|
|
|
82
86
|
/**
|
|
83
87
|
* @type {Cartesian3}
|
|
88
|
+
* @private
|
|
84
89
|
*/
|
|
85
90
|
this._translation = new Cartesian3();
|
|
86
91
|
|
|
87
92
|
/**
|
|
88
93
|
* @type {Matrix3}
|
|
94
|
+
* @private
|
|
89
95
|
*/
|
|
90
96
|
this._rotation = new Matrix3();
|
|
91
97
|
|
|
92
98
|
/**
|
|
93
99
|
* @type {Object<string, any>}
|
|
94
100
|
* @readonly
|
|
101
|
+
* @private
|
|
95
102
|
*/
|
|
96
103
|
this.shaderUniforms = {
|
|
97
104
|
ellipsoidRadiiUv: new Cartesian3(),
|
|
@@ -110,6 +117,7 @@ function VoxelEllipsoidShape() {
|
|
|
110
117
|
/**
|
|
111
118
|
* @type {Object<string, any>}
|
|
112
119
|
* @readonly
|
|
120
|
+
* @private
|
|
113
121
|
*/
|
|
114
122
|
this.shaderDefines = {
|
|
115
123
|
ELLIPSOID_HAS_RENDER_BOUNDS_LONGITUDE: undefined,
|
|
@@ -138,6 +146,7 @@ function VoxelEllipsoidShape() {
|
|
|
138
146
|
* The maximum number of intersections against the shape for any ray direction.
|
|
139
147
|
* @type {number}
|
|
140
148
|
* @readonly
|
|
149
|
+
* @private
|
|
141
150
|
*/
|
|
142
151
|
this.shaderMaximumIntersectionsLength = 0; // not known until update
|
|
143
152
|
}
|
|
@@ -157,7 +166,7 @@ const scratchRenderRectangle = new Rectangle();
|
|
|
157
166
|
|
|
158
167
|
/**
|
|
159
168
|
* Update the shape's state.
|
|
160
|
-
*
|
|
169
|
+
* @private
|
|
161
170
|
* @param {Matrix4} modelMatrix The model matrix.
|
|
162
171
|
* @param {Cartesian3} minBounds The minimum bounds.
|
|
163
172
|
* @param {Cartesian3} maxBounds The maximum bounds.
|
|
@@ -173,8 +182,8 @@ VoxelEllipsoidShape.prototype.update = function (
|
|
|
173
182
|
clipMaxBounds,
|
|
174
183
|
) {
|
|
175
184
|
const { DefaultMinBounds, DefaultMaxBounds } = VoxelEllipsoidShape;
|
|
176
|
-
clipMinBounds =
|
|
177
|
-
clipMaxBounds =
|
|
185
|
+
clipMinBounds = clipMinBounds ?? DefaultMinBounds;
|
|
186
|
+
clipMaxBounds = clipMaxBounds ?? DefaultMaxBounds;
|
|
178
187
|
//>>includeStart('debug', pragmas.debug);
|
|
179
188
|
Check.typeOf.object("modelMatrix", modelMatrix);
|
|
180
189
|
Check.typeOf.object("minBounds", minBounds);
|
|
@@ -660,7 +669,7 @@ const scratchRectangle = new Rectangle();
|
|
|
660
669
|
/**
|
|
661
670
|
* Computes an oriented bounding box for a specified tile.
|
|
662
671
|
* The update function must be called before calling this function.
|
|
663
|
-
*
|
|
672
|
+
* @private
|
|
664
673
|
* @param {number} tileLevel The tile's level.
|
|
665
674
|
* @param {number} tileX The tile's x coordinate.
|
|
666
675
|
* @param {number} tileY The tile's y coordinate.
|
|
@@ -730,7 +739,7 @@ const scratchTileMaxBounds = new Cartesian3();
|
|
|
730
739
|
/**
|
|
731
740
|
* Computes an oriented bounding box for a specified sample within a specified tile.
|
|
732
741
|
* The update function must be called before calling this function.
|
|
733
|
-
*
|
|
742
|
+
* @private
|
|
734
743
|
* @param {SpatialNode} spatialNode The spatial node containing the sample
|
|
735
744
|
* @param {Cartesian3} tileDimensions The size of the tile in number of samples, before padding
|
|
736
745
|
* @param {Cartesian3} tileUv The sample coordinate within the tile
|
|
@@ -851,7 +860,7 @@ function getEllipsoidChunkObb(
|
|
|
851
860
|
|
|
852
861
|
/**
|
|
853
862
|
* Defines the minimum bounds of the shape. Corresponds to minimum longitude, latitude, height.
|
|
854
|
-
*
|
|
863
|
+
* @private
|
|
855
864
|
* @type {Cartesian3}
|
|
856
865
|
* @constant
|
|
857
866
|
* @readonly
|
|
@@ -866,7 +875,7 @@ VoxelEllipsoidShape.DefaultMinBounds = Object.freeze(
|
|
|
866
875
|
|
|
867
876
|
/**
|
|
868
877
|
* Defines the maximum bounds of the shape. Corresponds to maximum longitude, latitude, height.
|
|
869
|
-
*
|
|
878
|
+
* @private
|
|
870
879
|
* @type {Cartesian3}
|
|
871
880
|
* @constant
|
|
872
881
|
* @readonly
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata ordering for voxel content.
|
|
3
|
+
* In all cases, x data is contiguous in strides along the y axis,
|
|
4
|
+
* and each group of y strides represents a z slice.
|
|
5
|
+
* However, the orientation of the axes follows different conventions.
|
|
6
|
+
*
|
|
7
|
+
* @enum {number}
|
|
8
|
+
* @private
|
|
9
|
+
*/
|
|
10
|
+
const VoxelMetadataOrder = {
|
|
11
|
+
/**
|
|
12
|
+
* The default ordering following the 3D Tiles convention. Z-axis points upward.
|
|
13
|
+
* @type {number}
|
|
14
|
+
* @constant
|
|
15
|
+
*/
|
|
16
|
+
Z_UP: 0,
|
|
17
|
+
/**
|
|
18
|
+
* The ordering following the glTF convention. Y-axis points upward.
|
|
19
|
+
* @type {number}
|
|
20
|
+
* @constant
|
|
21
|
+
*/
|
|
22
|
+
Y_UP: 1,
|
|
23
|
+
};
|
|
24
|
+
export default Object.freeze(VoxelMetadataOrder);
|