@cesium/engine 23.0.0 → 24.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Build/Workers/{chunk-QTOHIXGF.js → chunk-2N4KDHS3.js} +10 -10
- package/Build/Workers/{chunk-SQTRWKO2.js → chunk-44EMEGKW.js} +5 -5
- package/Build/Workers/{chunk-OHBM4YG4.js → chunk-4TIG36AW.js} +12 -12
- package/Build/Workers/{chunk-BNBD2YZK.js → chunk-5A2SW66E.js} +16 -16
- package/Build/Workers/{chunk-52K3GJKG.js → chunk-5GXYJQ2K.js} +3 -3
- package/Build/Workers/{chunk-NQCAZU7S.js → chunk-63SIWPLS.js} +13 -13
- package/Build/Workers/{chunk-UEEGWJJP.js → chunk-6MPGQEHA.js} +2 -2
- package/Build/Workers/{chunk-PQVNT5CJ.js → chunk-6RMS4S72.js} +6 -6
- package/Build/Workers/{chunk-HYTFXWMY.js → chunk-6WLHJFD3.js} +7 -7
- package/Build/Workers/{chunk-DT5SJBKA.js → chunk-72VYSVEW.js} +9 -9
- package/Build/Workers/{chunk-JUGY5AZN.js → chunk-7MDYBRYJ.js} +4 -4
- package/Build/Workers/{chunk-6SLGTBB2.js → chunk-7O5XJTVE.js} +5 -5
- package/Build/Workers/{chunk-4UNQX2MP.js → chunk-7QRFIKWQ.js} +2 -2
- package/Build/Workers/{chunk-GN5NEUDT.js → chunk-7TYLCBGK.js} +8 -8
- package/Build/Workers/{chunk-SGKTBHFQ.js → chunk-7X322WP2.js} +13 -13
- package/Build/Workers/{chunk-T43FXHNC.js → chunk-A47HVBC5.js} +7 -7
- package/Build/Workers/{chunk-FSDVXW7M.js → chunk-AF3MU2RL.js} +5 -5
- package/Build/Workers/{chunk-3B65YFXC.js → chunk-AJLTU6PF.js} +1 -1
- package/Build/Workers/{chunk-OQ3EAJNW.js → chunk-AMIHNSST.js} +2 -2
- package/Build/Workers/{chunk-N4AWE7TZ.js → chunk-B6SCUUFP.js} +10 -10
- package/Build/Workers/{chunk-OMXN7YF4.js → chunk-BJD6QGXZ.js} +12 -12
- package/Build/Workers/{chunk-APDKMX7W.js → chunk-C6P4IG5P.js} +6 -6
- package/Build/Workers/{chunk-QA24Q62E.js → chunk-D4EJ2NXG.js} +17 -17
- package/Build/Workers/{chunk-HYLEKKO5.js → chunk-DHKPFLSJ.js} +1 -1
- package/Build/Workers/{chunk-MQJG522T.js → chunk-DVB56LG7.js} +6 -6
- package/Build/Workers/{chunk-Y5AJSEEN.js → chunk-EDXL4W76.js} +2 -2
- package/Build/Workers/{chunk-QQX7S5QT.js → chunk-EV3VGO6Y.js} +17 -17
- package/Build/Workers/{chunk-IFA7VHHP.js → chunk-GOQBUCXH.js} +10 -10
- package/Build/Workers/{chunk-5A7YSAXT.js → chunk-GQUNK2XC.js} +14 -14
- package/Build/Workers/{chunk-36LBFITA.js → chunk-HKUES6UG.js} +12 -12
- package/Build/Workers/{chunk-OC6X22PG.js → chunk-HRHRYFHS.js} +9 -9
- package/Build/Workers/{chunk-L7RDJ4V7.js → chunk-HXJMS2ZI.js} +1 -1
- package/Build/Workers/{chunk-NAYRNPEP.js → chunk-ILMFADZA.js} +4 -4
- package/Build/Workers/{chunk-AA33B6PU.js → chunk-ISY4EZCA.js} +4 -4
- package/Build/Workers/{chunk-7KRN6JPQ.js → chunk-J6AW5YHS.js} +14 -14
- package/Build/Workers/{chunk-OQBPOKPZ.js → chunk-JCI63T3K.js} +6 -6
- package/Build/Workers/{chunk-2WI4HGJU.js → chunk-KLPGTXS3.js} +6 -6
- package/Build/Workers/{chunk-5R7SBUTW.js → chunk-LIB2H534.js} +10 -10
- package/Build/Workers/{chunk-IYVDOB5V.js → chunk-LXMCPFFS.js} +4 -4
- package/Build/Workers/{chunk-NUYLNQKV.js → chunk-MKM27KGV.js} +2 -2
- package/Build/Workers/{chunk-R7M4XNPP.js → chunk-N65BAKSH.js} +8 -8
- package/Build/Workers/{chunk-4LGFX2P5.js → chunk-NKT5K3K3.js} +11 -11
- package/Build/Workers/{chunk-NNHU33JK.js → chunk-NPF7SSHZ.js} +7 -7
- package/Build/Workers/{chunk-LDQWNMEC.js → chunk-PVV64VFW.js} +1 -1
- package/Build/Workers/{chunk-WKXDCVBO.js → chunk-Q3C6VQH6.js} +4 -4
- package/Build/Workers/{chunk-ARCFIOKA.js → chunk-RQNJD3O4.js} +12 -12
- package/Build/Workers/{chunk-G3YT7M7A.js → chunk-UIGVOKKI.js} +1 -1
- package/Build/Workers/{chunk-ZIW5FCIW.js → chunk-UQU4RXLT.js} +27 -19
- package/Build/Workers/{chunk-MT5M7RLZ.js → chunk-VLDEUTOP.js} +2 -2
- package/Build/Workers/{chunk-5JP5FG7U.js → chunk-VMVOUQ5J.js} +7 -7
- package/Build/Workers/{chunk-2GL2EUEE.js → chunk-XJRBB253.js} +11 -11
- package/Build/Workers/{chunk-ESD4IEOU.js → chunk-XY6HMDGI.js} +5 -5
- package/Build/Workers/{chunk-56OHFSLH.js → chunk-Y7HNNPNK.js} +10 -10
- package/Build/Workers/{chunk-6FVFM2KB.js → chunk-YAOZMOFL.js} +5 -5
- package/Build/Workers/{chunk-AP6XWET5.js → chunk-YJZGW74L.js} +8 -8
- package/Build/Workers/{chunk-KPYU6YZG.js → chunk-YQFTYQMZ.js} +1 -1
- package/Build/Workers/{chunk-5VKZVPO5.js → chunk-ZBZRTRJB.js} +10 -10
- package/Build/Workers/combineGeometry.js +24 -24
- package/Build/Workers/createBoxGeometry.js +18 -18
- package/Build/Workers/createBoxOutlineGeometry.js +16 -16
- package/Build/Workers/createCircleGeometry.js +26 -26
- package/Build/Workers/createCircleOutlineGeometry.js +19 -19
- package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createCorridorGeometry.js +29 -29
- package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
- package/Build/Workers/createCylinderGeometry.js +20 -20
- package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
- package/Build/Workers/createEllipseGeometry.js +26 -26
- package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
- package/Build/Workers/createEllipsoidGeometry.js +19 -19
- package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
- package/Build/Workers/createFrustumGeometry.js +18 -18
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
- package/Build/Workers/createGeometry.js +24 -24
- package/Build/Workers/createGroundPolylineGeometry.js +22 -22
- package/Build/Workers/createPlaneGeometry.js +16 -16
- package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
- package/Build/Workers/createPolygonGeometry.js +32 -32
- package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
- package/Build/Workers/createPolylineGeometry.js +25 -25
- package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
- package/Build/Workers/createRectangleGeometry.js +27 -27
- package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
- package/Build/Workers/createSimplePolylineGeometry.js +23 -23
- package/Build/Workers/createSphereGeometry.js +19 -19
- package/Build/Workers/createSphereOutlineGeometry.js +18 -18
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
- package/Build/Workers/createVectorTileGeometries.js +24 -24
- package/Build/Workers/createVectorTilePoints.js +13 -13
- package/Build/Workers/createVectorTilePolygons.js +22 -22
- package/Build/Workers/createVectorTilePolylines.js +14 -14
- package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
- package/Build/Workers/createVerticesFromHeightmap.js +22 -22
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +20 -20
- package/Build/Workers/createWallGeometry.js +25 -25
- package/Build/Workers/createWallOutlineGeometry.js +24 -24
- package/Build/Workers/decodeDraco.js +10 -10
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +12 -12
- package/Build/Workers/gaussianSplatSorter.js +4 -4
- package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
- package/Build/Workers/incrementallyBuildTerrainPicker.js +10 -10
- package/Build/Workers/transcodeKTX2.js +6 -6
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
- package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Source/Core/BoundingSphere.js +1 -1
- package/Source/Core/Cartesian2.js +7 -5
- package/Source/Core/Cartesian3.js +8 -6
- package/Source/Core/Cartesian4.js +8 -6
- package/Source/Core/Color.js +5 -3
- package/Source/Core/DeveloperError.js +2 -1
- package/Source/Core/ITwinPlatform.js +1 -0
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/S2Cell.js +2 -2
- package/Source/Core/TerrainMesh.js +10 -1
- package/Source/Core/TerrainPicker.js +1 -0
- package/Source/Core/WallGeometry.js +1 -1
- package/Source/Core/WallOutlineGeometry.js +1 -1
- package/Source/Core/assert.js +27 -0
- package/Source/Core/globalTypes.js +4 -0
- package/Source/DataSources/CzmlDataSource.js +9 -0
- package/Source/DataSources/PathGraphics.js +13 -0
- package/Source/DataSources/PathVisualizer.js +330 -18
- package/Source/DataSources/StaticGeometryColorBatch.js +7 -2
- package/Source/DataSources/StaticGeometryPerMaterialBatch.js +7 -2
- package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +3 -1
- package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +3 -1
- package/Source/Renderer/Context.js +1 -1
- package/Source/Renderer/RenderState.js +2 -2
- package/Source/Renderer/VertexArray.js +80 -0
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/BillboardCollection.js +65 -364
- package/Source/Scene/BufferPoint.js +148 -0
- package/Source/Scene/BufferPointCollection.js +135 -0
- package/Source/Scene/BufferPointMaterial.js +95 -0
- package/Source/Scene/BufferPolygon.js +516 -0
- package/Source/Scene/BufferPolygonCollection.js +368 -0
- package/Source/Scene/BufferPolygonMaterial.js +41 -0
- package/Source/Scene/BufferPolyline.js +185 -0
- package/Source/Scene/BufferPolylineCollection.js +136 -0
- package/Source/Scene/BufferPolylineMaterial.js +93 -0
- package/Source/Scene/BufferPrimitive.js +347 -0
- package/Source/Scene/BufferPrimitiveCollection.js +702 -0
- package/Source/Scene/BufferPrimitiveMaterial.js +140 -0
- package/Source/Scene/Cesium3DTileContent.js +5 -1
- package/Source/Scene/Cesium3DTileContentFactory.js +9 -0
- package/Source/Scene/Cesium3DTileStyle.js +22 -0
- package/Source/Scene/Cesium3DTileset.js +1 -0
- package/Source/Scene/ClippingPolygonCollection.js +270 -101
- package/Source/Scene/CubeMapPanorama.js +4 -4
- package/Source/Scene/GaussianSplat3DTileContent.js +40 -46
- package/Source/Scene/GaussianSplatPrimitive.js +413 -70
- package/Source/Scene/GetFeatureInfoFormat.js +3 -3
- package/Source/Scene/GltfLoader.js +227 -34
- package/Source/Scene/GltfSpzLoader.js +109 -0
- package/Source/Scene/ITwinData.js +1 -0
- package/Source/Scene/Label.js +32 -0
- package/Source/Scene/LabelCollection.js +14 -13
- package/Source/Scene/Material.js +2 -0
- package/Source/Scene/Megatexture.js +1 -0
- package/Source/Scene/MetadataClassProperty.js +24 -10
- package/Source/Scene/MetadataComponentType.js +115 -23
- package/Source/Scene/Model/CustomShaderPipelineStage.js +3 -1
- package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +761 -263
- package/Source/Scene/Model/MaterialPipelineStage.js +147 -0
- package/Source/Scene/Model/MetadataPipelineStage.js +3 -3
- package/Source/Scene/Model/ModelDrawCommand.js +6 -0
- package/Source/Scene/Model/ModelReader.js +1 -1
- package/Source/Scene/Model/ModelUtility.js +3 -1
- package/Source/Scene/Model/createVectorTileBuffersFromModelComponents.js +330 -0
- package/Source/Scene/ModelComponents.js +1632 -1542
- package/Source/Scene/PickedMetadataInfo.js +1 -0
- package/Source/Scene/ScreenSpaceCameraController.js +13 -0
- package/Source/Scene/SkyBox.js +17 -8
- package/Source/Scene/TileBoundingRegion.js +1 -1
- package/Source/Scene/TileBoundingS2Cell.js +1 -1
- package/Source/Scene/TileBoundingSphere.js +1 -1
- package/Source/Scene/TweenCollection.js +7 -0
- package/Source/Scene/VectorGltf3DTileContent.js +382 -0
- package/Source/Scene/VertexAttributeSemantic.js +14 -0
- package/Source/Scene/WebMapServiceImageryProvider.js +2 -2
- package/Source/Scene/WebMapTileServiceImageryProvider.js +366 -131
- package/Source/Scene/parseStructuralMetadata.js +97 -37
- package/Source/Scene/renderBufferPointCollection.js +334 -0
- package/Source/Scene/renderBufferPolygonCollection.js +386 -0
- package/Source/Scene/renderBufferPolylineCollection.js +529 -0
- package/Source/Shaders/BillboardCollectionFS.glsl +2 -77
- package/Source/Shaders/BillboardCollectionFS.js +2 -77
- package/Source/Shaders/BillboardCollectionVS.glsl +2 -60
- package/Source/Shaders/BillboardCollectionVS.js +2 -60
- package/Source/Shaders/BufferPointMaterialFS.glsl +27 -0
- package/Source/Shaders/BufferPointMaterialFS.js +29 -0
- package/Source/Shaders/BufferPointMaterialVS.glsl +48 -0
- package/Source/Shaders/BufferPointMaterialVS.js +50 -0
- package/Source/Shaders/BufferPolygonMaterialFS.glsl +13 -0
- package/Source/Shaders/BufferPolygonMaterialFS.js +15 -0
- package/Source/Shaders/BufferPolygonMaterialVS.glsl +30 -0
- package/Source/Shaders/BufferPolygonMaterialVS.js +32 -0
- package/Source/Shaders/BufferPolylineMaterialFS.glsl +13 -0
- package/Source/Shaders/BufferPolylineMaterialFS.js +15 -0
- package/Source/Shaders/BufferPolylineMaterialVS.glsl +49 -0
- package/Source/Shaders/BufferPolylineMaterialVS.js +51 -0
- package/Source/Shaders/Model/EdgeVisibilityStageFS.glsl +34 -48
- package/Source/Shaders/Model/EdgeVisibilityStageFS.js +34 -49
- package/Source/Shaders/Model/EdgeVisibilityStageVS.glsl +98 -0
- package/Source/Shaders/Model/EdgeVisibilityStageVS.js +100 -0
- package/Source/Shaders/Model/ModelFS.glsl +15 -0
- package/Source/Shaders/Model/ModelFS.js +15 -0
- package/Source/Shaders/Model/ModelVS.glsl +8 -0
- package/Source/Shaders/Model/ModelVS.js +8 -0
- package/Source/Shaders/PolygonSignedDistanceFS.glsl +64 -33
- package/Source/Shaders/PolygonSignedDistanceFS.js +64 -33
- package/Source/Shaders/PrimitiveGaussianSplatVS.glsl +9 -2
- package/Source/Shaders/PrimitiveGaussianSplatVS.js +9 -2
- package/Source/Shaders/Voxels/VoxelFS.glsl +1 -1
- package/Source/Shaders/Voxels/VoxelFS.js +1 -1
- package/Source/Workers/decodeDraco.js +3 -0
- package/Source/Workers/decodeI3S.js +5 -2
- package/index.d.ts +1007 -111
- package/index.js +368 -343
- package/package.json +2 -2
package/index.d.ts
CHANGED
|
@@ -1102,7 +1102,7 @@ export class BoundingSphere {
|
|
|
1102
1102
|
* @param [result] - The object onto which to store the result.
|
|
1103
1103
|
* @returns The modified result parameter or a new BoundingSphere instance if one was not provided.
|
|
1104
1104
|
*/
|
|
1105
|
-
static fromVertices(positions?: number[], center?: Cartesian3, stride?: number, result?: BoundingSphere): BoundingSphere;
|
|
1105
|
+
static fromVertices(positions?: number[] | TypedArray, center?: Cartesian3, stride?: number, result?: BoundingSphere): BoundingSphere;
|
|
1106
1106
|
/**
|
|
1107
1107
|
* Computes a tight-fitting bounding sphere enclosing a list of EncodedCartesian3s, where the points are
|
|
1108
1108
|
* stored in parallel flat arrays in X, Y, Z, order. The bounding sphere is computed by running two
|
|
@@ -1528,7 +1528,7 @@ export class Cartesian2 {
|
|
|
1528
1528
|
* @param [startingIndex = 0] - The index into the array at which to start packing the elements.
|
|
1529
1529
|
* @returns The array that was packed into
|
|
1530
1530
|
*/
|
|
1531
|
-
static pack(value: Cartesian2, array: number[]
|
|
1531
|
+
static pack(value: Cartesian2, array: number[], startingIndex?: number): number[];
|
|
1532
1532
|
/**
|
|
1533
1533
|
* Retrieves an instance from a packed array.
|
|
1534
1534
|
* @param array - The packed array.
|
|
@@ -1536,14 +1536,14 @@ export class Cartesian2 {
|
|
|
1536
1536
|
* @param [result] - The object into which to store the result.
|
|
1537
1537
|
* @returns The modified result parameter or a new Cartesian2 instance if one was not provided.
|
|
1538
1538
|
*/
|
|
1539
|
-
static unpack(array: number[]
|
|
1539
|
+
static unpack(array: number[], startingIndex?: number, result?: Cartesian2): Cartesian2;
|
|
1540
1540
|
/**
|
|
1541
1541
|
* Flattens an array of Cartesian2s into an array of components.
|
|
1542
1542
|
* @param array - The array of cartesians to pack.
|
|
1543
1543
|
* @param [result] - The array onto which to store the result. If this is a typed array, it must have array.length * 2 components, else a {@link DeveloperError} will be thrown. If it is a regular array, it will be resized to have (array.length * 2) elements.
|
|
1544
1544
|
* @returns The packed array.
|
|
1545
1545
|
*/
|
|
1546
|
-
static packArray(array: Cartesian2[], result?: number[]
|
|
1546
|
+
static packArray(array: Cartesian2[], result?: number[]): number[];
|
|
1547
1547
|
/**
|
|
1548
1548
|
* Unpacks an array of cartesian components into an array of Cartesian2s.
|
|
1549
1549
|
* @param array - The array of components to unpack.
|
|
@@ -1878,7 +1878,7 @@ export class Cartesian3 {
|
|
|
1878
1878
|
* @param [startingIndex = 0] - The index into the array at which to start packing the elements.
|
|
1879
1879
|
* @returns The array that was packed into
|
|
1880
1880
|
*/
|
|
1881
|
-
static pack(value: Cartesian3, array: number[]
|
|
1881
|
+
static pack(value: Cartesian3, array: number[], startingIndex?: number): number[];
|
|
1882
1882
|
/**
|
|
1883
1883
|
* Retrieves an instance from a packed array.
|
|
1884
1884
|
* @param array - The packed array.
|
|
@@ -1886,21 +1886,21 @@ export class Cartesian3 {
|
|
|
1886
1886
|
* @param [result] - The object into which to store the result.
|
|
1887
1887
|
* @returns The modified result parameter or a new Cartesian3 instance if one was not provided.
|
|
1888
1888
|
*/
|
|
1889
|
-
static unpack(array: number[]
|
|
1889
|
+
static unpack(array: number[], startingIndex?: number, result?: Cartesian3): Cartesian3;
|
|
1890
1890
|
/**
|
|
1891
1891
|
* Flattens an array of Cartesian3s into an array of components.
|
|
1892
1892
|
* @param array - The array of cartesians to pack.
|
|
1893
1893
|
* @param [result] - The array onto which to store the result. If this is a typed array, it must have array.length * 3 components, else a {@link DeveloperError} will be thrown. If it is a regular array, it will be resized to have (array.length * 3) elements.
|
|
1894
1894
|
* @returns The packed array.
|
|
1895
1895
|
*/
|
|
1896
|
-
static packArray(array: Cartesian3[], result?: number[]
|
|
1896
|
+
static packArray(array: Cartesian3[], result?: number[]): number[];
|
|
1897
1897
|
/**
|
|
1898
1898
|
* Unpacks an array of cartesian components into an array of Cartesian3s.
|
|
1899
1899
|
* @param array - The array of components to unpack.
|
|
1900
1900
|
* @param [result] - The array onto which to store the result.
|
|
1901
1901
|
* @returns The unpacked array.
|
|
1902
1902
|
*/
|
|
1903
|
-
static unpackArray(array: number[]
|
|
1903
|
+
static unpackArray(array: number[], result?: Cartesian3[]): Cartesian3[];
|
|
1904
1904
|
/**
|
|
1905
1905
|
* Computes the value of the maximum component for the supplied Cartesian.
|
|
1906
1906
|
* @param cartesian - The cartesian to use.
|
|
@@ -2312,7 +2312,7 @@ export class Cartesian4 {
|
|
|
2312
2312
|
* @param [startingIndex = 0] - The index into the array at which to start packing the elements.
|
|
2313
2313
|
* @returns The array that was packed into
|
|
2314
2314
|
*/
|
|
2315
|
-
static pack(value: Cartesian4, array: number[]
|
|
2315
|
+
static pack(value: Cartesian4, array: number[], startingIndex?: number): number[];
|
|
2316
2316
|
/**
|
|
2317
2317
|
* Retrieves an instance from a packed array.
|
|
2318
2318
|
* @param array - The packed array.
|
|
@@ -2320,21 +2320,21 @@ export class Cartesian4 {
|
|
|
2320
2320
|
* @param [result] - The object into which to store the result.
|
|
2321
2321
|
* @returns The modified result parameter or a new Cartesian4 instance if one was not provided.
|
|
2322
2322
|
*/
|
|
2323
|
-
static unpack(array: number[]
|
|
2323
|
+
static unpack(array: number[], startingIndex?: number, result?: Cartesian4): Cartesian4;
|
|
2324
2324
|
/**
|
|
2325
2325
|
* Flattens an array of Cartesian4s into an array of components.
|
|
2326
2326
|
* @param array - The array of cartesians to pack.
|
|
2327
2327
|
* @param [result] - The array onto which to store the result. If this is a typed array, it must have array.length * 4 components, else a {@link DeveloperError} will be thrown. If it is a regular array, it will be resized to have (array.length * 4) elements.
|
|
2328
2328
|
* @returns The packed array.
|
|
2329
2329
|
*/
|
|
2330
|
-
static packArray(array: Cartesian4[], result?: number[]
|
|
2330
|
+
static packArray(array: Cartesian4[], result?: number[]): number[];
|
|
2331
2331
|
/**
|
|
2332
2332
|
* Unpacks an array of cartesian components into an array of Cartesian4s.
|
|
2333
2333
|
* @param array - The array of components to unpack.
|
|
2334
2334
|
* @param [result] - The array onto which to store the result.
|
|
2335
2335
|
* @returns The unpacked array.
|
|
2336
2336
|
*/
|
|
2337
|
-
static unpackArray(array: number[]
|
|
2337
|
+
static unpackArray(array: number[], result?: Cartesian4[]): Cartesian4[];
|
|
2338
2338
|
/**
|
|
2339
2339
|
* Computes the value of the maximum component for the supplied Cartesian.
|
|
2340
2340
|
* @param cartesian - The cartesian to use.
|
|
@@ -3617,6 +3617,8 @@ export enum ClockStep {
|
|
|
3617
3617
|
SYSTEM_CLOCK = 2
|
|
3618
3618
|
}
|
|
3619
3619
|
|
|
3620
|
+
export function hue2rgb(): void;
|
|
3621
|
+
|
|
3620
3622
|
/**
|
|
3621
3623
|
* A color, specified using red, green, blue, and alpha values,
|
|
3622
3624
|
* which range from <code>0</code> (no intensity) to <code>1.0</code> (full intensity).
|
|
@@ -3765,7 +3767,7 @@ export class Color {
|
|
|
3765
3767
|
* @param [startingIndex = 0] - The index into the array at which to start packing the elements.
|
|
3766
3768
|
* @returns The array that was packed into
|
|
3767
3769
|
*/
|
|
3768
|
-
static pack(value: Color, array: number[], startingIndex?: number): number[];
|
|
3770
|
+
static pack(value: Color, array: number[] | TypedArray, startingIndex?: number): number[] | TypedArray;
|
|
3769
3771
|
/**
|
|
3770
3772
|
* Retrieves an instance from a packed array.
|
|
3771
3773
|
* @param array - The packed array.
|
|
@@ -3773,7 +3775,7 @@ export class Color {
|
|
|
3773
3775
|
* @param [result] - The object into which to store the result.
|
|
3774
3776
|
* @returns The modified result parameter or a new Color instance if one was not provided.
|
|
3775
3777
|
*/
|
|
3776
|
-
static unpack(array: number[], startingIndex?: number, result?: Color): Color;
|
|
3778
|
+
static unpack(array: number[] | TypedArray, startingIndex?: number, result?: Color): Color;
|
|
3777
3779
|
/**
|
|
3778
3780
|
* Converts a 'byte' color component in the range of 0 to 255 into
|
|
3779
3781
|
* a 'float' color component in the range of 0 to 1.0.
|
|
@@ -16775,11 +16777,6 @@ export class TerrainData {
|
|
|
16775
16777
|
wasCreatedByUpsampling(): boolean;
|
|
16776
16778
|
}
|
|
16777
16779
|
|
|
16778
|
-
/**
|
|
16779
|
-
* Indicates whether the terrain picker needs to be rebuilt due to changes in the underlying terrain mesh's vertices or indices.
|
|
16780
|
-
*/
|
|
16781
|
-
export var needsRebuild: boolean;
|
|
16782
|
-
|
|
16783
16780
|
/**
|
|
16784
16781
|
* Creates an axis-aligned bounding box for a quadtree node at the given tree-space coordinates and level.
|
|
16785
16782
|
* This AABB is in the tree's local space (where the root node of the tree is a unit cube in its own local space).
|
|
@@ -18918,6 +18915,8 @@ export type TypedArray = Float64Array | Float32Array | Uint32Array | Uint16Array
|
|
|
18918
18915
|
*/
|
|
18919
18916
|
export type TypedArrayConstructor = Float64ArrayConstructor | Float32ArrayConstructor | Uint32ArrayConstructor | Uint16ArrayConstructor | Uint8ArrayConstructor | Int32ArrayConstructor | Int16ArrayConstructor | Int8ArrayConstructor;
|
|
18920
18917
|
|
|
18918
|
+
export type Destroyable = any;
|
|
18919
|
+
|
|
18921
18920
|
/**
|
|
18922
18921
|
* Determines if a given date is a leap year.
|
|
18923
18922
|
* @example
|
|
@@ -23369,6 +23368,7 @@ export namespace PathGraphics {
|
|
|
23369
23368
|
* @property [resolution = 60] - A numeric Property specifying the maximum number of seconds to step when sampling the position.
|
|
23370
23369
|
* @property [material = Color.WHITE] - A Property specifying the material used to draw the path.
|
|
23371
23370
|
* @property [distanceDisplayCondition] - A Property specifying at what distance from the camera that this path will be displayed.
|
|
23371
|
+
* @property [relativeTo] - A Property specifying the frame in which to visualize the path. Use another entity's id to visualize the path relative to that entity, or use the string values "FIXED" or "INERTIAL" to visualize the path in those reference frames.
|
|
23372
23372
|
*/
|
|
23373
23373
|
type ConstructorOptions = {
|
|
23374
23374
|
show?: Property | boolean;
|
|
@@ -23378,6 +23378,7 @@ export namespace PathGraphics {
|
|
|
23378
23378
|
resolution?: Property | number;
|
|
23379
23379
|
material?: MaterialProperty | Color;
|
|
23380
23380
|
distanceDisplayCondition?: Property | DistanceDisplayCondition;
|
|
23381
|
+
relativeTo?: Property | string;
|
|
23381
23382
|
};
|
|
23382
23383
|
}
|
|
23383
23384
|
|
|
@@ -23419,6 +23420,10 @@ export class PathGraphics {
|
|
|
23419
23420
|
* Gets or sets the {@link DistanceDisplayCondition} Property specifying at what distance from the camera that this path will be displayed.
|
|
23420
23421
|
*/
|
|
23421
23422
|
distanceDisplayCondition: Property | undefined;
|
|
23423
|
+
/**
|
|
23424
|
+
* Gets or sets the frame in which to visualize the path. Use another entity's id to visualize the path relative to that entity, or use the string values "FIXED" or "INERTIAL" to visualize the path in those reference frames.
|
|
23425
|
+
*/
|
|
23426
|
+
relativeTo: Property | undefined;
|
|
23422
23427
|
/**
|
|
23423
23428
|
* Duplicates this instance.
|
|
23424
23429
|
* @param [result] - The object onto which to store the result.
|
|
@@ -23433,6 +23438,32 @@ export class PathGraphics {
|
|
|
23433
23438
|
merge(source: PathGraphics): void;
|
|
23434
23439
|
}
|
|
23435
23440
|
|
|
23441
|
+
/**
|
|
23442
|
+
* Transforms a path entity's position into the local frame of the reference entity.
|
|
23443
|
+
* If the reference entity has an orientation, uses that orientation to define the local frame.
|
|
23444
|
+
* Otherwise, falls back to a VVLH (Vehicle Velocity Local Horizontal) frame derived from the reference entity's velocity.
|
|
23445
|
+
* @param time - The time at which to evaluate the orientation or VVLH frame.
|
|
23446
|
+
* @param pathEntityPos - The position of the path entity in the FIXED reference frame.
|
|
23447
|
+
* @param refEntityPos - The position of the reference entity in the FIXED reference frame.
|
|
23448
|
+
* @param refEntity - The reference entity whose frame to transform into.
|
|
23449
|
+
* @param result - The object onto which to store the result.
|
|
23450
|
+
* @returns The transformed position in the reference entity's local frame, or undefined if either input position is undefined.
|
|
23451
|
+
*/
|
|
23452
|
+
export function transformToEntityFrame(time: JulianDate, pathEntityPos: Cartesian3, refEntityPos: Cartesian3, refEntity: Entity, result: Cartesian3): Cartesian3 | undefined;
|
|
23453
|
+
|
|
23454
|
+
/**
|
|
23455
|
+
* Compute the vehicle velocity, local horizontal (VVLH) transform for a position property at a given time.
|
|
23456
|
+
* The VVLH axes is defined based on the motion of the provided position point as follows:
|
|
23457
|
+
* - The X axis is directed toward the point's velocity vector, in the direction of motion.
|
|
23458
|
+
* - The Y axis is along the angular momentum vector.
|
|
23459
|
+
* - The Z axis is along the position vector.
|
|
23460
|
+
* @param time - The time at which to compute the VVLH transform.
|
|
23461
|
+
* @param positionProperty - The position to compute the VVLH frame for.
|
|
23462
|
+
* @param result - The object onto which to store the result.
|
|
23463
|
+
* @returns The VVLH transform.
|
|
23464
|
+
*/
|
|
23465
|
+
export function computeVvlhTransform(time: JulianDate, positionProperty: PositionProperty, result: Matrix4): Matrix4;
|
|
23466
|
+
|
|
23436
23467
|
/**
|
|
23437
23468
|
* A {@link Visualizer} which maps {@link Entity#path} to a {@link Polyline}.
|
|
23438
23469
|
* @param scene - The scene the primitives will be rendered in.
|
|
@@ -25939,8 +25970,6 @@ export type WebGLOptions = {
|
|
|
25939
25970
|
failIfMajorPerformanceCaveat?: boolean;
|
|
25940
25971
|
};
|
|
25941
25972
|
|
|
25942
|
-
export function PickId(pickObjects: Map<number, object>, key: number, color: Color): void;
|
|
25943
|
-
|
|
25944
25973
|
/**
|
|
25945
25974
|
* The data type of a pixel.
|
|
25946
25975
|
*/
|
|
@@ -26018,6 +26047,8 @@ export enum TextureMinificationFilter {
|
|
|
26018
26047
|
LINEAR_MIPMAP_LINEAR = WebGLConstants.LINEAR_MIPMAP_LINEAR
|
|
26019
26048
|
}
|
|
26020
26049
|
|
|
26050
|
+
export function addAttribute(): void;
|
|
26051
|
+
|
|
26021
26052
|
/**
|
|
26022
26053
|
* An appearance defines the full GLSL vertex and fragment shaders and the
|
|
26023
26054
|
* render state used to draw a {@link Primitive}. All appearances implement
|
|
@@ -27585,6 +27616,780 @@ export class BoxEmitter {
|
|
|
27585
27616
|
dimensions: Cartesian3;
|
|
27586
27617
|
}
|
|
27587
27618
|
|
|
27619
|
+
/**
|
|
27620
|
+
* View bound to the underlying buffer data of a {@link BufferPointCollection}.
|
|
27621
|
+
*
|
|
27622
|
+
* <p>BufferPoint instances are {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweights}:
|
|
27623
|
+
* a single BufferPoint instance can be temporarily bound to any conceptual
|
|
27624
|
+
* "point" in a BufferPointCollection, allowing very large collections to be
|
|
27625
|
+
* iterated and updated with a minimal memory footprint.</p>
|
|
27626
|
+
*
|
|
27627
|
+
* Represented as one (1) position.
|
|
27628
|
+
*/
|
|
27629
|
+
export class BufferPoint extends BufferPrimitive {
|
|
27630
|
+
/**
|
|
27631
|
+
* Copies data from source point to result.
|
|
27632
|
+
*/
|
|
27633
|
+
static clone(point: BufferPoint, result: BufferPoint): BufferPoint;
|
|
27634
|
+
/**
|
|
27635
|
+
* Count of positions (vertices) in this primitive. Always 1.
|
|
27636
|
+
*/
|
|
27637
|
+
readonly vertexCount: number;
|
|
27638
|
+
/**
|
|
27639
|
+
* Gets the position of this point.
|
|
27640
|
+
*/
|
|
27641
|
+
getPosition(result?: Cartesian3): Cartesian3;
|
|
27642
|
+
/**
|
|
27643
|
+
* Sets the position of this point.
|
|
27644
|
+
*/
|
|
27645
|
+
setPosition(position: Cartesian3): void;
|
|
27646
|
+
/**
|
|
27647
|
+
* Returns a JSON-serializable object representing the point. This encoding
|
|
27648
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
27649
|
+
* testing.
|
|
27650
|
+
* @returns JSON-serializable object.
|
|
27651
|
+
*/
|
|
27652
|
+
toJSON(): any;
|
|
27653
|
+
}
|
|
27654
|
+
|
|
27655
|
+
/**
|
|
27656
|
+
* @property [options.modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
|
|
27657
|
+
*/
|
|
27658
|
+
export type BufferPointOptions = {
|
|
27659
|
+
show?: boolean;
|
|
27660
|
+
material?: BufferPointMaterial;
|
|
27661
|
+
position?: Cartesian3;
|
|
27662
|
+
};
|
|
27663
|
+
|
|
27664
|
+
/**
|
|
27665
|
+
* Collection of points held in ArrayBuffer storage for performance and memory optimization.
|
|
27666
|
+
*
|
|
27667
|
+
* <p>Default buffer memory allocation is arbitrary, and collections cannot be resized,
|
|
27668
|
+
* so specific per-buffer capacities should be provided in the collection
|
|
27669
|
+
* constructor when available.</p>
|
|
27670
|
+
* @example
|
|
27671
|
+
* const collection = new BufferPointCollection({primitiveCountMax: 1024});
|
|
27672
|
+
*
|
|
27673
|
+
* const point = new BufferPoint();
|
|
27674
|
+
* const material = new BufferPointMaterial({color: Color.WHITE});
|
|
27675
|
+
*
|
|
27676
|
+
* // Create a new point, temporarily bound to 'point' local variable.
|
|
27677
|
+
* collection.add({
|
|
27678
|
+
* position: new Cartesian3(0.0, 0.0, 0.0),
|
|
27679
|
+
* material
|
|
27680
|
+
* }, point);
|
|
27681
|
+
*
|
|
27682
|
+
* // Iterate over all points in collection, temporarily binding 'point'
|
|
27683
|
+
* // local variable to each, and updating point material.
|
|
27684
|
+
* for (let i = 0; i < collection.primitiveCount; i++) {
|
|
27685
|
+
* collection.get(i, point);
|
|
27686
|
+
* point.setMaterial(material);
|
|
27687
|
+
* }
|
|
27688
|
+
*/
|
|
27689
|
+
export class BufferPointCollection extends BufferPrimitiveCollection<BufferPoint> {
|
|
27690
|
+
constructor(options: {
|
|
27691
|
+
primitiveCountMax?: number;
|
|
27692
|
+
show?: boolean;
|
|
27693
|
+
debugShowBoundingVolume?: boolean;
|
|
27694
|
+
});
|
|
27695
|
+
/**
|
|
27696
|
+
* Adds a new point to the collection, with the specified options. A
|
|
27697
|
+
* {@link BufferPoint} instance is linked to the new point, using
|
|
27698
|
+
* the 'result' argument if given, or a new instance if not. For repeated
|
|
27699
|
+
* calls, prefer to reuse a single BufferPoint instance rather than
|
|
27700
|
+
* allocating a new instance on each call.
|
|
27701
|
+
*/
|
|
27702
|
+
add(options: BufferPointOptions, result: BufferPoint): BufferPoint;
|
|
27703
|
+
}
|
|
27704
|
+
|
|
27705
|
+
/**
|
|
27706
|
+
* @property [color = Color.WHITE] - Color of fill.
|
|
27707
|
+
* @property [outlineColor = Color.WHITE] - Color of outline.
|
|
27708
|
+
* @property [outlineWidth = 0.0] - Width of outline, 0-255px.
|
|
27709
|
+
* @property [size = 1.0] - Size of point, 0-255px.
|
|
27710
|
+
*/
|
|
27711
|
+
export type BufferPointMaterialOptions = {
|
|
27712
|
+
color?: Color;
|
|
27713
|
+
outlineColor?: Color;
|
|
27714
|
+
outlineWidth?: number;
|
|
27715
|
+
size?: number;
|
|
27716
|
+
};
|
|
27717
|
+
|
|
27718
|
+
/**
|
|
27719
|
+
* Material description for a {@link BufferPoint}.
|
|
27720
|
+
*
|
|
27721
|
+
* <p>BufferPointMaterial objects are {@link Packable|packable}, stored
|
|
27722
|
+
* when calling {@link BufferPoint#setMaterial}. Subsequent changes to the
|
|
27723
|
+
* material will not affect the point until setMaterial() is called again.</p>
|
|
27724
|
+
*/
|
|
27725
|
+
export class BufferPointMaterial extends BufferPrimitiveMaterial {
|
|
27726
|
+
constructor(options?: BufferPointMaterialOptions);
|
|
27727
|
+
/**
|
|
27728
|
+
* Size of point, 0-255px.
|
|
27729
|
+
*/
|
|
27730
|
+
size: number;
|
|
27731
|
+
static pack(material: BufferPointMaterial, view: DataView, byteOffset: number): void;
|
|
27732
|
+
static unpack(view: DataView, byteOffset: number, result: BufferPointMaterial): BufferPointMaterial;
|
|
27733
|
+
/**
|
|
27734
|
+
* Returns a JSON-serializable object representing the material. This encoding
|
|
27735
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
27736
|
+
* testing.
|
|
27737
|
+
* @returns JSON-serializable object.
|
|
27738
|
+
*/
|
|
27739
|
+
toJSON(): any;
|
|
27740
|
+
/**
|
|
27741
|
+
* Color of fill.
|
|
27742
|
+
*/
|
|
27743
|
+
color: Color;
|
|
27744
|
+
/**
|
|
27745
|
+
* Color of outline.
|
|
27746
|
+
*/
|
|
27747
|
+
outlineColor: Color;
|
|
27748
|
+
/**
|
|
27749
|
+
* Width of outline, 0-255px.
|
|
27750
|
+
*/
|
|
27751
|
+
outlineWidth: number;
|
|
27752
|
+
}
|
|
27753
|
+
|
|
27754
|
+
/**
|
|
27755
|
+
* View bound to the underlying buffer data of a {@link BufferPolygonCollection}.
|
|
27756
|
+
*
|
|
27757
|
+
* <p>BufferPolygon instances are {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweights}:
|
|
27758
|
+
* a single BufferPolygon instance can be temporarily bound to any conceptual
|
|
27759
|
+
* "polygon" in a BufferPolygonCollection, allowing very large collections to be
|
|
27760
|
+
* iterated and updated with a minimal memory footprint.</p>
|
|
27761
|
+
*
|
|
27762
|
+
* <p>Represented as one (1) external linear ring of three (3) or more positions.
|
|
27763
|
+
* May optionally define one or more internal linear rings ("holes") within the
|
|
27764
|
+
* polygon. Each hole is represented as a single index into the positions array,
|
|
27765
|
+
* where the vertex at that index is the start of an internal linear ring that
|
|
27766
|
+
* continues along the following vertices until reaching either the vertex
|
|
27767
|
+
* index of the next hole, or the end of the vertex list. Stores a precomputed
|
|
27768
|
+
* triangulation, represented as three vertex indices per triangle.</p>
|
|
27769
|
+
*/
|
|
27770
|
+
export class BufferPolygon extends BufferPrimitive {
|
|
27771
|
+
/**
|
|
27772
|
+
* Copies data from source polygon to result. If the result polygon is not
|
|
27773
|
+
* new (the last polygon in the collection) then source and result polygons
|
|
27774
|
+
* must have the same vertex counts, hole counts, and triangle counts.
|
|
27775
|
+
*/
|
|
27776
|
+
static clone(polygon: BufferPolygon, result: BufferPolygon): BufferPolygon;
|
|
27777
|
+
/**
|
|
27778
|
+
* Count of positions (vertices) in this polygon, including both outer ring and
|
|
27779
|
+
* internal rings (holes), number of VEC3 elements.
|
|
27780
|
+
*/
|
|
27781
|
+
readonly vertexCount: number;
|
|
27782
|
+
/**
|
|
27783
|
+
* Returns an array view of this polygon's vertex positions. If 'result'
|
|
27784
|
+
* argument is given, vertex positions are written to that array and returned.
|
|
27785
|
+
* Otherwise, returns an ArrayView on collection memory — changes to this array
|
|
27786
|
+
* will not trigger render updates, which requires `.setPositions()`.
|
|
27787
|
+
* @param [result] - return {TypedArray}
|
|
27788
|
+
*/
|
|
27789
|
+
getPositions(result?: TypedArray): void;
|
|
27790
|
+
setPositions(positions: TypedArray): void;
|
|
27791
|
+
/**
|
|
27792
|
+
* Offset in collection position array to first vertex in polygon's outer
|
|
27793
|
+
* linear ring, number of VEC3 elements.
|
|
27794
|
+
*/
|
|
27795
|
+
readonly outerVertexOffset: number;
|
|
27796
|
+
/**
|
|
27797
|
+
* Count of positions (vertices) in this polygon's outer linear ring, number
|
|
27798
|
+
* of VEC3 elements.
|
|
27799
|
+
*/
|
|
27800
|
+
readonly outerVertexCount: number;
|
|
27801
|
+
/**
|
|
27802
|
+
* Returns an array view of this polygon's outer linear ring vertex positions.
|
|
27803
|
+
* If 'result' argument is given, vertex positions are written to that array
|
|
27804
|
+
* and returned. Otherwise, returns an ArrayView on collection memory —
|
|
27805
|
+
* changes to this array will not trigger render updates, which requires
|
|
27806
|
+
* `.setPositions()`.
|
|
27807
|
+
*/
|
|
27808
|
+
getOuterPositions(result?: TypedArray): TypedArray;
|
|
27809
|
+
/**
|
|
27810
|
+
* Count of holes (indices) in this polygon.
|
|
27811
|
+
*/
|
|
27812
|
+
readonly holeCount: number;
|
|
27813
|
+
/**
|
|
27814
|
+
* Gets this polygon's hole indices, with each hole represented as a single
|
|
27815
|
+
* offset into this polygon's positions array. Each hole implicitly
|
|
27816
|
+
* continues along an internal linear ring from that vertex offset until
|
|
27817
|
+
* reaching either the end of the positions array, or the next hole offset.
|
|
27818
|
+
*
|
|
27819
|
+
* If 'result' argument is given, hole indices are written to that array and
|
|
27820
|
+
* returned. Otherwise, returns an ArrayView on collection memory — changes
|
|
27821
|
+
* to this array will not trigger render updates, which requires `.setHoles()`.
|
|
27822
|
+
*/
|
|
27823
|
+
getHoles(result?: TypedArray): TypedArray;
|
|
27824
|
+
/**
|
|
27825
|
+
* Sets this polygon's hole indices, with holes represented as a single
|
|
27826
|
+
* offset into this polygon's positions array. Each hole implicitly
|
|
27827
|
+
* continues along an internal linear ring from that vertex offset until
|
|
27828
|
+
* reaching either the end of the positions array, or the next hole offset.
|
|
27829
|
+
*/
|
|
27830
|
+
setHoles(holes: TypedArray): void;
|
|
27831
|
+
/**
|
|
27832
|
+
* Returns the number of (VEC3) vertices in the specified hole.
|
|
27833
|
+
*/
|
|
27834
|
+
getHoleVertexCount(holeIndex: number): number;
|
|
27835
|
+
/**
|
|
27836
|
+
* Returns an array view of the inner linear ring vertex positions for the
|
|
27837
|
+
* specified hole. If 'result' argument is given, vertex positions are written
|
|
27838
|
+
* to that array and returned. Otherwise, returns an ArrayView on collection
|
|
27839
|
+
* memory — changes to this array will not trigger render updates, which
|
|
27840
|
+
* requires `.setPositions()`.
|
|
27841
|
+
* @param [result] - return {TypedArray}
|
|
27842
|
+
*/
|
|
27843
|
+
getHolePositions(holeIndex: number, result?: TypedArray): void;
|
|
27844
|
+
/**
|
|
27845
|
+
* Count of triangles in this polygon, number of VEC3 elements.
|
|
27846
|
+
*/
|
|
27847
|
+
readonly triangleCount: number;
|
|
27848
|
+
/**
|
|
27849
|
+
* Returns an array view of this polygon's triangle indices, represented as
|
|
27850
|
+
* three vertex indices per triangle.
|
|
27851
|
+
*
|
|
27852
|
+
* If 'result' argument is given, triangle indices are written to that array
|
|
27853
|
+
* and returned. Otherwise, returns an ArrayView on collection memory —
|
|
27854
|
+
* changes to this array will not trigger render updates, which requires
|
|
27855
|
+
* `.setTriangles()`.
|
|
27856
|
+
*/
|
|
27857
|
+
getTriangles(result?: TypedArray): TypedArray;
|
|
27858
|
+
/**
|
|
27859
|
+
* Sets this polygon's triangle indices, represented as three vertex indices
|
|
27860
|
+
* per triangle.
|
|
27861
|
+
*/
|
|
27862
|
+
setTriangles(indices: TypedArray): void;
|
|
27863
|
+
/**
|
|
27864
|
+
* Returns a JSON-serializable object representing the polygon. This encoding
|
|
27865
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
27866
|
+
* testing.
|
|
27867
|
+
* @returns JSON-serializable object.
|
|
27868
|
+
*/
|
|
27869
|
+
toJSON(): any;
|
|
27870
|
+
}
|
|
27871
|
+
|
|
27872
|
+
/**
|
|
27873
|
+
* @property [options.modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
|
|
27874
|
+
*/
|
|
27875
|
+
export type BufferPolygonOptions = {
|
|
27876
|
+
show?: boolean;
|
|
27877
|
+
material?: BufferPolygonMaterial;
|
|
27878
|
+
positions?: TypedArray;
|
|
27879
|
+
holes?: TypedArray;
|
|
27880
|
+
triangles?: TypedArray;
|
|
27881
|
+
};
|
|
27882
|
+
|
|
27883
|
+
/**
|
|
27884
|
+
* Collection of polygons held in ArrayBuffer storage for performance and memory optimization.
|
|
27885
|
+
*
|
|
27886
|
+
* <p>Default buffer memory allocation is arbitrary, and collections cannot be resized,
|
|
27887
|
+
* so specific per-buffer capacities should be provided in the collection
|
|
27888
|
+
* constructor when available.</p>
|
|
27889
|
+
* @example
|
|
27890
|
+
* import earcut from "earcut";
|
|
27891
|
+
*
|
|
27892
|
+
* const collection = new BufferPolygonCollection({
|
|
27893
|
+
* primitiveCountMax: 1024,
|
|
27894
|
+
* vertexCountMax: 4096,
|
|
27895
|
+
* holeCountMax: 1024,
|
|
27896
|
+
* triangleCountMax: 2048,
|
|
27897
|
+
* });
|
|
27898
|
+
*
|
|
27899
|
+
* const polygon = new BufferPolygon();
|
|
27900
|
+
* const positions = [ ... ];
|
|
27901
|
+
* const holes = [ ... ];
|
|
27902
|
+
* const material = new BufferPolygonMaterial({color: Color.WHITE});
|
|
27903
|
+
*
|
|
27904
|
+
* // Create a new polygon, temporarily bound to 'polygon' local variable.
|
|
27905
|
+
* collection.add({
|
|
27906
|
+
* positions: new Float64Array(positions),
|
|
27907
|
+
* holes: new Uint32Array(holes),
|
|
27908
|
+
* triangles: new Uint32Array(earcut(positions, holes, 3)),
|
|
27909
|
+
* material
|
|
27910
|
+
* }, polygon);
|
|
27911
|
+
*
|
|
27912
|
+
* // Iterate over all polygons in collection, temporarily binding 'polygon'
|
|
27913
|
+
* // local variable to each, and updating polygon material.
|
|
27914
|
+
* for (let i = 0; i < collection.primitiveCount; i++) {
|
|
27915
|
+
* collection.get(i, polygon);
|
|
27916
|
+
* polygon.setMaterial(material);
|
|
27917
|
+
* }
|
|
27918
|
+
* @param [options.allowPicking = true] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
|
|
27919
|
+
*/
|
|
27920
|
+
export class BufferPolygonCollection extends BufferPrimitiveCollection<BufferPolygon> {
|
|
27921
|
+
constructor(options: {
|
|
27922
|
+
primitiveCountMax?: number;
|
|
27923
|
+
vertexCountMax?: number;
|
|
27924
|
+
holeCountMax?: number;
|
|
27925
|
+
triangleCountMax?: number;
|
|
27926
|
+
positionDatatype?: ComponentDatatype;
|
|
27927
|
+
show?: boolean;
|
|
27928
|
+
allowPicking?: boolean;
|
|
27929
|
+
debugShowBoundingVolume?: boolean;
|
|
27930
|
+
});
|
|
27931
|
+
/**
|
|
27932
|
+
* Duplicates the contents of this collection into the result collection.
|
|
27933
|
+
* Result collection is not resized, and must contain enough space for all
|
|
27934
|
+
* primitives in the source collection. Existing polygons in the result
|
|
27935
|
+
* collection will be overwritten.
|
|
27936
|
+
*
|
|
27937
|
+
* <p>Useful when allocating more space for a collection that has reached its
|
|
27938
|
+
* capacity, and efficiently transferring polygons to the new collection.</p>
|
|
27939
|
+
* @example
|
|
27940
|
+
* const result = new BufferPolygonCollection({ ... }); // allocate larger 'result' collection
|
|
27941
|
+
* BufferPolygonCollection.clone(collection, result); // copy polygons from 'collection' into 'result'
|
|
27942
|
+
*/
|
|
27943
|
+
static clone(collection: BufferPolygonCollection, result: BufferPolygonCollection): BufferPolygonCollection;
|
|
27944
|
+
/**
|
|
27945
|
+
* Adds a new polygon to the collection, with the specified options. A
|
|
27946
|
+
* {@link BufferPolygon} instance is linked to the new polygon, using
|
|
27947
|
+
* the 'result' argument if given, or a new instance if not. For repeated
|
|
27948
|
+
* calls, prefer to reuse a single BufferPolygon instance rather than
|
|
27949
|
+
* allocating a new instance on each call.
|
|
27950
|
+
*/
|
|
27951
|
+
add(options: BufferPolygonOptions, result: BufferPolygon): BufferPolygon;
|
|
27952
|
+
/**
|
|
27953
|
+
* Total byte length of buffers owned by this collection. Includes any unused
|
|
27954
|
+
* space allocated by {@link primitiveCountMax}, even if no polygons have
|
|
27955
|
+
* yet been added in that space.
|
|
27956
|
+
*/
|
|
27957
|
+
readonly byteLength: number;
|
|
27958
|
+
/**
|
|
27959
|
+
* Number of holes in collection. Must be <= {@link holeCountMax}.
|
|
27960
|
+
*/
|
|
27961
|
+
readonly holeCount: number;
|
|
27962
|
+
/**
|
|
27963
|
+
* Maximum number of holes in collection. Must be >= {@link holeCount}.
|
|
27964
|
+
*/
|
|
27965
|
+
readonly holeCountMax: number;
|
|
27966
|
+
/**
|
|
27967
|
+
* Number of triangles in collection. Must be <= {@link triangleCountMax}.
|
|
27968
|
+
*/
|
|
27969
|
+
readonly triangleCount: number;
|
|
27970
|
+
/**
|
|
27971
|
+
* Maximum number of triangles in collection. Must be >= {@link triangleCount}.
|
|
27972
|
+
*/
|
|
27973
|
+
readonly triangleCountMax: number;
|
|
27974
|
+
}
|
|
27975
|
+
|
|
27976
|
+
/**
|
|
27977
|
+
* @property [color = Color.WHITE] - Color of fill.
|
|
27978
|
+
* @property [outlineColor = Color.WHITE] - Color of outline.
|
|
27979
|
+
* @property [outlineWidth = 0.0] - Width of outline, 0-255px.
|
|
27980
|
+
*/
|
|
27981
|
+
export type BufferPolygonMaterialOptions = {
|
|
27982
|
+
color?: Color;
|
|
27983
|
+
outlineColor?: Color;
|
|
27984
|
+
outlineWidth?: number;
|
|
27985
|
+
};
|
|
27986
|
+
|
|
27987
|
+
/**
|
|
27988
|
+
* Material description for a {@link BufferPolygon}.
|
|
27989
|
+
*
|
|
27990
|
+
* <p>BufferPolygonMaterial objects are {@link Packable|packable}, stored
|
|
27991
|
+
* when calling {@link BufferPolygon#setMaterial}. Subsequent changes to the
|
|
27992
|
+
* material will not affect the polygon until setMaterial() is called again.</p>
|
|
27993
|
+
*/
|
|
27994
|
+
export class BufferPolygonMaterial extends BufferPrimitiveMaterial {
|
|
27995
|
+
constructor(options?: BufferPolygonMaterialOptions);
|
|
27996
|
+
/**
|
|
27997
|
+
* Color of fill.
|
|
27998
|
+
*/
|
|
27999
|
+
color: Color;
|
|
28000
|
+
/**
|
|
28001
|
+
* Color of outline.
|
|
28002
|
+
*/
|
|
28003
|
+
outlineColor: Color;
|
|
28004
|
+
/**
|
|
28005
|
+
* Width of outline, 0-255px.
|
|
28006
|
+
*/
|
|
28007
|
+
outlineWidth: number;
|
|
28008
|
+
/**
|
|
28009
|
+
* Returns a JSON-serializable object representing the material. This encoding
|
|
28010
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
28011
|
+
* testing.
|
|
28012
|
+
* @returns JSON-serializable object.
|
|
28013
|
+
*/
|
|
28014
|
+
toJSON(): any;
|
|
28015
|
+
}
|
|
28016
|
+
|
|
28017
|
+
/**
|
|
28018
|
+
* View bound to the underlying buffer data of a {@link BufferPolylineCollection}.
|
|
28019
|
+
*
|
|
28020
|
+
* <p>BufferPolyline instances are {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweights}:
|
|
28021
|
+
* a single BufferPolyline instance can be temporarily bound to any conceptual
|
|
28022
|
+
* "polyline" in a BufferPolylineCollection, allowing very large collections to be
|
|
28023
|
+
* iterated and updated with a minimal memory footprint.</p>
|
|
28024
|
+
*
|
|
28025
|
+
* Represented as two (2) or more positions.
|
|
28026
|
+
*/
|
|
28027
|
+
export class BufferPolyline extends BufferPrimitive {
|
|
28028
|
+
/**
|
|
28029
|
+
* Copies data from source polyline to result. If the result polyline is not
|
|
28030
|
+
* new (the last polyline in the collection) then source and result polylines
|
|
28031
|
+
* must have the same vertex counts.
|
|
28032
|
+
*/
|
|
28033
|
+
static clone(polyline: BufferPolyline, result: BufferPolyline): BufferPolyline;
|
|
28034
|
+
/**
|
|
28035
|
+
* Count of positions (vertices) in this polyline, number of VEC3 elements.
|
|
28036
|
+
*/
|
|
28037
|
+
readonly vertexCount: number;
|
|
28038
|
+
/**
|
|
28039
|
+
* Returns an array view of this polyline's vertex positions. If 'result'
|
|
28040
|
+
* argument is given, vertex positions are written to that array and returned.
|
|
28041
|
+
* Otherwise, returns an ArrayView on collection memory — changes to this array
|
|
28042
|
+
* will not trigger render updates, which requires `.setPositions()`.
|
|
28043
|
+
* @param [result] - return {TypedArray}
|
|
28044
|
+
*/
|
|
28045
|
+
getPositions(result?: TypedArray): void;
|
|
28046
|
+
setPositions(positions: TypedArray): void;
|
|
28047
|
+
/**
|
|
28048
|
+
* Returns a JSON-serializable object representing the polyline. This encoding
|
|
28049
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
28050
|
+
* testing.
|
|
28051
|
+
* @returns JSON-serializable object.
|
|
28052
|
+
*/
|
|
28053
|
+
toJSON(): any;
|
|
28054
|
+
}
|
|
28055
|
+
|
|
28056
|
+
/**
|
|
28057
|
+
* @property [options.modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
|
|
28058
|
+
*/
|
|
28059
|
+
export type BufferPolylineOptions = {
|
|
28060
|
+
show?: boolean;
|
|
28061
|
+
material?: BufferPolylineMaterial;
|
|
28062
|
+
positions?: TypedArray;
|
|
28063
|
+
};
|
|
28064
|
+
|
|
28065
|
+
/**
|
|
28066
|
+
* Collection of polylines held in ArrayBuffer storage for performance and memory optimization.
|
|
28067
|
+
*
|
|
28068
|
+
* <p>Default buffer memory allocation is arbitrary, and collections cannot be resized,
|
|
28069
|
+
* so specific per-buffer capacities should be provided in the collection
|
|
28070
|
+
* constructor when available.</p>
|
|
28071
|
+
* @example
|
|
28072
|
+
* const collection = new BufferPolylineCollection({
|
|
28073
|
+
* primitiveCountMax: 1024,
|
|
28074
|
+
* vertexCountMax: 4096,
|
|
28075
|
+
* });
|
|
28076
|
+
*
|
|
28077
|
+
* const polyline = new BufferPolyline();
|
|
28078
|
+
* const material = new BufferPolylineMaterial({color: Color.WHITE});
|
|
28079
|
+
*
|
|
28080
|
+
* // Create a new polyline, temporarily bound to 'polyline' local variable.
|
|
28081
|
+
* collection.add({
|
|
28082
|
+
* positions: new Float64Array([ ... ]),
|
|
28083
|
+
* material,
|
|
28084
|
+
* }, polyline);
|
|
28085
|
+
*
|
|
28086
|
+
* // Iterate over all polylines in collection, temporarily binding 'polyline'
|
|
28087
|
+
* // local variable to each, and updating polyline material.
|
|
28088
|
+
* for (let i = 0; i < collection.primitiveCount; i++) {
|
|
28089
|
+
* collection.get(i, polyline);
|
|
28090
|
+
* polyline.setMaterial(material);
|
|
28091
|
+
* }
|
|
28092
|
+
*/
|
|
28093
|
+
export class BufferPolylineCollection extends BufferPrimitiveCollection<BufferPolyline> {
|
|
28094
|
+
/**
|
|
28095
|
+
* Adds a new polyline to the collection, with the specified options. A
|
|
28096
|
+
* {@link BufferPolyline} instance is linked to the new polyline, using
|
|
28097
|
+
* the 'result' argument if given, or a new instance if not. For repeated
|
|
28098
|
+
* calls, prefer to reuse a single BufferPolyline instance rather than
|
|
28099
|
+
* allocating a new instance on each call.
|
|
28100
|
+
*/
|
|
28101
|
+
add(options: BufferPolylineOptions, result: BufferPolyline): BufferPolyline;
|
|
28102
|
+
}
|
|
28103
|
+
|
|
28104
|
+
/**
|
|
28105
|
+
* @property [color = Color.WHITE] - Color of fill.
|
|
28106
|
+
* @property [outlineColor = Color.WHITE] - Color of outline.
|
|
28107
|
+
* @property [outlineWidth = 0.0] - Width of outline, 0-255px.
|
|
28108
|
+
* @property [width = 1.0] - Width of line, 0-255px.
|
|
28109
|
+
*/
|
|
28110
|
+
export type BufferPolylineMaterialOptions = {
|
|
28111
|
+
color?: Color;
|
|
28112
|
+
outlineColor?: Color;
|
|
28113
|
+
outlineWidth?: number;
|
|
28114
|
+
width?: number;
|
|
28115
|
+
};
|
|
28116
|
+
|
|
28117
|
+
/**
|
|
28118
|
+
* Material description for a {@link BufferPolyline}.
|
|
28119
|
+
*
|
|
28120
|
+
* <p>BufferPolylineMaterial objects are {@link Packable|packable}, stored
|
|
28121
|
+
* when calling {@link BufferPolyline#setMaterial}. Subsequent changes to the
|
|
28122
|
+
* material will not affect the polyline until setMaterial() is called again.</p>
|
|
28123
|
+
*/
|
|
28124
|
+
export class BufferPolylineMaterial extends BufferPrimitiveMaterial {
|
|
28125
|
+
constructor(options?: BufferPolylineMaterialOptions);
|
|
28126
|
+
/**
|
|
28127
|
+
* Width of polyline, 0–255px.
|
|
28128
|
+
*/
|
|
28129
|
+
width: number;
|
|
28130
|
+
static pack(material: BufferPolylineMaterial, view: DataView, byteOffset: number): void;
|
|
28131
|
+
static unpack(view: DataView, byteOffset: number, result: BufferPolylineMaterial): BufferPolylineMaterial;
|
|
28132
|
+
/**
|
|
28133
|
+
* Returns a JSON-serializable object representing the material. This encoding
|
|
28134
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
28135
|
+
* testing.
|
|
28136
|
+
* @returns JSON-serializable object.
|
|
28137
|
+
*/
|
|
28138
|
+
toJSON(): any;
|
|
28139
|
+
/**
|
|
28140
|
+
* Color of fill.
|
|
28141
|
+
*/
|
|
28142
|
+
color: Color;
|
|
28143
|
+
/**
|
|
28144
|
+
* Color of outline.
|
|
28145
|
+
*/
|
|
28146
|
+
outlineColor: Color;
|
|
28147
|
+
/**
|
|
28148
|
+
* Width of outline, 0-255px.
|
|
28149
|
+
*/
|
|
28150
|
+
outlineWidth: number;
|
|
28151
|
+
}
|
|
28152
|
+
|
|
28153
|
+
/**
|
|
28154
|
+
* View bound to the underlying buffer data of a {@link BufferPrimitiveCollection}. Abstract.
|
|
28155
|
+
*
|
|
28156
|
+
* <p>BufferPrimitive instances are intended to be reused when iterating over large collections,
|
|
28157
|
+
* and temporarily bound to a primitive index while performing read/write operations on that primitive,
|
|
28158
|
+
* before being rebound to the next primitive, using the
|
|
28159
|
+
* {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweight pattern}.</p>
|
|
28160
|
+
*/
|
|
28161
|
+
export class BufferPrimitive {
|
|
28162
|
+
/**
|
|
28163
|
+
* Copies data from source primitive to result. If the result primitive is not
|
|
28164
|
+
* new (the last primitive in the collection) then source and result primitives
|
|
28165
|
+
* must have the same vertex counts.
|
|
28166
|
+
*/
|
|
28167
|
+
static clone(primitive: BufferPrimitive, result: BufferPrimitive): BufferPrimitive;
|
|
28168
|
+
/**
|
|
28169
|
+
* Feature ID associated with the primitive; not required to be unique.
|
|
28170
|
+
*/
|
|
28171
|
+
featureId: number;
|
|
28172
|
+
/**
|
|
28173
|
+
* Whether primitive is shown.
|
|
28174
|
+
*/
|
|
28175
|
+
show: boolean;
|
|
28176
|
+
getMaterial(result: BufferPrimitiveMaterial): BufferPrimitiveMaterial;
|
|
28177
|
+
setMaterial(material: BufferPrimitiveMaterial): void;
|
|
28178
|
+
/**
|
|
28179
|
+
* Returns a JSON-serializable object representing the primitive. This encoding
|
|
28180
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
28181
|
+
* testing.
|
|
28182
|
+
* @returns JSON-serializable object.
|
|
28183
|
+
*/
|
|
28184
|
+
toJSON(): any;
|
|
28185
|
+
}
|
|
28186
|
+
|
|
28187
|
+
export type BufferPrimitiveOptions = {
|
|
28188
|
+
show?: boolean;
|
|
28189
|
+
material?: BufferPrimitiveMaterial;
|
|
28190
|
+
};
|
|
28191
|
+
|
|
28192
|
+
/**
|
|
28193
|
+
* Collection of primitives held in ArrayBuffer storage for performance and memory optimization.
|
|
28194
|
+
*
|
|
28195
|
+
* <p>To get the full performance benefit of using a BufferPrimitiveCollection containing "N" primitives,
|
|
28196
|
+
* be careful to avoid allocating "N" instances of any related JavaScript object. {@link BufferPrimitive},
|
|
28197
|
+
* {@link Color}, {@link Cartesian3}, and other objects can all be reused when working with large collections,
|
|
28198
|
+
* using the {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweight pattern}.</p>
|
|
28199
|
+
* @param [options.modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
|
|
28200
|
+
* @param [options.allowPicking = false] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
|
|
28201
|
+
*/
|
|
28202
|
+
export class BufferPrimitiveCollection<T extends BufferPrimitive> {
|
|
28203
|
+
constructor(options: {
|
|
28204
|
+
modelMatrix?: Matrix4;
|
|
28205
|
+
primitiveCountMax?: number;
|
|
28206
|
+
vertexCountMax?: number;
|
|
28207
|
+
show?: boolean;
|
|
28208
|
+
positionDatatype?: ComponentDatatype;
|
|
28209
|
+
allowPicking?: boolean;
|
|
28210
|
+
debugShowBoundingVolume?: boolean;
|
|
28211
|
+
});
|
|
28212
|
+
/**
|
|
28213
|
+
* Default capacity of buffers on new collections. A quantity of elements:
|
|
28214
|
+
* number of vertices in the vertex buffer, primitives in the primitive
|
|
28215
|
+
* buffer, etc. This value is arbitrary, and collections cannot be resized,
|
|
28216
|
+
* so specific per-buffer capacities should be provided in the collection
|
|
28217
|
+
* constructor when available.
|
|
28218
|
+
*/
|
|
28219
|
+
readonly DEFAULT_CAPACITY: number;
|
|
28220
|
+
/**
|
|
28221
|
+
* Determines if primitives in this collection will be shown.
|
|
28222
|
+
*/
|
|
28223
|
+
show: boolean;
|
|
28224
|
+
/**
|
|
28225
|
+
* Transforms geometry from model to world coordinates.
|
|
28226
|
+
*/
|
|
28227
|
+
modelMatrix: Matrix4;
|
|
28228
|
+
/**
|
|
28229
|
+
* Local bounding volume for all primitives in the collection, including both
|
|
28230
|
+
* shown and hidden primitives.
|
|
28231
|
+
*/
|
|
28232
|
+
boundingVolume: BoundingSphere;
|
|
28233
|
+
/**
|
|
28234
|
+
* World bounding volume for all primitives in the collection, including both
|
|
28235
|
+
* shown and hidden primitives.
|
|
28236
|
+
*/
|
|
28237
|
+
boundingVolumeWC: BoundingSphere;
|
|
28238
|
+
/**
|
|
28239
|
+
* This property is for debugging only; it is not for production use nor is it optimized.
|
|
28240
|
+
* <p>
|
|
28241
|
+
* Draws the bounding sphere for each draw command in the primitive.
|
|
28242
|
+
* </p>
|
|
28243
|
+
*/
|
|
28244
|
+
debugShowBoundingVolume: boolean;
|
|
28245
|
+
/**
|
|
28246
|
+
* Returns true if this object was destroyed; otherwise, false.
|
|
28247
|
+
* @returns True if this object was destroyed; otherwise, false.
|
|
28248
|
+
*/
|
|
28249
|
+
isDestroyed(): boolean;
|
|
28250
|
+
/**
|
|
28251
|
+
* Destroys collection and its GPU resources.
|
|
28252
|
+
*/
|
|
28253
|
+
destroy(): void;
|
|
28254
|
+
/**
|
|
28255
|
+
* Sorts primitives of the collection.
|
|
28256
|
+
*
|
|
28257
|
+
* Because sorting changes the indices (but not the feature IDs) of primitives
|
|
28258
|
+
* in the collection, the function also returns an array mapping from previous
|
|
28259
|
+
* index to new index. When sorting repeatedly, the array can be reused and
|
|
28260
|
+
* passed as the 'result' argument for each call.
|
|
28261
|
+
* @returns Mapping from previous index to new index.
|
|
28262
|
+
*/
|
|
28263
|
+
sort(sortFn: (...params: any[]) => any, result: Uint32Array): Uint32Array;
|
|
28264
|
+
/**
|
|
28265
|
+
* Duplicates the contents of this collection into the result collection.
|
|
28266
|
+
* Result collection is not resized, and must contain enough space for all
|
|
28267
|
+
* primitives in the source collection. Existing primitives in the result
|
|
28268
|
+
* collection will be overwritten.
|
|
28269
|
+
*
|
|
28270
|
+
* <p>Useful when allocating more space for a collection that has reached its
|
|
28271
|
+
* capacity, and efficiently transferring features to the new collection.</p>
|
|
28272
|
+
* @example
|
|
28273
|
+
* const result = new BufferPrimitiveCollection({ ... }); // allocate larger 'result' collection
|
|
28274
|
+
* BufferPrimitiveCollection.clone(collection, result); // copy primitives from 'collection' into 'result'
|
|
28275
|
+
*/
|
|
28276
|
+
static clone<T extends BufferPrimitive>(collection: BufferPrimitiveCollection<T>, result: BufferPrimitiveCollection<T>): void;
|
|
28277
|
+
/**
|
|
28278
|
+
* Makes the given {@link BufferPrimitive} a view onto this collection's
|
|
28279
|
+
* primitive at the given index, for use when reading/writing primitive
|
|
28280
|
+
* properties. When iterating over a large collection, prefer to reuse
|
|
28281
|
+
* the same BufferPrimitive instance throughout the loop — rebinding
|
|
28282
|
+
* an existing instance to a different primitive is cheap, and avoids
|
|
28283
|
+
* allocating in-memory objects for every object.
|
|
28284
|
+
* @example
|
|
28285
|
+
* const primitive = new BufferPrimitive();
|
|
28286
|
+
* for (let i = 0; i < collection.primitiveCount; i++) {
|
|
28287
|
+
* collection.get(i, primitive);
|
|
28288
|
+
* primitive.setColor(Color.RED);
|
|
28289
|
+
* }
|
|
28290
|
+
* @returns The BufferPrimitive instance passed as the
|
|
28291
|
+
* 'result' argument, now bound to the specified primitive index.
|
|
28292
|
+
*/
|
|
28293
|
+
get(index: number, result: BufferPrimitive): BufferPrimitive;
|
|
28294
|
+
/**
|
|
28295
|
+
* Adds a new primitive to the collection, with the specified options. A
|
|
28296
|
+
* {@link BufferPrimitive} instance is linked to the new primitive, using
|
|
28297
|
+
* the 'result' argument if given, or a new instance if not. For repeated
|
|
28298
|
+
* calls, prefer to reuse a single BufferPrimitive instance rather than
|
|
28299
|
+
* allocating a new instance on each call.
|
|
28300
|
+
*/
|
|
28301
|
+
add(options: BufferPrimitiveOptions, result: BufferPrimitive): BufferPrimitive;
|
|
28302
|
+
update(frameState: any): void;
|
|
28303
|
+
/**
|
|
28304
|
+
* Number of primitives in collection. Must be <= {@link primitiveCountMax}.
|
|
28305
|
+
*/
|
|
28306
|
+
readonly primitiveCount: number;
|
|
28307
|
+
/**
|
|
28308
|
+
* Maximum number of primitives this collection can contain. Must be >=
|
|
28309
|
+
* {@link primitiveCount}.
|
|
28310
|
+
*/
|
|
28311
|
+
readonly primitiveCountMax: number;
|
|
28312
|
+
/**
|
|
28313
|
+
* Total byte length of buffers owned by this collection. Includes any unused
|
|
28314
|
+
* space allocated by {@link primitiveCountMax}, even if no primitives have
|
|
28315
|
+
* yet been added in that space.
|
|
28316
|
+
*/
|
|
28317
|
+
readonly byteLength: number;
|
|
28318
|
+
/**
|
|
28319
|
+
* Number of vertices in collection. Must be <= {@link vertexCountMax}.
|
|
28320
|
+
*/
|
|
28321
|
+
readonly vertexCount: number;
|
|
28322
|
+
/**
|
|
28323
|
+
* Maximum number of vertices this collection can contain. Must be >=
|
|
28324
|
+
* {@link vertexCount}.
|
|
28325
|
+
*/
|
|
28326
|
+
readonly vertexCountMax: number;
|
|
28327
|
+
/**
|
|
28328
|
+
* Returns a JSON-serializable array representing the collection. This encoding
|
|
28329
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
28330
|
+
* testing.
|
|
28331
|
+
* @example
|
|
28332
|
+
* console.table(collection.toJSON());
|
|
28333
|
+
* @returns List of JSON-serializable objects, one for each
|
|
28334
|
+
* primitive in the collection.
|
|
28335
|
+
*/
|
|
28336
|
+
toJSON(): object[];
|
|
28337
|
+
}
|
|
28338
|
+
|
|
28339
|
+
/**
|
|
28340
|
+
* @property [color = Color.WHITE] - Color of fill.
|
|
28341
|
+
* @property [outlineColor = Color.WHITE] - Color of outline.
|
|
28342
|
+
* @property [outlineWidth = 0.0] - Width of outline, 0-255px.
|
|
28343
|
+
*/
|
|
28344
|
+
export type BufferPrimitiveMaterialOptions = {
|
|
28345
|
+
color?: Color;
|
|
28346
|
+
outlineColor?: Color;
|
|
28347
|
+
outlineWidth?: number;
|
|
28348
|
+
};
|
|
28349
|
+
|
|
28350
|
+
/**
|
|
28351
|
+
* Material description for a {@link BufferPrimitive}. Abstract.
|
|
28352
|
+
*
|
|
28353
|
+
* <p>BufferPrimitiveMaterial objects are {@link Packable|packable}, stored
|
|
28354
|
+
* when calling {@link BufferPrimitive#setMaterial}. Subsequent changes to the
|
|
28355
|
+
* material will not affect the primitive until setMaterial() is called again.</p>
|
|
28356
|
+
*/
|
|
28357
|
+
export class BufferPrimitiveMaterial {
|
|
28358
|
+
constructor(options?: BufferPrimitiveMaterialOptions);
|
|
28359
|
+
/**
|
|
28360
|
+
* Color of fill.
|
|
28361
|
+
*/
|
|
28362
|
+
color: Color;
|
|
28363
|
+
/**
|
|
28364
|
+
* Color of outline.
|
|
28365
|
+
*/
|
|
28366
|
+
outlineColor: Color;
|
|
28367
|
+
/**
|
|
28368
|
+
* Width of outline, 0-255px.
|
|
28369
|
+
*/
|
|
28370
|
+
outlineWidth: number;
|
|
28371
|
+
static packedLength: number;
|
|
28372
|
+
/**
|
|
28373
|
+
* Stores the provided material into the provided array.
|
|
28374
|
+
*/
|
|
28375
|
+
static pack(material: BufferPrimitiveMaterial, view: DataView, byteOffset: number): void;
|
|
28376
|
+
/**
|
|
28377
|
+
* Retrieves a material from a packed array.
|
|
28378
|
+
* @param view - The packed array.
|
|
28379
|
+
* @param byteOffset - Starting index of the element to be unpacked.
|
|
28380
|
+
* @param result - Material into which results are unpacked.
|
|
28381
|
+
* @returns Modified result material, with results unpacked.
|
|
28382
|
+
*/
|
|
28383
|
+
static unpack(view: DataView, byteOffset: number, result: BufferPrimitiveMaterial): BufferPrimitiveMaterial;
|
|
28384
|
+
/**
|
|
28385
|
+
* Returns a JSON-serializable object representing the material. This encoding
|
|
28386
|
+
* is not memory-efficient, and should generally be used for debugging and
|
|
28387
|
+
* testing.
|
|
28388
|
+
* @returns JSON-serializable object.
|
|
28389
|
+
*/
|
|
28390
|
+
toJSON(): any;
|
|
28391
|
+
}
|
|
28392
|
+
|
|
27588
28393
|
/**
|
|
27589
28394
|
* An orientation given by a pair of unit vectors
|
|
27590
28395
|
* @property direction - The unit "direction" vector
|
|
@@ -31311,12 +32116,14 @@ export function equalsArrayCartesian3(a: Cartesian3[] | undefined, b: Cartesian3
|
|
|
31311
32116
|
* @param [options.polygons = []] - An array of {@link ClippingPolygon} objects used to selectively disable rendering on the inside of each polygon.
|
|
31312
32117
|
* @param [options.enabled = true] - Determines whether the clipping polygons are active.
|
|
31313
32118
|
* @param [options.inverse = false] - If true, a region will be clipped if it is outside of every polygon in the collection. Otherwise, a region will only be clipped if it is on the inside of any polygon.
|
|
32119
|
+
* @param [options.quality = 1.0] - A scalar that controls the resolution of the signed distance texture used for clipping. Values greater than 1.0 increase quality, values less than 1.0 decrease it. Must be greater than 0.0.
|
|
31314
32120
|
*/
|
|
31315
32121
|
export class ClippingPolygonCollection {
|
|
31316
32122
|
constructor(options?: {
|
|
31317
32123
|
polygons?: ClippingPolygon[];
|
|
31318
32124
|
enabled?: boolean;
|
|
31319
32125
|
inverse?: boolean;
|
|
32126
|
+
quality?: number;
|
|
31320
32127
|
});
|
|
31321
32128
|
/**
|
|
31322
32129
|
* If true, clipping will be enabled.
|
|
@@ -31328,6 +32135,11 @@ export class ClippingPolygonCollection {
|
|
|
31328
32135
|
* inside of any polygon.
|
|
31329
32136
|
*/
|
|
31330
32137
|
inverse: boolean;
|
|
32138
|
+
/**
|
|
32139
|
+
* A scalar that controls the resolution of the signed distance texture used for clipping.
|
|
32140
|
+
* Values greater than 1.0 increase quality, values less than 1.0 decrease it. Must be greater than 0.0.
|
|
32141
|
+
*/
|
|
32142
|
+
quality: number;
|
|
31331
32143
|
/**
|
|
31332
32144
|
* An event triggered when a new clipping polygon is added to the collection. Event handlers
|
|
31333
32145
|
* are passed the new polygon and the index at which it was added.
|
|
@@ -31773,7 +32585,7 @@ export namespace CubeMapPanorama {
|
|
|
31773
32585
|
/**
|
|
31774
32586
|
* Initialization options for the CubeMapPanorama constructor
|
|
31775
32587
|
* @property [options.sources] - The source URL or <code>Image</code> object for each of the six cube map faces. See the example below.
|
|
31776
|
-
* @property [options.transform] - A
|
|
32588
|
+
* @property [options.transform] - A 3x3 transformation matrix that defines the panorama’s orientation. If not specified, the default orientation is defined using the True Equator Mean Equinox (TEME) axes.
|
|
31777
32589
|
* @property [options.show = true] - Determines if this primitive will be shown.
|
|
31778
32590
|
* @property [options.credit] - A credit for the panorama, which is displayed on the canvas.
|
|
31779
32591
|
*/
|
|
@@ -31823,9 +32635,9 @@ export class CubeMapPanorama {
|
|
|
31823
32635
|
*/
|
|
31824
32636
|
show: boolean;
|
|
31825
32637
|
/**
|
|
31826
|
-
* Gets the transform of the panorama.
|
|
32638
|
+
* Gets the transform of the panorama. If undefined, the default orientation uses the True Equator Mean Equinox (TEME) axes.
|
|
31827
32639
|
*/
|
|
31828
|
-
readonly transform:
|
|
32640
|
+
readonly transform: Matrix3;
|
|
31829
32641
|
/**
|
|
31830
32642
|
* Gets the credits of the panorama.
|
|
31831
32643
|
*/
|
|
@@ -33100,13 +33912,13 @@ export class GaussianSplat3DTileContent {
|
|
|
33100
33912
|
}
|
|
33101
33913
|
|
|
33102
33914
|
/**
|
|
33103
|
-
* Describes the format in which to request GetFeatureInfo from a Web Map Service (WMS) server.
|
|
33915
|
+
* Describes the format in which to request GetFeatureInfo from a Web Map Service (WMS) or Web Map Tile Service (WMTS) server.
|
|
33104
33916
|
* @param type - The type of response to expect from a GetFeatureInfo request. Valid
|
|
33105
33917
|
* values are 'json', 'xml', 'html', or 'text'.
|
|
33106
|
-
* @param [format] - The info format to request from the
|
|
33918
|
+
* @param [format] - The info format to request from the server. This is usually a
|
|
33107
33919
|
* MIME type such as 'application/json' or text/xml'. If this parameter is not specified, the provider will request 'json'
|
|
33108
33920
|
* using 'application/json', 'xml' using 'text/xml', 'html' using 'text/html', and 'text' using 'text/plain'.
|
|
33109
|
-
* @param [callback] - A function to invoke with the GetFeatureInfo response from the
|
|
33921
|
+
* @param [callback] - A function to invoke with the GetFeatureInfo response from the server
|
|
33110
33922
|
* in order to produce an array of picked {@link ImageryLayerFeatureInfo} instances. If this parameter is not specified,
|
|
33111
33923
|
* a default function for the type of response is used.
|
|
33112
33924
|
*/
|
|
@@ -37332,6 +38144,14 @@ export class Material {
|
|
|
37332
38144
|
* the geometry is expected to appear translucent.
|
|
37333
38145
|
*/
|
|
37334
38146
|
translucent: boolean | ((...params: any[]) => any);
|
|
38147
|
+
/**
|
|
38148
|
+
* The {@link TextureMinificationFilter} to apply to this material's textures.
|
|
38149
|
+
*/
|
|
38150
|
+
minificationFilter: TextureMinificationFilter;
|
|
38151
|
+
/**
|
|
38152
|
+
* The {@link TextureMagnificationFilter} to apply to this material's textures.
|
|
38153
|
+
*/
|
|
38154
|
+
magnificationFilter: TextureMagnificationFilter;
|
|
37335
38155
|
/**
|
|
37336
38156
|
* Creates a new material using an existing material type.
|
|
37337
38157
|
* <br /><br />
|
|
@@ -37491,16 +38311,6 @@ export class Material {
|
|
|
37491
38311
|
static readonly WaterMaskType: string;
|
|
37492
38312
|
}
|
|
37493
38313
|
|
|
37494
|
-
/**
|
|
37495
|
-
* The {@link TextureMinificationFilter} to apply to this material's textures.
|
|
37496
|
-
*/
|
|
37497
|
-
export var minificationFilter: TextureMinificationFilter;
|
|
37498
|
-
|
|
37499
|
-
/**
|
|
37500
|
-
* The {@link TextureMagnificationFilter} to apply to this material's textures.
|
|
37501
|
-
*/
|
|
37502
|
-
export var magnificationFilter: TextureMagnificationFilter;
|
|
37503
|
-
|
|
37504
38314
|
/**
|
|
37505
38315
|
* Loads the images for a cubemap uniform, if it has changed since the last time this was called.
|
|
37506
38316
|
* @param material - The material to load the cubemap images for.
|
|
@@ -37661,11 +38471,6 @@ export namespace MaterialAppearance {
|
|
|
37661
38471
|
}
|
|
37662
38472
|
}
|
|
37663
38473
|
|
|
37664
|
-
/**
|
|
37665
|
-
* Gets or sets the nearest sampling flag.
|
|
37666
|
-
*/
|
|
37667
|
-
export var nearestSampling: boolean;
|
|
37668
|
-
|
|
37669
38474
|
/**
|
|
37670
38475
|
* A metadata class.
|
|
37671
38476
|
*
|
|
@@ -37860,6 +38665,13 @@ export class MetadataClassProperty {
|
|
|
37860
38665
|
* An object containing extensions.
|
|
37861
38666
|
*/
|
|
37862
38667
|
readonly extensions: any;
|
|
38668
|
+
/**
|
|
38669
|
+
* Determines the byte size of a single property element, stored on the GPU.
|
|
38670
|
+
* This differs from the CPU byte size if the element type is a 64-bit type that can be
|
|
38671
|
+
* downcast to a 32-bit type for texture packing (only relevant for textures created from property tables).
|
|
38672
|
+
* @returns The byte size of a single property element on the GPU.
|
|
38673
|
+
*/
|
|
38674
|
+
gpuBytesPerElement(): number;
|
|
37863
38675
|
}
|
|
37864
38676
|
|
|
37865
38677
|
/**
|
|
@@ -38326,6 +39138,15 @@ export enum CustomShaderTranslucencyMode {
|
|
|
38326
39138
|
TRANSLUCENT = 2
|
|
38327
39139
|
}
|
|
38328
39140
|
|
|
39141
|
+
/**
|
|
39142
|
+
* @property colors - The packed per-vertex colors.
|
|
39143
|
+
* @property count - The number of vertices.
|
|
39144
|
+
*/
|
|
39145
|
+
export type VertexColorInfo = {
|
|
39146
|
+
colors: Float32Array;
|
|
39147
|
+
count: number;
|
|
39148
|
+
};
|
|
39149
|
+
|
|
38329
39150
|
export namespace AnchorPointDirect {
|
|
38330
39151
|
/**
|
|
38331
39152
|
* Initialization options for the AnchorPointDirect constructor
|
|
@@ -40473,35 +41294,6 @@ export class PerInstanceColorAppearance {
|
|
|
40473
41294
|
getRenderState(): any;
|
|
40474
41295
|
}
|
|
40475
41296
|
|
|
40476
|
-
/**
|
|
40477
|
-
* The optional ID of the metadata schema
|
|
40478
|
-
*/
|
|
40479
|
-
export var schemaId: string | undefined;
|
|
40480
|
-
|
|
40481
|
-
/**
|
|
40482
|
-
* The name of the metadata class
|
|
40483
|
-
*/
|
|
40484
|
-
export var className: string;
|
|
40485
|
-
|
|
40486
|
-
/**
|
|
40487
|
-
* The name of the metadata property
|
|
40488
|
-
*/
|
|
40489
|
-
export var propertyName: string;
|
|
40490
|
-
|
|
40491
|
-
/**
|
|
40492
|
-
* The the `MetadataClassProperty` that is described by this
|
|
40493
|
-
* structure, as obtained from the `MetadataSchema`
|
|
40494
|
-
*/
|
|
40495
|
-
export var classProperty: MetadataClassProperty;
|
|
40496
|
-
|
|
40497
|
-
/**
|
|
40498
|
-
* The `PropertyTextureProperty` or `PropertyAttributeProperty` that
|
|
40499
|
-
* is described by this structure, as obtained from the property texture
|
|
40500
|
-
* or property attribute of the `StructuralMetadata` that matches the
|
|
40501
|
-
* class name and property name.
|
|
40502
|
-
*/
|
|
40503
|
-
export var metadataProperty: any;
|
|
40504
|
-
|
|
40505
41297
|
/**
|
|
40506
41298
|
* Compute the rectangle that describes the part of the drawing buffer
|
|
40507
41299
|
* that is relevant for picking.
|
|
@@ -43761,10 +44553,6 @@ export class SkyBox {
|
|
|
43761
44553
|
sources?: any;
|
|
43762
44554
|
show?: boolean;
|
|
43763
44555
|
});
|
|
43764
|
-
/**
|
|
43765
|
-
* Determines if the sky box will be shown.
|
|
43766
|
-
*/
|
|
43767
|
-
show: boolean;
|
|
43768
44556
|
/**
|
|
43769
44557
|
* Gets or sets the the primitive object.
|
|
43770
44558
|
*/
|
|
@@ -43806,6 +44594,11 @@ export class SkyBox {
|
|
|
43806
44594
|
static createEarthSkyBox(): SkyBox;
|
|
43807
44595
|
}
|
|
43808
44596
|
|
|
44597
|
+
/**
|
|
44598
|
+
* Determines if the sky box will be shown.
|
|
44599
|
+
*/
|
|
44600
|
+
export var show: boolean;
|
|
44601
|
+
|
|
43809
44602
|
/**
|
|
43810
44603
|
* A ParticleEmitter that emits particles within a sphere.
|
|
43811
44604
|
* Particles will be positioned randomly within the sphere and have initial velocities emanating from the center of the sphere.
|
|
@@ -45429,13 +46222,14 @@ export namespace WebMapServiceImageryProvider {
|
|
|
45429
46222
|
* @property url - The URL of the WMS service. The URL supports the same keywords as the {@link UrlTemplateImageryProvider}.
|
|
45430
46223
|
* @property layers - The layers to include, separated by commas.
|
|
45431
46224
|
* @property [parameters = WebMapServiceImageryProvider.DefaultParameters] - Additional parameters to pass to the WMS server in the GetMap URL.
|
|
45432
|
-
* @property [getFeatureInfoParameters = WebMapServiceImageryProvider.GetFeatureInfoDefaultParameters] - Additional parameters to pass to the WMS server in the GetFeatureInfo URL.
|
|
45433
46225
|
* @property [enablePickFeatures = true] - If true, {@link WebMapServiceImageryProvider#pickFeatures} will invoke
|
|
45434
46226
|
* the GetFeatureInfo operation on the WMS server and return the features included in the response. If false,
|
|
45435
46227
|
* {@link WebMapServiceImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable features)
|
|
45436
46228
|
* without communicating with the server. Set this property to false if you know your WMS server does not support
|
|
45437
46229
|
* GetFeatureInfo or if you don't want this provider's features to be pickable. Note that this can be dynamically
|
|
45438
46230
|
* overridden by modifying the WebMapServiceImageryProvider#enablePickFeatures property.
|
|
46231
|
+
* @property [getFeatureInfoParameters = WebMapServiceImageryProvider.GetFeatureInfoDefaultParameters] - Additional parameters to pass to the WMS server in the GetFeatureInfo URL.
|
|
46232
|
+
* @property [getFeatureInfoUrl] - The getFeatureInfo URL of the WMS service. If the property is not defined then we use the property value of url.
|
|
45439
46233
|
* @property [getFeatureInfoFormats = WebMapServiceImageryProvider.DefaultGetFeatureInfoFormats] - The formats
|
|
45440
46234
|
* in which to try WMS GetFeatureInfo requests.
|
|
45441
46235
|
* @property [rectangle = Rectangle.MAX_VALUE] - The rectangle of the layer.
|
|
@@ -45458,14 +46252,14 @@ export namespace WebMapServiceImageryProvider {
|
|
|
45458
46252
|
* an array, each element in the array is a subdomain.
|
|
45459
46253
|
* @property [clock] - A Clock instance that is used when determining the value for the time dimension. Required when `times` is specified.
|
|
45460
46254
|
* @property [times] - TimeIntervalCollection with its data property being an object containing time dynamic dimension and their values.
|
|
45461
|
-
* @property [getFeatureInfoUrl] - The getFeatureInfo URL of the WMS service. If the property is not defined then we use the property value of url.
|
|
45462
46255
|
*/
|
|
45463
46256
|
type ConstructorOptions = {
|
|
45464
46257
|
url: Resource | string;
|
|
45465
46258
|
layers: string;
|
|
45466
46259
|
parameters?: any;
|
|
45467
|
-
getFeatureInfoParameters?: any;
|
|
45468
46260
|
enablePickFeatures?: boolean;
|
|
46261
|
+
getFeatureInfoParameters?: any;
|
|
46262
|
+
getFeatureInfoUrl?: Resource | string;
|
|
45469
46263
|
getFeatureInfoFormats?: GetFeatureInfoFormat[];
|
|
45470
46264
|
rectangle?: Rectangle;
|
|
45471
46265
|
tilingScheme?: TilingScheme;
|
|
@@ -45480,7 +46274,6 @@ export namespace WebMapServiceImageryProvider {
|
|
|
45480
46274
|
subdomains?: string | string[];
|
|
45481
46275
|
clock?: Clock;
|
|
45482
46276
|
times?: TimeIntervalCollection;
|
|
45483
|
-
getFeatureInfoUrl?: Resource | string;
|
|
45484
46277
|
};
|
|
45485
46278
|
}
|
|
45486
46279
|
|
|
@@ -45639,21 +46432,32 @@ export namespace WebMapTileServiceImageryProvider {
|
|
|
45639
46432
|
* @property layer - The layer name for WMTS requests.
|
|
45640
46433
|
* @property style - The style name for WMTS requests.
|
|
45641
46434
|
* @property tileMatrixSetID - The identifier of the TileMatrixSet to use for WMTS requests.
|
|
45642
|
-
* @property [
|
|
45643
|
-
*
|
|
45644
|
-
*
|
|
45645
|
-
*
|
|
46435
|
+
* @property [enablePickFeatures] - If true, {@link WebMapTileServiceImageryProvider#pickFeatures} will invoke
|
|
46436
|
+
* the GetFeatureInfo operation on the WMTS server and return the features included in the response. If false,
|
|
46437
|
+
* {@link WebMapTileServiceImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable features)
|
|
46438
|
+
* without communicating with the server. Set this property to false if you know your WMTS server does not support
|
|
46439
|
+
* GetFeatureInfo or if you don't want this provider's features to be pickable.
|
|
46440
|
+
* Defaults to true for KVP encoding. For RESTful encoding, defaults to true only when
|
|
46441
|
+
* {@link WebMapTileServiceImageryProvider.ConstructorOptions#getFeatureInfoUrl} is specified, and false otherwise.
|
|
46442
|
+
* @property [getFeatureInfoParameters] - Additional parameters to include in GetFeatureInfo requests. Keys are lowercased internally.
|
|
46443
|
+
* @property [getFeatureInfoUrl] - The GetFeatureInfo URL of the WMTS service. If not specified, the value of <code>url</code> is used.
|
|
46444
|
+
* @property [getFeatureInfoFormats = WebMapTileServiceImageryProvider.DefaultGetFeatureInfoFormats] - The formats
|
|
46445
|
+
* in which to try WMTS GetFeatureInfo requests.
|
|
46446
|
+
* @property [rectangle = Rectangle.MAX_VALUE] - The rectangle covered by the layer.
|
|
46447
|
+
* @property [tilingScheme] - The tiling scheme corresponding to the organization of the tiles in the TileMatrixSet.
|
|
46448
|
+
* @property [ellipsoid] - The ellipsoid. If not specified, the WGS84 ellipsoid is used.
|
|
45646
46449
|
* @property [tileWidth = 256] - The tile width in pixels.
|
|
45647
46450
|
* @property [tileHeight = 256] - The tile height in pixels.
|
|
45648
|
-
* @property [tilingScheme] - The tiling scheme corresponding to the organization of the tiles in the TileMatrixSet.
|
|
45649
|
-
* @property [rectangle = Rectangle.MAX_VALUE] - The rectangle covered by the layer.
|
|
45650
46451
|
* @property [minimumLevel = 0] - The minimum level-of-detail supported by the imagery provider.
|
|
45651
46452
|
* @property [maximumLevel] - The maximum level-of-detail supported by the imagery provider, or undefined if there is no limit.
|
|
45652
|
-
* @property [
|
|
46453
|
+
* @property [tileMatrixLabels] - A list of identifiers in the TileMatrix to use for WMTS requests, one per TileMatrix level.
|
|
45653
46454
|
* @property [credit] - A credit for the data source, which is displayed on the canvas.
|
|
45654
46455
|
* @property [subdomains = 'abc'] - The subdomains to use for the <code>{s}</code> placeholder in the URL template.
|
|
45655
46456
|
* If this parameter is a single string, each character in the string is a subdomain. If it is
|
|
45656
46457
|
* an array, each element in the array is a subdomain.
|
|
46458
|
+
* @property [clock] - A Clock instance that is used when determining the value for the time dimension. Required when `times` is specified.
|
|
46459
|
+
* @property [times] - TimeIntervalCollection with its <code>data</code> property being an object containing time dynamic dimension and their values.
|
|
46460
|
+
* @property [dimensions] - A object containing static dimensions and their values.
|
|
45657
46461
|
*/
|
|
45658
46462
|
type ConstructorOptions = {
|
|
45659
46463
|
url: Resource | string;
|
|
@@ -45661,19 +46465,23 @@ export namespace WebMapTileServiceImageryProvider {
|
|
|
45661
46465
|
layer: string;
|
|
45662
46466
|
style: string;
|
|
45663
46467
|
tileMatrixSetID: string;
|
|
45664
|
-
|
|
45665
|
-
|
|
45666
|
-
|
|
45667
|
-
|
|
46468
|
+
enablePickFeatures?: boolean;
|
|
46469
|
+
getFeatureInfoParameters?: any;
|
|
46470
|
+
getFeatureInfoUrl?: Resource | string;
|
|
46471
|
+
getFeatureInfoFormats?: GetFeatureInfoFormat[];
|
|
46472
|
+
rectangle?: Rectangle;
|
|
46473
|
+
tilingScheme?: TilingScheme;
|
|
46474
|
+
ellipsoid?: Ellipsoid;
|
|
45668
46475
|
tileWidth?: number;
|
|
45669
46476
|
tileHeight?: number;
|
|
45670
|
-
tilingScheme?: TilingScheme;
|
|
45671
|
-
rectangle?: Rectangle;
|
|
45672
46477
|
minimumLevel?: number;
|
|
45673
46478
|
maximumLevel?: number;
|
|
45674
|
-
|
|
46479
|
+
tileMatrixLabels?: any[];
|
|
45675
46480
|
credit?: Credit | string;
|
|
45676
46481
|
subdomains?: string | string[];
|
|
46482
|
+
clock?: Clock;
|
|
46483
|
+
times?: TimeIntervalCollection;
|
|
46484
|
+
dimensions?: any;
|
|
45677
46485
|
};
|
|
45678
46486
|
}
|
|
45679
46487
|
|
|
@@ -45706,27 +46514,85 @@ export namespace WebMapTileServiceImageryProvider {
|
|
|
45706
46514
|
* });
|
|
45707
46515
|
* viewer.imageryLayers.addImageryProvider(shadedRelief2);
|
|
45708
46516
|
* @example
|
|
45709
|
-
* // Example 3
|
|
46517
|
+
* // Example 3: NASA time dynamic snowpack data (RESTful)
|
|
46518
|
+
* // Define time intervals for the layer based on the capabilities XML
|
|
45710
46519
|
* const times = Cesium.TimeIntervalCollection.fromIso8601({
|
|
45711
|
-
* iso8601: '
|
|
45712
|
-
* dataCallback: function
|
|
45713
|
-
*
|
|
45714
|
-
*
|
|
45715
|
-
*
|
|
45716
|
-
*
|
|
46520
|
+
* iso8601: '2025-01-01/2025-09-01/P5D', // Use the valid interval(s) from the Dimension section
|
|
46521
|
+
* dataCallback: function(interval, index) {
|
|
46522
|
+
* // Return an object with the Time variable used in the URL template
|
|
46523
|
+
* return {
|
|
46524
|
+
* Time: Cesium.JulianDate.toIso8601(interval.start, 0)
|
|
46525
|
+
* };
|
|
46526
|
+
* }
|
|
45717
46527
|
* });
|
|
46528
|
+
* // Get the internal clock, set desired start, stop, and multiplier
|
|
46529
|
+
* const clock = viewer.clock;
|
|
46530
|
+
* clock.startTime = Cesium.JulianDate.fromIso8601('2025-01-01');
|
|
46531
|
+
* clock.currentTime = Cesium.JulianDate.fromIso8601('2025-01-01');
|
|
46532
|
+
* clock.stopTime = Cesium.JulianDate.fromIso8601('2025-09-01');
|
|
46533
|
+
* clock.clockRange = Cesium.ClockRange.LOOP_STOP;
|
|
46534
|
+
* clock.multiplier = 1; // 1 day per second
|
|
46535
|
+
* clock.clockStep = Cesium.ClockStep.SYSTEM_CLOCK_MULTIPLIER;
|
|
46536
|
+
*
|
|
46537
|
+
* viewer.timeline.zoomTo(clock.startTime, clock.stopTime);
|
|
46538
|
+
*
|
|
45718
46539
|
* const weather = new Cesium.WebMapTileServiceImageryProvider({
|
|
45719
|
-
* url
|
|
45720
|
-
* layer
|
|
45721
|
-
* style
|
|
45722
|
-
* tileMatrixSetID
|
|
45723
|
-
*
|
|
45724
|
-
* format : 'image/png',
|
|
46540
|
+
* url: 'https://gibs.earthdata.nasa.gov/wmts/epsg3857/best/AMSRU2_Snow_Water_Equivalent_5Day/default/{Time}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}.png',
|
|
46541
|
+
* layer: 'AMSRU2_Snow_Water_Equivalent_5Day',
|
|
46542
|
+
* style: 'default',
|
|
46543
|
+
* tileMatrixSetID: 'GoogleMapsCompatible_Level6',
|
|
46544
|
+
* format: 'image/png',
|
|
45725
46545
|
* clock: clock,
|
|
45726
46546
|
* times: times,
|
|
45727
|
-
* credit
|
|
46547
|
+
* credit: new Cesium.Credit('NASA Global Imagery Browse Services for EOSDIS')
|
|
45728
46548
|
* });
|
|
45729
46549
|
* viewer.imageryLayers.addImageryProvider(weather);
|
|
46550
|
+
* @example
|
|
46551
|
+
* // Example 4. Digital Earth AfricA waterbodies with GetFeatureInfo support (RESTful)
|
|
46552
|
+
* const waterbodies = new Cesium.WebMapTileServiceImageryProvider({
|
|
46553
|
+
* url: "https://geoserver.digitalearth.africa/geoserver/gwc/service/wmts/rest/{layer}/{style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}?format={format}",
|
|
46554
|
+
* layer: "waterbodies:DEAfrica_Waterbodies",
|
|
46555
|
+
* style: "waterbodies:waterbodies_v0_0_4",
|
|
46556
|
+
* tileMatrixSetID: "EPSG:3857",
|
|
46557
|
+
* tileMatrixLabels: [
|
|
46558
|
+
* "EPSG:3857:0",
|
|
46559
|
+
* "EPSG:3857:1",
|
|
46560
|
+
* "EPSG:3857:2",
|
|
46561
|
+
* "EPSG:3857:3",
|
|
46562
|
+
* "EPSG:3857:4",
|
|
46563
|
+
* "EPSG:3857:5",
|
|
46564
|
+
* "EPSG:3857:6",
|
|
46565
|
+
* "EPSG:3857:7",
|
|
46566
|
+
* "EPSG:3857:8",
|
|
46567
|
+
* "EPSG:3857:9",
|
|
46568
|
+
* "EPSG:3857:10",
|
|
46569
|
+
* "EPSG:3857:11",
|
|
46570
|
+
* "EPSG:3857:12",
|
|
46571
|
+
* "EPSG:3857:13",
|
|
46572
|
+
* "EPSG:3857:14",
|
|
46573
|
+
* "EPSG:3857:15",
|
|
46574
|
+
* "EPSG:3857:16",
|
|
46575
|
+
* "EPSG:3857:17",
|
|
46576
|
+
* "EPSG:3857:18",
|
|
46577
|
+
* "EPSG:3857:19",
|
|
46578
|
+
* "EPSG:3857:20",
|
|
46579
|
+
* "EPSG:3857:21",
|
|
46580
|
+
* "EPSG:3857:22",
|
|
46581
|
+
* "EPSG:3857:23",
|
|
46582
|
+
* "EPSG:3857:24",
|
|
46583
|
+
* "EPSG:3857:25",
|
|
46584
|
+
* "EPSG:3857:26",
|
|
46585
|
+
* "EPSG:3857:27",
|
|
46586
|
+
* "EPSG:3857:28",
|
|
46587
|
+
* "EPSG:3857:29",
|
|
46588
|
+
* "EPSG:3857:30",
|
|
46589
|
+
* ],
|
|
46590
|
+
* format: "image/png",
|
|
46591
|
+
* enablePickFeatures: true,
|
|
46592
|
+
* getFeatureInfoUrl: "https://geoserver.digitalearth.africa/geoserver/gwc/service/wmts/rest/{layer}/{style}/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}/{j}/{i}?format={format}",
|
|
46593
|
+
* });
|
|
46594
|
+
*
|
|
46595
|
+
* viewer.imageryLayers.addImageryProvider(waterbodies);
|
|
45730
46596
|
* @param options - Object describing initialization options
|
|
45731
46597
|
*/
|
|
45732
46598
|
export class WebMapTileServiceImageryProvider {
|
|
@@ -45792,6 +46658,16 @@ export class WebMapTileServiceImageryProvider {
|
|
|
45792
46658
|
* and texture upload time are reduced.
|
|
45793
46659
|
*/
|
|
45794
46660
|
readonly hasAlphaChannel: boolean;
|
|
46661
|
+
/**
|
|
46662
|
+
* Gets or sets a value indicating whether feature picking is enabled. If true, {@link WebMapTileServiceImageryProvider#pickFeatures} will
|
|
46663
|
+
* invoke the <code>GetFeatureInfo</code> service on the WMTS server and attempt to interpret the features included in the response. If false,
|
|
46664
|
+
* {@link WebMapTileServiceImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable
|
|
46665
|
+
* features) without communicating with the server. Set this property to false if you know your data
|
|
46666
|
+
* source does not support picking features or if you don't want this provider's features to be pickable.
|
|
46667
|
+
* Defaults to true for KVP encoding. For RESTful encoding, defaults to true only when
|
|
46668
|
+
* {@link WebMapTileServiceImageryProvider.ConstructorOptions#getFeatureInfoUrl} is specified, and false otherwise.
|
|
46669
|
+
*/
|
|
46670
|
+
enablePickFeatures: boolean;
|
|
45795
46671
|
/**
|
|
45796
46672
|
* Gets or sets a clock that is used to get keep the time used for time dynamic parameters.
|
|
45797
46673
|
*/
|
|
@@ -45806,6 +46682,10 @@ export class WebMapTileServiceImageryProvider {
|
|
|
45806
46682
|
* Gets or sets an object that contains static dimensions and their values.
|
|
45807
46683
|
*/
|
|
45808
46684
|
dimensions: any;
|
|
46685
|
+
/**
|
|
46686
|
+
* Gets the getFeatureInfo URL of the WMTS server.
|
|
46687
|
+
*/
|
|
46688
|
+
readonly getFeatureInfoUrl: Resource | string;
|
|
45809
46689
|
/**
|
|
45810
46690
|
* Gets the credits to be displayed when a given tile is displayed.
|
|
45811
46691
|
* @param x - The tile X coordinate.
|
|
@@ -45825,16 +46705,32 @@ export class WebMapTileServiceImageryProvider {
|
|
|
45825
46705
|
*/
|
|
45826
46706
|
requestImage(x: number, y: number, level: number, request?: Request): Promise<ImageryTypes> | undefined;
|
|
45827
46707
|
/**
|
|
45828
|
-
*
|
|
45829
|
-
*
|
|
46708
|
+
* Asynchronously determines what features, if any, are located at a given longitude and latitude within
|
|
46709
|
+
* a tile.
|
|
45830
46710
|
* @param x - The tile X coordinate.
|
|
45831
46711
|
* @param y - The tile Y coordinate.
|
|
45832
46712
|
* @param level - The tile level.
|
|
45833
46713
|
* @param longitude - The longitude at which to pick features.
|
|
45834
46714
|
* @param latitude - The latitude at which to pick features.
|
|
45835
|
-
* @returns
|
|
46715
|
+
* @returns A promise for the picked features that will resolve when the asynchronous
|
|
46716
|
+
* picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
|
|
46717
|
+
* instances. The array may be empty if no features are found at the given location.
|
|
45836
46718
|
*/
|
|
45837
|
-
pickFeatures(x: number, y: number, level: number, longitude: number, latitude: number): undefined;
|
|
46719
|
+
pickFeatures(x: number, y: number, level: number, longitude: number, latitude: number): Promise<ImageryLayerFeatureInfo[]> | undefined;
|
|
46720
|
+
/**
|
|
46721
|
+
* The default parameters to include in the WMTS URL to obtain images. The values are as follows:
|
|
46722
|
+
* service=WMTS
|
|
46723
|
+
* version=1.0.0
|
|
46724
|
+
* request=GetTile
|
|
46725
|
+
*/
|
|
46726
|
+
static readonly DefaultParameters: any;
|
|
46727
|
+
/**
|
|
46728
|
+
* The default parameters to include in the WMTS URL to get feature information. The values are as follows:
|
|
46729
|
+
* service=WMTS
|
|
46730
|
+
* version=1.0.0
|
|
46731
|
+
* request=GetFeatureInfo
|
|
46732
|
+
*/
|
|
46733
|
+
static readonly GetFeatureInfoDefaultParameters: any;
|
|
45838
46734
|
}
|
|
45839
46735
|
|
|
45840
46736
|
/**
|