mars3d-cesium 1.90.2 → 1.91.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.
Files changed (89) hide show
  1. package/Build/Cesium/Cesium.d.ts +470 -120
  2. package/Build/Cesium/Cesium.js +5 -5
  3. package/Build/Cesium/ThirdParty/Workers/draco_decoder_nodejs.js +114 -115
  4. package/Build/Cesium/ThirdParty/draco_decoder.wasm +0 -0
  5. package/Build/Cesium/Workers/{AttributeCompression-6b1e8028.js → AttributeCompression-0ee09568.js} +1 -1
  6. package/Build/Cesium/Workers/AxisAlignedBoundingBox-0ebb51f1.js +1 -0
  7. package/Build/Cesium/Workers/{BoundingRectangle-472718f2.js → BoundingRectangle-8d15888c.js} +1 -1
  8. package/Build/Cesium/Workers/{BoxGeometry-18720853.js → BoxGeometry-91a65404.js} +1 -1
  9. package/Build/Cesium/Workers/{Color-f5eecef5.js → Color-f48e883d.js} +1 -1
  10. package/Build/Cesium/Workers/{CoplanarPolygonGeometryLibrary-459ad8f1.js → CoplanarPolygonGeometryLibrary-9fd8c9bf.js} +1 -1
  11. package/Build/Cesium/Workers/{CorridorGeometryLibrary-6b404f7b.js → CorridorGeometryLibrary-2c8a56b1.js} +1 -1
  12. package/Build/Cesium/Workers/{CylinderGeometry-18b30c7a.js → CylinderGeometry-4c9fdff8.js} +1 -1
  13. package/Build/Cesium/Workers/{EllipseGeometry-4e0657ad.js → EllipseGeometry-2c8825bb.js} +1 -1
  14. package/Build/Cesium/Workers/{EllipseGeometryLibrary-d00be24e.js → EllipseGeometryLibrary-2c9e8629.js} +1 -1
  15. package/Build/Cesium/Workers/{EllipseOutlineGeometry-14d539df.js → EllipseOutlineGeometry-5a01e7f9.js} +1 -1
  16. package/Build/Cesium/Workers/{EllipsoidGeodesic-e91747c0.js → EllipsoidGeodesic-412b0c43.js} +1 -1
  17. package/Build/Cesium/Workers/{EllipsoidGeometry-eb5ab9a2.js → EllipsoidGeometry-51deea95.js} +1 -1
  18. package/Build/Cesium/Workers/{EllipsoidOutlineGeometry-e238cb88.js → EllipsoidOutlineGeometry-6f5a7019.js} +1 -1
  19. package/Build/Cesium/Workers/{EllipsoidRhumbLine-15aed367.js → EllipsoidRhumbLine-0893952b.js} +1 -1
  20. package/Build/Cesium/Workers/{EllipsoidTangentPlane-7095b5e7.js → EllipsoidTangentPlane-3f1b123a.js} +1 -1
  21. package/Build/Cesium/Workers/{EncodedCartesian3-39245db5.js → EncodedCartesian3-55eee0ea.js} +1 -1
  22. package/Build/Cesium/Workers/{FrustumGeometry-1b73289d.js → FrustumGeometry-33d96e4a.js} +1 -1
  23. package/Build/Cesium/Workers/{GeometryAttribute-727885bb.js → GeometryAttribute-4b6dfc85.js} +1 -1
  24. package/Build/Cesium/Workers/{GeometryInstance-76340cd7.js → GeometryInstance-28411208.js} +1 -1
  25. package/Build/Cesium/Workers/{GeometryPipeline-a8cfaf59.js → GeometryPipeline-c36432c1.js} +1 -1
  26. package/Build/Cesium/Workers/{IntersectionTests-65655905.js → IntersectionTests-3a1d2826.js} +1 -1
  27. package/Build/Cesium/Workers/Matrix2-f0fc6cd3.js +1 -0
  28. package/Build/Cesium/Workers/OrientedBoundingBox-1136cfae.js +1 -0
  29. package/Build/Cesium/Workers/{Plane-1217b5b0.js → Plane-863ea815.js} +1 -1
  30. package/Build/Cesium/Workers/{PolygonGeometryLibrary-090c0f88.js → PolygonGeometryLibrary-0cf237e6.js} +1 -1
  31. package/Build/Cesium/Workers/{PolygonPipeline-83aaf7c0.js → PolygonPipeline-583f5389.js} +1 -1
  32. package/Build/Cesium/Workers/{PolylinePipeline-d2c6257d.js → PolylinePipeline-8d9de722.js} +1 -1
  33. package/Build/Cesium/Workers/PolylineVolumeGeometryLibrary-d3ae69ea.js +1 -0
  34. package/Build/Cesium/Workers/{PrimitivePipeline-013e1b6d.js → PrimitivePipeline-1907e610.js} +1 -1
  35. package/Build/Cesium/Workers/{RectangleGeometryLibrary-736ca455.js → RectangleGeometryLibrary-a2a41ed9.js} +1 -1
  36. package/Build/Cesium/Workers/{TerrainEncoding-44e54c59.js → TerrainEncoding-047c0bfb.js} +1 -1
  37. package/Build/Cesium/Workers/Transforms-4a1d2c0e.js +39 -0
  38. package/Build/Cesium/Workers/{WallGeometryLibrary-03faef07.js → WallGeometryLibrary-5c745ea0.js} +1 -1
  39. package/Build/Cesium/Workers/{WebMercatorProjection-7e9b3a0d.js → WebMercatorProjection-9d9a5a33.js} +1 -1
  40. package/Build/Cesium/Workers/combineGeometry.js +1 -1
  41. package/Build/Cesium/Workers/createBoxGeometry.js +1 -1
  42. package/Build/Cesium/Workers/createBoxOutlineGeometry.js +1 -1
  43. package/Build/Cesium/Workers/createCircleGeometry.js +1 -1
  44. package/Build/Cesium/Workers/createCircleOutlineGeometry.js +1 -1
  45. package/Build/Cesium/Workers/createCoplanarPolygonGeometry.js +1 -1
  46. package/Build/Cesium/Workers/createCoplanarPolygonOutlineGeometry.js +1 -1
  47. package/Build/Cesium/Workers/createCorridorGeometry.js +1 -1
  48. package/Build/Cesium/Workers/createCorridorOutlineGeometry.js +1 -1
  49. package/Build/Cesium/Workers/createCylinderGeometry.js +1 -1
  50. package/Build/Cesium/Workers/createCylinderOutlineGeometry.js +1 -1
  51. package/Build/Cesium/Workers/createEllipseGeometry.js +1 -1
  52. package/Build/Cesium/Workers/createEllipseOutlineGeometry.js +1 -1
  53. package/Build/Cesium/Workers/createEllipsoidGeometry.js +1 -1
  54. package/Build/Cesium/Workers/createEllipsoidOutlineGeometry.js +1 -1
  55. package/Build/Cesium/Workers/createFrustumGeometry.js +1 -1
  56. package/Build/Cesium/Workers/createFrustumOutlineGeometry.js +1 -1
  57. package/Build/Cesium/Workers/createGeometry.js +1 -1
  58. package/Build/Cesium/Workers/createGroundPolylineGeometry.js +1 -1
  59. package/Build/Cesium/Workers/createPlaneGeometry.js +1 -1
  60. package/Build/Cesium/Workers/createPlaneOutlineGeometry.js +1 -1
  61. package/Build/Cesium/Workers/createPolygonGeometry.js +1 -1
  62. package/Build/Cesium/Workers/createPolygonOutlineGeometry.js +1 -1
  63. package/Build/Cesium/Workers/createPolylineGeometry.js +1 -1
  64. package/Build/Cesium/Workers/createPolylineVolumeGeometry.js +1 -1
  65. package/Build/Cesium/Workers/createPolylineVolumeOutlineGeometry.js +1 -1
  66. package/Build/Cesium/Workers/createRectangleGeometry.js +1 -1
  67. package/Build/Cesium/Workers/createRectangleOutlineGeometry.js +1 -1
  68. package/Build/Cesium/Workers/createSimplePolylineGeometry.js +1 -1
  69. package/Build/Cesium/Workers/createSphereGeometry.js +1 -1
  70. package/Build/Cesium/Workers/createSphereOutlineGeometry.js +1 -1
  71. package/Build/Cesium/Workers/createVectorTileClampedPolylines.js +1 -1
  72. package/Build/Cesium/Workers/createVectorTileGeometries.js +1 -1
  73. package/Build/Cesium/Workers/createVectorTilePoints.js +1 -1
  74. package/Build/Cesium/Workers/createVectorTilePolygons.js +1 -1
  75. package/Build/Cesium/Workers/createVectorTilePolylines.js +1 -1
  76. package/Build/Cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
  77. package/Build/Cesium/Workers/createVerticesFromHeightmap.js +1 -1
  78. package/Build/Cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +1 -1
  79. package/Build/Cesium/Workers/createWallGeometry.js +1 -1
  80. package/Build/Cesium/Workers/createWallOutlineGeometry.js +1 -1
  81. package/Build/Cesium/Workers/decodeDraco.js +1 -1
  82. package/Build/Cesium/Workers/upsampleQuantizedTerrainMesh.js +1 -1
  83. package/LICENSE.md +1216 -1208
  84. package/package.json +3 -3
  85. package/Build/Cesium/Workers/AxisAlignedBoundingBox-b31bb45f.js +0 -1
  86. package/Build/Cesium/Workers/Matrix2-d1511f33.js +0 -1
  87. package/Build/Cesium/Workers/OrientedBoundingBox-9ee6ad06.js +0 -1
  88. package/Build/Cesium/Workers/PolylineVolumeGeometryLibrary-1864c95f.js +0 -1
  89. package/Build/Cesium/Workers/Transforms-46cc38bd.js +0 -39
