@cesium/engine 2.0.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Build/Workers/{ArcType-ce2e50ab.js → ArcType-2d9abbbc.js} +4 -4
- package/Build/Workers/{AttributeCompression-b646d393.js → AttributeCompression-8a5a065e.js} +24 -24
- package/Build/Workers/{AxisAlignedBoundingBox-47525601.js → AxisAlignedBoundingBox-379015ef.js} +3 -3
- package/Build/Workers/{BoundingRectangle-93b263ac.js → BoundingRectangle-57f2b24f.js} +18 -18
- package/Build/Workers/{BoxGeometry-8c4b4125.js → BoxGeometry-ecabfc78.js} +9 -9
- package/Build/Workers/{Check-666ab1a0.js → Check-6ede7e26.js} +22 -22
- package/Build/Workers/{Color-52c60ed7.js → Color-14d1a36d.js} +59 -59
- package/Build/Workers/{ComponentDatatype-f7b11d02.js → ComponentDatatype-cf1fa08e.js} +16 -16
- package/Build/Workers/{CoplanarPolygonGeometryLibrary-33c4c1f8.js → CoplanarPolygonGeometryLibrary-048c3c14.js} +1 -1
- package/Build/Workers/{CorridorGeometryLibrary-5039cd8e.js → CorridorGeometryLibrary-520c8619.js} +1 -1
- package/Build/Workers/{CylinderGeometry-3ac44974.js → CylinderGeometry-119068b8.js} +12 -12
- package/Build/Workers/{CylinderGeometryLibrary-372c07d8.js → CylinderGeometryLibrary-135b0858.js} +1 -1
- package/Build/Workers/{EllipseGeometry-a9c9b3be.js → EllipseGeometry-2dfc3523.js} +20 -20
- package/Build/Workers/{EllipseGeometryLibrary-855d4681.js → EllipseGeometryLibrary-0a1e0170.js} +1 -1
- package/Build/Workers/{EllipseOutlineGeometry-017a5929.js → EllipseOutlineGeometry-c5251669.js} +15 -15
- package/Build/Workers/{EllipsoidGeodesic-98c62a56.js → EllipsoidGeodesic-dcff5cbd.js} +6 -6
- package/Build/Workers/{EllipsoidGeometry-826e7bce.js → EllipsoidGeometry-d10a5221.js} +14 -14
- package/Build/Workers/{EllipsoidOutlineGeometry-784dcdb5.js → EllipsoidOutlineGeometry-7039a0ae.js} +15 -15
- package/Build/Workers/{EllipsoidRhumbLine-19756602.js → EllipsoidRhumbLine-b672d507.js} +9 -9
- package/Build/Workers/{EllipsoidTangentPlane-ed9443a1.js → EllipsoidTangentPlane-857186be.js} +1 -1
- package/Build/Workers/{EncodedCartesian3-81f70735.js → EncodedCartesian3-e8bbca36.js} +6 -6
- package/Build/Workers/{FrustumGeometry-9f1ee4d8.js → FrustumGeometry-400fa1b7.js} +109 -109
- package/Build/Workers/{GeometryAttribute-334718f8.js → GeometryAttribute-7a2de5c6.js} +20 -20
- package/Build/Workers/{GeometryAttributes-f06a2792.js → GeometryAttributes-ad136444.js} +1 -1
- package/Build/Workers/{GeometryInstance-451dc1cd.js → GeometryInstance-3fb607b7.js} +6 -6
- package/Build/Workers/{GeometryPipeline-8fb0db69.js → GeometryPipeline-916636fa.js} +22 -22
- package/Build/Workers/{IndexDatatype-a55ceaa1.js → IndexDatatype-b8f3e09d.js} +13 -13
- package/Build/Workers/{IntersectionTests-27d49265.js → IntersectionTests-b4d02d4d.js} +37 -37
- package/Build/Workers/{Math-2dbd6b93.js → Math-dad82b4d.js} +137 -137
- package/Build/Workers/{Matrix2-13178034.js → Matrix2-1e403d0e.js} +256 -256
- package/Build/Workers/{Matrix3-315394f6.js → Matrix3-fa806b97.js} +150 -150
- package/Build/Workers/{OrientedBoundingBox-79ee7cbb.js → OrientedBoundingBox-96fe1752.js} +19 -17
- package/Build/Workers/{Plane-900aa728.js → Plane-c27e1ac6.js} +5 -5
- package/Build/Workers/{PolygonGeometryLibrary-6b5a29e9.js → PolygonGeometryLibrary-931f1ec6.js} +6 -6
- package/Build/Workers/{PolygonPipeline-21668b3f.js → PolygonPipeline-32fc92cc.js} +14 -14
- package/Build/Workers/{PolylinePipeline-5e2e1b21.js → PolylinePipeline-6d5c63e5.js} +16 -16
- package/Build/Workers/{PolylineVolumeGeometryLibrary-97f0b94e.js → PolylineVolumeGeometryLibrary-f068c1fb.js} +7 -7
- package/Build/Workers/{PrimitivePipeline-5640850a.js → PrimitivePipeline-879f996a.js} +6 -6
- package/Build/Workers/{RectangleGeometryLibrary-d5457f7b.js → RectangleGeometryLibrary-2d6f36f3.js} +1 -1
- package/Build/Workers/{RuntimeError-06c93819.js → RuntimeError-ef395448.js} +5 -5
- package/Build/Workers/{TerrainEncoding-bfdf2021.js → TerrainEncoding-82882059.js} +30 -30
- package/Build/Workers/{Transforms-a05e5e6e.js → Transforms-9052372a.js} +531 -530
- package/Build/Workers/{VertexFormat-6b480673.js → VertexFormat-030f11ff.js} +14 -14
- package/Build/Workers/{WallGeometryLibrary-6db0ebb6.js → WallGeometryLibrary-db7a64fb.js} +1 -1
- package/Build/Workers/{WebGLConstants-a8cc3e8c.js → WebGLConstants-0b1ce7ba.js} +1 -1
- package/Build/Workers/{WebMercatorProjection-13a90d41.js → WebMercatorProjection-76a3fcc0.js} +6 -6
- package/Build/Workers/{arrayRemoveDuplicates-c2038105.js → arrayRemoveDuplicates-fac118a8.js} +5 -5
- package/Build/Workers/cesiumWorkerBootstrapper.js +5 -5
- package/Build/Workers/{combine-ca22a614.js → combine-d9581036.js} +5 -5
- package/Build/Workers/combineGeometry.js +1 -1
- package/Build/Workers/createBoxGeometry.js +1 -1
- package/Build/Workers/createBoxOutlineGeometry.js +9 -9
- package/Build/Workers/createCircleGeometry.js +13 -13
- package/Build/Workers/createCircleOutlineGeometry.js +13 -13
- package/Build/Workers/createCoplanarPolygonGeometry.js +11 -11
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +9 -9
- package/Build/Workers/createCorridorGeometry.js +14 -14
- package/Build/Workers/createCorridorOutlineGeometry.js +12 -12
- package/Build/Workers/createCylinderGeometry.js +1 -1
- package/Build/Workers/createCylinderOutlineGeometry.js +13 -13
- package/Build/Workers/createEllipseGeometry.js +1 -1
- package/Build/Workers/createEllipseOutlineGeometry.js +1 -1
- package/Build/Workers/createEllipsoidGeometry.js +1 -1
- package/Build/Workers/createEllipsoidOutlineGeometry.js +1 -1
- package/Build/Workers/createFrustumGeometry.js +1 -1
- package/Build/Workers/createFrustumOutlineGeometry.js +8 -8
- package/Build/Workers/createGeometry.js +1 -1
- package/Build/Workers/createGroundPolylineGeometry.js +33 -33
- package/Build/Workers/createPlaneGeometry.js +8 -8
- package/Build/Workers/createPlaneOutlineGeometry.js +6 -6
- package/Build/Workers/createPolygonGeometry.js +25 -25
- package/Build/Workers/createPolygonOutlineGeometry.js +17 -17
- package/Build/Workers/createPolylineGeometry.js +11 -11
- package/Build/Workers/createPolylineVolumeGeometry.js +9 -9
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +9 -9
- package/Build/Workers/createRectangleGeometry.js +16 -16
- package/Build/Workers/createRectangleOutlineGeometry.js +12 -12
- package/Build/Workers/createSimplePolylineGeometry.js +10 -10
- package/Build/Workers/createSphereGeometry.js +11 -11
- package/Build/Workers/createSphereOutlineGeometry.js +12 -12
- package/Build/Workers/createTaskProcessorWorker.js +2 -2
- package/Build/Workers/createVectorTileClampedPolylines.js +1 -1
- package/Build/Workers/createVectorTileGeometries.js +8 -8
- package/Build/Workers/createVectorTilePoints.js +1 -1
- package/Build/Workers/createVectorTilePolygons.js +1 -1
- package/Build/Workers/createVectorTilePolylines.js +1 -1
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
- package/Build/Workers/createVerticesFromHeightmap.js +23 -21
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +33 -38
- package/Build/Workers/createWallGeometry.js +14 -14
- package/Build/Workers/createWallOutlineGeometry.js +14 -14
- package/Build/Workers/decodeDraco.js +1 -1
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +15 -15
- package/Build/Workers/decodeI3S.js +1 -1
- package/Build/Workers/{defaultValue-0a909f67.js → defaultValue-fe22d8c0.js} +2 -2
- package/Build/Workers/package.js +1 -1
- package/Build/Workers/transcodeKTX2.js +26 -26
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +24 -24
- package/Source/Core/ApproximateTerrainHeights.js +3 -3
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +308 -208
- package/Source/Core/ArcType.js +4 -4
- package/Source/Core/ArticulationStageType.js +1 -1
- package/Source/Core/AssociativeArray.js +7 -7
- package/Source/Core/AttributeCompression.js +12 -12
- package/Source/Core/AxisAlignedBoundingBox.js +2 -2
- package/Source/Core/BingMapsGeocoderService.js +6 -6
- package/Source/Core/BoundingRectangle.js +17 -17
- package/Source/Core/BoundingSphere.js +25 -25
- package/Source/Core/BoxGeometry.js +8 -8
- package/Source/Core/BoxOutlineGeometry.js +8 -8
- package/Source/Core/Cartesian2.js +38 -38
- package/Source/Core/Cartesian3.js +50 -50
- package/Source/Core/Cartesian4.js +44 -44
- package/Source/Core/Cartographic.js +19 -19
- package/Source/Core/CartographicGeocoderService.js +1 -1
- package/Source/Core/CatmullRomSpline.js +10 -10
- package/Source/Core/CesiumTerrainProvider.js +598 -461
- package/Source/Core/Check.js +17 -17
- package/Source/Core/CircleGeometry.js +12 -12
- package/Source/Core/CircleOutlineGeometry.js +12 -12
- package/Source/Core/Clock.js +7 -7
- package/Source/Core/ClockRange.js +4 -4
- package/Source/Core/ClockStep.js +4 -4
- package/Source/Core/Color.js +58 -58
- package/Source/Core/ColorGeometryInstanceAttribute.js +7 -7
- package/Source/Core/ComponentDatatype.js +15 -15
- package/Source/Core/CompressedTextureBuffer.js +7 -7
- package/Source/Core/ConstantSpline.js +9 -9
- package/Source/Core/CoplanarPolygonGeometry.js +10 -10
- package/Source/Core/CoplanarPolygonOutlineGeometry.js +8 -8
- package/Source/Core/CornerType.js +4 -4
- package/Source/Core/CorridorGeometry.js +13 -13
- package/Source/Core/CorridorOutlineGeometry.js +11 -11
- package/Source/Core/Credit.js +7 -7
- package/Source/Core/CubicRealPolynomial.js +10 -10
- package/Source/Core/CullingVolume.js +7 -7
- package/Source/Core/CustomHeightmapTerrainProvider.js +40 -28
- package/Source/Core/CylinderGeometry.js +11 -11
- package/Source/Core/CylinderOutlineGeometry.js +12 -12
- package/Source/Core/DefaultProxy.js +3 -3
- package/Source/Core/DeveloperError.js +4 -4
- package/Source/Core/DistanceDisplayCondition.js +12 -12
- package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +5 -5
- package/Source/Core/DoubleEndedPriorityQueue.js +5 -5
- package/Source/Core/EarthOrientationParameters.js +6 -6
- package/Source/Core/EarthOrientationParametersSample.js +10 -10
- package/Source/Core/EasingFunction.js +2 -2
- package/Source/Core/EllipseGeometry.js +19 -19
- package/Source/Core/EllipseOutlineGeometry.js +14 -14
- package/Source/Core/Ellipsoid.js +20 -20
- package/Source/Core/EllipsoidGeodesic.js +5 -5
- package/Source/Core/EllipsoidGeometry.js +13 -13
- package/Source/Core/EllipsoidOutlineGeometry.js +14 -14
- package/Source/Core/EllipsoidRhumbLine.js +8 -8
- package/Source/Core/EllipsoidTerrainProvider.js +35 -28
- package/Source/Core/EllipsoidalOccluder.js +9 -9
- package/Source/Core/EncodedCartesian3.js +5 -5
- package/Source/Core/Event.js +4 -4
- package/Source/Core/EventHelper.js +1 -1
- package/Source/Core/ExtrapolationType.js +4 -4
- package/Source/Core/FeatureDetection.js +9 -9
- package/Source/Core/FrustumGeometry.js +8 -8
- package/Source/Core/FrustumOutlineGeometry.js +7 -7
- package/Source/Core/Fullscreen.js +8 -8
- package/Source/Core/GeocodeType.js +3 -3
- package/Source/Core/GeocoderService.js +3 -3
- package/Source/Core/GeographicTilingScheme.js +16 -16
- package/Source/Core/Geometry.js +5 -5
- package/Source/Core/GeometryAttribute.js +6 -6
- package/Source/Core/GeometryInstance.js +5 -5
- package/Source/Core/GeometryInstanceAttribute.js +7 -7
- package/Source/Core/GeometryPipeline.js +11 -11
- package/Source/Core/GoogleEarthEnterpriseMetadata.js +107 -55
- package/Source/Core/GoogleEarthEnterpriseTerrainData.js +29 -29
- package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +137 -100
- package/Source/Core/GoogleEarthEnterpriseTileInformation.js +14 -14
- package/Source/Core/GregorianDate.js +16 -16
- package/Source/Core/GroundPolylineGeometry.js +13 -13
- package/Source/Core/HeadingPitchRange.js +6 -6
- package/Source/Core/HeadingPitchRoll.js +18 -18
- package/Source/Core/Heap.js +7 -7
- package/Source/Core/HeightmapEncoding.js +3 -3
- package/Source/Core/HeightmapTerrainData.js +44 -44
- package/Source/Core/HeightmapTessellator.js +16 -16
- package/Source/Core/HermitePolynomialApproximation.js +17 -17
- package/Source/Core/HermiteSpline.js +17 -17
- package/Source/Core/HilbertOrder.js +7 -7
- package/Source/Core/Iau2006XysData.js +13 -13
- package/Source/Core/Iau2006XysSample.js +6 -6
- package/Source/Core/IauOrientationParameters.js +4 -4
- package/Source/Core/IndexDatatype.js +12 -12
- package/Source/Core/InterpolationAlgorithm.js +17 -17
- package/Source/Core/InterpolationType.js +1 -1
- package/Source/Core/Intersect.js +4 -4
- package/Source/Core/IntersectionTests.js +5 -5
- package/Source/Core/Intersections2D.js +23 -23
- package/Source/Core/Interval.js +4 -4
- package/Source/Core/Ion.js +3 -3
- package/Source/Core/IonGeocoderService.js +4 -4
- package/Source/Core/IonResource.js +20 -9
- package/Source/Core/JulianDate.js +27 -27
- package/Source/Core/KeyboardEventModifier.js +4 -4
- package/Source/Core/LagrangePolynomialApproximation.js +8 -8
- package/Source/Core/LeapSecond.js +2 -2
- package/Source/Core/LinearApproximation.js +8 -8
- package/Source/Core/LinearSpline.js +13 -13
- package/Source/Core/ManagedArray.js +8 -8
- package/Source/Core/Math.js +136 -136
- package/Source/Core/Matrix2.js +44 -44
- package/Source/Core/Matrix3.js +59 -59
- package/Source/Core/Matrix4.js +91 -91
- package/Source/Core/MorphWeightSpline.js +14 -14
- package/Source/Core/MortonOrder.js +21 -21
- package/Source/Core/NearFarScalar.js +16 -16
- package/Source/Core/Occluder.js +5 -5
- package/Source/Core/OffsetGeometryInstanceAttribute.js +5 -5
- package/Source/Core/OpenCageGeocoderService.js +18 -18
- package/Source/Core/OrientedBoundingBox.js +18 -16
- package/Source/Core/OrthographicFrustum.js +23 -23
- package/Source/Core/OrthographicOffCenterFrustum.js +21 -21
- package/Source/Core/Packable.js +7 -7
- package/Source/Core/PackableForInterpolation.js +11 -11
- package/Source/Core/PeliasGeocoderService.js +2 -2
- package/Source/Core/PerspectiveFrustum.js +28 -28
- package/Source/Core/PerspectiveOffCenterFrustum.js +21 -21
- package/Source/Core/PinBuilder.js +9 -9
- package/Source/Core/PixelFormat.js +23 -23
- package/Source/Core/Plane.js +4 -4
- package/Source/Core/PlaneGeometry.js +7 -7
- package/Source/Core/PlaneOutlineGeometry.js +5 -5
- package/Source/Core/PolygonGeometry.js +24 -24
- package/Source/Core/PolygonGeometryLibrary.js +4 -4
- package/Source/Core/PolygonOutlineGeometry.js +16 -16
- package/Source/Core/PolygonPipeline.js +10 -10
- package/Source/Core/PolylineGeometry.js +10 -10
- package/Source/Core/PolylinePipeline.js +15 -15
- package/Source/Core/PolylineVolumeGeometry.js +8 -8
- package/Source/Core/PolylineVolumeOutlineGeometry.js +8 -8
- package/Source/Core/PrimitiveType.js +8 -8
- package/Source/Core/Proxy.js +2 -2
- package/Source/Core/QuadraticRealPolynomial.js +8 -8
- package/Source/Core/QuantizedMeshTerrainData.js +37 -37
- package/Source/Core/QuarticRealPolynomial.js +12 -12
- package/Source/Core/Quaternion.js +42 -42
- package/Source/Core/QuaternionSpline.js +10 -10
- package/Source/Core/Queue.js +2 -2
- package/Source/Core/Ray.js +1 -1
- package/Source/Core/Rectangle.js +38 -38
- package/Source/Core/RectangleCollisionChecker.js +3 -3
- package/Source/Core/RectangleGeometry.js +15 -15
- package/Source/Core/RectangleOutlineGeometry.js +11 -11
- package/Source/Core/ReferenceFrame.js +3 -3
- package/Source/Core/Request.js +13 -13
- package/Source/Core/RequestErrorEvent.js +7 -7
- package/Source/Core/RequestScheduler.js +15 -15
- package/Source/Core/RequestState.js +7 -7
- package/Source/Core/RequestType.js +5 -5
- package/Source/Core/Resource.js +225 -225
- package/Source/Core/RuntimeError.js +4 -4
- package/Source/Core/S2Cell.js +15 -15
- package/Source/Core/ScreenSpaceEventHandler.js +7 -7
- package/Source/Core/ScreenSpaceEventType.js +16 -16
- package/Source/Core/ShowGeometryInstanceAttribute.js +4 -4
- package/Source/Core/SimplePolylineGeometry.js +9 -9
- package/Source/Core/SphereGeometry.js +10 -10
- package/Source/Core/SphereOutlineGeometry.js +11 -11
- package/Source/Core/Spherical.js +13 -13
- package/Source/Core/Spline.js +14 -14
- package/Source/Core/SteppedSpline.js +14 -14
- package/Source/Core/TaskProcessor.js +10 -10
- package/Source/Core/TerrainData.js +25 -25
- package/Source/Core/TerrainEncoding.js +14 -14
- package/Source/Core/TerrainExaggeration.js +3 -3
- package/Source/Core/TerrainMesh.js +18 -18
- package/Source/Core/TerrainProvider.js +32 -37
- package/Source/Core/TerrainQuantization.js +3 -3
- package/Source/Core/TileAvailability.js +16 -16
- package/Source/Core/TileProviderError.js +19 -19
- package/Source/Core/TilingScheme.js +13 -13
- package/Source/Core/TimeConstants.js +10 -10
- package/Source/Core/TimeInterval.js +23 -23
- package/Source/Core/TimeIntervalCollection.js +39 -39
- package/Source/Core/TimeStandard.js +3 -3
- package/Source/Core/Tipsify.js +10 -10
- package/Source/Core/Transforms.js +2 -2
- package/Source/Core/TranslationRotationScale.js +1 -1
- package/Source/Core/TridiagonalSystemSolver.js +3 -3
- package/Source/Core/TrustedServers.js +5 -5
- package/Source/Core/VRTheWorldTerrainProvider.js +210 -141
- package/Source/Core/VertexFormat.js +13 -13
- package/Source/Core/VideoSynchronizer.js +4 -4
- package/Source/Core/Visibility.js +4 -4
- package/Source/Core/VulkanConstants.js +1 -1
- package/Source/Core/WallGeometry.js +13 -13
- package/Source/Core/WallOutlineGeometry.js +13 -13
- package/Source/Core/WebGLConstants.js +1 -1
- package/Source/Core/WebMercatorProjection.js +5 -5
- package/Source/Core/WebMercatorTilingScheme.js +16 -16
- package/Source/Core/WindingOrder.js +3 -3
- package/Source/Core/WireframeIndexGenerator.js +3 -3
- package/Source/Core/arrayRemoveDuplicates.js +4 -4
- package/Source/Core/binarySearch.js +2 -2
- package/Source/Core/buildModuleUrl.js +8 -7
- package/Source/Core/clone.js +3 -3
- package/Source/Core/combine.js +4 -4
- package/Source/Core/createGuid.js +1 -1
- package/Source/Core/createWorldTerrain.js +23 -5
- package/Source/Core/createWorldTerrainAsync.js +48 -0
- package/Source/Core/defaultValue.js +1 -1
- package/Source/Core/defer.js +1 -1
- package/Source/Core/defined.js +1 -1
- package/Source/Core/deprecationWarning.js +2 -2
- package/Source/Core/destroyObject.js +2 -2
- package/Source/Core/formatError.js +1 -1
- package/Source/Core/getAbsoluteUri.js +3 -3
- package/Source/Core/getBaseUri.js +3 -3
- package/Source/Core/getExtensionFromUri.js +2 -2
- package/Source/Core/getFilenameFromUri.js +2 -2
- package/Source/Core/getImageFromTypedArray.js +2 -2
- package/Source/Core/getImagePixels.js +4 -3
- package/Source/Core/getJsonFromTypedArray.js +3 -3
- package/Source/Core/getStringFromTypedArray.js +3 -3
- package/Source/Core/getTimestamp.js +1 -1
- package/Source/Core/isBlobUri.js +2 -2
- package/Source/Core/isDataUri.js +2 -2
- package/Source/Core/isLeapYear.js +2 -2
- package/Source/Core/loadKTX2.js +8 -8
- package/Source/Core/mergeSort.js +1 -1
- package/Source/Core/objectToQuery.js +2 -2
- package/Source/Core/oneTimeWarning.js +2 -2
- package/Source/Core/parseResponseHeaders.js +2 -2
- package/Source/Core/pointInsideTriangle.js +1 -1
- package/Source/Core/queryToObject.js +2 -2
- package/Source/Core/sampleTerrain.js +16 -17
- package/Source/Core/sampleTerrainMostDetailed.js +67 -73
- package/Source/Core/scaleToGeodeticSurface.js +1 -1
- package/Source/Core/subdivideArray.js +1 -1
- package/Source/Core/writeTextToCanvas.js +10 -9
- package/Source/DataSources/BillboardGraphics.js +1 -1
- package/Source/DataSources/BillboardVisualizer.js +2 -2
- package/Source/DataSources/BoundingSphereState.js +1 -1
- package/Source/DataSources/BoxGraphics.js +1 -1
- package/Source/DataSources/CallbackProperty.js +8 -8
- package/Source/DataSources/Cesium3DTilesetGraphics.js +1 -1
- package/Source/DataSources/Cesium3DTilesetVisualizer.js +39 -28
- package/Source/DataSources/CheckerboardMaterialProperty.js +6 -6
- package/Source/DataSources/ColorMaterialProperty.js +5 -5
- package/Source/DataSources/CompositeEntityCollection.js +8 -8
- package/Source/DataSources/CompositeMaterialProperty.js +5 -5
- package/Source/DataSources/CompositePositionProperty.js +2 -2
- package/Source/DataSources/CompositeProperty.js +4 -4
- package/Source/DataSources/ConstantPositionProperty.js +4 -4
- package/Source/DataSources/ConstantProperty.js +5 -5
- package/Source/DataSources/CorridorGraphics.js +1 -1
- package/Source/DataSources/CustomDataSource.js +5 -5
- package/Source/DataSources/CylinderGraphics.js +1 -1
- package/Source/DataSources/CzmlDataSource.js +26 -26
- package/Source/DataSources/DataSource.js +4 -4
- package/Source/DataSources/DataSourceClock.js +2 -2
- package/Source/DataSources/DataSourceCollection.js +11 -11
- package/Source/DataSources/DataSourceDisplay.js +5 -5
- package/Source/DataSources/DynamicGeometryUpdater.js +1 -1
- package/Source/DataSources/EllipseGraphics.js +1 -1
- package/Source/DataSources/EllipsoidGeometryUpdater.js +2 -2
- package/Source/DataSources/EllipsoidGraphics.js +1 -1
- package/Source/DataSources/Entity.js +20 -15
- package/Source/DataSources/EntityCluster.js +16 -16
- package/Source/DataSources/EntityCollection.js +8 -8
- package/Source/DataSources/GeoJsonDataSource.js +27 -27
- package/Source/DataSources/GeometryUpdater.js +22 -22
- package/Source/DataSources/GeometryVisualizer.js +2 -2
- package/Source/DataSources/GpxDataSource.js +23 -23
- package/Source/DataSources/GridMaterialProperty.js +7 -7
- package/Source/DataSources/GroundGeometryUpdater.js +5 -5
- package/Source/DataSources/ImageMaterialProperty.js +8 -8
- package/Source/DataSources/KmlDataSource.js +32 -32
- package/Source/DataSources/KmlTour.js +7 -7
- package/Source/DataSources/KmlTourFlyTo.js +6 -6
- package/Source/DataSources/KmlTourWait.js +2 -2
- package/Source/DataSources/LabelGraphics.js +1 -1
- package/Source/DataSources/LabelVisualizer.js +2 -2
- package/Source/DataSources/MaterialProperty.js +5 -5
- package/Source/DataSources/ModelGraphics.js +3 -3
- package/Source/DataSources/ModelVisualizer.js +101 -33
- package/Source/DataSources/NodeTransformationProperty.js +3 -3
- package/Source/DataSources/PathGraphics.js +1 -1
- package/Source/DataSources/PathVisualizer.js +2 -2
- package/Source/DataSources/PlaneGraphics.js +1 -1
- package/Source/DataSources/PointGraphics.js +1 -1
- package/Source/DataSources/PointVisualizer.js +2 -2
- package/Source/DataSources/PolygonGraphics.js +4 -4
- package/Source/DataSources/PolylineArrowMaterialProperty.js +5 -5
- package/Source/DataSources/PolylineDashMaterialProperty.js +8 -8
- package/Source/DataSources/PolylineGeometryUpdater.js +13 -13
- package/Source/DataSources/PolylineGlowMaterialProperty.js +8 -8
- package/Source/DataSources/PolylineGraphics.js +2 -2
- package/Source/DataSources/PolylineOutlineMaterialProperty.js +7 -7
- package/Source/DataSources/PolylineVisualizer.js +2 -2
- package/Source/DataSources/PolylineVolumeGraphics.js +3 -3
- package/Source/DataSources/PositionProperty.js +2 -2
- package/Source/DataSources/PositionPropertyArray.js +2 -2
- package/Source/DataSources/Property.js +4 -4
- package/Source/DataSources/PropertyArray.js +2 -2
- package/Source/DataSources/PropertyBag.js +10 -10
- package/Source/DataSources/RectangleGraphics.js +1 -1
- package/Source/DataSources/ReferenceProperty.js +10 -10
- package/Source/DataSources/Rotation.js +14 -14
- package/Source/DataSources/SampledPositionProperty.js +11 -11
- package/Source/DataSources/SampledProperty.js +12 -12
- package/Source/DataSources/StripeMaterialProperty.js +8 -8
- package/Source/DataSources/StripeOrientation.js +3 -3
- package/Source/DataSources/TerrainOffsetProperty.js +1 -1
- package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +3 -3
- package/Source/DataSources/TimeIntervalCollectionProperty.js +4 -4
- package/Source/DataSources/VelocityOrientationProperty.js +2 -2
- package/Source/DataSources/VelocityVectorProperty.js +4 -4
- package/Source/DataSources/Visualizer.js +2 -2
- package/Source/DataSources/WallGraphics.js +4 -4
- package/Source/DataSources/exportKml.js +9 -9
- package/Source/Renderer/Buffer.js +4 -4
- package/Source/Renderer/ClearCommand.js +3 -3
- package/Source/Renderer/ComputeCommand.js +3 -3
- package/Source/Renderer/Context.js +46 -46
- package/Source/Renderer/ContextLimits.js +22 -22
- package/Source/Renderer/CubeMapFace.js +11 -11
- package/Source/Renderer/DrawCommand.js +15 -15
- package/Source/Renderer/Framebuffer.js +4 -4
- package/Source/Renderer/FramebufferManager.js +9 -9
- package/Source/Renderer/MultisampleFramebuffer.js +1 -1
- package/Source/Renderer/PassState.js +2 -2
- package/Source/Renderer/PixelDatatype.js +1 -1
- package/Source/Renderer/RenderState.js +1 -1
- package/Source/Renderer/ShaderBuilder.js +24 -24
- package/Source/Renderer/ShaderCache.js +8 -8
- package/Source/Renderer/ShaderDestination.js +2 -2
- package/Source/Renderer/ShaderFunction.js +3 -3
- package/Source/Renderer/ShaderSource.js +8 -8
- package/Source/Renderer/ShaderStruct.js +4 -4
- package/Source/Renderer/Texture.js +18 -18
- package/Source/Renderer/TextureMagnificationFilter.js +4 -4
- package/Source/Renderer/TextureMinificationFilter.js +8 -8
- package/Source/Renderer/UniformState.js +14 -14
- package/Source/Renderer/VertexArray.js +2 -2
- package/Source/Renderer/createUniform.js +12 -12
- package/Source/Renderer/createUniformArray.js +12 -12
- package/Source/Renderer/freezeRenderState.js +2 -2
- package/Source/Renderer/loadCubeMap.js +3 -3
- package/Source/Scene/AlphaMode.js +4 -4
- package/Source/Scene/Appearance.js +14 -14
- package/Source/Scene/ArcGisMapServerImageryProvider.js +585 -409
- package/Source/Scene/AttributeType.js +11 -11
- package/Source/Scene/AutoExposure.js +6 -6
- package/Source/Scene/Axis.js +6 -6
- package/Source/Scene/B3dmParser.js +2 -2
- package/Source/Scene/BatchTable.js +13 -13
- package/Source/Scene/BatchTableHierarchy.js +22 -22
- package/Source/Scene/BatchTexture.js +14 -14
- package/Source/Scene/Billboard.js +17 -17
- package/Source/Scene/BillboardCollection.js +13 -13
- package/Source/Scene/BingMapsImageryProvider.js +541 -335
- package/Source/Scene/BingMapsStyle.js +11 -11
- package/Source/Scene/BlendEquation.js +6 -6
- package/Source/Scene/BlendFunction.js +16 -16
- package/Source/Scene/BlendOption.js +4 -4
- package/Source/Scene/BlendingState.js +4 -4
- package/Source/Scene/BufferLoader.js +33 -38
- package/Source/Scene/Camera.js +57 -57
- package/Source/Scene/CameraEventAggregator.js +26 -16
- package/Source/Scene/CameraEventType.js +6 -6
- package/Source/Scene/Cesium3DContentGroup.js +1 -1
- package/Source/Scene/Cesium3DTile.js +409 -272
- package/Source/Scene/Cesium3DTileBatchTable.js +3 -3
- package/Source/Scene/Cesium3DTileColorBlendMode.js +4 -4
- package/Source/Scene/Cesium3DTileContent.js +31 -15
- package/Source/Scene/Cesium3DTileContentFactory.js +4 -4
- package/Source/Scene/Cesium3DTileContentType.js +17 -17
- package/Source/Scene/Cesium3DTileFeature.js +16 -16
- package/Source/Scene/Cesium3DTileOptimizationHint.js +1 -1
- package/Source/Scene/Cesium3DTileOptimizations.js +1 -1
- package/Source/Scene/Cesium3DTilePass.js +8 -11
- package/Source/Scene/Cesium3DTilePassState.js +1 -1
- package/Source/Scene/Cesium3DTilePointFeature.js +23 -23
- package/Source/Scene/Cesium3DTileRefine.js +3 -3
- package/Source/Scene/Cesium3DTileStyle.js +17 -17
- package/Source/Scene/Cesium3DTileStyleEngine.js +1 -1
- package/Source/Scene/Cesium3DTilesVoxelProvider.js +226 -118
- package/Source/Scene/Cesium3DTileset.js +817 -543
- package/Source/Scene/Cesium3DTilesetBaseTraversal.js +301 -0
- package/Source/Scene/Cesium3DTilesetHeatmap.js +4 -4
- package/Source/Scene/Cesium3DTilesetMetadata.js +5 -5
- package/Source/Scene/Cesium3DTilesetMostDetailedTraversal.js +33 -46
- package/Source/Scene/Cesium3DTilesetSkipTraversal.js +421 -0
- package/Source/Scene/Cesium3DTilesetTraversal.js +219 -671
- package/Source/Scene/CircleEmitter.js +2 -2
- package/Source/Scene/ClassificationPrimitive.js +32 -25
- package/Source/Scene/ClassificationType.js +4 -4
- package/Source/Scene/ClippingPlane.js +2 -2
- package/Source/Scene/ClippingPlaneCollection.js +17 -17
- package/Source/Scene/CloudCollection.js +16 -16
- package/Source/Scene/CloudType.js +3 -3
- package/Source/Scene/ColorBlendMode.js +1 -1
- package/Source/Scene/Composite3DTileContent.js +69 -26
- package/Source/Scene/ConditionsExpression.js +11 -11
- package/Source/Scene/ConeEmitter.js +2 -2
- package/Source/Scene/ContentMetadata.js +16 -16
- package/Source/Scene/CreditDisplay.js +22 -6
- package/Source/Scene/CullFace.js +4 -4
- package/Source/Scene/CumulusCloud.js +3 -3
- package/Source/Scene/DebugAppearance.js +17 -17
- package/Source/Scene/DebugCameraPrimitive.js +7 -7
- package/Source/Scene/DebugModelMatrixPrimitive.js +9 -9
- package/Source/Scene/DepthFunction.js +9 -9
- package/Source/Scene/DepthPlane.js +1 -1
- package/Source/Scene/DeviceOrientationCameraController.js +1 -1
- package/Source/Scene/DirectionalLight.js +3 -3
- package/Source/Scene/DiscardEmptyTileImagePolicy.js +2 -2
- package/Source/Scene/DiscardMissingTileImagePolicy.js +5 -5
- package/Source/Scene/DracoLoader.js +4 -4
- package/Source/Scene/EllipsoidPrimitive.js +8 -8
- package/Source/Scene/EllipsoidSurfaceAppearance.js +19 -19
- package/Source/Scene/Empty3DTileContent.js +31 -1
- package/Source/Scene/Expression.js +14 -14
- package/Source/Scene/Fog.js +5 -5
- package/Source/Scene/FrameRateMonitor.js +14 -14
- package/Source/Scene/FrameState.js +36 -36
- package/Source/Scene/FrustumCommands.js +2 -2
- package/Source/Scene/Geometry3DTileContent.js +47 -7
- package/Source/Scene/GetFeatureInfoFormat.js +2 -2
- package/Source/Scene/Globe.js +39 -35
- package/Source/Scene/GlobeSurfaceTile.js +3 -2
- package/Source/Scene/GlobeSurfaceTileProvider.js +56 -33
- package/Source/Scene/GlobeTranslucency.js +3 -3
- package/Source/Scene/GltfBufferViewLoader.js +52 -96
- package/Source/Scene/GltfDracoLoader.js +117 -119
- package/Source/Scene/GltfImageLoader.js +77 -84
- package/Source/Scene/GltfIndexBufferLoader.js +118 -131
- package/Source/Scene/GltfJsonLoader.js +81 -80
- package/Source/Scene/GltfLoader.js +413 -301
- package/Source/Scene/GltfLoaderUtil.js +11 -11
- package/Source/Scene/GltfPipeline/addBuffer.js +2 -2
- package/Source/Scene/GltfPipeline/addDefaults.js +2 -2
- package/Source/Scene/GltfPipeline/addExtensionsRequired.js +2 -2
- package/Source/Scene/GltfPipeline/addExtensionsUsed.js +2 -2
- package/Source/Scene/GltfPipeline/addPipelineExtras.js +2 -2
- package/Source/Scene/GltfPipeline/addToArray.js +2 -2
- package/Source/Scene/GltfPipeline/findAccessorMinMax.js +2 -2
- package/Source/Scene/GltfPipeline/forEachTextureInMaterial.js +3 -3
- package/Source/Scene/GltfPipeline/getAccessorByteStride.js +3 -3
- package/Source/Scene/GltfPipeline/getComponentReader.js +5 -5
- package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +2 -2
- package/Source/Scene/GltfPipeline/moveTechniquesToExtension.js +2 -2
- package/Source/Scene/GltfPipeline/numberOfComponentsForType.js +2 -2
- package/Source/Scene/GltfPipeline/parseGlb.js +1 -1
- package/Source/Scene/GltfPipeline/readAccessorPacked.js +2 -2
- package/Source/Scene/GltfPipeline/removeExtension.js +2 -2
- package/Source/Scene/GltfPipeline/removeExtensionsRequired.js +2 -2
- package/Source/Scene/GltfPipeline/removeExtensionsUsed.js +2 -2
- package/Source/Scene/GltfPipeline/removePipelineExtras.js +2 -2
- package/Source/Scene/GltfPipeline/removeUnusedElements.js +2 -2
- package/Source/Scene/GltfPipeline/updateAccessorComponentTypes.js +2 -2
- package/Source/Scene/GltfPipeline/updateVersion.js +4 -4
- package/Source/Scene/GltfPipeline/usesExtension.js +3 -3
- package/Source/Scene/GltfStructuralMetadataLoader.js +117 -118
- package/Source/Scene/GltfTextureLoader.js +104 -103
- package/Source/Scene/GltfVertexBufferLoader.js +140 -145
- package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +377 -249
- package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +520 -360
- package/Source/Scene/GridImageryProvider.js +292 -129
- package/Source/Scene/GroundPolylinePrimitive.js +32 -21
- package/Source/Scene/GroundPrimitive.js +34 -27
- package/Source/Scene/GroupMetadata.js +17 -17
- package/Source/Scene/HeightReference.js +4 -4
- package/Source/Scene/HorizontalOrigin.js +4 -4
- package/Source/Scene/I3SDataProvider.js +221 -120
- package/Source/Scene/I3SFeature.js +8 -7
- package/Source/Scene/I3SField.js +5 -5
- package/Source/Scene/I3SGeometry.js +8 -8
- package/Source/Scene/I3SLayer.js +33 -44
- package/Source/Scene/I3SNode.js +65 -72
- package/Source/Scene/I3dmParser.js +2 -2
- package/Source/Scene/ImageBasedLighting.js +21 -17
- package/Source/Scene/Imagery.js +6 -1
- package/Source/Scene/ImageryLayer.js +324 -73
- package/Source/Scene/ImageryLayerCollection.js +37 -11
- package/Source/Scene/ImageryLayerFeatureInfo.js +6 -6
- package/Source/Scene/ImageryProvider.js +151 -133
- package/Source/Scene/Implicit3DTileContent.js +128 -79
- package/Source/Scene/ImplicitAvailabilityBitstream.js +10 -10
- package/Source/Scene/ImplicitMetadataView.js +16 -16
- package/Source/Scene/ImplicitSubdivisionScheme.js +4 -4
- package/Source/Scene/ImplicitSubtree.js +113 -92
- package/Source/Scene/ImplicitSubtreeCache.js +6 -6
- package/Source/Scene/ImplicitSubtreeMetadata.js +16 -16
- package/Source/Scene/ImplicitTileCoordinates.js +27 -27
- package/Source/Scene/ImplicitTileset.js +10 -10
- package/Source/Scene/InstanceAttributeSemantic.js +5 -5
- package/Source/Scene/IonImageryProvider.js +493 -286
- package/Source/Scene/IonWorldImageryStyle.js +4 -4
- package/Source/Scene/JsonMetadataTable.js +11 -11
- package/Source/Scene/KeyframeNode.js +1 -1
- package/Source/Scene/Label.js +14 -14
- package/Source/Scene/LabelCollection.js +12 -11
- package/Source/Scene/LabelStyle.js +4 -4
- package/Source/Scene/Light.js +1 -1
- package/Source/Scene/MapMode2D.js +3 -3
- package/Source/Scene/MapboxImageryProvider.js +301 -141
- package/Source/Scene/MapboxStyleImageryProvider.js +301 -142
- package/Source/Scene/Material.js +47 -47
- package/Source/Scene/MaterialAppearance.js +21 -21
- package/Source/Scene/Megatexture.js +15 -15
- package/Source/Scene/MetadataClass.js +16 -16
- package/Source/Scene/MetadataClassProperty.js +41 -41
- package/Source/Scene/MetadataComponentType.js +21 -21
- package/Source/Scene/MetadataEntity.js +31 -31
- package/Source/Scene/MetadataEnum.js +14 -14
- package/Source/Scene/MetadataEnumValue.js +10 -10
- package/Source/Scene/MetadataSchema.js +16 -16
- package/Source/Scene/MetadataSchemaLoader.js +31 -41
- package/Source/Scene/MetadataSemantic.js +17 -17
- package/Source/Scene/MetadataTable.js +24 -24
- package/Source/Scene/MetadataTableProperty.js +9 -9
- package/Source/Scene/MetadataType.js +15 -15
- package/Source/Scene/Model/B3dmLoader.js +54 -58
- package/Source/Scene/Model/ClassificationModelDrawCommand.js +3 -3
- package/Source/Scene/Model/CustomShader.js +18 -18
- package/Source/Scene/Model/CustomShaderMode.js +4 -4
- package/Source/Scene/Model/CustomShaderTranslucencyMode.js +4 -4
- package/Source/Scene/Model/GeoJsonLoader.js +12 -36
- package/Source/Scene/Model/I3dmLoader.js +58 -84
- package/Source/Scene/Model/LightingModel.js +3 -3
- package/Source/Scene/Model/MaterialPipelineStage.js +6 -6
- package/Source/Scene/Model/MetadataPipelineStage.js +25 -26
- package/Source/Scene/Model/Model.js +531 -193
- package/Source/Scene/Model/Model3DTileContent.js +83 -31
- package/Source/Scene/Model/ModelAlphaOptions.js +1 -1
- package/Source/Scene/Model/ModelAnimation.js +11 -11
- package/Source/Scene/Model/ModelAnimationChannel.js +2 -2
- package/Source/Scene/Model/ModelAnimationCollection.js +21 -21
- package/Source/Scene/Model/ModelArticulation.js +4 -4
- package/Source/Scene/Model/ModelArticulationStage.js +5 -5
- package/Source/Scene/Model/ModelDrawCommand.js +18 -29
- package/Source/Scene/Model/ModelFeature.js +12 -12
- package/Source/Scene/Model/ModelFeatureTable.js +5 -5
- package/Source/Scene/Model/ModelLightingOptions.js +1 -1
- package/Source/Scene/Model/ModelNode.js +3 -3
- package/Source/Scene/Model/ModelRenderResources.js +4 -4
- package/Source/Scene/Model/ModelRuntimeNode.js +7 -7
- package/Source/Scene/Model/ModelRuntimePrimitive.js +3 -3
- package/Source/Scene/Model/ModelSceneGraph.js +11 -11
- package/Source/Scene/Model/ModelSilhouettePipelineStage.js +1 -1
- package/Source/Scene/Model/ModelSkin.js +1 -1
- package/Source/Scene/Model/ModelStatistics.js +7 -7
- package/Source/Scene/Model/ModelType.js +8 -8
- package/Source/Scene/Model/ModelUtility.js +26 -26
- package/Source/Scene/Model/NodeRenderResources.js +7 -7
- package/Source/Scene/Model/PntsLoader.js +32 -37
- package/Source/Scene/Model/PointCloudStylingPipelineStage.js +1 -1
- package/Source/Scene/Model/PrimitiveOutlineGenerator.js +28 -28
- package/Source/Scene/Model/PrimitiveRenderResources.js +10 -10
- package/Source/Scene/Model/StyleCommandsNeeded.js +1 -1
- package/Source/Scene/Model/TextureManager.js +3 -3
- package/Source/Scene/Model/TextureUniform.js +6 -6
- package/Source/Scene/Model/UniformType.js +17 -17
- package/Source/Scene/Model/VaryingType.js +8 -8
- package/Source/Scene/ModelAnimationLoop.js +4 -4
- package/Source/Scene/ModelComponents.js +61 -61
- package/Source/Scene/Moon.js +8 -8
- package/Source/Scene/Multiple3DTileContent.js +146 -127
- package/Source/Scene/NeverTileDiscardPolicy.js +2 -2
- package/Source/Scene/OIT.js +9 -9
- package/Source/Scene/OctahedralProjectedCubeMap.js +28 -39
- package/Source/Scene/OpenStreetMapImageryProvider.js +6 -6
- package/Source/Scene/OrderedGroundPrimitiveCollection.js +9 -9
- package/Source/Scene/Particle.js +13 -13
- package/Source/Scene/ParticleBurst.js +8 -8
- package/Source/Scene/ParticleSystem.js +41 -36
- package/Source/Scene/PerInstanceColorAppearance.js +18 -18
- package/Source/Scene/PerformanceDisplay.js +2 -2
- package/Source/Scene/PntsParser.js +1 -1
- package/Source/Scene/PointCloud.js +11 -19
- package/Source/Scene/PointCloudEyeDomeLighting.js +1 -1
- package/Source/Scene/PointCloudShading.js +20 -20
- package/Source/Scene/PointPrimitive.js +6 -6
- package/Source/Scene/PointPrimitiveCollection.js +11 -11
- package/Source/Scene/Polyline.js +9 -9
- package/Source/Scene/PolylineCollection.js +11 -11
- package/Source/Scene/PolylineColorAppearance.js +13 -13
- package/Source/Scene/PolylineMaterialAppearance.js +13 -13
- package/Source/Scene/PostProcessStage.js +15 -15
- package/Source/Scene/PostProcessStageCollection.js +10 -10
- package/Source/Scene/PostProcessStageComposite.js +13 -13
- package/Source/Scene/PostProcessStageLibrary.js +8 -8
- package/Source/Scene/PostProcessStageSampleMode.js +3 -3
- package/Source/Scene/PostProcessStageTextureCache.js +4 -4
- package/Source/Scene/Primitive.js +50 -30
- package/Source/Scene/PrimitiveCollection.js +20 -20
- package/Source/Scene/PrimitiveLoadPlan.js +6 -6
- package/Source/Scene/PropertyAttribute.js +9 -9
- package/Source/Scene/PropertyAttributeProperty.js +6 -6
- package/Source/Scene/PropertyTable.js +34 -34
- package/Source/Scene/PropertyTexture.js +9 -9
- package/Source/Scene/PropertyTextureProperty.js +8 -8
- package/Source/Scene/QuadtreePrimitive.js +11 -9
- package/Source/Scene/QuadtreeTile.js +11 -11
- package/Source/Scene/QuadtreeTileLoadState.js +1 -1
- package/Source/Scene/QuadtreeTileProvider.js +10 -14
- package/Source/Scene/ResourceCache.js +85 -143
- package/Source/Scene/ResourceCacheKey.js +42 -42
- package/Source/Scene/ResourceCacheStatistics.js +26 -60
- package/Source/Scene/ResourceLoader.js +9 -21
- package/Source/Scene/ResourceLoaderState.js +16 -8
- package/Source/Scene/SDFSettings.js +4 -4
- package/Source/Scene/Scene.js +153 -88
- package/Source/Scene/SceneMode.js +6 -6
- package/Source/Scene/SceneTransitioner.js +1 -1
- package/Source/Scene/ScreenSpaceCameraController.js +41 -23
- package/Source/Scene/ShadowMap.js +22 -22
- package/Source/Scene/ShadowMapShader.js +1 -1
- package/Source/Scene/ShadowMode.js +5 -5
- package/Source/Scene/ShadowVolumeAppearance.js +17 -17
- package/Source/Scene/SingleTileImageryProvider.js +403 -230
- package/Source/Scene/SkyAtmosphere.js +10 -10
- package/Source/Scene/SkyBox.js +6 -6
- package/Source/Scene/SpatialNode.js +103 -87
- package/Source/Scene/SphereEmitter.js +2 -2
- package/Source/Scene/SplitDirection.js +4 -4
- package/Source/Scene/Splitter.js +2 -2
- package/Source/Scene/StencilFunction.js +9 -9
- package/Source/Scene/StencilOperation.js +9 -9
- package/Source/Scene/StructuralMetadata.js +11 -11
- package/Source/Scene/StyleExpression.js +8 -8
- package/Source/Scene/Sun.js +3 -3
- package/Source/Scene/SunLight.js +3 -3
- package/Source/Scene/SupportedImageFormats.js +3 -3
- package/Source/Scene/Terrain.js +196 -0
- package/Source/Scene/TextureAtlas.js +16 -16
- package/Source/Scene/TileBoundingRegion.js +6 -6
- package/Source/Scene/TileBoundingS2Cell.js +6 -6
- package/Source/Scene/TileBoundingSphere.js +5 -5
- package/Source/Scene/TileBoundingVolume.js +2 -2
- package/Source/Scene/TileCoordinatesImageryProvider.js +289 -126
- package/Source/Scene/TileDiscardPolicy.js +2 -2
- package/Source/Scene/TileImagery.js +3 -3
- package/Source/Scene/TileMapServiceImageryProvider.js +185 -93
- package/Source/Scene/TileMetadata.js +16 -16
- package/Source/Scene/TileOrientedBoundingBox.js +2 -2
- package/Source/Scene/TileReplacementQueue.js +1 -1
- package/Source/Scene/TileSelectionResult.js +1 -1
- package/Source/Scene/Tileset3DTileContent.js +47 -5
- package/Source/Scene/TilesetMetadata.js +15 -15
- package/Source/Scene/TimeDynamicImagery.js +8 -8
- package/Source/Scene/TimeDynamicPointCloud.js +24 -11
- package/Source/Scene/Tonemapper.js +5 -5
- package/Source/Scene/TranslucentTileClassification.js +1 -1
- package/Source/Scene/TweenCollection.js +31 -31
- package/Source/Scene/UrlTemplateImageryProvider.js +380 -252
- package/Source/Scene/Vector3DTileBatch.js +7 -7
- package/Source/Scene/Vector3DTileClampedPolylines.js +105 -93
- package/Source/Scene/Vector3DTileContent.js +47 -22
- package/Source/Scene/Vector3DTileGeometry.js +65 -60
- package/Source/Scene/Vector3DTilePoints.js +79 -75
- package/Source/Scene/Vector3DTilePolygons.js +128 -127
- package/Source/Scene/Vector3DTilePolylines.js +95 -91
- package/Source/Scene/Vector3DTilePrimitive.js +8 -9
- package/Source/Scene/VertexAttributeSemantic.js +15 -15
- package/Source/Scene/VerticalOrigin.js +5 -5
- package/Source/Scene/ViewportQuad.js +2 -2
- package/Source/Scene/VoxelBoxShape.js +27 -118
- package/Source/Scene/VoxelContent.js +63 -65
- package/Source/Scene/VoxelCylinderShape.js +21 -21
- package/Source/Scene/VoxelEllipsoidShape.js +13 -13
- package/Source/Scene/VoxelPrimitive.js +83 -135
- package/Source/Scene/VoxelProvider.js +15 -15
- package/Source/Scene/VoxelRenderResources.js +6 -3
- package/Source/Scene/VoxelShape.js +9 -9
- package/Source/Scene/VoxelShapeType.js +4 -4
- package/Source/Scene/VoxelTraversal.js +86 -144
- package/Source/Scene/WebMapServiceImageryProvider.js +313 -152
- package/Source/Scene/WebMapTileServiceImageryProvider.js +305 -142
- package/Source/Scene/buildVoxelDrawCommands.js +1 -0
- package/Source/Scene/computeFlyToLocationForRectangle.js +33 -37
- package/Source/Scene/createBillboardPointCallback.js +5 -5
- package/Source/Scene/createElevationBandMaterial.js +5 -5
- package/Source/Scene/createOsmBuildings.js +9 -3
- package/Source/Scene/createOsmBuildingsAsync.js +82 -0
- package/Source/Scene/createTangentSpaceDebugPrimitive.js +2 -2
- package/Source/Scene/createWorldImagery.js +15 -6
- package/Source/Scene/createWorldImageryAsync.js +39 -0
- package/Source/Scene/findContentMetadata.js +1 -1
- package/Source/Scene/findGroupMetadata.js +1 -1
- package/Source/Scene/findTileMetadata.js +1 -1
- package/Source/Scene/getClipAndStyleCode.js +4 -4
- package/Source/Scene/getClippingFunction.js +1 -1
- package/Source/Scene/hasExtension.js +3 -3
- package/Source/Scene/parseBatchTable.js +14 -14
- package/Source/Scene/parseBoundingVolumeSemantics.js +7 -7
- package/Source/Scene/parseFeatureMetadataLegacy.js +4 -4
- package/Source/Scene/parseStructuralMetadata.js +4 -4
- package/Source/Scene/preprocess3DTileContent.js +2 -2
- package/Source/Scene/processVoxelProperties.js +8 -7
- package/Source/Shaders/Voxels/IntersectBox.glsl +52 -58
- package/Source/Shaders/Voxels/IntersectBox.js +52 -58
- package/Source/Shaders/Voxels/IntersectClippingPlanes.glsl +38 -30
- package/Source/Shaders/Voxels/IntersectClippingPlanes.js +38 -30
- package/Source/Shaders/Voxels/IntersectDepth.glsl +1 -1
- package/Source/Shaders/Voxels/IntersectDepth.js +1 -1
- package/Source/Shaders/Voxels/Intersection.glsl +10 -12
- package/Source/Shaders/Voxels/Intersection.js +10 -12
- package/Source/Shaders/Voxels/IntersectionUtils.glsl +52 -59
- package/Source/Shaders/Voxels/IntersectionUtils.js +52 -59
- package/Source/Shaders/Voxels/Octree.glsl +72 -73
- package/Source/Shaders/Voxels/Octree.js +72 -73
- package/Source/Shaders/Voxels/VoxelFS.glsl +42 -22
- package/Source/Shaders/Voxels/VoxelFS.js +42 -22
- package/Source/Shaders/Voxels/convertUvToBox.glsl +13 -5
- package/Source/Shaders/Voxels/convertUvToBox.js +13 -5
- package/Source/ThirdParty/Workers/draco_decoder_nodejs.js +91 -91
- package/Source/ThirdParty/draco_decoder.wasm +0 -0
- package/Source/Widget/CesiumWidget.js +78 -50
- package/Source/Workers/cesiumWorkerBootstrapper.js +18 -18
- package/Source/WorkersES6/createTaskProcessorWorker.js +3 -3
- package/index.d.ts +2172 -1432
- package/index.js +8 -3
- package/package.json +1 -1
- package/Source/Core/cancelAnimationFrame.js +0 -53
- package/Source/Core/requestAnimationFrame.js +0 -83
- /package/Build/Workers/{GeometryOffsetAttribute-04332ce7.js → GeometryOffsetAttribute-9ad0019c.js} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
2
|
import defaultValue from "../Core/defaultValue.js";
|
|
3
3
|
import defined from "../Core/defined.js";
|
|
4
|
-
import
|
|
4
|
+
import deprecationWarning from "../Core/deprecationWarning.js";
|
|
5
5
|
import Event from "../Core/Event.js";
|
|
6
6
|
import IonResource from "../Core/IonResource.js";
|
|
7
7
|
import RuntimeError from "../Core/RuntimeError.js";
|
|
@@ -35,17 +35,59 @@ const ImageryProviderMapping = {
|
|
|
35
35
|
WMTS: createFactory(WebMapTileServiceImageryProvider),
|
|
36
36
|
};
|
|
37
37
|
|
|
38
|
+
const ImageryProviderAsyncMapping = {
|
|
39
|
+
ARCGIS_MAPSERVER: ArcGisMapServerImageryProvider.fromUrl,
|
|
40
|
+
BING: async (url, options) => {
|
|
41
|
+
return BingMapsImageryProvider.fromUrl(url, options);
|
|
42
|
+
},
|
|
43
|
+
GOOGLE_EARTH: async (url, options) => {
|
|
44
|
+
const channel = options.channel;
|
|
45
|
+
delete options.channel;
|
|
46
|
+
return GoogleEarthEnterpriseMapsProvider.fromUrl(url, channel, options);
|
|
47
|
+
},
|
|
48
|
+
MAPBOX: (url, options) => {
|
|
49
|
+
return new MapboxImageryProvider({
|
|
50
|
+
url: url,
|
|
51
|
+
...options,
|
|
52
|
+
});
|
|
53
|
+
},
|
|
54
|
+
SINGLE_TILE: SingleTileImageryProvider.fromUrl,
|
|
55
|
+
TMS: TileMapServiceImageryProvider.fromUrl,
|
|
56
|
+
URL_TEMPLATE: (url, options) => {
|
|
57
|
+
return new UrlTemplateImageryProvider({
|
|
58
|
+
url: url,
|
|
59
|
+
...options,
|
|
60
|
+
});
|
|
61
|
+
},
|
|
62
|
+
WMS: (url, options) => {
|
|
63
|
+
return new WebMapServiceImageryProvider({
|
|
64
|
+
url: url,
|
|
65
|
+
...options,
|
|
66
|
+
});
|
|
67
|
+
},
|
|
68
|
+
WMTS: (url, options) => {
|
|
69
|
+
return new WebMapTileServiceImageryProvider({
|
|
70
|
+
url: url,
|
|
71
|
+
...options,
|
|
72
|
+
});
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
|
|
38
76
|
/**
|
|
39
|
-
* @typedef {
|
|
77
|
+
* @typedef {object} IonImageryProvider.ConstructorOptions
|
|
40
78
|
*
|
|
41
79
|
* Initialization options for the TileMapServiceImageryProvider constructor
|
|
42
80
|
*
|
|
43
|
-
* @property {
|
|
44
|
-
* @property {
|
|
45
|
-
* @property {
|
|
81
|
+
* @property {number} [assetId] An ion imagery asset ID. Deprecated.
|
|
82
|
+
* @property {string} [accessToken=Ion.defaultAccessToken] The access token to use.
|
|
83
|
+
* @property {string|Resource} [server=Ion.defaultServer] The resource to the Cesium ion API server.
|
|
46
84
|
*/
|
|
47
85
|
|
|
48
86
|
/**
|
|
87
|
+
* <div class="notice">
|
|
88
|
+
* To construct a IonImageryProvider, call {@link IonImageryProvider.fromAssetId}. Do not call the constructor directly.
|
|
89
|
+
* </div>
|
|
90
|
+
*
|
|
49
91
|
* Provides tiled imagery using the Cesium ion REST API.
|
|
50
92
|
*
|
|
51
93
|
* @alias IonImageryProvider
|
|
@@ -54,179 +96,54 @@ const ImageryProviderMapping = {
|
|
|
54
96
|
* @param {IonImageryProvider.ConstructorOptions} options Object describing initialization options
|
|
55
97
|
*
|
|
56
98
|
* @example
|
|
57
|
-
*
|
|
99
|
+
* const imageryLayer = Cesium.ImageryLayer.fromProviderAsync(Cesium.IonImageryProvider.fromAssetId(3812));
|
|
100
|
+
* viewer.imageryLayers.add(imageryLayer);
|
|
101
|
+
*
|
|
102
|
+
* @see IonImageryProvider.fromAssetId
|
|
58
103
|
*/
|
|
59
104
|
function IonImageryProvider(options) {
|
|
60
105
|
options = defaultValue(options, defaultValue.EMPTY_OBJECT);
|
|
61
106
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
* @default undefined
|
|
73
|
-
*/
|
|
74
|
-
this.defaultAlpha = undefined;
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* The default alpha blending value on the night side of the globe of this provider, with 0.0 representing fully transparent and
|
|
78
|
-
* 1.0 representing fully opaque.
|
|
79
|
-
*
|
|
80
|
-
* @type {Number|undefined}
|
|
81
|
-
* @default undefined
|
|
82
|
-
*/
|
|
83
|
-
this.defaultNightAlpha = undefined;
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* The default alpha blending value on the day side of the globe of this provider, with 0.0 representing fully transparent and
|
|
87
|
-
* 1.0 representing fully opaque.
|
|
88
|
-
*
|
|
89
|
-
* @type {Number|undefined}
|
|
90
|
-
* @default undefined
|
|
91
|
-
*/
|
|
92
|
-
this.defaultDayAlpha = undefined;
|
|
93
|
-
|
|
94
|
-
/**
|
|
95
|
-
* The default brightness of this provider. 1.0 uses the unmodified imagery color. Less than 1.0
|
|
96
|
-
* makes the imagery darker while greater than 1.0 makes it brighter.
|
|
97
|
-
*
|
|
98
|
-
* @type {Number|undefined}
|
|
99
|
-
* @default undefined
|
|
100
|
-
*/
|
|
101
|
-
this.defaultBrightness = undefined;
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
* The default contrast of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
|
|
105
|
-
* the contrast while greater than 1.0 increases it.
|
|
106
|
-
*
|
|
107
|
-
* @type {Number|undefined}
|
|
108
|
-
* @default undefined
|
|
109
|
-
*/
|
|
110
|
-
this.defaultContrast = undefined;
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* The default hue of this provider in radians. 0.0 uses the unmodified imagery color.
|
|
114
|
-
*
|
|
115
|
-
* @type {Number|undefined}
|
|
116
|
-
* @default undefined
|
|
117
|
-
*/
|
|
118
|
-
this.defaultHue = undefined;
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
* The default saturation of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
|
|
122
|
-
* saturation while greater than 1.0 increases it.
|
|
123
|
-
*
|
|
124
|
-
* @type {Number|undefined}
|
|
125
|
-
* @default undefined
|
|
126
|
-
*/
|
|
127
|
-
this.defaultSaturation = undefined;
|
|
128
|
-
|
|
129
|
-
/**
|
|
130
|
-
* The default gamma correction to apply to this provider. 1.0 uses the unmodified imagery color.
|
|
131
|
-
*
|
|
132
|
-
* @type {Number|undefined}
|
|
133
|
-
* @default undefined
|
|
134
|
-
*/
|
|
135
|
-
this.defaultGamma = undefined;
|
|
136
|
-
|
|
137
|
-
/**
|
|
138
|
-
* The default texture minification filter to apply to this provider.
|
|
139
|
-
*
|
|
140
|
-
* @type {TextureMinificationFilter}
|
|
141
|
-
* @default undefined
|
|
142
|
-
*/
|
|
143
|
-
this.defaultMinificationFilter = undefined;
|
|
144
|
-
|
|
145
|
-
/**
|
|
146
|
-
* The default texture magnification filter to apply to this provider.
|
|
147
|
-
*
|
|
148
|
-
* @type {TextureMagnificationFilter}
|
|
149
|
-
* @default undefined
|
|
150
|
-
*/
|
|
151
|
-
this.defaultMagnificationFilter = undefined;
|
|
107
|
+
this._defaultAlpha = undefined;
|
|
108
|
+
this._defaultNightAlpha = undefined;
|
|
109
|
+
this._defaultDayAlpha = undefined;
|
|
110
|
+
this._defaultBrightness = undefined;
|
|
111
|
+
this._defaultContrast = undefined;
|
|
112
|
+
this._defaultHue = undefined;
|
|
113
|
+
this._defaultSaturation = undefined;
|
|
114
|
+
this._defaultGamma = undefined;
|
|
115
|
+
this._defaultMinificationFilter = undefined;
|
|
116
|
+
this._defaultMagnificationFilter = undefined;
|
|
152
117
|
|
|
153
118
|
this._ready = false;
|
|
154
119
|
this._tileCredits = undefined;
|
|
155
120
|
this._errorEvent = new Event();
|
|
156
121
|
|
|
157
|
-
const
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
// A simple cache to avoid making repeated requests to ion for endpoints we've
|
|
164
|
-
// already retrieved. This exists mainly to support Bing caching to reduce
|
|
165
|
-
// world imagery sessions, but provides a small boost of performance in general
|
|
166
|
-
// if constantly reloading assets
|
|
167
|
-
const cacheKey =
|
|
168
|
-
options.assetId.toString() + options.accessToken + options.server;
|
|
169
|
-
let promise = IonImageryProvider._endpointCache[cacheKey];
|
|
170
|
-
if (!defined(promise)) {
|
|
171
|
-
promise = endpointResource.fetchJson();
|
|
172
|
-
IonImageryProvider._endpointCache[cacheKey] = promise;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
this._readyPromise = promise.then(function (endpoint) {
|
|
176
|
-
if (endpoint.type !== "IMAGERY") {
|
|
177
|
-
return Promise.reject(
|
|
178
|
-
new RuntimeError(`Cesium ion asset ${assetId} is not an imagery asset.`)
|
|
179
|
-
);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
let imageryProvider;
|
|
183
|
-
const externalType = endpoint.externalType;
|
|
184
|
-
if (!defined(externalType)) {
|
|
185
|
-
imageryProvider = new TileMapServiceImageryProvider({
|
|
186
|
-
url: new IonResource(endpoint, endpointResource),
|
|
187
|
-
});
|
|
188
|
-
} else {
|
|
189
|
-
const factory = ImageryProviderMapping[externalType];
|
|
190
|
-
|
|
191
|
-
if (!defined(factory)) {
|
|
192
|
-
return Promise.reject(
|
|
193
|
-
new RuntimeError(
|
|
194
|
-
`Unrecognized Cesium ion imagery type: ${externalType}`
|
|
195
|
-
)
|
|
196
|
-
);
|
|
197
|
-
}
|
|
198
|
-
imageryProvider = factory(endpoint.options);
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
that._tileCredits = IonResource.getCreditsFromEndpoint(
|
|
202
|
-
endpoint,
|
|
203
|
-
endpointResource
|
|
122
|
+
const assetId = options.assetId;
|
|
123
|
+
if (defined(assetId)) {
|
|
124
|
+
deprecationWarning(
|
|
125
|
+
"IonImageryProvider options.assetId",
|
|
126
|
+
"options.assetId was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use IonImageryProvider.fromAssetId instead."
|
|
204
127
|
);
|
|
205
128
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
//of the inner instance.
|
|
209
|
-
tileProviderError.provider = that;
|
|
210
|
-
that._errorEvent.raiseEvent(tileProviderError);
|
|
211
|
-
});
|
|
212
|
-
|
|
213
|
-
that._imageryProvider = imageryProvider;
|
|
214
|
-
return imageryProvider.readyPromise.then(function () {
|
|
215
|
-
that._ready = true;
|
|
216
|
-
return true;
|
|
217
|
-
});
|
|
218
|
-
});
|
|
129
|
+
IonImageryProvider._initialize(this, assetId, options);
|
|
130
|
+
}
|
|
219
131
|
}
|
|
220
132
|
|
|
221
133
|
Object.defineProperties(IonImageryProvider.prototype, {
|
|
222
134
|
/**
|
|
223
135
|
* Gets a value indicating whether or not the provider is ready for use.
|
|
224
136
|
* @memberof IonImageryProvider.prototype
|
|
225
|
-
* @type {
|
|
137
|
+
* @type {boolean}
|
|
226
138
|
* @readonly
|
|
139
|
+
* @deprecated
|
|
227
140
|
*/
|
|
228
141
|
ready: {
|
|
229
142
|
get: function () {
|
|
143
|
+
deprecationWarning(
|
|
144
|
+
"IonImageryProvider.ready",
|
|
145
|
+
"IonImageryProvider.ready was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use IonImageryProvider.fromAssetId instead."
|
|
146
|
+
);
|
|
230
147
|
return this._ready;
|
|
231
148
|
},
|
|
232
149
|
},
|
|
@@ -234,135 +151,92 @@ Object.defineProperties(IonImageryProvider.prototype, {
|
|
|
234
151
|
/**
|
|
235
152
|
* Gets a promise that resolves to true when the provider is ready for use.
|
|
236
153
|
* @memberof IonImageryProvider.prototype
|
|
237
|
-
* @type {Promise
|
|
154
|
+
* @type {Promise<boolean>}
|
|
238
155
|
* @readonly
|
|
156
|
+
* @deprecated
|
|
239
157
|
*/
|
|
240
158
|
readyPromise: {
|
|
241
159
|
get: function () {
|
|
160
|
+
deprecationWarning(
|
|
161
|
+
"IonImageryProvider.readyPromise",
|
|
162
|
+
"IonImageryProvider.readyPromise was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use IonImageryProvider.fromAssetId instead."
|
|
163
|
+
);
|
|
242
164
|
return this._readyPromise;
|
|
243
165
|
},
|
|
244
166
|
},
|
|
245
167
|
|
|
246
168
|
/**
|
|
247
|
-
* Gets the rectangle, in radians, of the imagery provided by the instance.
|
|
248
|
-
* not be called before {@link IonImageryProvider#ready} returns true.
|
|
169
|
+
* Gets the rectangle, in radians, of the imagery provided by the instance.
|
|
249
170
|
* @memberof IonImageryProvider.prototype
|
|
250
171
|
* @type {Rectangle}
|
|
251
172
|
* @readonly
|
|
252
173
|
*/
|
|
253
174
|
rectangle: {
|
|
254
175
|
get: function () {
|
|
255
|
-
//>>includeStart('debug', pragmas.debug);
|
|
256
|
-
if (!this._ready) {
|
|
257
|
-
throw new DeveloperError(
|
|
258
|
-
"tileHeight must not be called before the imagery provider is ready."
|
|
259
|
-
);
|
|
260
|
-
}
|
|
261
|
-
//>>includeEnd('debug');
|
|
262
176
|
return this._imageryProvider.rectangle;
|
|
263
177
|
},
|
|
264
178
|
},
|
|
265
179
|
|
|
266
180
|
/**
|
|
267
|
-
* Gets the width of each tile, in pixels.
|
|
268
|
-
* not be called before {@link IonImageryProvider#ready} returns true.
|
|
181
|
+
* Gets the width of each tile, in pixels.
|
|
269
182
|
* @memberof IonImageryProvider.prototype
|
|
270
|
-
* @type {
|
|
183
|
+
* @type {number}
|
|
271
184
|
* @readonly
|
|
272
185
|
*/
|
|
273
186
|
tileWidth: {
|
|
274
187
|
get: function () {
|
|
275
|
-
//>>includeStart('debug', pragmas.debug);
|
|
276
|
-
if (!this._ready) {
|
|
277
|
-
throw new DeveloperError(
|
|
278
|
-
"tileWidth must not be called before the imagery provider is ready."
|
|
279
|
-
);
|
|
280
|
-
}
|
|
281
|
-
//>>includeEnd('debug');
|
|
282
188
|
return this._imageryProvider.tileWidth;
|
|
283
189
|
},
|
|
284
190
|
},
|
|
285
191
|
|
|
286
192
|
/**
|
|
287
|
-
* Gets the height of each tile, in pixels.
|
|
288
|
-
* not be called before {@link IonImageryProvider#ready} returns true.
|
|
193
|
+
* Gets the height of each tile, in pixels.
|
|
289
194
|
* @memberof IonImageryProvider.prototype
|
|
290
|
-
* @type {
|
|
195
|
+
* @type {number}
|
|
291
196
|
* @readonly
|
|
292
197
|
*/
|
|
293
198
|
tileHeight: {
|
|
294
199
|
get: function () {
|
|
295
|
-
//>>includeStart('debug', pragmas.debug);
|
|
296
|
-
if (!this._ready) {
|
|
297
|
-
throw new DeveloperError(
|
|
298
|
-
"tileHeight must not be called before the imagery provider is ready."
|
|
299
|
-
);
|
|
300
|
-
}
|
|
301
|
-
//>>includeEnd('debug');
|
|
302
200
|
return this._imageryProvider.tileHeight;
|
|
303
201
|
},
|
|
304
202
|
},
|
|
305
203
|
|
|
306
204
|
/**
|
|
307
|
-
* Gets the maximum level-of-detail that can be requested.
|
|
308
|
-
* not be called before {@link IonImageryProvider#ready} returns true.
|
|
205
|
+
* Gets the maximum level-of-detail that can be requested.
|
|
309
206
|
* @memberof IonImageryProvider.prototype
|
|
310
|
-
* @type {
|
|
207
|
+
* @type {number|undefined}
|
|
311
208
|
* @readonly
|
|
312
209
|
*/
|
|
313
210
|
maximumLevel: {
|
|
314
211
|
get: function () {
|
|
315
|
-
//>>includeStart('debug', pragmas.debug);
|
|
316
|
-
if (!this._ready) {
|
|
317
|
-
throw new DeveloperError(
|
|
318
|
-
"maximumLevel must not be called before the imagery provider is ready."
|
|
319
|
-
);
|
|
320
|
-
}
|
|
321
|
-
//>>includeEnd('debug');
|
|
322
212
|
return this._imageryProvider.maximumLevel;
|
|
323
213
|
},
|
|
324
214
|
},
|
|
325
215
|
|
|
326
216
|
/**
|
|
327
|
-
* Gets the minimum level-of-detail that can be requested.
|
|
328
|
-
* not be called before {@link IonImageryProvider#ready} returns true. Generally,
|
|
217
|
+
* Gets the minimum level-of-detail that can be requested. Generally,
|
|
329
218
|
* a minimum level should only be used when the rectangle of the imagery is small
|
|
330
219
|
* enough that the number of tiles at the minimum level is small. An imagery
|
|
331
220
|
* provider with more than a few tiles at the minimum level will lead to
|
|
332
221
|
* rendering problems.
|
|
333
222
|
* @memberof IonImageryProvider.prototype
|
|
334
|
-
* @type {
|
|
223
|
+
* @type {number}
|
|
335
224
|
* @readonly
|
|
336
225
|
*/
|
|
337
226
|
minimumLevel: {
|
|
338
227
|
get: function () {
|
|
339
|
-
//>>includeStart('debug', pragmas.debug);
|
|
340
|
-
if (!this._ready) {
|
|
341
|
-
throw new DeveloperError(
|
|
342
|
-
"minimumLevel must not be called before the imagery provider is ready."
|
|
343
|
-
);
|
|
344
|
-
}
|
|
345
|
-
//>>includeEnd('debug');
|
|
346
228
|
return this._imageryProvider.minimumLevel;
|
|
347
229
|
},
|
|
348
230
|
},
|
|
349
231
|
|
|
350
232
|
/**
|
|
351
|
-
* Gets the tiling scheme used by the provider.
|
|
352
|
-
* not be called before {@link IonImageryProvider#ready} returns true.
|
|
233
|
+
* Gets the tiling scheme used by the provider.
|
|
353
234
|
* @memberof IonImageryProvider.prototype
|
|
354
235
|
* @type {TilingScheme}
|
|
355
236
|
* @readonly
|
|
356
237
|
*/
|
|
357
238
|
tilingScheme: {
|
|
358
239
|
get: function () {
|
|
359
|
-
//>>includeStart('debug', pragmas.debug);
|
|
360
|
-
if (!this._ready) {
|
|
361
|
-
throw new DeveloperError(
|
|
362
|
-
"tilingScheme must not be called before the imagery provider is ready."
|
|
363
|
-
);
|
|
364
|
-
}
|
|
365
|
-
//>>includeEnd('debug');
|
|
366
240
|
return this._imageryProvider.tilingScheme;
|
|
367
241
|
},
|
|
368
242
|
},
|
|
@@ -370,21 +244,13 @@ Object.defineProperties(IonImageryProvider.prototype, {
|
|
|
370
244
|
/**
|
|
371
245
|
* Gets the tile discard policy. If not undefined, the discard policy is responsible
|
|
372
246
|
* for filtering out "missing" tiles via its shouldDiscardImage function. If this function
|
|
373
|
-
* returns undefined, no tiles are filtered.
|
|
374
|
-
* not be called before {@link IonImageryProvider#ready} returns true.
|
|
247
|
+
* returns undefined, no tiles are filtered.
|
|
375
248
|
* @memberof IonImageryProvider.prototype
|
|
376
249
|
* @type {TileDiscardPolicy}
|
|
377
250
|
* @readonly
|
|
378
251
|
*/
|
|
379
252
|
tileDiscardPolicy: {
|
|
380
253
|
get: function () {
|
|
381
|
-
//>>includeStart('debug', pragmas.debug);
|
|
382
|
-
if (!this._ready) {
|
|
383
|
-
throw new DeveloperError(
|
|
384
|
-
"tileDiscardPolicy must not be called before the imagery provider is ready."
|
|
385
|
-
);
|
|
386
|
-
}
|
|
387
|
-
//>>includeEnd('debug');
|
|
388
254
|
return this._imageryProvider.tileDiscardPolicy;
|
|
389
255
|
},
|
|
390
256
|
},
|
|
@@ -405,21 +271,13 @@ Object.defineProperties(IonImageryProvider.prototype, {
|
|
|
405
271
|
|
|
406
272
|
/**
|
|
407
273
|
* Gets the credit to display when this imagery provider is active. Typically this is used to credit
|
|
408
|
-
* the source of the imagery.
|
|
409
|
-
* not be called before {@link IonImageryProvider#ready} returns true.
|
|
274
|
+
* the source of the imagery.
|
|
410
275
|
* @memberof IonImageryProvider.prototype
|
|
411
276
|
* @type {Credit}
|
|
412
277
|
* @readonly
|
|
413
278
|
*/
|
|
414
279
|
credit: {
|
|
415
280
|
get: function () {
|
|
416
|
-
//>>includeStart('debug', pragmas.debug);
|
|
417
|
-
if (!this._ready) {
|
|
418
|
-
throw new DeveloperError(
|
|
419
|
-
"credit must not be called before the imagery provider is ready."
|
|
420
|
-
);
|
|
421
|
-
}
|
|
422
|
-
//>>includeEnd('debug');
|
|
423
281
|
return this._imageryProvider.credit;
|
|
424
282
|
},
|
|
425
283
|
},
|
|
@@ -431,18 +289,11 @@ Object.defineProperties(IonImageryProvider.prototype, {
|
|
|
431
289
|
* as if their alpha is 1.0 everywhere. When this property is false, memory usage
|
|
432
290
|
* and texture upload time are reduced.
|
|
433
291
|
* @memberof IonImageryProvider.prototype
|
|
434
|
-
* @type {
|
|
292
|
+
* @type {boolean}
|
|
435
293
|
* @readonly
|
|
436
294
|
*/
|
|
437
295
|
hasAlphaChannel: {
|
|
438
296
|
get: function () {
|
|
439
|
-
//>>includeStart('debug', pragmas.debug);
|
|
440
|
-
if (!this._ready) {
|
|
441
|
-
throw new DeveloperError(
|
|
442
|
-
"hasAlphaChannel must not be called before the imagery provider is ready."
|
|
443
|
-
);
|
|
444
|
-
}
|
|
445
|
-
//>>includeEnd('debug');
|
|
446
297
|
return this._imageryProvider.hasAlphaChannel;
|
|
447
298
|
},
|
|
448
299
|
|
|
@@ -459,28 +310,404 @@ Object.defineProperties(IonImageryProvider.prototype, {
|
|
|
459
310
|
},
|
|
460
311
|
},
|
|
461
312
|
},
|
|
313
|
+
|
|
314
|
+
/**
|
|
315
|
+
* The default alpha blending value of this provider, with 0.0 representing fully transparent and
|
|
316
|
+
* 1.0 representing fully opaque.
|
|
317
|
+
* @memberof IonImageryProvider.prototype
|
|
318
|
+
* @type {Number|undefined}
|
|
319
|
+
* @deprecated
|
|
320
|
+
*/
|
|
321
|
+
defaultAlpha: {
|
|
322
|
+
get: function () {
|
|
323
|
+
deprecationWarning(
|
|
324
|
+
"IonImageryProvider.defaultAlpha",
|
|
325
|
+
"IonImageryProvider.defaultAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.alpha instead."
|
|
326
|
+
);
|
|
327
|
+
return this._defaultAlpha;
|
|
328
|
+
},
|
|
329
|
+
set: function (value) {
|
|
330
|
+
deprecationWarning(
|
|
331
|
+
"IonImageryProvider.defaultAlpha",
|
|
332
|
+
"IonImageryProvider.defaultAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.alpha instead."
|
|
333
|
+
);
|
|
334
|
+
this._defaultAlpha = value;
|
|
335
|
+
},
|
|
336
|
+
},
|
|
337
|
+
|
|
338
|
+
/**
|
|
339
|
+
* The default alpha blending value on the night side of the globe of this provider, with 0.0 representing fully transparent and
|
|
340
|
+
* 1.0 representing fully opaque.
|
|
341
|
+
* @memberof IonImageryProvider.prototype
|
|
342
|
+
* @type {Number|undefined}
|
|
343
|
+
* @deprecated
|
|
344
|
+
*/
|
|
345
|
+
defaultNightAlpha: {
|
|
346
|
+
get: function () {
|
|
347
|
+
deprecationWarning(
|
|
348
|
+
"IonImageryProvider.defaultNightAlpha",
|
|
349
|
+
"IonImageryProvider.defaultNightAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.nightAlpha instead."
|
|
350
|
+
);
|
|
351
|
+
return this.defaultNightAlpha;
|
|
352
|
+
},
|
|
353
|
+
set: function (value) {
|
|
354
|
+
deprecationWarning(
|
|
355
|
+
"IonImageryProvider.defaultNightAlpha",
|
|
356
|
+
"IonImageryProvider.defaultNightAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.nightAlpha instead."
|
|
357
|
+
);
|
|
358
|
+
this.defaultNightAlpha = value;
|
|
359
|
+
},
|
|
360
|
+
},
|
|
361
|
+
|
|
362
|
+
/**
|
|
363
|
+
* The default alpha blending value on the day side of the globe of this provider, with 0.0 representing fully transparent and
|
|
364
|
+
* 1.0 representing fully opaque.
|
|
365
|
+
* @memberof IonImageryProvider.prototype
|
|
366
|
+
* @type {Number|undefined}
|
|
367
|
+
* @deprecated
|
|
368
|
+
*/
|
|
369
|
+
defaultDayAlpha: {
|
|
370
|
+
get: function () {
|
|
371
|
+
deprecationWarning(
|
|
372
|
+
"IonImageryProvider.defaultDayAlpha",
|
|
373
|
+
"IonImageryProvider.defaultDayAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.dayAlpha instead."
|
|
374
|
+
);
|
|
375
|
+
return this._defaultDayAlpha;
|
|
376
|
+
},
|
|
377
|
+
set: function (value) {
|
|
378
|
+
deprecationWarning(
|
|
379
|
+
"IonImageryProvider.defaultDayAlpha",
|
|
380
|
+
"IonImageryProvider.defaultDayAlpha was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.dayAlpha instead."
|
|
381
|
+
);
|
|
382
|
+
this._defaultDayAlpha = value;
|
|
383
|
+
},
|
|
384
|
+
},
|
|
385
|
+
|
|
386
|
+
/**
|
|
387
|
+
* The default brightness of this provider. 1.0 uses the unmodified imagery color. Less than 1.0
|
|
388
|
+
* makes the imagery darker while greater than 1.0 makes it brighter.
|
|
389
|
+
* @memberof IonImageryProvider.prototype
|
|
390
|
+
* @type {Number|undefined}
|
|
391
|
+
* @deprecated
|
|
392
|
+
*/
|
|
393
|
+
defaultBrightness: {
|
|
394
|
+
get: function () {
|
|
395
|
+
deprecationWarning(
|
|
396
|
+
"IonImageryProvider.defaultBrightness",
|
|
397
|
+
"IonImageryProvider.defaultBrightness was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.brightness instead."
|
|
398
|
+
);
|
|
399
|
+
return this._defaultBrightness;
|
|
400
|
+
},
|
|
401
|
+
set: function (value) {
|
|
402
|
+
deprecationWarning(
|
|
403
|
+
"IonImageryProvider.defaultBrightness",
|
|
404
|
+
"IonImageryProvider.defaultBrightness was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.brightness instead."
|
|
405
|
+
);
|
|
406
|
+
this._defaultBrightness = value;
|
|
407
|
+
},
|
|
408
|
+
},
|
|
409
|
+
|
|
410
|
+
/**
|
|
411
|
+
* The default contrast of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
|
|
412
|
+
* the contrast while greater than 1.0 increases it.
|
|
413
|
+
* @memberof IonImageryProvider.prototype
|
|
414
|
+
* @type {Number|undefined}
|
|
415
|
+
* @deprecated
|
|
416
|
+
*/
|
|
417
|
+
defaultContrast: {
|
|
418
|
+
get: function () {
|
|
419
|
+
deprecationWarning(
|
|
420
|
+
"IonImageryProvider.defaultContrast",
|
|
421
|
+
"IonImageryProvider.defaultContrast was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.contrast instead."
|
|
422
|
+
);
|
|
423
|
+
return this._defaultContrast;
|
|
424
|
+
},
|
|
425
|
+
set: function (value) {
|
|
426
|
+
deprecationWarning(
|
|
427
|
+
"IonImageryProvider.defaultContrast",
|
|
428
|
+
"IonImageryProvider.defaultContrast was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.contrast instead."
|
|
429
|
+
);
|
|
430
|
+
this._defaultContrast = value;
|
|
431
|
+
},
|
|
432
|
+
},
|
|
433
|
+
|
|
434
|
+
/**
|
|
435
|
+
* The default hue of this provider in radians. 0.0 uses the unmodified imagery color.
|
|
436
|
+
* @memberof IonImageryProvider.prototype
|
|
437
|
+
* @type {Number|undefined}
|
|
438
|
+
* @deprecated
|
|
439
|
+
*/
|
|
440
|
+
defaultHue: {
|
|
441
|
+
get: function () {
|
|
442
|
+
deprecationWarning(
|
|
443
|
+
"IonImageryProvider.defaultHue",
|
|
444
|
+
"IonImageryProvider.defaultHue was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.hue instead."
|
|
445
|
+
);
|
|
446
|
+
return this._defaultHue;
|
|
447
|
+
},
|
|
448
|
+
set: function (value) {
|
|
449
|
+
deprecationWarning(
|
|
450
|
+
"IonImageryProvider.defaultHue",
|
|
451
|
+
"IonImageryProvider.defaultHue was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.hue instead."
|
|
452
|
+
);
|
|
453
|
+
this._defaultHue = value;
|
|
454
|
+
},
|
|
455
|
+
},
|
|
456
|
+
|
|
457
|
+
/**
|
|
458
|
+
* The default saturation of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
|
|
459
|
+
* saturation while greater than 1.0 increases it.
|
|
460
|
+
* @memberof IonImageryProvider.prototype
|
|
461
|
+
* @type {Number|undefined}
|
|
462
|
+
* @deprecated
|
|
463
|
+
*/
|
|
464
|
+
defaultSaturation: {
|
|
465
|
+
get: function () {
|
|
466
|
+
deprecationWarning(
|
|
467
|
+
"IonImageryProvider.defaultSaturation",
|
|
468
|
+
"IonImageryProvider.defaultSaturation was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.saturation instead."
|
|
469
|
+
);
|
|
470
|
+
return this._defaultSaturation;
|
|
471
|
+
},
|
|
472
|
+
set: function (value) {
|
|
473
|
+
deprecationWarning(
|
|
474
|
+
"IonImageryProvider.defaultSaturation",
|
|
475
|
+
"IonImageryProvider.defaultSaturation was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.saturation instead."
|
|
476
|
+
);
|
|
477
|
+
this._defaultSaturation = value;
|
|
478
|
+
},
|
|
479
|
+
},
|
|
480
|
+
|
|
481
|
+
/**
|
|
482
|
+
* The default gamma correction to apply to this provider. 1.0 uses the unmodified imagery color.
|
|
483
|
+
* @memberof IonImageryProvider.prototype
|
|
484
|
+
* @type {Number|undefined}
|
|
485
|
+
* @deprecated
|
|
486
|
+
*/
|
|
487
|
+
defaultGamma: {
|
|
488
|
+
get: function () {
|
|
489
|
+
deprecationWarning(
|
|
490
|
+
"IonImageryProvider.defaultGamma",
|
|
491
|
+
"IonImageryProvider.defaultGamma was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.gamma instead."
|
|
492
|
+
);
|
|
493
|
+
return this._defaultGamma;
|
|
494
|
+
},
|
|
495
|
+
set: function (value) {
|
|
496
|
+
deprecationWarning(
|
|
497
|
+
"IonImageryProvider.defaultGamma",
|
|
498
|
+
"IonImageryProvider.defaultGamma was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.gamma instead."
|
|
499
|
+
);
|
|
500
|
+
this._defaultGamma = value;
|
|
501
|
+
},
|
|
502
|
+
},
|
|
503
|
+
|
|
504
|
+
/**
|
|
505
|
+
* The default texture minification filter to apply to this provider.
|
|
506
|
+
* @memberof IonImageryProvider.prototype
|
|
507
|
+
* @type {TextureMinificationFilter}
|
|
508
|
+
* @deprecated
|
|
509
|
+
*/
|
|
510
|
+
defaultMinificationFilter: {
|
|
511
|
+
get: function () {
|
|
512
|
+
deprecationWarning(
|
|
513
|
+
"IonImageryProvider.defaultMinificationFilter",
|
|
514
|
+
"IonImageryProvider.defaultMinificationFilter was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.minificationFilter instead."
|
|
515
|
+
);
|
|
516
|
+
return this._defaultMinificationFilter;
|
|
517
|
+
},
|
|
518
|
+
set: function (value) {
|
|
519
|
+
deprecationWarning(
|
|
520
|
+
"IonImageryProvider.defaultMinificationFilter",
|
|
521
|
+
"IonImageryProvider.defaultMinificationFilter was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.minificationFilter instead."
|
|
522
|
+
);
|
|
523
|
+
this._defaultMinificationFilter = value;
|
|
524
|
+
},
|
|
525
|
+
},
|
|
526
|
+
|
|
527
|
+
/**
|
|
528
|
+
* The default texture magnification filter to apply to this provider.
|
|
529
|
+
* @memberof IonImageryProvider.prototype
|
|
530
|
+
* @type {TextureMagnificationFilter}
|
|
531
|
+
* @deprecated
|
|
532
|
+
*/
|
|
533
|
+
defaultMagnificationFilter: {
|
|
534
|
+
get: function () {
|
|
535
|
+
deprecationWarning(
|
|
536
|
+
"IonImageryProvider.defaultMagnificationFilter",
|
|
537
|
+
"IonImageryProvider.defaultMagnificationFilter was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.magnificationFilter instead."
|
|
538
|
+
);
|
|
539
|
+
return this._defaultMagnificationFilter;
|
|
540
|
+
},
|
|
541
|
+
set: function (value) {
|
|
542
|
+
deprecationWarning(
|
|
543
|
+
"IonImageryProvider.defaultMagnificationFilter",
|
|
544
|
+
"IonImageryProvider.defaultMagnificationFilter was deprecated in CesiumJS 1.104. It will be in CesiumJS 1.107. Use ImageryLayer.magnificationFilter instead."
|
|
545
|
+
);
|
|
546
|
+
this._defaultMagnificationFilter = value;
|
|
547
|
+
},
|
|
548
|
+
},
|
|
462
549
|
});
|
|
463
550
|
|
|
551
|
+
// This is here for backwards compatibility
|
|
552
|
+
IonImageryProvider._initialize = function (provider, assetId, options) {
|
|
553
|
+
const endpointResource = IonResource._createEndpointResource(
|
|
554
|
+
assetId,
|
|
555
|
+
options
|
|
556
|
+
);
|
|
557
|
+
|
|
558
|
+
// A simple cache to avoid making repeated requests to ion for endpoints we've
|
|
559
|
+
// already retrieved. This exists mainly to support Bing caching to reduce
|
|
560
|
+
// world imagery sessions, but provides a small boost of performance in general
|
|
561
|
+
// if constantly reloading assets
|
|
562
|
+
const cacheKey = assetId.toString() + options.accessToken + options.server;
|
|
563
|
+
let promise = IonImageryProvider._endpointCache[cacheKey];
|
|
564
|
+
if (!defined(promise)) {
|
|
565
|
+
promise = endpointResource.fetchJson();
|
|
566
|
+
IonImageryProvider._endpointCache[cacheKey] = promise;
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
provider._readyPromise = promise.then(function (endpoint) {
|
|
570
|
+
if (endpoint.type !== "IMAGERY") {
|
|
571
|
+
return Promise.reject(
|
|
572
|
+
new RuntimeError(`Cesium ion asset ${assetId} is not an imagery asset.`)
|
|
573
|
+
);
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
let imageryProvider;
|
|
577
|
+
const externalType = endpoint.externalType;
|
|
578
|
+
if (!defined(externalType)) {
|
|
579
|
+
imageryProvider = new TileMapServiceImageryProvider({
|
|
580
|
+
url: new IonResource(endpoint, endpointResource),
|
|
581
|
+
});
|
|
582
|
+
} else {
|
|
583
|
+
const factory = ImageryProviderMapping[externalType];
|
|
584
|
+
|
|
585
|
+
if (!defined(factory)) {
|
|
586
|
+
return Promise.reject(
|
|
587
|
+
new RuntimeError(
|
|
588
|
+
`Unrecognized Cesium ion imagery type: ${externalType}`
|
|
589
|
+
)
|
|
590
|
+
);
|
|
591
|
+
}
|
|
592
|
+
imageryProvider = factory(endpoint.options);
|
|
593
|
+
}
|
|
594
|
+
|
|
595
|
+
provider._tileCredits = IonResource.getCreditsFromEndpoint(
|
|
596
|
+
endpoint,
|
|
597
|
+
endpointResource
|
|
598
|
+
);
|
|
599
|
+
|
|
600
|
+
imageryProvider.errorEvent.addEventListener(function (tileProviderError) {
|
|
601
|
+
//Propagate the errorEvent but set the provider to this instance instead
|
|
602
|
+
//of the inner instance.
|
|
603
|
+
tileProviderError.provider = provider;
|
|
604
|
+
provider._errorEvent.raiseEvent(tileProviderError);
|
|
605
|
+
});
|
|
606
|
+
|
|
607
|
+
provider._imageryProvider = imageryProvider;
|
|
608
|
+
// readyPromise is deprecated. This is here for backwards compatibility
|
|
609
|
+
return Promise.resolve(imageryProvider._readyPromise).then(function () {
|
|
610
|
+
provider._ready = true;
|
|
611
|
+
return true;
|
|
612
|
+
});
|
|
613
|
+
});
|
|
614
|
+
};
|
|
615
|
+
|
|
464
616
|
/**
|
|
465
|
-
*
|
|
466
|
-
* @function
|
|
617
|
+
* Creates a provider for tiled imagery using the Cesium ion REST API.
|
|
467
618
|
*
|
|
468
|
-
* @param {Number}
|
|
469
|
-
* @param {
|
|
470
|
-
* @
|
|
471
|
-
* @returns {Credit[]} The credits to be displayed when the tile is displayed.
|
|
619
|
+
* @param {Number} assetId An ion imagery asset ID.
|
|
620
|
+
* @param {IonImageryProvider.ConstructorOptions} options Object describing initialization options.
|
|
621
|
+
* @returns {Promise<IonImageryProvider>} A promise which resolves to the created IonImageryProvider.
|
|
472
622
|
*
|
|
473
|
-
* @
|
|
623
|
+
* @example
|
|
624
|
+
* const imageryLayer = Cesium.ImageryLayer.fromProviderAsync(Cesium.IonImageryProvider.fromAssetId(3812));
|
|
625
|
+
* viewer.imageryLayers.add(imageryLayer);
|
|
626
|
+
*
|
|
627
|
+
* @exception {RuntimeError} Cesium ion assetId is not an imagery asset
|
|
628
|
+
* @exception {RuntimeError} Unrecognized Cesium ion imagery type
|
|
474
629
|
*/
|
|
475
|
-
IonImageryProvider.
|
|
630
|
+
IonImageryProvider.fromAssetId = async function (assetId, options) {
|
|
476
631
|
//>>includeStart('debug', pragmas.debug);
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
632
|
+
Check.typeOf.number("assetId", assetId);
|
|
633
|
+
//>>includeEnd('debug');
|
|
634
|
+
|
|
635
|
+
options = defaultValue(options, defaultValue.EMPTY_OBJECT);
|
|
636
|
+
const endpointResource = IonResource._createEndpointResource(
|
|
637
|
+
assetId,
|
|
638
|
+
options
|
|
639
|
+
);
|
|
640
|
+
|
|
641
|
+
// A simple cache to avoid making repeated requests to ion for endpoints we've
|
|
642
|
+
// already retrieved. This exists mainly to support Bing caching to reduce
|
|
643
|
+
// world imagery sessions, but provides a small boost of performance in general
|
|
644
|
+
// if constantly reloading assets
|
|
645
|
+
const cacheKey = assetId.toString() + options.accessToken + options.server;
|
|
646
|
+
let promise = IonImageryProvider._endpointCache[cacheKey];
|
|
647
|
+
if (!defined(promise)) {
|
|
648
|
+
promise = endpointResource.fetchJson();
|
|
649
|
+
IonImageryProvider._endpointCache[cacheKey] = promise;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
const endpoint = await promise;
|
|
653
|
+
if (endpoint.type !== "IMAGERY") {
|
|
654
|
+
throw new RuntimeError(
|
|
655
|
+
`Cesium ion asset ${assetId} is not an imagery asset.`
|
|
480
656
|
);
|
|
481
657
|
}
|
|
482
|
-
//>>includeEnd('debug');
|
|
483
658
|
|
|
659
|
+
let imageryProvider;
|
|
660
|
+
const externalType = endpoint.externalType;
|
|
661
|
+
if (!defined(externalType)) {
|
|
662
|
+
imageryProvider = await TileMapServiceImageryProvider.fromUrl(
|
|
663
|
+
new IonResource(endpoint, endpointResource)
|
|
664
|
+
);
|
|
665
|
+
} else {
|
|
666
|
+
const factory = ImageryProviderAsyncMapping[externalType];
|
|
667
|
+
|
|
668
|
+
if (!defined(factory)) {
|
|
669
|
+
throw new RuntimeError(
|
|
670
|
+
`Unrecognized Cesium ion imagery type: ${externalType}`
|
|
671
|
+
);
|
|
672
|
+
}
|
|
673
|
+
// Make a copy before editing since this object reference is cached;
|
|
674
|
+
const options = { ...endpoint.options };
|
|
675
|
+
const url = options.url;
|
|
676
|
+
delete options.url;
|
|
677
|
+
imageryProvider = await factory(url, options);
|
|
678
|
+
}
|
|
679
|
+
|
|
680
|
+
const provider = new IonImageryProvider(options);
|
|
681
|
+
|
|
682
|
+
imageryProvider.errorEvent.addEventListener(function (tileProviderError) {
|
|
683
|
+
//Propagate the errorEvent but set the provider to this instance instead
|
|
684
|
+
//of the inner instance.
|
|
685
|
+
tileProviderError.provider = provider;
|
|
686
|
+
provider._errorEvent.raiseEvent(tileProviderError);
|
|
687
|
+
});
|
|
688
|
+
|
|
689
|
+
provider._tileCredits = IonResource.getCreditsFromEndpoint(
|
|
690
|
+
endpoint,
|
|
691
|
+
endpointResource
|
|
692
|
+
);
|
|
693
|
+
|
|
694
|
+
provider._imageryProvider = imageryProvider;
|
|
695
|
+
provider._ready = true;
|
|
696
|
+
provider._readyPromise = Promise.resolve(true);
|
|
697
|
+
|
|
698
|
+
return provider;
|
|
699
|
+
};
|
|
700
|
+
|
|
701
|
+
/**
|
|
702
|
+
* Gets the credits to be displayed when a given tile is displayed.
|
|
703
|
+
* @function
|
|
704
|
+
*
|
|
705
|
+
* @param {number} x The tile X coordinate.
|
|
706
|
+
* @param {number} y The tile Y coordinate.
|
|
707
|
+
* @param {number} level The tile level;
|
|
708
|
+
* @returns {Credit[]} The credits to be displayed when the tile is displayed.
|
|
709
|
+
*/
|
|
710
|
+
IonImageryProvider.prototype.getTileCredits = function (x, y, level) {
|
|
484
711
|
const innerCredits = this._imageryProvider.getTileCredits(x, y, level);
|
|
485
712
|
if (!defined(innerCredits)) {
|
|
486
713
|
return this._tileCredits;
|
|
@@ -490,48 +717,35 @@ IonImageryProvider.prototype.getTileCredits = function (x, y, level) {
|
|
|
490
717
|
};
|
|
491
718
|
|
|
492
719
|
/**
|
|
493
|
-
* Requests the image for a given tile.
|
|
494
|
-
* not be called before {@link IonImageryProvider#ready} returns true.
|
|
720
|
+
* Requests the image for a given tile.
|
|
495
721
|
* @function
|
|
496
722
|
*
|
|
497
|
-
* @param {
|
|
498
|
-
* @param {
|
|
499
|
-
* @param {
|
|
723
|
+
* @param {number} x The tile X coordinate.
|
|
724
|
+
* @param {number} y The tile Y coordinate.
|
|
725
|
+
* @param {number} level The tile level.
|
|
500
726
|
* @param {Request} [request] The request object. Intended for internal use only.
|
|
501
|
-
* @returns {Promise
|
|
727
|
+
* @returns {Promise<ImageryTypes>|undefined} A promise for the image that will resolve when the image is available, or
|
|
502
728
|
* undefined if there are too many active requests to the server, and the request should be retried later.
|
|
503
|
-
*
|
|
504
|
-
* @exception {DeveloperError} <code>requestImage</code> must not be called before the imagery provider is ready.
|
|
505
729
|
*/
|
|
506
730
|
IonImageryProvider.prototype.requestImage = function (x, y, level, request) {
|
|
507
|
-
//>>includeStart('debug', pragmas.debug);
|
|
508
|
-
if (!this._ready) {
|
|
509
|
-
throw new DeveloperError(
|
|
510
|
-
"requestImage must not be called before the imagery provider is ready."
|
|
511
|
-
);
|
|
512
|
-
}
|
|
513
|
-
//>>includeEnd('debug');
|
|
514
731
|
return this._imageryProvider.requestImage(x, y, level, request);
|
|
515
732
|
};
|
|
516
733
|
|
|
517
734
|
/**
|
|
518
735
|
* Asynchronously determines what features, if any, are located at a given longitude and latitude within
|
|
519
|
-
* a tile.
|
|
520
|
-
* This function is optional, so it may not exist on all ImageryProviders.
|
|
736
|
+
* a tile. This function is optional, so it may not exist on all ImageryProviders.
|
|
521
737
|
*
|
|
522
738
|
* @function
|
|
523
739
|
*
|
|
524
|
-
* @param {
|
|
525
|
-
* @param {
|
|
526
|
-
* @param {
|
|
527
|
-
* @param {
|
|
528
|
-
* @param {
|
|
529
|
-
* @return {Promise
|
|
740
|
+
* @param {number} x The tile X coordinate.
|
|
741
|
+
* @param {number} y The tile Y coordinate.
|
|
742
|
+
* @param {number} level The tile level.
|
|
743
|
+
* @param {number} longitude The longitude at which to pick features.
|
|
744
|
+
* @param {number} latitude The latitude at which to pick features.
|
|
745
|
+
* @return {Promise<ImageryLayerFeatureInfo[]>|undefined} A promise for the picked features that will resolve when the asynchronous
|
|
530
746
|
* picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
|
|
531
747
|
* instances. The array may be empty if no features are found at the given location.
|
|
532
748
|
* It may also be undefined if picking is not supported.
|
|
533
|
-
*
|
|
534
|
-
* @exception {DeveloperError} <code>pickFeatures</code> must not be called before the imagery provider is ready.
|
|
535
749
|
*/
|
|
536
750
|
IonImageryProvider.prototype.pickFeatures = function (
|
|
537
751
|
x,
|
|
@@ -540,13 +754,6 @@ IonImageryProvider.prototype.pickFeatures = function (
|
|
|
540
754
|
longitude,
|
|
541
755
|
latitude
|
|
542
756
|
) {
|
|
543
|
-
//>>includeStart('debug', pragmas.debug);
|
|
544
|
-
if (!this._ready) {
|
|
545
|
-
throw new DeveloperError(
|
|
546
|
-
"pickFeatures must not be called before the imagery provider is ready."
|
|
547
|
-
);
|
|
548
|
-
}
|
|
549
|
-
//>>includeEnd('debug');
|
|
550
757
|
return this._imageryProvider.pickFeatures(x, y, level, longitude, latitude);
|
|
551
758
|
};
|
|
552
759
|
|