deeptwins-cesium-engine 0.0.43 → 0.1.1
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/LICENSE.md +32 -25
- package/Source/Core/ApproximateTerrainHeights.js +2 -3
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +8 -8
- package/Source/Core/ArcType.js +6 -1
- package/Source/Core/ArticulationStageType.js +5 -1
- package/Source/Core/AssociativeArray.js +100 -94
- package/Source/Core/AttributeCompression.js +53 -6
- package/Source/Core/AxisAlignedBoundingBox.js +38 -3
- package/Source/Core/BingMapsGeocoderService.js +2 -2
- package/Source/Core/BoundingRectangle.js +7 -8
- package/Source/Core/BoundingSphere.js +1296 -1301
- package/Source/Core/BoxGeometry.js +8 -8
- package/Source/Core/BoxOutlineGeometry.js +7 -9
- package/Source/Core/Cartesian2.js +691 -685
- package/Source/Core/Cartesian3.js +1045 -1044
- package/Source/Core/Cartesian4.js +817 -813
- package/Source/Core/Cartographic.js +257 -250
- package/Source/Core/CatmullRomSpline.js +2 -2
- package/Source/Core/Cesium3DTilesTerrainData.js +932 -0
- package/Source/Core/Cesium3DTilesTerrainGeometryProcessor.js +1868 -0
- package/Source/Core/Cesium3DTilesTerrainProvider.js +1052 -0
- package/Source/Core/CesiumTerrainProvider.js +13 -16
- 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/ClockRange.js +6 -1
- package/Source/Core/ClockStep.js +6 -1
- package/Source/Core/Color.js +847 -819
- package/Source/Core/ColorGeometryInstanceAttribute.js +4 -5
- package/Source/Core/ComponentDatatype.js +43 -7
- package/Source/Core/CoplanarPolygonGeometry.js +8 -10
- package/Source/Core/CoplanarPolygonOutlineGeometry.js +5 -5
- package/Source/Core/CornerType.js +7 -2
- package/Source/Core/CorridorGeometry.js +16 -21
- package/Source/Core/CorridorOutlineGeometry.js +10 -15
- package/Source/Core/Credit.js +121 -125
- 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/DeveloperError.js +2 -1
- 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 +640 -655
- 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 +4 -5
- package/Source/Core/Event.js +94 -53
- package/Source/Core/ExtrapolationType.js +6 -1
- package/Source/Core/FeatureDetection.js +2 -36
- package/Source/Core/FrustumGeometry.js +7 -8
- package/Source/Core/FrustumOutlineGeometry.js +3 -4
- package/Source/Core/GeocodeType.js +6 -1
- package/Source/Core/GeographicProjection.js +74 -75
- package/Source/Core/GeographicTilingScheme.js +180 -205
- package/Source/Core/Geometry.js +5 -8
- 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/GeometryOffsetAttribute.js +7 -1
- package/Source/Core/GeometryPipeline.js +3 -4
- package/Source/Core/GeometryType.js +7 -1
- package/Source/Core/GoogleEarthEnterpriseMetadata.js +14 -25
- package/Source/Core/GoogleEarthEnterpriseTerrainData.js +11 -13
- package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +4 -4
- package/Source/Core/GoogleGeocoderService.js +2 -2
- package/Source/Core/GoogleMaps.js +25 -4
- 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/HeightmapEncoding.js +6 -1
- package/Source/Core/HeightmapTerrainData.js +33 -59
- package/Source/Core/HeightmapTessellator.js +21 -37
- package/Source/Core/HermitePolynomialApproximation.js +1 -2
- package/Source/Core/HermiteSpline.js +5 -5
- package/Source/Core/HilbertOrder.js +0 -6
- package/Source/Core/ITwinPlatform.js +87 -22
- package/Source/Core/Iau2006XysData.js +32 -23
- package/Source/Core/IndexDatatype.js +3 -1
- package/Source/Core/InterpolationType.js +5 -1
- package/Source/Core/Intersect.js +6 -1
- package/Source/Core/IntersectionTests.js +83 -4
- package/Source/Core/Interval.js +2 -4
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/IonGeocodeProviderType.js +5 -1
- package/Source/Core/IonGeocoderService.js +6 -10
- package/Source/Core/IonResource.js +59 -19
- package/Source/Core/JulianDate.js +852 -851
- package/Source/Core/KeyboardEventModifier.js +6 -1
- package/Source/Core/LinearSpline.js +2 -2
- package/Source/Core/ManagedArray.js +2 -3
- package/Source/Core/MapProjection.js +40 -44
- package/Source/Core/Math.js +36 -27
- package/Source/Core/Matrix2.js +906 -894
- package/Source/Core/Matrix3.js +1643 -1576
- package/Source/Core/Matrix4.js +2904 -2873
- 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 +3 -5
- 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/PinBuilder.js +1 -1
- package/Source/Core/PixelFormat.js +60 -22
- package/Source/Core/PlaneGeometry.js +5 -5
- package/Source/Core/PolygonGeometry.js +18 -20
- 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 +11 -16
- package/Source/Core/PolylinePipeline.js +7 -14
- package/Source/Core/PolylineVolumeGeometry.js +9 -14
- package/Source/Core/PolylineVolumeOutlineGeometry.js +7 -12
- package/Source/Core/PrimitiveType.js +11 -1
- package/Source/Core/QuantizedMeshTerrainData.js +36 -73
- package/Source/Core/Quaternion.js +7 -8
- package/Source/Core/QuaternionSpline.js +2 -2
- package/Source/Core/Ray.js +62 -61
- package/Source/Core/Rectangle.js +913 -905
- package/Source/Core/RectangleGeometry.js +18 -26
- package/Source/Core/RectangleGeometryLibrary.js +1 -1
- package/Source/Core/RectangleOutlineGeometry.js +11 -14
- package/Source/Core/ReferenceFrame.js +6 -1
- package/Source/Core/Request.js +6 -6
- package/Source/Core/RequestScheduler.js +12 -9
- package/Source/Core/RequestState.js +6 -1
- package/Source/Core/RequestType.js +6 -1
- package/Source/Core/Resource.js +34 -29
- package/Source/Core/S2Cell.js +10 -23
- package/Source/Core/ScreenSpaceEventHandler.js +59 -54
- package/Source/Core/ScreenSpaceEventType.js +6 -1
- 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 +3 -10
- package/Source/Core/TerrainData.js +2 -1
- package/Source/Core/TerrainEncoding.js +219 -49
- package/Source/Core/TerrainMesh.js +227 -10
- package/Source/Core/TerrainPicker.js +625 -0
- package/Source/Core/TerrainProvider.js +152 -1
- package/Source/Core/TerrainQuantization.js +6 -1
- package/Source/Core/TexturePacker.js +27 -12
- package/Source/Core/TileProviderError.js +1 -2
- package/Source/Core/TilingScheme.js +100 -98
- package/Source/Core/TimeConstants.js +6 -1
- package/Source/Core/TimeInterval.js +7 -7
- package/Source/Core/TimeIntervalCollection.js +7 -7
- package/Source/Core/TimeStandard.js +6 -1
- package/Source/Core/Tipsify.js +5 -5
- package/Source/Core/TrackingReferenceFrame.js +6 -1
- package/Source/Core/Transforms.js +38 -34
- package/Source/Core/TranslationRotationScale.js +3 -6
- package/Source/Core/VRTheWorldTerrainProvider.js +7 -7
- package/Source/Core/VertexFormat.js +10 -10
- package/Source/Core/VerticalExaggeration.js +1 -1
- package/Source/Core/VideoSynchronizer.js +7 -7
- package/Source/Core/Visibility.js +6 -1
- package/Source/Core/VulkanConstants.js +6 -1
- package/Source/Core/WallGeometry.js +10 -13
- package/Source/Core/WallOutlineGeometry.js +8 -11
- package/Source/Core/WebGLConstants.js +6 -1
- package/Source/Core/WebMercatorProjection.js +108 -110
- package/Source/Core/WebMercatorTilingScheme.js +247 -249
- package/Source/Core/WindingOrder.js +3 -1
- package/Source/Core/addAllToArray.js +40 -0
- package/Source/Core/arrayRemoveDuplicates.js +1 -2
- package/Source/Core/assert.js +27 -0
- package/Source/Core/binarySearch.js +1 -1
- package/Source/Core/clone.js +1 -3
- package/Source/Core/combine.js +1 -2
- package/Source/Core/createColorRamp.js +37 -0
- package/Source/Core/createWorldBathymetryAsync.js +5 -5
- package/Source/Core/createWorldTerrainAsync.js +7 -7
- 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/globalTypes.js +45 -0
- package/Source/Core/loadImageFromTypedArray.js +11 -9
- package/Source/Core/mergeSort.js +1 -1
- package/Source/Core/oneTimeWarning.js +1 -2
- package/Source/Core/writeTextToCanvas.js +50 -99
- package/Source/DataSources/BillboardGraphics.js +29 -55
- package/Source/DataSources/BillboardVisualizer.js +7 -4
- package/Source/DataSources/BoxGraphics.js +14 -19
- package/Source/DataSources/CallbackPositionProperty.js +2 -3
- 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 +24 -36
- package/Source/DataSources/CylinderGraphics.js +18 -25
- package/Source/DataSources/CzmlDataSource.js +44 -61
- 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 +27 -41
- package/Source/DataSources/EllipsoidGeometryUpdater.js +1 -2
- package/Source/DataSources/EllipsoidGraphics.js +22 -33
- package/Source/DataSources/Entity.js +8 -10
- package/Source/DataSources/EntityCluster.js +11 -11
- package/Source/DataSources/EntityView.js +1 -2
- package/Source/DataSources/GeoJsonDataSource.js +14 -14
- package/Source/DataSources/GeometryUpdater.js +12 -17
- package/Source/DataSources/GeometryVisualizer.js +2 -3
- package/Source/DataSources/GpxDataSource.js +5 -8
- 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 +147 -222
- package/Source/DataSources/KmlTour.js +1 -1
- package/Source/DataSources/LabelGraphics.js +28 -57
- package/Source/DataSources/LabelVisualizer.js +1 -2
- package/Source/DataSources/ModelGraphics.js +30 -64
- package/Source/DataSources/ModelVisualizer.js +1 -2
- package/Source/DataSources/NodeTransformationProperty.js +2 -2
- package/Source/DataSources/PathGraphics.js +23 -12
- package/Source/DataSources/PathVisualizer.js +330 -18
- package/Source/DataSources/PlaneGraphics.js +14 -16
- package/Source/DataSources/PointGraphics.js +17 -32
- package/Source/DataSources/PolygonGraphics.js +29 -46
- 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 +17 -24
- package/Source/DataSources/PolylineOutlineMaterialProperty.js +2 -2
- package/Source/DataSources/PolylineVisualizer.js +2 -3
- package/Source/DataSources/PolylineVolumeGraphics.js +16 -18
- package/Source/DataSources/PositionPropertyArray.js +1 -2
- package/Source/DataSources/Property.js +1 -2
- package/Source/DataSources/PropertyArray.js +2 -2
- package/Source/DataSources/PropertyBag.js +1 -2
- package/Source/DataSources/RectangleGraphics.js +24 -36
- package/Source/DataSources/Rotation.js +4 -5
- package/Source/DataSources/SampledPositionProperty.js +2 -3
- package/Source/DataSources/SampledProperty.js +6 -11
- package/Source/DataSources/StaticGeometryColorBatch.js +7 -2
- package/Source/DataSources/StaticGeometryPerMaterialBatch.js +7 -2
- package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +58 -27
- package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +5 -3
- package/Source/DataSources/StripeMaterialProperty.js +2 -2
- package/Source/DataSources/StripeOrientation.js +6 -1
- 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 +16 -24
- package/Source/DataSources/createPropertyDescriptor.js +2 -3
- package/Source/DataSources/exportKml.js +39 -45
- package/Source/Renderer/AutomaticUniforms.js +61 -0
- package/Source/Renderer/Buffer.js +37 -5
- package/Source/Renderer/BufferUsage.js +21 -8
- package/Source/Renderer/ClearCommand.js +2 -2
- package/Source/Renderer/ComputeCommand.js +3 -3
- package/Source/Renderer/Context.js +130 -77
- package/Source/Renderer/ContextLimits.js +66 -33
- package/Source/Renderer/CubeMap.js +6 -6
- package/Source/Renderer/CubeMapFace.js +11 -12
- package/Source/Renderer/DrawCommand.js +436 -415
- package/Source/Renderer/Framebuffer.js +3 -3
- package/Source/Renderer/FramebufferManager.js +25 -39
- package/Source/Renderer/MipmapHint.js +5 -1
- package/Source/Renderer/MultisampleFramebuffer.js +2 -2
- package/Source/Renderer/Pass.js +18 -9
- package/Source/Renderer/PickId.js +44 -0
- package/Source/Renderer/PixelDatatype.js +3 -1
- package/Source/Renderer/RenderState.js +65 -94
- package/Source/Renderer/Renderbuffer.js +8 -6
- package/Source/Renderer/RenderbufferFormat.js +5 -1
- package/Source/Renderer/Sampler.js +15 -2
- package/Source/Renderer/ShaderBuilder.js +9 -9
- package/Source/Renderer/ShaderDestination.js +58 -14
- package/Source/Renderer/ShaderProgram.js +3 -3
- package/Source/Renderer/ShaderSource.js +22 -21
- package/Source/Renderer/SharedContext.js +186 -0
- package/Source/Renderer/Sync.js +104 -0
- package/Source/Renderer/Texture.js +22 -19
- package/Source/Renderer/Texture3D.js +166 -7
- package/Source/Renderer/TextureAtlas.js +81 -49
- package/Source/Renderer/TextureMagnificationFilter.js +3 -1
- package/Source/Renderer/TextureMinificationFilter.js +3 -1
- package/Source/Renderer/TextureWrap.js +5 -1
- package/Source/Renderer/UniformState.js +18 -11
- package/Source/Renderer/VertexArray.js +128 -32
- package/Source/Renderer/VertexArrayFacade.js +7 -11
- package/Source/Renderer/createUniform.js +348 -239
- package/Source/Renderer/createUniformArray.js +494 -381
- package/Source/Scene/AlphaMode.js +5 -1
- package/Source/Scene/Appearance.js +5 -5
- package/Source/Scene/ArcGisBaseMapType.js +6 -1
- package/Source/Scene/ArcGisMapServerImageryProvider.js +24 -38
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/AttributeType.js +3 -1
- package/Source/Scene/Axis.js +3 -1
- package/Source/Scene/Azure2DImageryProvider.js +393 -0
- package/Source/Scene/B3dmParser.js +2 -3
- package/Source/Scene/BatchTable.js +2 -2
- package/Source/Scene/BatchTableHierarchy.js +8 -63
- package/Source/Scene/Billboard.js +108 -77
- package/Source/Scene/BillboardCollection.js +165 -409
- package/Source/Scene/BillboardTexture.js +61 -9
- package/Source/Scene/BingMapsImageryProvider.js +8 -8
- package/Source/Scene/BingMapsStyle.js +6 -1
- package/Source/Scene/BlendEquation.js +6 -1
- package/Source/Scene/BlendFunction.js +6 -1
- package/Source/Scene/BlendOption.js +6 -1
- package/Source/Scene/BlendingState.js +6 -1
- package/Source/Scene/BoundingVolumeSemantics.js +54 -62
- package/Source/Scene/BoxEmitter.js +1 -2
- package/Source/Scene/BufferLoader.js +66 -77
- package/Source/Scene/BufferPoint.js +149 -0
- package/Source/Scene/BufferPointCollection.js +151 -0
- package/Source/Scene/BufferPointMaterial.js +95 -0
- package/Source/Scene/BufferPolygon.js +517 -0
- package/Source/Scene/BufferPolygonCollection.js +380 -0
- package/Source/Scene/BufferPolygonMaterial.js +41 -0
- package/Source/Scene/BufferPolyline.js +186 -0
- package/Source/Scene/BufferPolylineCollection.js +140 -0
- package/Source/Scene/BufferPolylineMaterial.js +93 -0
- package/Source/Scene/BufferPrimitive.js +347 -0
- package/Source/Scene/BufferPrimitiveCollection.js +869 -0
- package/Source/Scene/BufferPrimitiveMaterial.js +140 -0
- package/Source/Scene/Camera.js +52 -60
- package/Source/Scene/CameraEventAggregator.js +30 -18
- package/Source/Scene/CameraEventType.js +6 -1
- package/Source/Scene/CameraFlightPath.js +6 -6
- package/Source/Scene/Cesium3DContentGroup.js +2 -2
- package/Source/Scene/Cesium3DTile.js +60 -8
- package/Source/Scene/Cesium3DTileBatchTable.js +12 -53
- package/Source/Scene/Cesium3DTileColorBlendMode.js +6 -1
- package/Source/Scene/Cesium3DTileContent.js +196 -251
- package/Source/Scene/Cesium3DTileContentFactory.js +31 -0
- package/Source/Scene/Cesium3DTileContentState.js +6 -1
- package/Source/Scene/Cesium3DTileContentType.js +3 -1
- package/Source/Scene/Cesium3DTileFeature.js +289 -306
- package/Source/Scene/Cesium3DTileFeatureTable.js +2 -3
- package/Source/Scene/Cesium3DTileOptimizationHint.js +6 -1
- package/Source/Scene/Cesium3DTilePass.js +5 -1
- package/Source/Scene/Cesium3DTilePointFeature.js +442 -528
- package/Source/Scene/Cesium3DTileRefine.js +6 -1
- package/Source/Scene/Cesium3DTileStyle.js +30 -10
- package/Source/Scene/Cesium3DTileVectorFeature.js +586 -0
- package/Source/Scene/Cesium3DTilesVoxelProvider.js +58 -35
- package/Source/Scene/Cesium3DTileset.js +361 -150
- package/Source/Scene/Cesium3DTilesetMetadata.js +3 -3
- package/Source/Scene/CircleEmitter.js +2 -3
- package/Source/Scene/ClassificationPrimitive.js +15 -26
- package/Source/Scene/ClassificationType.js +3 -1
- package/Source/Scene/ClippingPlaneCollection.js +12 -17
- package/Source/Scene/ClippingPolygon.js +92 -4
- package/Source/Scene/ClippingPolygonCollection.js +274 -107
- package/Source/Scene/CloudCollection.js +11 -13
- package/Source/Scene/CloudType.js +3 -1
- package/Source/Scene/ColorBlendMode.js +4 -1
- package/Source/Scene/Composite3DTileContent.js +254 -293
- package/Source/Scene/ConditionsExpression.js +3 -2
- package/Source/Scene/ConeEmitter.js +1 -2
- package/Source/Scene/ContentMetadata.js +2 -2
- package/Source/Scene/CreditDisplay.js +6 -10
- package/Source/Scene/CubeMapPanorama.js +351 -0
- package/Source/Scene/CullFace.js +6 -1
- package/Source/Scene/CumulusCloud.js +10 -16
- package/Source/Scene/DebugAppearance.js +7 -7
- package/Source/Scene/DebugCameraPrimitive.js +5 -5
- package/Source/Scene/DebugModelMatrixPrimitive.js +6 -8
- package/Source/Scene/DepthFunction.js +6 -1
- package/Source/Scene/DepthPlane.js +1 -2
- package/Source/Scene/DerivedCommand.js +1 -24
- package/Source/Scene/DirectionalLight.js +2 -3
- package/Source/Scene/DiscardMissingTileImagePolicy.js +2 -2
- package/Source/Scene/DracoLoader.js +79 -78
- package/Source/Scene/DynamicAtmosphereLightingType.js +3 -1
- package/Source/Scene/DynamicEnvironmentMapManager.js +55 -49
- package/Source/Scene/EdgeDisplayMode.js +50 -0
- package/Source/Scene/EdgeFramebuffer.js +245 -0
- package/Source/Scene/EllipsoidPrimitive.js +11 -19
- package/Source/Scene/EllipsoidSurfaceAppearance.js +11 -15
- package/Source/Scene/Empty3DTileContent.js +100 -132
- package/Source/Scene/EquirectangularPanorama.js +265 -0
- package/Source/Scene/ExpressionNodeType.js +6 -1
- package/Source/Scene/Fog.js +1 -1
- package/Source/Scene/FrameRateMonitor.js +12 -21
- package/Source/Scene/FrameState.js +19 -0
- package/Source/Scene/FrustumCommands.js +2 -3
- package/Source/Scene/GaussianSplat3DTileContent.js +778 -0
- package/Source/Scene/GaussianSplatPrimitive.js +2147 -0
- package/Source/Scene/GaussianSplatRenderResources.js +81 -0
- package/Source/Scene/GaussianSplatSorter.js +73 -0
- package/Source/Scene/GaussianSplatTextureGenerator.js +64 -0
- package/Source/Scene/GeoJsonPrimitive.js +874 -0
- package/Source/Scene/Geometry3DTileContent.js +160 -201
- package/Source/Scene/GetFeatureInfoFormat.js +3 -3
- package/Source/Scene/Globe.js +10 -16
- package/Source/Scene/GlobeSurfaceShaderSet.js +40 -37
- package/Source/Scene/GlobeSurfaceTile.js +28 -70
- package/Source/Scene/GlobeSurfaceTileProvider.js +20 -18
- package/Source/Scene/GlobeTranslucencyState.js +12 -25
- package/Source/Scene/GltfBufferViewLoader.js +125 -118
- package/Source/Scene/GltfDracoLoader.js +168 -179
- package/Source/Scene/GltfImageLoader.js +92 -105
- package/Source/Scene/GltfIndexBufferLoader.js +229 -246
- package/Source/Scene/GltfJsonLoader.js +91 -102
- package/Source/Scene/GltfLoader.js +786 -368
- package/Source/Scene/GltfLoaderUtil.js +25 -11
- package/Source/Scene/GltfPipeline/ForEach.js +7 -7
- package/Source/Scene/GltfPipeline/addDefaults.js +36 -64
- package/Source/Scene/GltfPipeline/addToArray.js +2 -2
- package/Source/Scene/GltfPipeline/findAccessorMinMax.js +1 -1
- package/Source/Scene/GltfPipeline/getComponentReader.js +16 -16
- package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +3 -6
- package/Source/Scene/GltfPipeline/moveTechniquesToExtension.js +3 -3
- package/Source/Scene/GltfPipeline/parseGlb.js +2 -6
- package/Source/Scene/GltfPipeline/readAccessorPacked.js +2 -2
- package/Source/Scene/GltfPipeline/removeUnusedElements.js +6 -8
- package/Source/Scene/GltfPipeline/updateAccessorComponentTypes.js +1 -1
- package/Source/Scene/GltfPipeline/updateVersion.js +34 -55
- package/Source/Scene/GltfSpzLoader.js +324 -0
- package/Source/Scene/GltfStructuralMetadataLoader.js +185 -193
- package/Source/Scene/GltfTextureLoader.js +218 -234
- package/Source/Scene/GltfVertexBufferLoader.js +391 -255
- package/Source/Scene/Google2DImageryProvider.js +621 -0
- package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +2 -2
- package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +4 -5
- package/Source/Scene/GoogleStreetViewCubeMapPanoramaProvider.js +341 -0
- 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/HeightReference.js +6 -2
- package/Source/Scene/HorizontalOrigin.js +6 -1
- package/Source/Scene/I3SDataProvider.js +11 -16
- package/Source/Scene/I3SDecoder.js +3 -3
- 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 +61 -31
- package/Source/Scene/ImageBasedLighting.js +10 -6
- package/Source/Scene/ImageryLayer.js +74 -88
- package/Source/Scene/ImageryLayerCollection.js +7 -7
- package/Source/Scene/ImageryProvider.js +3 -3
- package/Source/Scene/ImageryState.js +6 -1
- package/Source/Scene/Implicit3DTileContent.js +199 -224
- package/Source/Scene/ImplicitAvailabilityBitstream.js +2 -5
- package/Source/Scene/ImplicitMetadataView.js +2 -2
- package/Source/Scene/ImplicitSubdivisionScheme.js +3 -1
- package/Source/Scene/ImplicitSubtree.js +11 -18
- package/Source/Scene/ImplicitSubtreeCache.js +3 -3
- package/Source/Scene/ImplicitSubtreeMetadata.js +2 -2
- package/Source/Scene/ImplicitTileset.js +2 -2
- package/Source/Scene/InstanceAttributeSemantic.js +4 -2
- package/Source/Scene/IonImageryProvider.js +18 -66
- package/Source/Scene/IonImageryProviderFactory.js +194 -0
- package/Source/Scene/IonWorldImageryStyle.js +6 -1
- package/Source/Scene/JobType.js +6 -1
- package/Source/Scene/Label.js +58 -41
- package/Source/Scene/LabelCollection.js +136 -65
- package/Source/Scene/LabelStyle.js +6 -1
- package/Source/Scene/MVTDataProvider.js +147 -0
- package/Source/Scene/MapMode2D.js +6 -1
- package/Source/Scene/MapboxImageryProvider.js +4 -4
- package/Source/Scene/MapboxStyleImageryProvider.js +5 -5
- package/Source/Scene/Material.js +269 -101
- package/Source/Scene/MaterialAppearance.js +13 -19
- package/Source/Scene/Megatexture.js +175 -243
- package/Source/Scene/MetadataClass.js +4 -4
- package/Source/Scene/MetadataClassProperty.js +236 -20
- package/Source/Scene/MetadataComponentType.js +254 -125
- 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 +61 -70
- package/Source/Scene/MetadataSemantic.js +6 -2
- package/Source/Scene/MetadataTable.js +16 -2
- package/Source/Scene/MetadataTableProperty.js +36 -41
- package/Source/Scene/MetadataType.js +3 -1
- package/Source/Scene/Model/AlphaPipelineStage.js +1 -2
- package/Source/Scene/Model/B3dmLoader.js +217 -239
- package/Source/Scene/Model/BatchTexturePipelineStage.js +1 -2
- package/Source/Scene/Model/CartesianRectangle.js +108 -0
- package/Source/Scene/Model/ClassificationModelDrawCommand.js +9 -8
- package/Source/Scene/Model/CustomShader.js +16 -13
- package/Source/Scene/Model/CustomShaderMode.js +3 -1
- package/Source/Scene/Model/CustomShaderPipelineStage.js +124 -7
- package/Source/Scene/Model/CustomShaderTranslucencyMode.js +5 -1
- package/Source/Scene/Model/EdgeDetectionPipelineStage.js +42 -0
- package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +1039 -0
- package/Source/Scene/Model/Extensions/Gpm/GltfMeshPrimitiveGpmLoader.js +3 -3
- package/Source/Scene/Model/Extensions/Gpm/PpeSource.js +5 -1
- package/Source/Scene/Model/Extensions/Gpm/StorageType.js +5 -1
- package/Source/Scene/Model/FeatureIdPipelineStage.js +1 -5
- package/Source/Scene/Model/GeoJsonLoader.js +60 -71
- package/Source/Scene/Model/GeometryPipelineStage.js +17 -3
- package/Source/Scene/Model/I3dmLoader.js +233 -252
- package/Source/Scene/Model/ImageryConfiguration.js +26 -0
- package/Source/Scene/Model/ImageryCoverage.js +488 -0
- package/Source/Scene/Model/ImageryFlags.js +31 -0
- package/Source/Scene/Model/ImageryInput.js +60 -0
- package/Source/Scene/Model/ImageryPipelineStage.js +1046 -0
- package/Source/Scene/Model/InstancingPipelineStage.js +4 -9
- package/Source/Scene/Model/LightingModel.js +5 -1
- package/Source/Scene/Model/MappedPositions.js +84 -0
- package/Source/Scene/Model/MaterialPipelineStage.js +359 -6
- package/Source/Scene/Model/MetadataPipelineStage.js +444 -28
- package/Source/Scene/Model/Model.js +116 -63
- package/Source/Scene/Model/Model3DTileContent.js +424 -458
- 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/ModelClippingPolygonsPipelineStage.js +8 -2
- package/Source/Scene/Model/ModelDrawCommand.js +106 -3
- package/Source/Scene/Model/ModelFeatureTable.js +3 -9
- package/Source/Scene/Model/ModelImagery.js +410 -0
- package/Source/Scene/Model/ModelImageryMapping.js +489 -0
- package/Source/Scene/Model/ModelLightingOptions.js +3 -3
- package/Source/Scene/Model/ModelNode.js +1 -1
- package/Source/Scene/Model/ModelPrimitiveImagery.js +972 -0
- package/Source/Scene/Model/ModelReader.js +1281 -0
- package/Source/Scene/Model/ModelRenderResources.js +13 -0
- package/Source/Scene/Model/ModelRuntimeNode.js +4 -4
- package/Source/Scene/Model/ModelRuntimePrimitive.js +36 -4
- package/Source/Scene/Model/ModelSceneGraph.js +152 -33
- package/Source/Scene/Model/ModelSkin.js +2 -2
- package/Source/Scene/Model/ModelType.js +3 -1
- package/Source/Scene/Model/ModelUtility.js +9 -1
- package/Source/Scene/Model/NodeRenderResources.js +11 -1
- package/Source/Scene/Model/PickingPipelineStage.js +1 -2
- package/Source/Scene/Model/PntsLoader.js +92 -98
- package/Source/Scene/Model/PointCloudStylingPipelineStage.js +1 -5
- package/Source/Scene/Model/PrimitiveOutlineGenerator.js +2 -2
- package/Source/Scene/Model/PrimitiveRenderResources.js +1 -1
- package/Source/Scene/Model/SelectedFeatureIdPipelineStage.js +2 -3
- package/Source/Scene/Model/StyleCommandsNeeded.js +3 -1
- package/Source/Scene/Model/TextureUniform.js +5 -8
- package/Source/Scene/Model/UniformType.js +6 -2
- package/Source/Scene/Model/VaryingType.js +7 -3
- package/Source/Scene/Model/createVectorTileBuffersFromModelComponents.js +691 -0
- package/Source/Scene/Model/pickModel.js +95 -301
- package/Source/Scene/ModelAnimationLoop.js +6 -1
- package/Source/Scene/ModelAnimationState.js +6 -1
- package/Source/Scene/ModelComponents.js +1683 -1528
- package/Source/Scene/Moon.js +5 -5
- package/Source/Scene/Multiple3DTileContent.js +291 -334
- package/Source/Scene/OIT.js +11 -1
- package/Source/Scene/OpenStreetMapImageryProvider.js +7 -7
- package/Source/Scene/OrderedGroundPrimitiveCollection.js +1 -2
- package/Source/Scene/Panorama.js +53 -0
- package/Source/Scene/PanoramaProvider.js +43 -0
- package/Source/Scene/Particle.js +11 -17
- package/Source/Scene/ParticleBurst.js +5 -5
- package/Source/Scene/ParticleSystem.js +26 -56
- package/Source/Scene/PerInstanceColorAppearance.js +8 -8
- package/Source/Scene/PerformanceDisplay.js +3 -3
- package/Source/Scene/PickFramebuffer.js +136 -53
- package/Source/Scene/PickedMetadataInfo.js +1 -0
- package/Source/Scene/Picking.js +235 -90
- package/Source/Scene/PntsParser.js +72 -5
- package/Source/Scene/PointCloud.js +6 -12
- package/Source/Scene/PointCloudShading.js +9 -18
- package/Source/Scene/PointPrimitive.js +12 -22
- package/Source/Scene/PointPrimitiveCollection.js +20 -36
- package/Source/Scene/Polyline.js +5 -6
- package/Source/Scene/PolylineCollection.js +6 -14
- package/Source/Scene/PolylineColorAppearance.js +8 -17
- package/Source/Scene/PolylineMaterialAppearance.js +8 -17
- package/Source/Scene/PostProcessStage.js +2 -2
- package/Source/Scene/PostProcessStageCollection.js +1 -1
- package/Source/Scene/PostProcessStageComposite.js +3 -6
- package/Source/Scene/Primitive.js +27 -43
- package/Source/Scene/PrimitiveCollection.js +36 -10
- package/Source/Scene/PrimitiveLoadPlan.js +23 -0
- package/Source/Scene/PrimitivePipeline.js +1 -2
- package/Source/Scene/PrimitiveState.js +130 -1
- package/Source/Scene/PropertyAttribute.js +2 -2
- package/Source/Scene/PropertyAttributeProperty.js +4 -4
- package/Source/Scene/PropertyTable.js +52 -14
- package/Source/Scene/PropertyTexture.js +3 -3
- package/Source/Scene/PropertyTextureProperty.js +4 -101
- package/Source/Scene/QuadtreeOccluders.js +20 -15
- package/Source/Scene/QuadtreePrimitive.js +129 -96
- package/Source/Scene/QuadtreeTile.js +581 -385
- package/Source/Scene/QuadtreeTileLoadState.js +6 -1
- package/Source/Scene/QuadtreeTileProvider.js +159 -175
- package/Source/Scene/ResourceCache.js +71 -14
- package/Source/Scene/ResourceCacheKey.js +50 -12
- package/Source/Scene/ResourceLoader.js +84 -93
- package/Source/Scene/ResourceLoaderState.js +8 -2
- package/Source/Scene/Scene.js +298 -74
- package/Source/Scene/SceneMode.js +4 -1
- package/Source/Scene/ScreenSpaceCameraController.js +26 -13
- package/Source/Scene/SensorVolumePortionToDisplay.js +6 -6
- package/Source/Scene/ShadowMap.js +16 -17
- package/Source/Scene/ShadowMode.js +3 -1
- package/Source/Scene/ShadowVolumeAppearance.js +1 -2
- package/Source/Scene/SingleTileImageryProvider.js +7 -7
- package/Source/Scene/SkyAtmosphere.js +1 -2
- package/Source/Scene/SkyBox.js +38 -165
- package/Source/Scene/SphereEmitter.js +2 -3
- package/Source/Scene/SplitDirection.js +6 -1
- package/Source/Scene/StencilFunction.js +6 -1
- package/Source/Scene/StencilOperation.js +6 -1
- package/Source/Scene/StructuralMetadata.js +20 -5
- package/Source/Scene/SunLight.js +4 -4
- package/Source/Scene/SupportedImageFormats.js +4 -4
- package/Source/Scene/Terrain.js +5 -5
- package/Source/Scene/TerrainFillMesh.js +1 -0
- package/Source/Scene/TerrainState.js +7 -1
- package/Source/Scene/TileBoundingRegion.js +5 -6
- package/Source/Scene/TileBoundingS2Cell.js +4 -5
- package/Source/Scene/TileBoundingSphere.js +1 -1
- package/Source/Scene/TileCoordinatesImageryProvider.js +5 -5
- package/Source/Scene/TileMapServiceImageryProvider.js +20 -29
- package/Source/Scene/TileMetadata.js +2 -2
- package/Source/Scene/TileState.js +7 -1
- package/Source/Scene/Tileset3DTileContent.js +113 -146
- package/Source/Scene/TilesetMetadata.js +2 -2
- package/Source/Scene/TimeDynamicImagery.js +2 -2
- package/Source/Scene/TimeDynamicPointCloud.js +8 -10
- package/Source/Scene/Tonemapper.js +5 -1
- package/Source/Scene/TweenCollection.js +20 -16
- package/Source/Scene/UrlTemplate3DTilesDataProvider.js +499 -0
- package/Source/Scene/UrlTemplateImageryProvider.js +12 -16
- package/Source/Scene/Vector3DTileClampedPolylines.js +2 -7
- package/Source/Scene/Vector3DTileContent.js +224 -256
- package/Source/Scene/Vector3DTileGeometry.js +1 -2
- package/Source/Scene/Vector3DTilePoints.js +10 -0
- package/Source/Scene/Vector3DTilePolygons.js +2 -3
- package/Source/Scene/Vector3DTilePolylines.js +2 -7
- package/Source/Scene/Vector3DTilePrimitive.js +9 -13
- package/Source/Scene/VectorGltf3DTileContent.js +452 -0
- package/Source/Scene/VertexAttributeSemantic.js +49 -1
- package/Source/Scene/VerticalOrigin.js +6 -1
- package/Source/Scene/View.js +3 -0
- package/Source/Scene/VoxelBoundsCollection.js +494 -0
- package/Source/Scene/VoxelBoxShape.js +252 -155
- package/Source/Scene/VoxelContent.js +2 -0
- package/Source/Scene/VoxelCylinderShape.js +418 -447
- package/Source/Scene/VoxelEllipsoidShape.js +422 -190
- package/Source/Scene/VoxelMetadataOrder.js +20 -3
- package/Source/Scene/VoxelPrimitive.js +484 -503
- package/Source/Scene/VoxelProvider.js +64 -102
- package/Source/Scene/VoxelRenderResources.js +35 -39
- package/Source/Scene/VoxelShape.js +23 -6
- package/Source/Scene/VoxelShapeType.js +3 -1
- package/Source/Scene/VoxelTraversal.js +17 -66
- package/Source/Scene/WebMapServiceImageryProvider.js +22 -28
- package/Source/Scene/WebMapTileServiceImageryProvider.js +369 -159
- package/Source/Scene/buildVectorGltfFromMVT.js +1059 -0
- package/Source/Scene/buildVoxelCustomShader.js +199 -0
- package/Source/Scene/buildVoxelDrawCommands.js +61 -20
- package/Source/Scene/createElevationBandMaterial.js +5 -5
- package/Source/Scene/createGooglePhotorealistic3DTileset.js +9 -17
- package/Source/Scene/createOsmBuildingsAsync.js +3 -6
- package/Source/Scene/createTangentSpaceDebugPrimitive.js +4 -6
- package/Source/Scene/createWorldImageryAsync.js +4 -4
- package/Source/Scene/decodeMVT.js +634 -0
- package/Source/Scene/findContentMetadata.js +2 -5
- package/Source/Scene/findTileMetadata.js +2 -5
- package/Source/Scene/getClippingFunction.js +79 -88
- package/Source/Scene/getMeshPrimitives.js +72 -0
- package/Source/Scene/parseBatchTable.js +1 -5
- package/Source/Scene/parseFeatureMetadataLegacy.js +2 -2
- package/Source/Scene/parseStructuralMetadata.js +306 -2
- package/Source/Scene/processVoxelProperties.js +42 -101
- package/Source/Scene/renderBufferPointCollection.js +331 -0
- package/Source/Scene/renderBufferPolygonCollection.js +386 -0
- package/Source/Scene/renderBufferPolylineCollection.js +677 -0
- package/Source/Shaders/BillboardCollectionFS.glsl +85 -81
- package/Source/Shaders/BillboardCollectionVS.glsl +60 -118
- package/Source/Shaders/BufferPointMaterialFS.glsl +28 -0
- package/Source/Shaders/BufferPointMaterialVS.glsl +58 -0
- package/Source/Shaders/BufferPolygonMaterialFS.glsl +13 -0
- package/Source/Shaders/BufferPolygonMaterialVS.glsl +39 -0
- package/Source/Shaders/BufferPolylineMaterialFS.glsl +13 -0
- package/Source/Shaders/BufferPolylineMaterialVS.glsl +63 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTile.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passCesium3DTileEdges.glsl +10 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTileEdgesDirect.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passGaussianSplats.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passOpaque.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passOverlay.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passTranslucent.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passVoxels.glsl +1 -1
- package/Source/Shaders/Builtin/Functions/columbusViewMorph.glsl +8 -1
- package/Source/Shaders/Builtin/Functions/computeTextureTransform.glsl +24 -0
- package/Source/Shaders/Builtin/Functions/decodeRGB8.glsl +22 -0
- package/Source/Shaders/Builtin/Functions/modelToWindowCoordinates.glsl +2 -1
- package/Source/Shaders/Builtin/Functions/unpackTexture.glsl +35 -0
- package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.glsl +0 -1
- package/Source/Shaders/CubeMapPanoramaVS.glsl +11 -0
- package/Source/Shaders/EllipsoidVS.glsl +4 -4
- package/Source/Shaders/FXAA3_11.glsl +2 -0
- package/Source/Shaders/GlobeFS.glsl +22 -0
- package/Source/Shaders/GlobeVS.glsl +3 -2
- package/Source/Shaders/Model/ConstantLodStageFS.glsl +60 -0
- package/Source/Shaders/Model/ConstantLodStageVS.glsl +12 -0
- package/Source/Shaders/Model/EdgeDetectionStageFS.glsl +58 -0
- package/Source/Shaders/Model/EdgeVisibilityStageFS.glsl +69 -0
- package/Source/Shaders/Model/EdgeVisibilityStageVS.glsl +97 -0
- package/Source/Shaders/Model/MaterialStageFS.glsl +50 -20
- package/Source/Shaders/Model/MetadataStageFS.glsl +2 -1
- package/Source/Shaders/Model/MetadataStageVS.glsl +2 -1
- package/Source/Shaders/Model/ModelFS.glsl +32 -2
- package/Source/Shaders/Model/ModelVS.glsl +15 -1
- package/Source/Shaders/Model/PointCloudStylingStageVS.glsl +1 -1
- package/Source/Shaders/Model/PrimitiveOutlineStageFS.glsl +0 -1
- package/Source/Shaders/PointPrimitiveCollectionVS.glsl +8 -39
- package/Source/Shaders/PolygonSignedDistanceFS.glsl +64 -33
- package/Source/Shaders/PolylineCommon.glsl +1 -1
- package/Source/Shaders/PrimitiveGaussianSplatFS.glsl +18 -0
- package/Source/Shaders/PrimitiveGaussianSplatVS.glsl +196 -0
- package/Source/Shaders/ShadowVolumeAppearanceFS.glsl +7 -15
- package/Source/Shaders/SkyAtmosphereVS.glsl +2 -1
- package/Source/Shaders/Voxels/IntersectBox.glsl +20 -33
- package/Source/Shaders/Voxels/IntersectCylinder.glsl +28 -32
- package/Source/Shaders/Voxels/IntersectDepth.glsl +10 -6
- package/Source/Shaders/Voxels/IntersectEllipsoid.glsl +12 -20
- package/Source/Shaders/Voxels/IntersectLongitude.glsl +21 -9
- package/Source/Shaders/Voxels/{IntersectClippingPlanes.glsl → IntersectPlane.glsl} +5 -3
- package/Source/Shaders/Voxels/Intersection.glsl +3 -5
- package/Source/Shaders/Voxels/IntersectionUtils.glsl +2 -1
- package/Source/Shaders/Voxels/Megatexture.glsl +15 -83
- package/Source/Shaders/Voxels/Octree.glsl +53 -61
- package/Source/Shaders/Voxels/VoxelFS.glsl +67 -52
- package/Source/Shaders/Voxels/VoxelUtils.glsl +0 -19
- package/Source/Shaders/Voxels/convertLocalToBoxUv.glsl +29 -0
- package/Source/Shaders/Voxels/convertLocalToCylinderUv.glsl +95 -0
- package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.glsl +183 -0
- package/Source/Widget/CesiumWidget.js +29 -30
- package/Source/Workers/createGeometry.js +1 -2
- package/Source/Workers/createVerticesFromCesium3DTilesTerrain.js +46 -0
- package/Source/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -2
- package/Source/Workers/decodeDraco.js +3 -0
- package/Source/Workers/decodeI3S.js +6 -7
- package/Source/Workers/gaussianSplatSorter.js +34 -0
- package/Source/Workers/gaussianSplatTextureGenerator.js +39 -0
- package/Source/Workers/incrementallyBuildTerrainPicker.js +122 -0
- package/Source/Workers/transcodeKTX2.js +1 -2
- package/Source/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +55 -0
- package/index.js +1 -1
- package/package.json +11 -7
- package/Build/Unminified/index.js +0 -253841
- package/Build/Unminified/index.js.map +0 -7
- package/Source/Core/defaultValue.js +0 -29
- package/Source/Shaders/Voxels/convertUvToBox.glsl +0 -45
- package/Source/Shaders/Voxels/convertUvToCylinder.glsl +0 -99
- package/Source/Shaders/Voxels/convertUvToEllipsoid.glsl +0 -139
package/LICENSE.md
CHANGED
|
@@ -305,35 +305,42 @@ https://gist.github.com/banksean/300494
|
|
|
305
305
|
>
|
|
306
306
|
> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
307
307
|
|
|
308
|
-
### NVIDIA GameWorks
|
|
308
|
+
### NVIDIA GameWorks FXAA Shader
|
|
309
309
|
|
|
310
|
-
https://
|
|
310
|
+
Original source (archived): https://archive.org/details/nvidiagame-works-graphics-samples-master
|
|
311
|
+
Fork: https://github.com/lyntel/GraphicsSamples/blob/3d30817ebeeade64fe6a4fc3aa1fe4265c29b6fd/samples/es3-kepler/FXAA/FXAA3_11.h
|
|
311
312
|
|
|
312
|
-
>
|
|
313
|
+
> ----------------------------------------------------------------------------------
|
|
314
|
+
> File: es3-kepler\FXAA/FXAA3_11.h
|
|
315
|
+
> SDK Version: v3.00
|
|
316
|
+
> Email: gameworks@nvidia.com
|
|
317
|
+
> Site: http://developer.nvidia.com/
|
|
313
318
|
>
|
|
314
|
-
>
|
|
319
|
+
> Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved.
|
|
315
320
|
>
|
|
316
|
-
>
|
|
317
|
-
>
|
|
318
|
-
>
|
|
319
|
-
>
|
|
320
|
-
>
|
|
321
|
-
>
|
|
322
|
-
>
|
|
323
|
-
>
|
|
324
|
-
>
|
|
325
|
-
>
|
|
326
|
-
>
|
|
327
|
-
>
|
|
328
|
-
>
|
|
329
|
-
>
|
|
330
|
-
>
|
|
331
|
-
>
|
|
332
|
-
>
|
|
333
|
-
>
|
|
334
|
-
>
|
|
335
|
-
>
|
|
336
|
-
>
|
|
321
|
+
> Redistribution and use in source and binary forms, with or without
|
|
322
|
+
> modification, are permitted provided that the following conditions
|
|
323
|
+
> are met:
|
|
324
|
+
> * Redistributions of source code must retain the above copyright
|
|
325
|
+
> notice, this list of conditions and the following disclaimer.
|
|
326
|
+
> * Redistributions in binary form must reproduce the above copyright
|
|
327
|
+
> notice, this list of conditions and the following disclaimer in the
|
|
328
|
+
> documentation and/or other materials provided with the distribution.
|
|
329
|
+
> * Neither the name of NVIDIA CORPORATION nor the names of its
|
|
330
|
+
> contributors may be used to endorse or promote products derived
|
|
331
|
+
> from this software without specific prior written permission.
|
|
332
|
+
>
|
|
333
|
+
> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY
|
|
334
|
+
> EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
335
|
+
> IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
|
336
|
+
> PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
|
337
|
+
> CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
|
338
|
+
> EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
|
339
|
+
> PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
|
340
|
+
> PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
|
341
|
+
> OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
342
|
+
> (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
343
|
+
> OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
337
344
|
|
|
338
345
|
### jsep
|
|
339
346
|
|
|
@@ -4,7 +4,6 @@ import Cartesian2 from "./Cartesian2.js";
|
|
|
4
4
|
import Cartesian3 from "./Cartesian3.js";
|
|
5
5
|
import Cartographic from "./Cartographic.js";
|
|
6
6
|
import Check from "./Check.js";
|
|
7
|
-
import defaultValue from "./defaultValue.js";
|
|
8
7
|
import defined from "./defined.js";
|
|
9
8
|
import DeveloperError from "./DeveloperError.js";
|
|
10
9
|
import Ellipsoid from "./Ellipsoid.js";
|
|
@@ -71,7 +70,7 @@ ApproximateTerrainHeights.getMinimumMaximumHeights = function (
|
|
|
71
70
|
);
|
|
72
71
|
}
|
|
73
72
|
//>>includeEnd('debug');
|
|
74
|
-
ellipsoid =
|
|
73
|
+
ellipsoid = ellipsoid ?? Ellipsoid.default;
|
|
75
74
|
|
|
76
75
|
const xyLevel = getTileXYLevel(rectangle);
|
|
77
76
|
|
|
@@ -142,7 +141,7 @@ ApproximateTerrainHeights.getBoundingSphere = function (rectangle, ellipsoid) {
|
|
|
142
141
|
);
|
|
143
142
|
}
|
|
144
143
|
//>>includeEnd('debug');
|
|
145
|
-
ellipsoid =
|
|
144
|
+
ellipsoid = ellipsoid ?? Ellipsoid.default;
|
|
146
145
|
|
|
147
146
|
const xyLevel = getTileXYLevel(rectangle);
|
|
148
147
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Cartesian2 from "./Cartesian2.js";
|
|
2
2
|
import Check from "./Check.js";
|
|
3
3
|
import Credit from "./Credit.js";
|
|
4
|
-
import
|
|
4
|
+
import Frozen from "./Frozen.js";
|
|
5
5
|
import defined from "./defined.js";
|
|
6
6
|
import Ellipsoid from "./Ellipsoid.js";
|
|
7
7
|
import Event from "./Event.js";
|
|
@@ -22,7 +22,7 @@ import WebMercatorTilingScheme from "./WebMercatorTilingScheme.js";
|
|
|
22
22
|
const ALL_CHILDREN = 15;
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
|
-
* @typedef {
|
|
25
|
+
* @typedef {object} ArcGISTiledElevationTerrainProvider.ConstructorOptions
|
|
26
26
|
*
|
|
27
27
|
* Initialization options for the ArcGISTiledElevationTerrainProvider constructor
|
|
28
28
|
*
|
|
@@ -41,7 +41,7 @@ const ALL_CHILDREN = 15;
|
|
|
41
41
|
* @param {ArcGISTiledElevationTerrainProvider.ConstructorOptions} [options] An object describing initialization options.
|
|
42
42
|
*/
|
|
43
43
|
function TerrainProviderBuilder(options) {
|
|
44
|
-
this.ellipsoid =
|
|
44
|
+
this.ellipsoid = options.ellipsoid ?? Ellipsoid.default;
|
|
45
45
|
|
|
46
46
|
this.credit = undefined;
|
|
47
47
|
this.tilingScheme = undefined;
|
|
@@ -85,7 +85,7 @@ function parseMetadataSuccess(terrainProviderBuilder, metadata) {
|
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
const spatialReference = metadata.spatialReference;
|
|
88
|
-
const wkid =
|
|
88
|
+
const wkid = spatialReference.latestWkid ?? spatialReference.wkid;
|
|
89
89
|
const extent = metadata.extent;
|
|
90
90
|
const tilingSchemeOptions = {
|
|
91
91
|
ellipsoid: terrainProviderBuilder.ellipsoid,
|
|
@@ -234,7 +234,7 @@ async function requestMetadata(
|
|
|
234
234
|
* @see TerrainProvider
|
|
235
235
|
*/
|
|
236
236
|
function ArcGISTiledElevationTerrainProvider(options) {
|
|
237
|
-
options =
|
|
237
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
238
238
|
|
|
239
239
|
this._resource = undefined;
|
|
240
240
|
this._credit = undefined;
|
|
@@ -325,7 +325,7 @@ Object.defineProperties(ArcGISTiledElevationTerrainProvider.prototype, {
|
|
|
325
325
|
* at points and in rectangles. This property may be undefined if availability
|
|
326
326
|
* information is not available.
|
|
327
327
|
* @memberof ArcGISTiledElevationTerrainProvider.prototype
|
|
328
|
-
* @type {TileAvailability}
|
|
328
|
+
* @type {TileAvailability|undefined}
|
|
329
329
|
* @readonly
|
|
330
330
|
*/
|
|
331
331
|
availability: {
|
|
@@ -339,7 +339,7 @@ Object.defineProperties(ArcGISTiledElevationTerrainProvider.prototype, {
|
|
|
339
339
|
* Creates a {@link TerrainProvider} that produces terrain geometry by tessellating height maps
|
|
340
340
|
* retrieved from Elevation Tiles of an an ArcGIS ImageService.
|
|
341
341
|
*
|
|
342
|
-
* @param {Resource|
|
|
342
|
+
* @param {Resource|string|Promise<Resource>|Promise<string>} url The URL of the ArcGIS ImageServer service.
|
|
343
343
|
* @param {ArcGISTiledElevationTerrainProvider.ConstructorOptions} [options] A url or an object describing initialization options.
|
|
344
344
|
* @returns {Promise<ArcGISTiledElevationTerrainProvider>}
|
|
345
345
|
*
|
|
@@ -357,7 +357,7 @@ ArcGISTiledElevationTerrainProvider.fromUrl = async function (url, options) {
|
|
|
357
357
|
Check.defined("url", url);
|
|
358
358
|
//>>includeEnd('debug');
|
|
359
359
|
|
|
360
|
-
options =
|
|
360
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
361
361
|
|
|
362
362
|
url = await Promise.resolve(url);
|
|
363
363
|
let resource = Resource.createIfNeeded(url);
|
package/Source/Core/ArcType.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* ArcType defines the path that should be taken connecting vertices.
|
|
3
5
|
*
|
|
@@ -28,4 +30,7 @@ const ArcType = {
|
|
|
28
30
|
*/
|
|
29
31
|
RHUMB: 2,
|
|
30
32
|
};
|
|
31
|
-
|
|
33
|
+
|
|
34
|
+
Object.freeze(ArcType);
|
|
35
|
+
|
|
36
|
+
export default ArcType;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* An enum describing the type of motion that is defined by an articulation stage
|
|
3
5
|
* in the AGI_articulations extension.
|
|
@@ -20,4 +22,6 @@ const ArticulationStageType = {
|
|
|
20
22
|
UNIFORMSCALE: "uniformScale",
|
|
21
23
|
};
|
|
22
24
|
|
|
23
|
-
|
|
25
|
+
Object.freeze(ArticulationStageType);
|
|
26
|
+
|
|
27
|
+
export default ArticulationStageType;
|
|
@@ -1,127 +1,133 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
|
|
1
3
|
import defined from "./defined.js";
|
|
2
4
|
import DeveloperError from "./DeveloperError.js";
|
|
3
5
|
|
|
4
6
|
/**
|
|
5
7
|
* A collection of key-value pairs that is stored as a hash for easy
|
|
6
8
|
* lookup but also provides an array for fast iteration.
|
|
7
|
-
*
|
|
8
|
-
* @
|
|
9
|
+
*
|
|
10
|
+
* @template T = unknown
|
|
9
11
|
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
12
|
+
class AssociativeArray {
|
|
13
|
+
constructor() {
|
|
14
|
+
/**
|
|
15
|
+
* @type {T[]}
|
|
16
|
+
* @private
|
|
17
|
+
*/
|
|
18
|
+
this._array = [];
|
|
19
|
+
/**
|
|
20
|
+
* @type {Object<string|number, T>}
|
|
21
|
+
* @private
|
|
22
|
+
*/
|
|
23
|
+
this._hash = {};
|
|
24
|
+
}
|
|
14
25
|
|
|
15
|
-
Object.defineProperties(AssociativeArray.prototype, {
|
|
16
26
|
/**
|
|
17
27
|
* Gets the number of items in the collection.
|
|
18
|
-
* @memberof AssociativeArray.prototype
|
|
19
28
|
*
|
|
20
29
|
* @type {number}
|
|
21
30
|
*/
|
|
22
|
-
length
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
},
|
|
31
|
+
get length() {
|
|
32
|
+
return this._array.length;
|
|
33
|
+
}
|
|
34
|
+
|
|
27
35
|
/**
|
|
28
36
|
* Gets an unordered array of all values in the collection.
|
|
29
37
|
* This is a live array that will automatically reflect the values in the collection,
|
|
30
38
|
* it should not be modified directly.
|
|
31
|
-
* @memberof AssociativeArray.prototype
|
|
32
39
|
*
|
|
33
|
-
* @type {Array}
|
|
40
|
+
* @type {Array<T>}
|
|
34
41
|
*/
|
|
35
|
-
values
|
|
36
|
-
|
|
37
|
-
return this._array;
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Determines if the provided key is in the array.
|
|
44
|
-
*
|
|
45
|
-
* @param {string|number} key The key to check.
|
|
46
|
-
* @returns {boolean} <code>true</code> if the key is in the array, <code>false</code> otherwise.
|
|
47
|
-
*/
|
|
48
|
-
AssociativeArray.prototype.contains = function (key) {
|
|
49
|
-
//>>includeStart('debug', pragmas.debug);
|
|
50
|
-
if (typeof key !== "string" && typeof key !== "number") {
|
|
51
|
-
throw new DeveloperError("key is required to be a string or number.");
|
|
42
|
+
get values() {
|
|
43
|
+
return this._array;
|
|
52
44
|
}
|
|
53
|
-
//>>includeEnd('debug');
|
|
54
|
-
return defined(this._hash[key]);
|
|
55
|
-
};
|
|
56
45
|
|
|
57
|
-
/**
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
46
|
+
/**
|
|
47
|
+
* Determines if the provided key is in the array.
|
|
48
|
+
*
|
|
49
|
+
* @param {string|number} key The key to check.
|
|
50
|
+
* @returns {boolean} <code>true</code> if the key is in the array, <code>false</code> otherwise.
|
|
51
|
+
*/
|
|
52
|
+
contains(key) {
|
|
53
|
+
//>>includeStart('debug', pragmas.debug);
|
|
54
|
+
if (typeof key !== "string" && typeof key !== "number") {
|
|
55
|
+
throw new DeveloperError("key is required to be a string or number.");
|
|
56
|
+
}
|
|
57
|
+
//>>includeEnd('debug');
|
|
58
|
+
return defined(this._hash[key]);
|
|
68
59
|
}
|
|
69
|
-
//>>includeEnd('debug');
|
|
70
60
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
61
|
+
/**
|
|
62
|
+
* Associates the provided key with the provided value. If the key already
|
|
63
|
+
* exists, it is overwritten with the new value.
|
|
64
|
+
*
|
|
65
|
+
* @param {string|number} key A unique identifier.
|
|
66
|
+
* @param {T} value The value to associate with the provided key.
|
|
67
|
+
*/
|
|
68
|
+
set(key, value) {
|
|
69
|
+
//>>includeStart('debug', pragmas.debug);
|
|
70
|
+
if (typeof key !== "string" && typeof key !== "number") {
|
|
71
|
+
throw new DeveloperError("key is required to be a string or number.");
|
|
72
|
+
}
|
|
73
|
+
//>>includeEnd('debug');
|
|
74
|
+
|
|
75
|
+
const oldValue = this._hash[key];
|
|
76
|
+
if (value !== oldValue) {
|
|
77
|
+
this.remove(key);
|
|
78
|
+
this._hash[key] = value;
|
|
79
|
+
this._array.push(value);
|
|
80
|
+
}
|
|
76
81
|
}
|
|
77
|
-
};
|
|
78
82
|
|
|
79
|
-
/**
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
83
|
+
/**
|
|
84
|
+
* Retrieves the value associated with the provided key.
|
|
85
|
+
*
|
|
86
|
+
* @param {string|number} key The key whose value is to be retrieved.
|
|
87
|
+
* @returns {T} The associated value, or undefined if the key does not exist in the collection.
|
|
88
|
+
*/
|
|
89
|
+
get(key) {
|
|
90
|
+
//>>includeStart('debug', pragmas.debug);
|
|
91
|
+
if (typeof key !== "string" && typeof key !== "number") {
|
|
92
|
+
throw new DeveloperError("key is required to be a string or number.");
|
|
93
|
+
}
|
|
94
|
+
//>>includeEnd('debug');
|
|
95
|
+
return this._hash[key];
|
|
89
96
|
}
|
|
90
|
-
//>>includeEnd('debug');
|
|
91
|
-
return this._hash[key];
|
|
92
|
-
};
|
|
93
97
|
|
|
94
|
-
/**
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
98
|
+
/**
|
|
99
|
+
* Removes a key-value pair from the collection.
|
|
100
|
+
*
|
|
101
|
+
* @param {string|number} key The key to be removed.
|
|
102
|
+
* @returns {boolean} True if it was removed, false if the key was not in the collection.
|
|
103
|
+
*/
|
|
104
|
+
remove(key) {
|
|
105
|
+
//>>includeStart('debug', pragmas.debug);
|
|
106
|
+
if (defined(key) && typeof key !== "string" && typeof key !== "number") {
|
|
107
|
+
throw new DeveloperError("key is required to be a string or number.");
|
|
108
|
+
}
|
|
109
|
+
//>>includeEnd('debug');
|
|
110
|
+
|
|
111
|
+
const value = this._hash[key];
|
|
112
|
+
const hasValue = defined(value);
|
|
113
|
+
if (hasValue) {
|
|
114
|
+
const array = this._array;
|
|
115
|
+
array.splice(array.indexOf(value), 1);
|
|
116
|
+
delete this._hash[key];
|
|
117
|
+
}
|
|
118
|
+
return hasValue;
|
|
104
119
|
}
|
|
105
|
-
//>>includeEnd('debug');
|
|
106
120
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
121
|
+
/**
|
|
122
|
+
* Clears the collection.
|
|
123
|
+
*/
|
|
124
|
+
removeAll() {
|
|
110
125
|
const array = this._array;
|
|
111
|
-
|
|
112
|
-
|
|
126
|
+
if (array.length > 0) {
|
|
127
|
+
this._hash = {};
|
|
128
|
+
array.length = 0;
|
|
129
|
+
}
|
|
113
130
|
}
|
|
114
|
-
|
|
115
|
-
};
|
|
131
|
+
}
|
|
116
132
|
|
|
117
|
-
/**
|
|
118
|
-
* Clears the collection.
|
|
119
|
-
*/
|
|
120
|
-
AssociativeArray.prototype.removeAll = function () {
|
|
121
|
-
const array = this._array;
|
|
122
|
-
if (array.length > 0) {
|
|
123
|
-
this._hash = {};
|
|
124
|
-
array.length = 0;
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
133
|
export default AssociativeArray;
|
|
@@ -7,8 +7,9 @@ import DeveloperError from "./DeveloperError.js";
|
|
|
7
7
|
import CesiumMath from "./Math.js";
|
|
8
8
|
import AttributeType from "../Scene/AttributeType.js";
|
|
9
9
|
|
|
10
|
-
const
|
|
11
|
-
const
|
|
10
|
+
const RIGHT_SHIFT8 = 1.0 / 256.0;
|
|
11
|
+
const LEFT_SHIFT16 = 65536.0;
|
|
12
|
+
const LEFT_SHIFT8 = 256.0;
|
|
12
13
|
|
|
13
14
|
/**
|
|
14
15
|
* Attribute compression and decompression functions.
|
|
@@ -96,9 +97,9 @@ function forceUint8(value) {
|
|
|
96
97
|
*/
|
|
97
98
|
AttributeCompression.octEncodeToCartesian4 = function (vector, result) {
|
|
98
99
|
AttributeCompression.octEncodeInRange(vector, 65535, octEncodeScratch);
|
|
99
|
-
result.x = forceUint8(octEncodeScratch.x *
|
|
100
|
+
result.x = forceUint8(octEncodeScratch.x * RIGHT_SHIFT8);
|
|
100
101
|
result.y = forceUint8(octEncodeScratch.x);
|
|
101
|
-
result.z = forceUint8(octEncodeScratch.y *
|
|
102
|
+
result.z = forceUint8(octEncodeScratch.y * RIGHT_SHIFT8);
|
|
102
103
|
result.w = forceUint8(octEncodeScratch.y);
|
|
103
104
|
return result;
|
|
104
105
|
};
|
|
@@ -193,8 +194,8 @@ AttributeCompression.octDecodeFromCartesian4 = function (encoded, result) {
|
|
|
193
194
|
}
|
|
194
195
|
//>>includeEnd('debug');
|
|
195
196
|
|
|
196
|
-
const xOct16 = x *
|
|
197
|
-
const yOct16 = z *
|
|
197
|
+
const xOct16 = x * LEFT_SHIFT8 + y;
|
|
198
|
+
const yOct16 = z * LEFT_SHIFT8 + w;
|
|
198
199
|
return AttributeCompression.octDecodeInRange(xOct16, yOct16, 65535, result);
|
|
199
200
|
};
|
|
200
201
|
|
|
@@ -478,6 +479,52 @@ AttributeCompression.dequantize = function (
|
|
|
478
479
|
return dequantizedTypedArray;
|
|
479
480
|
};
|
|
480
481
|
|
|
482
|
+
/**
|
|
483
|
+
* Encodes RGB values at 8-bit precision into a single float, equivalent
|
|
484
|
+
* to 0xFFFFFF representation in JavaScript. Perceptually near-lossless
|
|
485
|
+
* in the "srgb" color space; "srgb-linear" and wide-gamut color spaces
|
|
486
|
+
* benefit from 10+ bit precision.
|
|
487
|
+
*
|
|
488
|
+
* @param {Color} color
|
|
489
|
+
* @returns {number}
|
|
490
|
+
*/
|
|
491
|
+
AttributeCompression.encodeRGB8 = function (color) {
|
|
492
|
+
//>>includeStart('debug', pragmas.debug);
|
|
493
|
+
Check.typeOf.object("color", color);
|
|
494
|
+
//>>includeEnd('debug');
|
|
495
|
+
|
|
496
|
+
return (
|
|
497
|
+
Math.round(CesiumMath.clamp(color.red * 255, 0, 255)) * LEFT_SHIFT16 +
|
|
498
|
+
Math.round(CesiumMath.clamp(color.green * 255, 0, 255)) * LEFT_SHIFT8 +
|
|
499
|
+
Math.round(CesiumMath.clamp(color.blue * 255, 0, 255))
|
|
500
|
+
);
|
|
501
|
+
};
|
|
502
|
+
|
|
503
|
+
/**
|
|
504
|
+
* Decodes RGB values at 8-bit precision from a signle float, equivalent
|
|
505
|
+
* to 0xFFFFFF representation in JavaScript. Perceptually near-lossless
|
|
506
|
+
* in the "srgb" color space; "srgb-linear" and wide-gamut color spaces
|
|
507
|
+
* benefit from 10+ bit precision.
|
|
508
|
+
*
|
|
509
|
+
* @param {number} encoded
|
|
510
|
+
* @param {Color} result
|
|
511
|
+
* @returns {Color}
|
|
512
|
+
*/
|
|
513
|
+
AttributeCompression.decodeRGB8 = function (encoded, result) {
|
|
514
|
+
//>>includeStart('debug', pragmas.debug);
|
|
515
|
+
Check.typeOf.number("encoded", encoded);
|
|
516
|
+
Check.typeOf.object("result", result);
|
|
517
|
+
//>>includeEnd('debug');
|
|
518
|
+
|
|
519
|
+
encoded = Math.floor(encoded);
|
|
520
|
+
|
|
521
|
+
result.red = ((encoded >> 16) & 255) / 255;
|
|
522
|
+
result.green = ((encoded >> 8) & 255) / 255;
|
|
523
|
+
result.blue = (encoded & 255) / 255;
|
|
524
|
+
|
|
525
|
+
return result;
|
|
526
|
+
};
|
|
527
|
+
|
|
481
528
|
/**
|
|
482
529
|
* Decode RGB565-encoded colors into a floating point typed array containing
|
|
483
530
|
* normalized RGB values.
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import Cartesian3 from "./Cartesian3.js";
|
|
2
2
|
import Check from "./Check.js";
|
|
3
|
-
import defaultValue from "./defaultValue.js";
|
|
4
3
|
import defined from "./defined.js";
|
|
5
4
|
import Intersect from "./Intersect.js";
|
|
6
5
|
|
|
@@ -22,14 +21,14 @@ function AxisAlignedBoundingBox(minimum, maximum, center) {
|
|
|
22
21
|
* @type {Cartesian3}
|
|
23
22
|
* @default {@link Cartesian3.ZERO}
|
|
24
23
|
*/
|
|
25
|
-
this.minimum = Cartesian3.clone(
|
|
24
|
+
this.minimum = Cartesian3.clone(minimum ?? Cartesian3.ZERO);
|
|
26
25
|
|
|
27
26
|
/**
|
|
28
27
|
* The maximum point defining the bounding box.
|
|
29
28
|
* @type {Cartesian3}
|
|
30
29
|
* @default {@link Cartesian3.ZERO}
|
|
31
30
|
*/
|
|
32
|
-
this.maximum = Cartesian3.clone(
|
|
31
|
+
this.maximum = Cartesian3.clone(maximum ?? Cartesian3.ZERO);
|
|
33
32
|
|
|
34
33
|
// If center was not defined, compute it.
|
|
35
34
|
if (!defined(center)) {
|
|
@@ -223,6 +222,30 @@ AxisAlignedBoundingBox.intersectPlane = function (box, plane) {
|
|
|
223
222
|
return Intersect.INTERSECTING;
|
|
224
223
|
};
|
|
225
224
|
|
|
225
|
+
/**
|
|
226
|
+
* Determines whether two axis aligned bounding boxes intersect.
|
|
227
|
+
*
|
|
228
|
+
* @param {AxisAlignedBoundingBox} box first box
|
|
229
|
+
* @param {AxisAlignedBoundingBox} other second box
|
|
230
|
+
* @returns {boolean} <code>true</code> if the boxes intersect; otherwise, <code>false</code>.
|
|
231
|
+
*/
|
|
232
|
+
AxisAlignedBoundingBox.intersectAxisAlignedBoundingBox = function (box, other) {
|
|
233
|
+
//>>includeStart('debug', pragmas.debug);
|
|
234
|
+
Check.defined("box", box);
|
|
235
|
+
Check.defined("other", other);
|
|
236
|
+
//>>includeEnd('debug');
|
|
237
|
+
|
|
238
|
+
// This short circuits in favor of AABBs that do not intersect.
|
|
239
|
+
return (
|
|
240
|
+
box.minimum.x <= other.maximum.x &&
|
|
241
|
+
box.maximum.x >= other.minimum.x &&
|
|
242
|
+
box.minimum.y <= other.maximum.y &&
|
|
243
|
+
box.maximum.y >= other.minimum.y &&
|
|
244
|
+
box.minimum.z <= other.maximum.z &&
|
|
245
|
+
box.maximum.z >= other.minimum.z
|
|
246
|
+
);
|
|
247
|
+
};
|
|
248
|
+
|
|
226
249
|
/**
|
|
227
250
|
* Duplicates this AxisAlignedBoundingBox instance.
|
|
228
251
|
*
|
|
@@ -246,6 +269,18 @@ AxisAlignedBoundingBox.prototype.intersectPlane = function (plane) {
|
|
|
246
269
|
return AxisAlignedBoundingBox.intersectPlane(this, plane);
|
|
247
270
|
};
|
|
248
271
|
|
|
272
|
+
/**
|
|
273
|
+
* Determines whether some other axis aligned bounding box intersects this box.
|
|
274
|
+
*
|
|
275
|
+
* @param {AxisAlignedBoundingBox} other The other axis aligned bounding box.
|
|
276
|
+
* @returns {boolean} <code>true</code> if the boxes intersect; otherwise, <code>false</code>.
|
|
277
|
+
*/
|
|
278
|
+
AxisAlignedBoundingBox.prototype.intersectAxisAlignedBoundingBox = function (
|
|
279
|
+
other,
|
|
280
|
+
) {
|
|
281
|
+
return AxisAlignedBoundingBox.intersectAxisAlignedBoundingBox(this, other);
|
|
282
|
+
};
|
|
283
|
+
|
|
249
284
|
/**
|
|
250
285
|
* Compares this AxisAlignedBoundingBox against the provided AxisAlignedBoundingBox componentwise and returns
|
|
251
286
|
* <code>true</code> if they are equal, <code>false</code> otherwise.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import Check from "./Check.js";
|
|
2
2
|
import Credit from "./Credit.js";
|
|
3
|
-
import
|
|
3
|
+
import Frozen from "./Frozen.js";
|
|
4
4
|
import Rectangle from "./Rectangle.js";
|
|
5
5
|
import Resource from "./Resource.js";
|
|
6
6
|
import defined from "./defined.js";
|
|
@@ -20,7 +20,7 @@ const url = "https://dev.virtualearth.net/REST/v1/Locations";
|
|
|
20
20
|
* @param {string} [options.culture] A Bing Maps {@link https://docs.microsoft.com/en-us/bingmaps/rest-services/common-parameters-and-types/supported-culture-codes|Culture Code} to return results in a specific culture and language.
|
|
21
21
|
*/
|
|
22
22
|
function BingMapsGeocoderService(options) {
|
|
23
|
-
options =
|
|
23
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
24
24
|
const key = options.key;
|
|
25
25
|
//>>includeStart('debug', pragmas.debug);
|
|
26
26
|
if (!defined(key)) {
|