@@ -790,6 +790,17 @@ export class AxisAlignedBoundingBox {
790
790
  * The center point of the bounding box.
791
791
  */
792
792
  center: Cartesian3;
793
+ /**
794
+ * Creates an instance of an AxisAlignedBoundingBox from its corners.
795
+ * @example
796
+ * // Compute an axis aligned bounding box from the two corners.
797
+ const box = Cesium.AxisAlignedBoundingBox.fromCorners(new Cesium.Cartesian3(-1, -1, -1), new Cesium.Cartesian3(1, 1, 1));
798
+ * @param minimum - The minimum point along the x, y, and z axes.
799
+ * @param maximum - The maximum point along the x, y, and z axes.
800
+ * @param [result] - The object onto which to store the result.
801
+ * @returns The modified result parameter or a new AxisAlignedBoundingBox instance if one was not provided.
802
+ */
803
+ static fromCorners(minimum: Cartesian3, maximum: Cartesian3, result?: AxisAlignedBoundingBox): AxisAlignedBoundingBox;
793
804
  /**
794
805
  * Computes an instance of an AxisAlignedBoundingBox. The box is determined by
795
806
  finding the points spaced the farthest apart on the x, y, and z axes.
@@ -1174,6 +1185,13 @@ export class BoundingSphere {
1174
1185
  * @returns The modified result parameter or a new BoundingSphere instance if none was provided.
1175
1186
  */
1176
1187
  static fromOrientedBoundingBox(orientedBoundingBox: OrientedBoundingBox, result?: BoundingSphere): BoundingSphere;
1188
+ /**
1189
+ * Computes a tight-fitting bounding sphere enclosing the provided affine transformation.
1190
+ * @param transformation - The affine transformation.
1191
+ * @param [result] - The object onto which to store the result.
1192
+ * @returns The modified result parameter or a new BoundingSphere instance if none was provided.
1193
+ */
1194
+ static fromTransformation(transformation: Matrix4, result?: BoundingSphere): BoundingSphere;
1177
1195
  /**
1178
1196
  * Duplicates a BoundingSphere instance.
1179
1197
  * @param sphere - The bounding sphere to duplicate.
@@ -1594,14 +1612,14 @@ export class Cartesian2 {
1594
1612
  */
1595
1613
  static unpack(array: number[], startingIndex?: number, result?: Cartesian2): Cartesian2;
1596
1614
  /**
1597
- * Flattens an array of Cartesian2s into and array of components.
1615
+ * Flattens an array of Cartesian2s into an array of components.
1598
1616
  * @param array - The array of cartesians to pack.
1599
1617
  * @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.
1600
1618
  * @returns The packed array.
1601
1619
  */
1602
1620
  static packArray(array: Cartesian2[], result?: number[]): number[];
1603
1621
  /**
1604
- * Unpacks an array of cartesian components into and array of Cartesian2s.
1622
+ * Unpacks an array of cartesian components into an array of Cartesian2s.
1605
1623
  * @param array - The array of components to unpack.
1606
1624
  * @param [result] - The array onto which to store the result.
1607
1625
  * @returns The unpacked array.
@@ -2344,14 +2362,14 @@ export class Cartesian4 {
2344
2362
  */
2345
2363
  static unpack(array: number[], startingIndex?: number, result?: Cartesian4): Cartesian4;
2346
2364
  /**
2347
- * Flattens an array of Cartesian4s into and array of components.
2365
+ * Flattens an array of Cartesian4s into an array of components.
2348
2366
  * @param array - The array of cartesians to pack.
2349
2367
  * @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.
2350
2368
  * @returns The packed array.
2351
2369
  */
2352
2370
  static packArray(array: Cartesian4[], result?: number[]): number[];
2353
2371
  /**
2354
- * Unpacks an array of cartesian components into and array of Cartesian4s.
2372
+ * Unpacks an array of cartesian components into an array of Cartesian4s.
2355
2373
  * @param array - The array of components to unpack.
2356
2374
  * @param [result] - The array onto which to store the result.
2357
2375
  * @returns The unpacked array.
@@ -4810,7 +4828,7 @@ export class Credit {
4810
4828
  /**
4811
4829
  * Whether the credit should be displayed on screen or in a lightbox
4812
4830
  */
4813
- readonly showOnScreen: boolean;
4831
+ showOnScreen: boolean;
4814
4832
  /**
4815
4833
  * Gets the credit element
4816
4834
  */
@@ -7397,7 +7415,7 @@ into a canvas so it can read the pixels back.
7397
7415
  * @param height - The height of the image. If not defined, then image.height is assigned.
7398
7416
  * @returns The pixels of the image.
7399
7417
  */
7400
- export function getImagePixels(image: HTMLImageElement, width: number, height: number): ImageData;
7418
+ export function getImagePixels(image: HTMLImageElement | ImageBitmap, width: number, height: number): ImageData;
7401
7419
 
7402
7420
  /**
7403
7421
  * Gets a timestamp that can be used in measuring the time between events. Timestamps
@@ -9678,6 +9696,21 @@ export class Matrix2 implements ArrayLike<number> {
9678
9696
  * @returns The modified result parameter or a new Matrix2 instance if one was not provided.
9679
9697
  */
9680
9698
  static unpack(array: number[], startingIndex?: number, result?: Matrix2): Matrix2;
9699
+ /**
9700
+ * Flattens an array of Matrix2s into an array of components. The components
9701
+ are stored in column-major order.
9702
+ * @param array - The array of matrices to pack.
9703
+ * @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.
9704
+ * @returns The packed array.
9705
+ */
9706
+ static packArray(array: Matrix2[], result?: number[]): number[];
9707
+ /**
9708
+ * Unpacks an array of column-major matrix components into an array of Matrix2s.
9709
+ * @param array - The array of components to unpack.
9710
+ * @param [result] - The array onto which to store the result.
9711
+ * @returns The unpacked array.
9712
+ */
9713
+ static unpackArray(array: number[], result?: Matrix2[]): Matrix2[];
9681
9714
  /**
9682
9715
  * Duplicates a Matrix2 instance.
9683
9716
  * @param matrix - The matrix to duplicate.
@@ -9698,12 +9731,8 @@ export class Matrix2 implements ArrayLike<number> {
9698
9731
  // Create same Matrix2 with using an offset into an array
9699
9732
  const v2 = [0.0, 0.0, 1.0, 1.0, 2.0, 2.0];
9700
9733
  const m2 = Cesium.Matrix2.fromArray(v2, 2);
9701
- * @param array - The array whose 4 consecutive elements correspond to the positions of the matrix. Assumes column-major order.
9702
- * @param [startingIndex = 0] - The offset into the array of the first element, which corresponds to first column first row position in the matrix.
9703
- * @param [result] - The object onto which to store the result.
9704
- * @returns The modified result parameter or a new Matrix2 instance if one was not provided.
9705
9734
  */
9706
- static fromArray(array: number[], startingIndex?: number, result?: Matrix2): Matrix2;
9735
+ static fromArray: any;
9707
9736
  /**
9708
9737
  * Creates a Matrix2 instance from a column-major order array.
9709
9738
  * @param values - The column-major order array.
@@ -9809,6 +9838,24 @@ export class Matrix2 implements ArrayLike<number> {
9809
9838
  * @returns The modified result parameter.
9810
9839
  */
9811
9840
  static setRow(matrix: Matrix2, index: number, cartesian: Cartesian2, result: Matrix2): Matrix2;
9841
+ /**
9842
+ * Computes a new matrix that replaces the scale with the provided scale.
9843
+ This assumes the matrix is an affine transformation.
9844
+ * @param matrix - The matrix to use.
9845
+ * @param scale - The scale that replaces the scale of the provided matrix.
9846
+ * @param result - The object onto which to store the result.
9847
+ * @returns The modified result parameter.
9848
+ */
9849
+ static setScale(matrix: Matrix2, scale: Cartesian2, result: Matrix2): Matrix2;
9850
+ /**
9851
+ * Computes a new matrix that replaces the scale with the provided uniform scale.
9852
+ This assumes the matrix is an affine transformation.
9853
+ * @param matrix - The matrix to use.
9854
+ * @param scale - The uniform scale that replaces the scale of the provided matrix.
9855
+ * @param result - The object onto which to store the result.
9856
+ * @returns The modified result parameter.
9857
+ */
9858
+ static setUniformScale(matrix: Matrix2, scale: number, result: Matrix2): Matrix2;
9812
9859
  /**
9813
9860
  * Extracts the non-uniform scale assuming the matrix is an affine transformation.
9814
9861
  * @param matrix - The matrix.
@@ -9823,6 +9870,20 @@ export class Matrix2 implements ArrayLike<number> {
9823
9870
  * @returns The maximum scale.
9824
9871
  */
9825
9872
  static getMaximumScale(matrix: Matrix2): number;
9873
+ /**
9874
+ * Sets the rotation assuming the matrix is an affine transformation.
9875
+ * @param matrix - The matrix.
9876
+ * @param rotation - The rotation matrix.
9877
+ * @returns The modified result parameter.
9878
+ */
9879
+ static setRotation(matrix: Matrix2, rotation: Matrix2): Matrix2;
9880
+ /**
9881
+ * Extracts the rotation matrix assuming the matrix is an affine transformation.
9882
+ * @param matrix - The matrix.
9883
+ * @param result - The object onto which to store the result.
9884
+ * @returns The modified result parameter.
9885
+ */
9886
+ static getRotation(matrix: Matrix2, result: Matrix2): Matrix2;
9826
9887
  /**
9827
9888
  * Computes the product of two matrices.
9828
9889
  * @param left - The first matrix.
@@ -9873,7 +9934,18 @@ export class Matrix2 implements ArrayLike<number> {
9873
9934
  * @param result - The object onto which to store the result.
9874
9935
  * @returns The modified result parameter.
9875
9936
  */
9876
- static multiplyByScale(matrix: Matrix2, scale: Cartesian2, result: Matrix2): Matrix2;
9937
+ static multiplyByScale(matrix: Matrix2, scale: number, result: Matrix2): Matrix2;
9938
+ /**
9939
+ * Computes the product of a matrix times a uniform scale, as if the scale were a scale matrix.
9940
+ * @example
9941
+ * // Instead of Cesium.Matrix2.multiply(m, Cesium.Matrix2.fromUniformScale(scale), m);
9942
+ Cesium.Matrix2.multiplyByUniformScale(m, scale, m);
9943
+ * @param matrix - The matrix on the left-hand side.
9944
+ * @param scale - The uniform scale on the right-hand side.
9945
+ * @param result - The object onto which to store the result.
9946
+ * @returns The modified result parameter.
9947
+ */
9948
+ static multiplyByUniformScale(matrix: Matrix2, scale: number, result: Matrix2): Matrix2;
9877
9949
  /**
9878
9950
  * Creates a negated copy of the provided matrix.
9879
9951
  * @param matrix - The matrix to negate.
@@ -10021,6 +10093,21 @@ export class Matrix3 implements ArrayLike<number> {
10021
10093
  * @returns The modified result parameter or a new Matrix3 instance if one was not provided.
10022
10094
  */
10023
10095
  static unpack(array: number[], startingIndex?: number, result?: Matrix3): Matrix3;
10096
+ /**
10097
+ * Flattens an array of Matrix3s into an array of components. The components
10098
+ are stored in column-major order.
10099
+ * @param array - The array of matrices to pack.
10100
+ * @param [result] - The array onto which to store the result. If this is a typed array, it must have array.length * 9 components, else a {@link DeveloperError} will be thrown. If it is a regular array, it will be resized to have (array.length * 9) elements.
10101
+ * @returns The packed array.
10102
+ */
10103
+ static packArray(array: Matrix3[], result?: number[]): number[];
10104
+ /**
10105
+ * Unpacks an array of column-major matrix components into an array of Matrix3s.
10106
+ * @param array - The array of components to unpack.
10107
+ * @param [result] - The array onto which to store the result.
10108
+ * @returns The unpacked array.
10109
+ */
10110
+ static unpackArray(array: number[], result?: Matrix3[]): Matrix3[];
10024
10111
  /**
10025
10112
  * Duplicates a Matrix3 instance.
10026
10113
  * @param matrix - The matrix to duplicate.
@@ -10042,12 +10129,8 @@ export class Matrix3 implements ArrayLike<number> {
10042
10129
  // Create same Matrix3 with using an offset into an array
10043
10130
  const v2 = [0.0, 0.0, 1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0, 3.0];
10044
10131
  const m2 = Cesium.Matrix3.fromArray(v2, 2);
10045
- * @param array - The array whose 9 consecutive elements correspond to the positions of the matrix. Assumes column-major order.
10046
- * @param [startingIndex = 0] - The offset into the array of the first element, which corresponds to first column first row position in the matrix.
10047
- * @param [result] - The object onto which to store the result.
10048
- * @returns The modified result parameter or a new Matrix3 instance if one was not provided.
10049
10132
  */
10050
- static fromArray(array: number[], startingIndex?: number, result?: Matrix3): Matrix3;
10133
+ static fromArray: any;
10051
10134
  /**
10052
10135
  * Creates a Matrix3 instance from a column-major order array.
10053
10136
  * @param values - The column-major order array.
@@ -10206,6 +10289,24 @@ export class Matrix3 implements ArrayLike<number> {
10206
10289
  * @returns The modified result parameter.
10207
10290
  */
10208
10291
  static setRow(matrix: Matrix3, index: number, cartesian: Cartesian3, result: Matrix3): Matrix3;
10292
+ /**
10293
+ * Computes a new matrix that replaces the scale with the provided scale.
10294
+ This assumes the matrix is an affine transformation.
10295
+ * @param matrix - The matrix to use.
10296
+ * @param scale - The scale that replaces the scale of the provided matrix.
10297
+ * @param result - The object onto which to store the result.
10298
+ * @returns The modified result parameter.
10299
+ */
10300
+ static setScale(matrix: Matrix3, scale: Cartesian3, result: Matrix3): Matrix3;
10301
+ /**
10302
+ * Computes a new matrix that replaces the scale with the provided uniform scale.
10303
+ This assumes the matrix is an affine transformation.
10304
+ * @param matrix - The matrix to use.
10305
+ * @param scale - The uniform scale that replaces the scale of the provided matrix.
10306
+ * @param result - The object onto which to store the result.
10307
+ * @returns The modified result parameter.
10308
+ */
10309
+ static setUniformScale(matrix: Matrix3, scale: number, result: Matrix3): Matrix3;
10209
10310
  /**
10210
10311
  * Extracts the non-uniform scale assuming the matrix is an affine transformation.
10211
10312
  * @param matrix - The matrix.
@@ -10220,6 +10321,20 @@ export class Matrix3 implements ArrayLike<number> {
10220
10321
  * @returns The maximum scale.
10221
10322
  */
10222
10323
  static getMaximumScale(matrix: Matrix3): number;
10324
+ /**
10325
+ * Sets the rotation assuming the matrix is an affine transformation.
10326
+ * @param matrix - The matrix.
10327
+ * @param rotation - The rotation matrix.
10328
+ * @returns The modified result parameter.
10329
+ */
10330
+ static setRotation(matrix: Matrix3, rotation: Matrix3): Matrix3;
10331
+ /**
10332
+ * Extracts the rotation matrix assuming the matrix is an affine transformation.
10333
+ * @param matrix - The matrix.
10334
+ * @param result - The object onto which to store the result.
10335
+ * @returns The modified result parameter.
10336
+ */
10337
+ static getRotation(matrix: Matrix3, result: Matrix3): Matrix3;
10223
10338
  /**
10224
10339
  * Computes the product of two matrices.
10225
10340
  * @param left - The first matrix.
@@ -10270,7 +10385,18 @@ export class Matrix3 implements ArrayLike<number> {
10270
10385
  * @param result - The object onto which to store the result.
10271
10386
  * @returns The modified result parameter.
10272
10387
  */
10273
- static multiplyByScale(matrix: Matrix3, scale: Cartesian3, result: Matrix3): Matrix3;
10388
+ static multiplyByScale(matrix: Matrix3, scale: number, result: Matrix3): Matrix3;
10389
+ /**
10390
+ * Computes the product of a matrix times a uniform scale, as if the scale were a scale matrix.
10391
+ * @example
10392
+ * // Instead of Cesium.Matrix3.multiply(m, Cesium.Matrix3.fromUniformScale(scale), m);
10393
+ Cesium.Matrix3.multiplyByUniformScale(m, scale, m);
10394
+ * @param matrix - The matrix on the left-hand side.
10395
+ * @param scale - The uniform scale on the right-hand side.
10396
+ * @param result - The object onto which to store the result.
10397
+ * @returns The modified result parameter.
10398
+ */
10399
+ static multiplyByUniformScale(matrix: Matrix3, scale: number, result: Matrix3): Matrix3;
10274
10400
  /**
10275
10401
  * Creates a negated copy of the provided matrix.
10276
10402
  * @param matrix - The matrix to negate.
@@ -10285,13 +10411,6 @@ export class Matrix3 implements ArrayLike<number> {
10285
10411
  * @returns The modified result parameter.
10286
10412
  */
10287
10413
  static transpose(matrix: Matrix3, result: Matrix3): Matrix3;
10288
- /**
10289
- * Extracts the rotation assuming the matrix is an affine transformation.
10290
- * @param matrix - The matrix.
10291
- * @param result - The object onto which to store the result.
10292
- * @returns The modified result parameter
10293
- */
10294
- static getRotation(matrix: Matrix3, result: Matrix3): Matrix3;
10295
10414
  /**
10296
10415
  * Computes the eigenvectors and eigenvalues of a symmetric matrix.
10297
10416
  <p>
@@ -10490,6 +10609,21 @@ export class Matrix4 implements ArrayLike<number> {
10490
10609
  * @returns The modified result parameter or a new Matrix4 instance if one was not provided.
10491
10610
  */
10492
10611
  static unpack(array: number[], startingIndex?: number, result?: Matrix4): Matrix4;
10612
+ /**
10613
+ * Flattens an array of Matrix4s into an array of components. The components
10614
+ are stored in column-major order.
10615
+ * @param array - The array of matrices to pack.
10616
+ * @param [result] - The array onto which to store the result. If this is a typed array, it must have array.length * 16 components, else a {@link DeveloperError} will be thrown. If it is a regular array, it will be resized to have (array.length * 16) elements.
10617
+ * @returns The packed array.
10618
+ */
10619
+ static packArray(array: Matrix4[], result?: number[]): number[];
10620
+ /**
10621
+ * Unpacks an array of column-major matrix components into an array of Matrix4s.
10622
+ * @param array - The array of components to unpack.
10623
+ * @param [result] - The array onto which to store the result.
10624
+ * @returns The unpacked array.
10625
+ */
10626
+ static unpackArray(array: number[], result?: Matrix4[]): Matrix4[];
10493
10627
  /**
10494
10628
  * Duplicates a Matrix4 instance.
10495
10629
  * @param matrix - The matrix to duplicate.
@@ -10600,6 +10734,13 @@ export class Matrix4 implements ArrayLike<number> {
10600
10734
  * @returns The modified result parameter, or a new Matrix4 instance if one was not provided.
10601
10735
  */
10602
10736
  static fromUniformScale(scale: number, result?: Matrix4): Matrix4;
10737
+ /**
10738
+ * Creates a rotation matrix.
10739
+ * @param rotation - The rotation matrix.
10740
+ * @param [result] - The object in which the result will be stored, if undefined a new instance will be created.
10741
+ * @returns The modified result parameter, or a new Matrix4 instance if one was not provided.
10742
+ */
10743
+ static fromRotation(rotation: Matrix3, result?: Matrix4): Matrix4;
10603
10744
  /**
10604
10745
  * Computes a Matrix4 instance from a Camera.
10605
10746
  * @param camera - The camera to use.
@@ -10755,24 +10896,6 @@ export class Matrix4 implements ArrayLike<number> {
10755
10896
  * @returns The modified result parameter.
10756
10897
  */
10757
10898
  static setColumn(matrix: Matrix4, index: number, cartesian: Cartesian4, result: Matrix4): Matrix4;
10758
- /**
10759
- * Computes a new matrix that replaces the translation in the rightmost column of the provided
10760
- matrix with the provided translation. This assumes the matrix is an affine transformation.
10761
- * @param matrix - The matrix to use.
10762
- * @param translation - The translation that replaces the translation of the provided matrix.
10763
- * @param result - The object onto which to store the result.
10764
- * @returns The modified result parameter.
10765
- */
10766
- static setTranslation(matrix: Matrix4, translation: Cartesian3, result: Matrix4): Matrix4;
10767
- /**
10768
- * Computes a new matrix that replaces the scale with the provided scale.
10769
- This assumes the matrix is an affine transformation.
10770
- * @param matrix - The matrix to use.
10771
- * @param scale - The scale that replaces the scale of the provided matrix.
10772
- * @param result - The object onto which to store the result.
10773
- * @returns The modified result parameter.
10774
- */
10775
- static setScale(matrix: Matrix4, scale: Cartesian3, result: Matrix4): Matrix4;
10776
10899
  /**
10777
10900
  * Retrieves a copy of the matrix row at the provided index as a Cartesian4 instance.
10778
10901
  * @example
@@ -10819,6 +10942,33 @@ export class Matrix4 implements ArrayLike<number> {
10819
10942
  * @returns The modified result parameter.
10820
10943
  */
10821
10944
  static setRow(matrix: Matrix4, index: number, cartesian: Cartesian4, result: Matrix4): Matrix4;
10945
+ /**
10946
+ * Computes a new matrix that replaces the translation in the rightmost column of the provided
10947
+ matrix with the provided translation. This assumes the matrix is an affine transformation.
10948
+ * @param matrix - The matrix to use.
10949
+ * @param translation - The translation that replaces the translation of the provided matrix.
10950
+ * @param result - The object onto which to store the result.
10951
+ * @returns The modified result parameter.
10952
+ */
10953
+ static setTranslation(matrix: Matrix4, translation: Cartesian3, result: Matrix4): Matrix4;
10954
+ /**
10955
+ * Computes a new matrix that replaces the scale with the provided scale.
10956
+ This assumes the matrix is an affine transformation.
10957
+ * @param matrix - The matrix to use.
10958
+ * @param scale - The scale that replaces the scale of the provided matrix.
10959
+ * @param result - The object onto which to store the result.
10960
+ * @returns The modified result parameter.
10961
+ */
10962
+ static setScale(matrix: Matrix4, scale: Cartesian3, result: Matrix4): Matrix4;
10963
+ /**
10964
+ * Computes a new matrix that replaces the scale with the provided uniform scale.
10965
+ This assumes the matrix is an affine transformation.
10966
+ * @param matrix - The matrix to use.
10967
+ * @param scale - The uniform scale that replaces the scale of the provided matrix.
10968
+ * @param result - The object onto which to store the result.
10969
+ * @returns The modified result parameter.
10970
+ */
10971
+ static setUniformScale(matrix: Matrix4, scale: number, result: Matrix4): Matrix4;
10822
10972
  /**
10823
10973
  * Extracts the non-uniform scale assuming the matrix is an affine transformation.
10824
10974
  * @param matrix - The matrix.
@@ -10834,6 +10984,20 @@ export class Matrix4 implements ArrayLike<number> {
10834
10984
  * @returns The maximum scale.
10835
10985
  */
10836
10986
  static getMaximumScale(matrix: Matrix4): number;
10987
+ /**
10988
+ * Sets the rotation assuming the matrix is an affine transformation.
10989
+ * @param matrix - The matrix.
10990
+ * @param rotation - The rotation matrix.
10991
+ * @returns The modified result parameter.
10992
+ */
10993
+ static setRotation(matrix: Matrix4, rotation: Matrix4): Matrix4;
10994
+ /**
10995
+ * Extracts the rotation matrix assuming the matrix is an affine transformation.
10996
+ * @param matrix - The matrix.
10997
+ * @param result - The object onto which to store the result.
10998
+ * @returns The modified result parameter.
10999
+ */
11000
+ static getRotation(matrix: Matrix4, result: Matrix4): Matrix4;
10837
11001
  /**
10838
11002
  * Computes the product of two matrices.
10839
11003
  * @param left - The first matrix.
@@ -10902,21 +11066,6 @@ export class Matrix4 implements ArrayLike<number> {
10902
11066
  * @returns The modified result parameter.
10903
11067
  */
10904
11068
  static multiplyByTranslation(matrix: Matrix4, translation: Cartesian3, result: Matrix4): Matrix4;
10905
- /**
10906
- * Multiplies an affine transformation matrix (with a bottom row of <code>[0.0, 0.0, 0.0, 1.0]</code>)
10907
- by an implicit uniform scale matrix. This is an optimization
10908
- for <code>Matrix4.multiply(m, Matrix4.fromUniformScale(scale), m);</code>, where
10909
- <code>m</code> must be an affine matrix.
10910
- This function performs fewer allocations and arithmetic operations.
10911
- * @example
10912
- * // Instead of Cesium.Matrix4.multiply(m, Cesium.Matrix4.fromUniformScale(scale), m);
10913
- Cesium.Matrix4.multiplyByUniformScale(m, scale, m);
10914
- * @param matrix - The affine matrix on the left-hand side.
10915
- * @param scale - The uniform scale on the right-hand side.
10916
- * @param result - The object onto which to store the result.
10917
- * @returns The modified result parameter.
10918
- */
10919
- static multiplyByUniformScale(matrix: Matrix4, scale: number, result: Matrix4): Matrix4;
10920
11069
  /**
10921
11070
  * Multiplies an affine transformation matrix (with a bottom row of <code>[0.0, 0.0, 0.0, 1.0]</code>)
10922
11071
  by an implicit non-uniform scale matrix. This is an optimization
@@ -10932,6 +11081,17 @@ export class Matrix4 implements ArrayLike<number> {
10932
11081
  * @returns The modified result parameter.
10933
11082
  */
10934
11083
  static multiplyByScale(matrix: Matrix4, scale: Cartesian3, result: Matrix4): Matrix4;
11084
+ /**
11085
+ * Computes the product of a matrix times a uniform scale, as if the scale were a scale matrix.
11086
+ * @example
11087
+ * // Instead of Cesium.Matrix4.multiply(m, Cesium.Matrix4.fromUniformScale(scale), m);
11088
+ Cesium.Matrix4.multiplyByUniformScale(m, scale, m);
11089
+ * @param matrix - The matrix on the left-hand side.
11090
+ * @param scale - The uniform scale on the right-hand side.
11091
+ * @param result - The object onto which to store the result.
11092
+ * @returns The modified result parameter.
11093
+ */
11094
+ static multiplyByUniformScale(matrix: Matrix4, scale: number, result: Matrix4): Matrix4;
10935
11095
  /**
10936
11096
  * Computes the product of a matrix and a column vector.
10937
11097
  * @param matrix - The matrix.
@@ -11591,6 +11751,13 @@ export class OrientedBoundingBox {
11591
11751
  * @returns The modified result parameter or a new OrientedBoundingBox instance if none was provided.
11592
11752
  */
11593
11753
  static fromRectangle(rectangle: Rectangle, minimumHeight?: number, maximumHeight?: number, ellipsoid?: Ellipsoid, result?: OrientedBoundingBox): OrientedBoundingBox;
11754
+ /**
11755
+ * Computes an OrientedBoundingBox that bounds an affine transformation.
11756
+ * @param transformation - The affine transformation.
11757
+ * @param [result] - The object onto which to store the result.
11758
+ * @returns The modified result parameter or a new OrientedBoundingBox instance if none was provided.
11759
+ */
11760
+ static fromTransformation(transformation: Matrix4, result?: OrientedBoundingBox): OrientedBoundingBox;
11594
11761
  /**
11595
11762
  * Duplicates a OrientedBoundingBox instance.
11596
11763
  * @param box - The bounding box to duplicate.
@@ -11632,6 +11799,20 @@ export class OrientedBoundingBox {
11632
11799
  * @returns The nearest and farthest distances on the bounding box from position in direction.
11633
11800
  */
11634
11801
  static computePlaneDistances(box: OrientedBoundingBox, position: Cartesian3, direction: Cartesian3, result?: Interval): Interval;
11802
+ /**
11803
+ * Computes the eight corners of an oriented bounding box. The corners are ordered by (-X, -Y, -Z), (-X, -Y, +Z), (-X, +Y, -Z), (-X, +Y, +Z), (+X, -Y, -Z), (+X, -Y, +Z), (+X, +Y, -Z), (+X, +Y, +Z).
11804
+ * @param box - The oriented bounding box.
11805
+ * @param [result] - An array of eight {@link Cartesian3} instances onto which to store the corners.
11806
+ * @returns The modified result parameter or a new array if none was provided.
11807
+ */
11808
+ static computeCorners(box: OrientedBoundingBox, result?: Cartesian3[]): Cartesian3[];
11809
+ /**
11810
+ * Computes a transformation matrix from an oriented bounding box.
11811
+ * @param box - The oriented bounding box.
11812
+ * @param result - The object onto which to store the result.
11813
+ * @returns The modified result parameter or a new {@link Matrix4} instance if none was provided.
11814
+ */
11815
+ static computeTransformation(box: OrientedBoundingBox, result: Matrix4): Matrix4;
11635
11816
  /**
11636
11817
  * Determines whether or not a bounding box is hidden from view by the occluder.
11637
11818
  * @param box - The bounding box surrounding the occludee object.
@@ -11670,6 +11851,18 @@ export class OrientedBoundingBox {
11670
11851
  * @returns The nearest and farthest distances on the bounding box from position in direction.
11671
11852
  */
11672
11853
  computePlaneDistances(position: Cartesian3, direction: Cartesian3, result?: Interval): Interval;
11854
+ /**
11855
+ * Computes the eight corners of an oriented bounding box. The corners are ordered by (-X, -Y, -Z), (-X, -Y, +Z), (-X, +Y, -Z), (-X, +Y, +Z), (+X, -Y, -Z), (+X, -Y, +Z), (+X, +Y, -Z), (+X, +Y, +Z).
11856
+ * @param [result] - An array of eight {@link Cartesian3} instances onto which to store the corners.
11857
+ * @returns The modified result parameter or a new array if none was provided.
11858
+ */
11859
+ computeCorners(result?: Cartesian3[]): Cartesian3[];
11860
+ /**
11861
+ * Computes a transformation matrix from an oriented bounding box.
11862
+ * @param result - The object onto which to store the result.
11863
+ * @returns The modified result parameter or a new {@link Matrix4} instance if none was provided.
11864
+ */
11865
+ computeTransformation(result: Matrix4): Matrix4;
11673
11866
  /**
11674
11867
  * Determines whether or not a bounding box is hidden from view by the occluder.
11675
11868
  * @param occluder - The occluder.
@@ -14132,6 +14325,17 @@ export class Rectangle {
14132
14325
  * @returns The modified result parameter or a new Array of Cartesians instances if none was provided.
14133
14326
  */
14134
14327
  static subsample(rectangle: Rectangle, ellipsoid?: Ellipsoid, surfaceHeight?: number, result?: Cartesian3[]): Cartesian3[];
14328
+ /**
14329
+ * Computes a subsection of a rectangle from normalized coordinates in the range [0.0, 1.0].
14330
+ * @param rectangle - The rectangle to subsection.
14331
+ * @param westLerp - The west interpolation factor in the range [0.0, 1.0]. Must be less than or equal to eastLerp.
14332
+ * @param southLerp - The south interpolation factor in the range [0.0, 1.0]. Must be less than or equal to northLerp.
14333
+ * @param eastLerp - The east interpolation factor in the range [0.0, 1.0]. Must be greater than or equal to westLerp.
14334
+ * @param northLerp - The north interpolation factor in the range [0.0, 1.0]. Must be greater than or equal to southLerp.
14335
+ * @param [result] - The object onto which to store the result.
14336
+ * @returns The modified result parameter or a new Rectangle instance if none was provided.
14337
+ */
14338
+ static subsection(rectangle: Rectangle, westLerp: number, southLerp: number, eastLerp: number, northLerp: number, result?: Rectangle): Rectangle;
14135
14339
  /**
14136
14340
  * The largest possible rectangle.
14137
14341
  */
@@ -20959,6 +21163,112 @@ export class GeometryVisualizer {
20959
21163
  destroy(): void;
20960
21164
  }
20961
21165
 
21166
+ /**
21167
+ * A {@link DataSource} which processes the GPS Exchange Format (GPX).
21168
+ * @example
21169
+ * const viewer = new Cesium.Viewer('cesiumContainer');
21170
+ viewer.dataSources.add(Cesium.GpxDataSource.load('../../SampleData/track.gpx'));
21171
+ */
21172
+ export class GpxDataSource {
21173
+ constructor();
21174
+ /**
21175
+ * Creates a Promise to a new instance loaded with the provided GPX data.
21176
+ * @param data - A url, parsed GPX document, or Blob containing binary GPX data.
21177
+ * @param [options] - An object with the following properties:
21178
+ * @param [options.clampToGround] - True if the symbols should be rendered at the same height as the terrain
21179
+ * @param [options.waypointImage] - Image to use for waypoint billboards.
21180
+ * @param [options.trackImage] - Image to use for track billboards.
21181
+ * @param [options.trackColor] - Color to use for track lines.
21182
+ * @param [options.routeColor] - Color to use for route lines.
21183
+ * @returns A promise that will resolve to a new GpxDataSource instance once the gpx is loaded.
21184
+ */
21185
+ static load(data: string | Document | Blob, options?: {
21186
+ clampToGround?: boolean;
21187
+ waypointImage?: string;
21188
+ trackImage?: string;
21189
+ trackColor?: string;
21190
+ routeColor?: string;
21191
+ }): Promise<GpxDataSource>;
21192
+ /**
21193
+ * Gets a human-readable name for this instance.
21194
+ This will be automatically be set to the GPX document name on load.
21195
+ */
21196
+ name: string;
21197
+ /**
21198
+ * Gets the version of the GPX Schema in use.
21199
+ */
21200
+ version: string;
21201
+ /**
21202
+ * Gets the creator of the GPX document.
21203
+ */
21204
+ creator: string;
21205
+ /**
21206
+ * Gets an object containing metadata about the GPX file.
21207
+ */
21208
+ metadata: any;
21209
+ /**
21210
+ * Gets the clock settings defined by the loaded GPX. This represents the total
21211
+ availability interval for all time-dynamic data. If the GPX does not contain
21212
+ time-dynamic data, this value is undefined.
21213
+ */
21214
+ clock: DataSourceClock;
21215
+ /**
21216
+ * Gets the collection of {@link Entity} instances.
21217
+ */
21218
+ entities: EntityCollection;
21219
+ /**
21220
+ * Gets a value indicating if the data source is currently loading data.
21221
+ */
21222
+ isLoading: boolean;
21223
+ /**
21224
+ * Gets an event that will be raised when the underlying data changes.
21225
+ */
21226
+ changedEvent: Event;
21227
+ /**
21228
+ * Gets an event that will be raised if an error is encountered during processing.
21229
+ */
21230
+ errorEvent: Event;
21231
+ /**
21232
+ * Gets an event that will be raised when the data source either starts or stops loading.
21233
+ */
21234
+ loadingEvent: Event;
21235
+ /**
21236
+ * Gets whether or not this data source should be displayed.
21237
+ */
21238
+ show: boolean;
21239
+ /**
21240
+ * Gets or sets the clustering options for this data source. This object can be shared between multiple data sources.
21241
+ */
21242
+ clustering: EntityCluster;
21243
+ /**
21244
+ * Updates the data source to the provided time. This function is optional and
21245
+ is not required to be implemented. It is provided for data sources which
21246
+ retrieve data based on the current animation time or scene state.
21247
+ If implemented, update will be called by {@link DataSourceDisplay} once a frame.
21248
+ * @param time - The simulation time.
21249
+ * @returns True if this data source is ready to be displayed at the provided time, false otherwise.
21250
+ */
21251
+ update(time: JulianDate): boolean;
21252
+ /**
21253
+ * Asynchronously loads the provided GPX data, replacing any existing data.
21254
+ * @param data - A url, parsed GPX document, or Blob containing binary GPX data or a parsed GPX document.
21255
+ * @param [options] - An object with the following properties:
21256
+ * @param [options.clampToGround] - True if the symbols should be rendered at the same height as the terrain
21257
+ * @param [options.waypointImage] - Image to use for waypoint billboards.
21258
+ * @param [options.trackImage] - Image to use for track billboards.
21259
+ * @param [options.trackColor] - Color to use for track lines.
21260
+ * @param [options.routeColor] - Color to use for route lines.
21261
+ * @returns A promise that will resolve to this instances once the GPX is loaded.
21262
+ */
21263
+ load(data: string | Document | Blob, options?: {
21264
+ clampToGround?: boolean;
21265
+ waypointImage?: string;
21266
+ trackImage?: string;
21267
+ trackColor?: string;
21268
+ routeColor?: string;
21269
+ }): Promise<GpxDataSource>;
21270
+ }
21271
+
20962
21272
  /**
20963
21273
  * A {@link MaterialProperty} that maps to grid {@link Material} uniforms.
20964
21274
  * @param [options] - Object with the following properties:
@@ -24622,37 +24932,37 @@ export namespace ArcGisMapServerImageryProvider {
24622
24932
  * @property url - The URL of the ArcGIS MapServer service.
24623
24933
  * @property [token] - The ArcGIS token used to authenticate with the ArcGIS MapServer service.
24624
24934
  * @property [tileDiscardPolicy] - The policy that determines if a tile
24625
- is invalid and should be discarded. If this value is not specified, a default
24626
- {@link DiscardMissingTileImagePolicy} is used for tiled map servers, and a
24627
- {@link NeverTileDiscardPolicy} is used for non-tiled map servers. In the former case,
24628
- we request tile 0,0 at the maximum tile level and check pixels (0,0), (200,20), (20,200),
24629
- (80,110), and (160, 130). If all of these pixels are transparent, the discard check is
24630
- disabled and no tiles are discarded. If any of them have a non-transparent color, any
24631
- tile that has the same values in these pixel locations is discarded. The end result of
24632
- these defaults should be correct tile discarding for a standard ArcGIS Server. To ensure
24633
- that no tiles are discarded, construct and pass a {@link NeverTileDiscardPolicy} for this
24634
- parameter.
24935
+ * is invalid and should be discarded. If this value is not specified, a default
24936
+ * {@link DiscardMissingTileImagePolicy} is used for tiled map servers, and a
24937
+ * {@link NeverTileDiscardPolicy} is used for non-tiled map servers. In the former case,
24938
+ * we request tile 0,0 at the maximum tile level and check pixels (0,0), (200,20), (20,200),
24939
+ * (80,110), and (160, 130). If all of these pixels are transparent, the discard check is
24940
+ * disabled and no tiles are discarded. If any of them have a non-transparent color, any
24941
+ * tile that has the same values in these pixel locations is discarded. The end result of
24942
+ * these defaults should be correct tile discarding for a standard ArcGIS Server. To ensure
24943
+ * that no tiles are discarded, construct and pass a {@link NeverTileDiscardPolicy} for this
24944
+ * parameter.
24635
24945
  * @property [usePreCachedTilesIfAvailable = true] - If true, the server's pre-cached
24636
- tiles are used if they are available. If false, any pre-cached tiles are ignored and the
24637
- 'export' service is used.
24946
+ * tiles are used if they are available. If false, any pre-cached tiles are ignored and the
24947
+ * 'export' service is used.
24638
24948
  * @property [layers] - A comma-separated list of the layers to show, or undefined if all layers should be shown.
24639
24949
  * @property [enablePickFeatures = true] - If true, {@link ArcGisMapServerImageryProvider#pickFeatures} will invoke
24640
- the Identify service on the MapServer and return the features included in the response. If false,
24641
- {@link ArcGisMapServerImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable features)
24642
- without communicating with the server. Set this property to false if you don't want this provider's features to
24643
- be pickable. Can be overridden by setting the {@link ArcGisMapServerImageryProvider#enablePickFeatures} property on the object.
24950
+ * the Identify service on the MapServer and return the features included in the response. If false,
24951
+ * {@link ArcGisMapServerImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable features)
24952
+ * without communicating with the server. Set this property to false if you don't want this provider's features to
24953
+ * be pickable. Can be overridden by setting the {@link ArcGisMapServerImageryProvider#enablePickFeatures} property on the object.
24644
24954
  * @property [rectangle = Rectangle.MAX_VALUE] - The rectangle of the layer. This parameter is ignored when accessing
24645
- a tiled layer.
24955
+ * a tiled layer.
24646
24956
  * @property [tilingScheme = new GeographicTilingScheme()] - The tiling scheme to use to divide the world into tiles.
24647
- This parameter is ignored when accessing a tiled server.
24957
+ * This parameter is ignored when accessing a tiled server.
24648
24958
  * @property [ellipsoid] - The ellipsoid. If the tilingScheme is specified and used,
24649
- this parameter is ignored and the tiling scheme's ellipsoid is used instead. If neither
24650
- parameter is specified, the WGS84 ellipsoid is used.
24959
+ * this parameter is ignored and the tiling scheme's ellipsoid is used instead. If neither
24960
+ * parameter is specified, the WGS84 ellipsoid is used.
24651
24961
  * @property [credit] - A credit for the data source, which is displayed on the canvas. This parameter is ignored when accessing a tiled server.
24652
24962
  * @property [tileWidth = 256] - The width of each tile in pixels. This parameter is ignored when accessing a tiled server.
24653
24963
  * @property [tileHeight = 256] - The height of each tile in pixels. This parameter is ignored when accessing a tiled server.
24654
24964
  * @property [maximumLevel] - The maximum tile level to request, or undefined if there is no maximum. This parameter is ignored when accessing
24655
- a tiled server.
24965
+ * a tiled server.
24656
24966
  */
24657
24967
  type ConstructorOptions = {
24658
24968
  url: Resource | string;
@@ -24673,38 +24983,38 @@ export namespace ArcGisMapServerImageryProvider {
24673
24983
 
24674
24984
  /**
24675
24985
  * Provides tiled imagery hosted by an ArcGIS MapServer. By default, the server's pre-cached tiles are
24676
- used, if available.
24986
+ * used, if available.
24677
24987
  * @example
24678
24988
  * const esri = new Cesium.ArcGisMapServerImageryProvider({
24679
- url : 'https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer'
24680
- });
24989
+ * url : 'https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer'
24990
+ * });
24681
24991
  * @param options - Object describing initialization options
24682
24992
  */
24683
24993
  export class ArcGisMapServerImageryProvider {
24684
24994
  constructor(options: ArcGisMapServerImageryProvider.ConstructorOptions);
24685
24995
  /**
24686
24996
  * The default alpha blending value of this provider, with 0.0 representing fully transparent and
24687
- 1.0 representing fully opaque.
24997
+ * 1.0 representing fully opaque.
24688
24998
  */
24689
24999
  defaultAlpha: number | undefined;
24690
25000
  /**
24691
25001
  * The default alpha blending value on the night side of the globe of this provider, with 0.0 representing fully transparent and
24692
- 1.0 representing fully opaque.
25002
+ * 1.0 representing fully opaque.
24693
25003
  */
24694
25004
  defaultNightAlpha: number | undefined;
24695
25005
  /**
24696
25006
  * The default alpha blending value on the day side of the globe of this provider, with 0.0 representing fully transparent and
24697
- 1.0 representing fully opaque.
25007
+ * 1.0 representing fully opaque.
24698
25008
  */
24699
25009
  defaultDayAlpha: number | undefined;
24700
25010
  /**
24701
25011
  * The default brightness of this provider. 1.0 uses the unmodified imagery color. Less than 1.0
24702
- makes the imagery darker while greater than 1.0 makes it brighter.
25012
+ * makes the imagery darker while greater than 1.0 makes it brighter.
24703
25013
  */
24704
25014
  defaultBrightness: number | undefined;
24705
25015
  /**
24706
25016
  * The default contrast of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces
24707
- the contrast while greater than 1.0 increases it.
25017
+ * the contrast while greater than 1.0 increases it.
24708
25018
  */
24709
25019
  defaultContrast: number | undefined;
24710
25020
  /**
@@ -24713,7 +25023,7 @@ export class ArcGisMapServerImageryProvider {
24713
25023
  defaultHue: number | undefined;
24714
25024
  /**
24715
25025
  * The default saturation of this provider. 1.0 uses the unmodified imagery color. Less than 1.0 reduces the
24716
- saturation while greater than 1.0 increases it.
25026
+ * saturation while greater than 1.0 increases it.
24717
25027
  */
24718
25028
  defaultSaturation: number | undefined;
24719
25029
  /**
@@ -24730,9 +25040,9 @@ export class ArcGisMapServerImageryProvider {
24730
25040
  defaultMagnificationFilter: TextureMagnificationFilter;
24731
25041
  /**
24732
25042
  * Gets or sets a value indicating whether feature picking is enabled. If true, {@link ArcGisMapServerImageryProvider#pickFeatures} will
24733
- invoke the "identify" operation on the ArcGIS server and return the features included in the response. If false,
24734
- {@link ArcGisMapServerImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable features)
24735
- without communicating with the server.
25043
+ * invoke the "identify" operation on the ArcGIS server and return the features included in the response. If false,
25044
+ * {@link ArcGisMapServerImageryProvider#pickFeatures} will immediately return undefined (indicating no pickable features)
25045
+ * without communicating with the server.
24736
25046
  */
24737
25047
  enablePickFeatures: boolean;
24738
25048
  /**
@@ -24749,45 +25059,45 @@ export class ArcGisMapServerImageryProvider {
24749
25059
  readonly proxy: Proxy;
24750
25060
  /**
24751
25061
  * Gets the width of each tile, in pixels. This function should
24752
- not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25062
+ * not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24753
25063
  */
24754
25064
  readonly tileWidth: number;
24755
25065
  /**
24756
25066
  * Gets the height of each tile, in pixels. This function should
24757
- not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25067
+ * not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24758
25068
  */
24759
25069
  readonly tileHeight: number;
24760
25070
  /**
24761
25071
  * Gets the maximum level-of-detail that can be requested. This function should
24762
- not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25072
+ * not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24763
25073
  */
24764
25074
  readonly maximumLevel: number | undefined;
24765
25075
  /**
24766
25076
  * Gets the minimum level-of-detail that can be requested. This function should
24767
- not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25077
+ * not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24768
25078
  */
24769
25079
  readonly minimumLevel: number;
24770
25080
  /**
24771
25081
  * Gets the tiling scheme used by this provider. This function should
24772
- not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25082
+ * not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24773
25083
  */
24774
25084
  readonly tilingScheme: TilingScheme;
24775
25085
  /**
24776
25086
  * Gets the rectangle, in radians, of the imagery provided by this instance. This function should
24777
- not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25087
+ * not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24778
25088
  */
24779
25089
  readonly rectangle: Rectangle;
24780
25090
  /**
24781
25091
  * Gets the tile discard policy. If not undefined, the discard policy is responsible
24782
- for filtering out "missing" tiles via its shouldDiscardImage function. If this function
24783
- returns undefined, no tiles are filtered. This function should
24784
- not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25092
+ * for filtering out "missing" tiles via its shouldDiscardImage function. If this function
25093
+ * returns undefined, no tiles are filtered. This function should
25094
+ * not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24785
25095
  */
24786
25096
  readonly tileDiscardPolicy: TileDiscardPolicy;
24787
25097
  /**
24788
25098
  * Gets an event that is raised when the imagery provider encounters an asynchronous error. By subscribing
24789
- to the event, you will be notified of the error and can potentially recover from it. Event listeners
24790
- are passed an instance of {@link TileProviderError}.
25099
+ * to the event, you will be notified of the error and can potentially recover from it. Event listeners
25100
+ * are passed an instance of {@link TileProviderError}.
24791
25101
  */
24792
25102
  readonly errorEvent: Event;
24793
25103
  /**
@@ -24800,22 +25110,22 @@ export class ArcGisMapServerImageryProvider {
24800
25110
  readonly readyPromise: Promise<boolean>;
24801
25111
  /**
24802
25112
  * Gets the credit to display when this imagery provider is active. Typically this is used to credit
24803
- the source of the imagery. This function should not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25113
+ * the source of the imagery. This function should not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24804
25114
  */
24805
25115
  readonly credit: Credit;
24806
25116
  /**
24807
25117
  * Gets a value indicating whether this imagery provider is using pre-cached tiles from the
24808
- ArcGIS MapServer. If the imagery provider is not yet ready ({@link ArcGisMapServerImageryProvider#ready}), this function
24809
- will return the value of `options.usePreCachedTilesIfAvailable`, even if the MapServer does
24810
- not have pre-cached tiles.
25118
+ * ArcGIS MapServer. If the imagery provider is not yet ready ({@link ArcGisMapServerImageryProvider#ready}), this function
25119
+ * will return the value of `options.usePreCachedTilesIfAvailable`, even if the MapServer does
25120
+ * not have pre-cached tiles.
24811
25121
  */
24812
25122
  readonly usingPrecachedTiles: boolean;
24813
25123
  /**
24814
25124
  * Gets a value indicating whether or not the images provided by this imagery provider
24815
- include an alpha channel. If this property is false, an alpha channel, if present, will
24816
- be ignored. If this property is true, any images without an alpha channel will be treated
24817
- as if their alpha is 1.0 everywhere. When this property is false, memory usage
24818
- and texture upload time are reduced.
25125
+ * include an alpha channel. If this property is false, an alpha channel, if present, will
25126
+ * be ignored. If this property is true, any images without an alpha channel will be treated
25127
+ * as if their alpha is 1.0 everywhere. When this property is false, memory usage
25128
+ * and texture upload time are reduced.
24819
25129
  */
24820
25130
  readonly hasAlphaChannel: boolean;
24821
25131
  /**
@@ -24832,29 +25142,29 @@ export class ArcGisMapServerImageryProvider {
24832
25142
  getTileCredits(x: number, y: number, level: number): Credit[];
24833
25143
  /**
24834
25144
  * Requests the image for a given tile. This function should
24835
- not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
25145
+ * not be called before {@link ArcGisMapServerImageryProvider#ready} returns true.
24836
25146
  * @param x - The tile X coordinate.
24837
25147
  * @param y - The tile Y coordinate.
24838
25148
  * @param level - The tile level.
24839
25149
  * @param [request] - The request object. Intended for internal use only.
24840
25150
  * @returns A promise for the image that will resolve when the image is available, or
24841
- undefined if there are too many active requests to the server, and the request
24842
- should be retried later. The resolved image may be either an
24843
- Image or a Canvas DOM object.
25151
+ * undefined if there are too many active requests to the server, and the request
25152
+ * should be retried later. The resolved image may be either an
25153
+ * Image or a Canvas DOM object.
24844
25154
  */
24845
25155
  requestImage(x: number, y: number, level: number, request?: Request): Promise<HTMLImageElement | HTMLCanvasElement> | undefined;
24846
25156
  /**
24847
25157
  * /**
24848
- Asynchronously determines what features, if any, are located at a given longitude and latitude within
24849
- a tile. This function should not be called before {@link ImageryProvider#ready} returns true.
25158
+ * Asynchronously determines what features, if any, are located at a given longitude and latitude within
25159
+ * a tile. This function should not be called before {@link ImageryProvider#ready} returns true.
24850
25160
  * @param x - The tile X coordinate.
24851
25161
  * @param y - The tile Y coordinate.
24852
25162
  * @param level - The tile level.
24853
25163
  * @param longitude - The longitude at which to pick features.
24854
25164
  * @param latitude - The latitude at which to pick features.
24855
25165
  * @returns A promise for the picked features that will resolve when the asynchronous
24856
- picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
24857
- instances. The array may be empty if no features are found at the given location.
25166
+ * picking completes. The resolved value is an array of {@link ImageryLayerFeatureInfo}
25167
+ * instances. The array may be empty if no features are found at the given location.
24858
25168
  */
24859
25169
  pickFeatures(x: number, y: number, level: number, longitude: number, latitude: number): Promise<ImageryLayerFeatureInfo[]> | undefined;
24860
25170
  }
@@ -26291,9 +26601,9 @@ export class Camera {
26291
26601
  in world coordinates.
26292
26602
  * @param windowPosition - The x and y coordinates of a pixel.
26293
26603
  * @param [result] - The object onto which to store the result.
26294
- * @returns Returns the {@link Cartesian3} position and direction of the ray.
26604
+ * @returns Returns the {@link Cartesian3} position and direction of the ray, or undefined if the pick ray cannot be determined.
26295
26605
  */
26296
- getPickRay(windowPosition: Cartesian2, result?: Ray): Ray;
26606
+ getPickRay(windowPosition: Cartesian2, result?: Ray): Ray | undefined;
26297
26607
  /**
26298
26608
  * Return the distance from the camera to the front of the bounding sphere.
26299
26609
  * @param boundingSphere - The bounding sphere in world coordinates.
@@ -27218,6 +27528,7 @@ const tileset = scene.primitives.add(new Cesium.Cesium3DTileset({
27218
27528
  * @param [options.vectorKeepDecodedPositions = false] - Whether vector tiles should keep decoded positions in memory. This is used with {@link Cesium3DTileFeature.getPolylinePositions}.
27219
27529
  * @param [options.featureIdIndex = 0] - The index into the list of primitive feature IDs used for picking and styling. For EXT_feature_metadata, feature ID attributes are listed before feature ID textures. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
27220
27530
  * @param [options.instanceFeatureIdIndex = 0] - The index into the list of instance feature IDs used for picking and styling. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.
27531
+ * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this tileset on screen.
27221
27532
  * @param [options.debugHeatmapTilePropertyName] - The tile variable to colorize as a heatmap. All rendered tiles will be colorized relative to each other's specified variable value.
27222
27533
  * @param [options.debugFreezeFrame = false] - For debugging only. Determines if only the tiles from last frame should be used for rendering.
27223
27534
  * @param [options.debugColorizeTiles = false] - For debugging only. When true, assigns a random color to each tile.
@@ -27275,6 +27586,7 @@ export class Cesium3DTileset {
27275
27586
  vectorKeepDecodedPositions?: boolean;
27276
27587
  featureIdIndex?: number;
27277
27588
  instanceFeatureIdIndex?: number;
27589
+ showCreditsOnScreen?: boolean;
27278
27590
  debugHeatmapTilePropertyName?: string;
27279
27591
  debugFreezeFrame?: boolean;
27280
27592
  debugColorizeTiles?: boolean;
@@ -27955,6 +28267,10 @@ export class Cesium3DTileset {
27955
28267
  This is used with {@link Cesium3DTileFeature.getPolylinePositions}.
27956
28268
  */
27957
28269
  vectorKeepDecodedPositions: boolean;
28270
+ /**
28271
+ * Determines whether the credits of the tileset will be displayed on the screen
28272
+ */
28273
+ showCreditsOnScreen: boolean;
27958
28274
  /**
27959
28275
  * Provides a hook to override the method used to request the tileset json
27960
28276
  useful when fetching tilesets from remote servers
@@ -34246,6 +34562,7 @@ relative to a local origin.
34246
34562
  * @param [options.sphericalHarmonicCoefficients] - The third order spherical harmonic coefficients used for the diffuse color of image-based lighting.
34247
34563
  * @param [options.specularEnvironmentMaps] - A URL to a KTX2 file that contains a cube map of the specular lighting and the convoluted specular mipmaps.
34248
34564
  * @param [options.credit] - A credit for the data source, which is displayed on the canvas.
34565
+ * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this model on screen.
34249
34566
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the material's doubleSided property; when false, back face culling is disabled. Back faces are not culled if {@link Model#color} is translucent or {@link Model#silhouetteSize} is greater than 0.0.
34250
34567
  * @param [options.showOutline = true] - Whether to display the outline for models using the {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Vendor/CESIUM_primitive_outline|CESIUM_primitive_outline} extension. When true, outlines are displayed. When false, outlines are not displayed.
34251
34568
  */
@@ -34282,6 +34599,7 @@ export class Model {
34282
34599
  sphericalHarmonicCoefficients?: Cartesian3[];
34283
34600
  specularEnvironmentMaps?: string;
34284
34601
  credit?: Credit | string;
34602
+ showCreditsOnScreen?: boolean;
34285
34603
  backFaceCulling?: boolean;
34286
34604
  showOutline?: boolean;
34287
34605
  });
@@ -34495,6 +34813,10 @@ export class Model {
34495
34813
  * Gets the credit that will be displayed for the model
34496
34814
  */
34497
34815
  credit: Credit;
34816
+ /**
34817
+ * Gets or sets whether the credits of the model will be displayed on the screen
34818
+ */
34819
+ showCreditsOnScreen: boolean;
34498
34820
  /**
34499
34821
  * Determines if silhouettes are supported.
34500
34822
  * @param scene - The scene.
@@ -34595,6 +34917,7 @@ export class Model {
34595
34917
  * @param [options.clippingPlanes] - The {@link ClippingPlaneCollection} used to selectively disable rendering the model.
34596
34918
  * @param [options.dequantizeInShader = true] - Determines if a {@link https://github.com/google/draco|Draco} encoded model is dequantized on the GPU. This decreases total memory usage for encoded models.
34597
34919
  * @param [options.credit] - A credit for the model, which is displayed on the canvas.
34920
+ * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this model on screen.
34598
34921
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the material's doubleSided property; when false, back face culling is disabled. Back faces are not culled if {@link Model#color} is translucent or {@link Model#silhouetteSize} is greater than 0.0.
34599
34922
  * @param [options.showOutline = true] - Whether to display the outline for models using the {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Vendor/CESIUM_primitive_outline|CESIUM_primitive_outline} extension. When true, outlines are displayed. When false, outlines are not displayed.
34600
34923
  * @returns The newly created model.
@@ -34626,6 +34949,7 @@ export class Model {
34626
34949
  clippingPlanes?: ClippingPlaneCollection;
34627
34950
  dequantizeInShader?: boolean;
34628
34951
  credit?: Credit | string;
34952
+ showCreditsOnScreen?: boolean;
34629
34953
  backFaceCulling?: boolean;
34630
34954
  showOutline?: boolean;
34631
34955
  }): Model;
@@ -35004,6 +35328,9 @@ If texture uniforms are used, additional resource management must be done:
35004
35328
  </ul>
35005
35329
  <p>
35006
35330
  To enable the use of {@link ModelExperimental} in {@link Cesium3DTileset}, set {@link ExperimentalFeatures.enableModelExperimental} to <code>true</code> or tileset.enableModelExperimental to <code>true</code>.
35331
+ </p>
35332
+ <p>
35333
+ See the {@link https://github.com/CesiumGS/cesium/tree/main/Documentation/CustomShaderGuide|Custom Shader Guide} for more detailed documentation.
35007
35334
  </p>
35008
35335
  * @example
35009
35336
  * const customShader = new CustomShader({
@@ -35168,6 +35495,7 @@ the Model from your source data type.
35168
35495
  * @param [options.pointCloudShading] - Options for constructing a {@link PointCloudShading} object to control point attenuation based on geometric error and lighting.
35169
35496
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the material's doubleSided property; when false, back face culling is disabled. Back faces are not culled if the model's color is translucent.
35170
35497
  * @param [options.shadows = ShadowMode.ENABLED] - Determines whether the model casts or receives shadows from light sources.
35498
+ * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this model on screen.
35171
35499
  */
35172
35500
  export class ModelExperimental {
35173
35501
  constructor(options: {
@@ -35188,6 +35516,7 @@ export class ModelExperimental {
35188
35516
  pointCloudShading?: any;
35189
35517
  backFaceCulling?: boolean;
35190
35518
  shadows?: ShadowMode;
35519
+ showCreditsOnScreen?: boolean;
35191
35520
  });
35192
35521
  /**
35193
35522
  * When <code>true</code>, this model is ready to render, i.e., the external binary, image,
@@ -35254,6 +35583,10 @@ export class ModelExperimental {
35254
35583
  the instance feature IDs take priority.
35255
35584
  */
35256
35585
  instanceFeatureIdIndex: number;
35586
+ /**
35587
+ * Gets or sets whether the credits of the model will be displayed on the screen
35588
+ */
35589
+ showCreditsOnScreen: boolean;
35257
35590
  /**
35258
35591
  * Called when {@link Viewer} or {@link CesiumWidget} render the scene to
35259
35592
  get the draw commands needed to render this primitive.
@@ -35312,6 +35645,7 @@ export class ModelExperimental {
35312
35645
  * @param [options.pointCloudShading] - Options for constructing a {@link PointCloudShading} object to control point attenuation and lighting.
35313
35646
  * @param [options.backFaceCulling = true] - Whether to cull back-facing geometry. When true, back face culling is determined by the material's doubleSided property; when false, back face culling is disabled. Back faces are not culled if the model's color is translucent.
35314
35647
  * @param [options.shadows = ShadowMode.ENABLED] - Determines whether the model casts or receives shadows from light sources.
35648
+ * @param [options.showCreditsOnScreen = false] - Whether to display the credits of this model on screen.
35315
35649
  * @returns The newly created model.
35316
35650
  */
35317
35651
  static fromGltf(options: {
@@ -35337,6 +35671,7 @@ export class ModelExperimental {
35337
35671
  pointCloudShading?: any;
35338
35672
  backFaceCulling?: boolean;
35339
35673
  shadows?: ShadowMode;
35674
+ showCreditsOnScreen?: boolean;
35340
35675
  }): ModelExperimental;
35341
35676
  }
35342
35677
 
@@ -38156,6 +38491,7 @@ const scene = new Cesium.Scene({
38156
38491
  * @param [options.requestRenderMode = false] - If true, rendering a frame will only occur when needed as determined by changes within the scene. Enabling improves performance of the application, but requires using {@link Scene#requestRender} to render a new frame explicitly in this mode. This will be necessary in many cases after making changes to the scene in other parts of the API. See {@link https://cesium.com/blog/2018/01/24/cesium-scene-rendering-performance/|Improving Performance with Explicit Rendering}.
38157
38492
  * @param [options.maximumRenderTimeChange = 0.0] - If requestRenderMode is true, this value defines the maximum change in simulation time allowed before a render is requested. See {@link https://cesium.com/blog/2018/01/24/cesium-scene-rendering-performance/|Improving Performance with Explicit Rendering}.
38158
38493
  * @param [depthPlaneEllipsoidOffset = 0.0] - Adjust the DepthPlane to address rendering artefacts below ellipsoid zero elevation.
38494
+ * @param [options.msaaSamples = 1] - If provided, this value controls the rate of multisample antialiasing. Typical multisampling rates are 2, 4, and sometimes 8 samples per pixel. Higher sampling rates of MSAA may impact performance in exchange for improved visual quality. This value only applies to WebGL2 contexts that support multisample render targets.
38159
38495
  */
38160
38496
  export class Scene {
38161
38497
  constructor(options: {
@@ -38170,6 +38506,7 @@ export class Scene {
38170
38506
  mapMode2D?: MapMode2D;
38171
38507
  requestRenderMode?: boolean;
38172
38508
  maximumRenderTimeChange?: number;
38509
+ msaaSamples?: number;
38173
38510
  }, depthPlaneEllipsoidOffset?: number);
38174
38511
  /**
38175
38512
  * Exceptions occurring in <code>render</code> are always caught in order to raise the
@@ -38573,6 +38910,14 @@ export class Scene {
38573
38910
  * Whether or not the camera is underneath the globe.
38574
38911
  */
38575
38912
  readonly cameraUnderground: boolean;
38913
+ /**
38914
+ * The sample rate of multisample antialiasing (values greater than 1 enable MSAA).
38915
+ */
38916
+ readonly msaaSamples: number;
38917
+ /**
38918
+ * Returns <code>true</code> if the Scene's context supports MSAA.
38919
+ */
38920
+ readonly msaaSupported: boolean;
38576
38921
  /**
38577
38922
  * Determines if a compressed texture format is supported.
38578
38923
  * @param format - The texture format. May be the name of the format or the WebGL extension name, e.g. s3tc or WEBGL_compressed_texture_s3tc.
@@ -42049,6 +42394,7 @@ const widget2 = new Cesium.CesiumWidget('cesiumContainer', {
42049
42394
  * @param [options.mapMode2D = MapMode2D.INFINITE_SCROLL] - Determines if the 2D map is rotatable or can be scrolled infinitely in the horizontal direction.
42050
42395
  * @param [options.requestRenderMode = false] - If true, rendering a frame will only occur when needed as determined by changes within the scene. Enabling improves performance of the application, but requires using {@link Scene#requestRender} to render a new frame explicitly in this mode. This will be necessary in many cases after making changes to the scene in other parts of the API. See {@link https://cesium.com/blog/2018/01/24/cesium-scene-rendering-performance/|Improving Performance with Explicit Rendering}.
42051
42396
  * @param [options.maximumRenderTimeChange = 0.0] - If requestRenderMode is true, this value defines the maximum change in simulation time allowed before a render is requested. See {@link https://cesium.com/blog/2018/01/24/cesium-scene-rendering-performance/|Improving Performance with Explicit Rendering}.
42397
+ * @param [options.msaaSamples = 1] - If provided, this value controls the rate of multisample antialiasing. Typical multisampling rates are 2, 4, and sometimes 8 samples per pixel. Higher sampling rates of MSAA may impact performance in exchange for improved visual quality. This value only applies to WebGL2 contexts that support multisample render targets.
42052
42398
  */
42053
42399
  export class CesiumWidget {
42054
42400
  constructor(container: Element | string, options?: {
@@ -42074,6 +42420,7 @@ export class CesiumWidget {
42074
42420
  mapMode2D?: MapMode2D;
42075
42421
  requestRenderMode?: boolean;
42076
42422
  maximumRenderTimeChange?: number;
42423
+ msaaSamples?: number;
42077
42424
  });
42078
42425
  /**
42079
42426
  * Gets the parent container.
@@ -43179,6 +43526,7 @@ export namespace Viewer {
43179
43526
  * @property [requestRenderMode = false] - If true, rendering a frame will only occur when needed as determined by changes within the scene. Enabling reduces the CPU/GPU usage of your application and uses less battery on mobile, but requires using {@link Scene#requestRender} to render a new frame explicitly in this mode. This will be necessary in many cases after making changes to the scene in other parts of the API. See {@link https://cesium.com/blog/2018/01/24/cesium-scene-rendering-performance/|Improving Performance with Explicit Rendering}.
43180
43527
  * @property [maximumRenderTimeChange = 0.0] - If requestRenderMode is true, this value defines the maximum change in simulation time allowed before a render is requested. See {@link https://cesium.com/blog/2018/01/24/cesium-scene-rendering-performance/|Improving Performance with Explicit Rendering}.
43181
43528
  * @property [depthPlaneEllipsoidOffset = 0.0] - Adjust the DepthPlane to address rendering artefacts below ellipsoid zero elevation.
43529
+ * @property [msaaSamples = 1] - If provided, this value controls the rate of multisample antialiasing. Typical multisampling rates are 2, 4, and sometimes 8 samples per pixel. Higher sampling rates of MSAA may impact performance in exchange for improved visual quality. This value only applies to WebGL2 contexts that support multisample render targets.
43182
43530
  */
43183
43531
  type ConstructorOptions = {
43184
43532
  animation?: boolean;
@@ -43225,6 +43573,7 @@ export namespace Viewer {
43225
43573
  requestRenderMode?: boolean;
43226
43574
  maximumRenderTimeChange?: number;
43227
43575
  depthPlaneEllipsoidOffset?: number;
43576
+ msaaSamples?: number;
43228
43577
  };
43229
43578
  /**
43230
43579
  * A function that augments a Viewer instance with additional functionality.
@@ -43906,6 +44255,7 @@ declare module "cesium/Source/DataSources/exportKml" { import { exportKml } from
43906
44255
  declare module "cesium/Source/DataSources/GeoJsonDataSource" { import { GeoJsonDataSource } from 'mars3d-cesium'; export default GeoJsonDataSource; }
43907
44256
  declare module "cesium/Source/DataSources/GeometryUpdater" { import { GeometryUpdater } from 'mars3d-cesium'; export default GeometryUpdater; }
43908
44257
  declare module "cesium/Source/DataSources/GeometryVisualizer" { import { GeometryVisualizer } from 'mars3d-cesium'; export default GeometryVisualizer; }
44258
+ declare module "cesium/Source/DataSources/GpxDataSource" { import { GpxDataSource } from 'mars3d-cesium'; export default GpxDataSource; }
43909
44259
  declare module "cesium/Source/DataSources/GridMaterialProperty" { import { GridMaterialProperty } from 'mars3d-cesium'; export default GridMaterialProperty; }
43910
44260
  declare module "cesium/Source/DataSources/GroundGeometryUpdater" { import { GroundGeometryUpdater } from 'mars3d-cesium'; export default GroundGeometryUpdater; }
43911
44261
  declare module "cesium/Source/DataSources/ImageMaterialProperty" { import { ImageMaterialProperty } from 'mars3d-cesium'; export default ImageMaterialProperty; }