mars3d-cesium 1.138.0 → 1.139.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 (115) hide show
  1. package/Build/Cesium/Cesium.d.ts +892 -25
  2. package/Build/Cesium/Cesium.js +13722 -13807
  3. package/Build/Cesium/Workers/{chunk-HOEIK7S6.js → chunk-2J6F57DY.js} +2 -2
  4. package/Build/Cesium/Workers/{chunk-7RP73MB3.js → chunk-37N4QD3I.js} +2 -2
  5. package/Build/Cesium/Workers/{chunk-3BUY26C2.js → chunk-3L7THC6I.js} +2 -2
  6. package/Build/Cesium/Workers/{chunk-ADU5ZUW2.js → chunk-44T2XLYR.js} +2 -2
  7. package/Build/Cesium/Workers/{chunk-7SVTN6CT.js → chunk-44XAIE77.js} +2 -2
  8. package/Build/Cesium/Workers/{chunk-YEOYGC3A.js → chunk-4IBZIVAH.js} +2 -2
  9. package/Build/Cesium/Workers/{chunk-RVYJ7RLW.js → chunk-4T5WFDYL.js} +2 -2
  10. package/Build/Cesium/Workers/{chunk-E7736HNO.js → chunk-5A3IQCUZ.js} +1 -1
  11. package/Build/Cesium/Workers/{chunk-EJIEM7C5.js → chunk-6C2ABNTW.js} +2 -2
  12. package/Build/Cesium/Workers/{chunk-IWN3QIUI.js → chunk-6TCB5VDR.js} +1 -1
  13. package/Build/Cesium/Workers/{chunk-BC44SGIQ.js → chunk-6U7ZR4B5.js} +2 -2
  14. package/Build/Cesium/Workers/{chunk-F6ZOU3BC.js → chunk-7IEQHAZE.js} +2 -2
  15. package/Build/Cesium/Workers/{chunk-6QWV4SU3.js → chunk-7JNGN6XH.js} +1 -1
  16. package/Build/Cesium/Workers/{chunk-RIHJW2G6.js → chunk-7OCS3YY7.js} +1 -1
  17. package/Build/Cesium/Workers/{chunk-6WDL2N4A.js → chunk-7TKAWTXB.js} +2 -2
  18. package/Build/Cesium/Workers/{chunk-HF47EETW.js → chunk-A7XIL2A6.js} +2 -2
  19. package/Build/Cesium/Workers/{chunk-E5QMTGUF.js → chunk-BHFRS4MP.js} +2 -2
  20. package/Build/Cesium/Workers/{chunk-BM7TIKRR.js → chunk-CR53ZZO3.js} +2 -2
  21. package/Build/Cesium/Workers/{chunk-AE7SLFI7.js → chunk-CXNWOOVT.js} +2 -2
  22. package/Build/Cesium/Workers/{chunk-X2PTOT6Y.js → chunk-CYQ3GSN4.js} +2 -2
  23. package/Build/Cesium/Workers/{chunk-QE72UI7G.js → chunk-D3W5UFFV.js} +1 -1
  24. package/Build/Cesium/Workers/{chunk-FH6VU4JR.js → chunk-DFQCWJ4U.js} +2 -2
  25. package/Build/Cesium/Workers/{chunk-45WRHR4E.js → chunk-DLLTCA2T.js} +2 -2
  26. package/Build/Cesium/Workers/{chunk-QR243RCS.js → chunk-DWGCCO7G.js} +2 -2
  27. package/Build/Cesium/Workers/{chunk-ECDGM7QL.js → chunk-E6HFV6ES.js} +2 -2
  28. package/Build/Cesium/Workers/{chunk-SXAD2VV3.js → chunk-EIDU6YYM.js} +2 -2
  29. package/Build/Cesium/Workers/{chunk-PP7WYLGX.js → chunk-FNOS35FU.js} +2 -2
  30. package/Build/Cesium/Workers/{chunk-7N2D4RHA.js → chunk-GBSJMDRT.js} +2 -2
  31. package/Build/Cesium/Workers/{chunk-52N5E5AP.js → chunk-GRGNWW5F.js} +2 -2
  32. package/Build/Cesium/Workers/{chunk-D5TOOVMI.js → chunk-HDHZC6TC.js} +2 -2
  33. package/Build/Cesium/Workers/{chunk-7UJPMVRK.js → chunk-HO6MC7H7.js} +2 -2
  34. package/Build/Cesium/Workers/{chunk-J5LXPN2L.js → chunk-I6F4ELN2.js} +2 -2
  35. package/Build/Cesium/Workers/{chunk-Q2XWLXDS.js → chunk-ICEEQIB5.js} +2 -2
  36. package/Build/Cesium/Workers/{chunk-5VPOGSE7.js → chunk-IPPB4HSN.js} +2 -2
  37. package/Build/Cesium/Workers/{chunk-IFSDJFAB.js → chunk-IWUJ7CPD.js} +1 -1
  38. package/Build/Cesium/Workers/{chunk-CJG46G2U.js → chunk-J4ZUA6IA.js} +2 -2
  39. package/Build/Cesium/Workers/{chunk-7X6VBBKK.js → chunk-JAPMFKHE.js} +2 -2
  40. package/Build/Cesium/Workers/{chunk-N4DHVROK.js → chunk-K4WBGLDY.js} +2 -2
  41. package/Build/Cesium/Workers/{chunk-D3ZYTYT5.js → chunk-L6KHJ57N.js} +2 -2
  42. package/Build/Cesium/Workers/{chunk-ES6JV22Q.js → chunk-LMZNZ6KH.js} +2 -2
  43. package/Build/Cesium/Workers/{chunk-MIPALB27.js → chunk-LP73RZ4L.js} +2 -2
  44. package/Build/Cesium/Workers/{chunk-NU2E3M35.js → chunk-M2IZUAJI.js} +2 -2
  45. package/Build/Cesium/Workers/{chunk-RRUMMTSZ.js → chunk-NGP4QSKS.js} +2 -2
  46. package/Build/Cesium/Workers/{chunk-P2O2NB64.js → chunk-NV6ZGELT.js} +2 -2
  47. package/Build/Cesium/Workers/{chunk-XLR5VYOH.js → chunk-O5WQMUB2.js} +2 -2
  48. package/Build/Cesium/Workers/{chunk-DDBGLMEQ.js → chunk-OCARMQRH.js} +2 -2
  49. package/Build/Cesium/Workers/{chunk-CRQEO57T.js → chunk-OKDP3TXJ.js} +2 -2
  50. package/Build/Cesium/Workers/{chunk-6EENPWJS.js → chunk-PFVJISM4.js} +2 -2
  51. package/Build/Cesium/Workers/{chunk-YSE2PYSA.js → chunk-Q26TGCYI.js} +2 -2
  52. package/Build/Cesium/Workers/{chunk-U6JBFYKT.js → chunk-SLA6JXEF.js} +2 -2
  53. package/Build/Cesium/Workers/{chunk-IPW66OR7.js → chunk-TXSU46KC.js} +2 -2
  54. package/Build/Cesium/Workers/{chunk-LOADWCLN.js → chunk-WD6M6X6I.js} +2 -2
  55. package/Build/Cesium/Workers/{chunk-CX3YPPFZ.js → chunk-WN4E5XNN.js} +2 -2
  56. package/Build/Cesium/Workers/{chunk-RWWZP446.js → chunk-YJWIJZYD.js} +2 -2
  57. package/Build/Cesium/Workers/{chunk-KBS6LP33.js → chunk-YMDAYB54.js} +2 -2
  58. package/Build/Cesium/Workers/{chunk-YDE5NYTF.js → chunk-Z4JN7R2Z.js} +2 -2
  59. package/Build/Cesium/Workers/{chunk-WFJSWTDU.js → chunk-ZMHR7OUI.js} +2 -2
  60. package/Build/Cesium/Workers/combineGeometry.js +2 -2
  61. package/Build/Cesium/Workers/createBoxGeometry.js +2 -2
  62. package/Build/Cesium/Workers/createBoxOutlineGeometry.js +2 -2
  63. package/Build/Cesium/Workers/createCircleGeometry.js +2 -2
  64. package/Build/Cesium/Workers/createCircleOutlineGeometry.js +2 -2
  65. package/Build/Cesium/Workers/createCoplanarPolygonGeometry.js +2 -2
  66. package/Build/Cesium/Workers/createCoplanarPolygonOutlineGeometry.js +2 -2
  67. package/Build/Cesium/Workers/createCorridorGeometry.js +2 -2
  68. package/Build/Cesium/Workers/createCorridorOutlineGeometry.js +2 -2
  69. package/Build/Cesium/Workers/createCylinderGeometry.js +2 -2
  70. package/Build/Cesium/Workers/createCylinderOutlineGeometry.js +2 -2
  71. package/Build/Cesium/Workers/createEllipseGeometry.js +2 -2
  72. package/Build/Cesium/Workers/createEllipseOutlineGeometry.js +2 -2
  73. package/Build/Cesium/Workers/createEllipsoidGeometry.js +2 -2
  74. package/Build/Cesium/Workers/createEllipsoidOutlineGeometry.js +2 -2
  75. package/Build/Cesium/Workers/createFrustumGeometry.js +2 -2
  76. package/Build/Cesium/Workers/createFrustumOutlineGeometry.js +2 -2
  77. package/Build/Cesium/Workers/createGeometry.js +2 -2
  78. package/Build/Cesium/Workers/createGroundPolylineGeometry.js +2 -2
  79. package/Build/Cesium/Workers/createPlaneGeometry.js +2 -2
  80. package/Build/Cesium/Workers/createPlaneOutlineGeometry.js +2 -2
  81. package/Build/Cesium/Workers/createPolygonGeometry.js +2 -2
  82. package/Build/Cesium/Workers/createPolygonOutlineGeometry.js +2 -2
  83. package/Build/Cesium/Workers/createPolylineGeometry.js +2 -2
  84. package/Build/Cesium/Workers/createPolylineVolumeGeometry.js +2 -2
  85. package/Build/Cesium/Workers/createPolylineVolumeOutlineGeometry.js +2 -2
  86. package/Build/Cesium/Workers/createRectangleGeometry.js +2 -2
  87. package/Build/Cesium/Workers/createRectangleOutlineGeometry.js +2 -2
  88. package/Build/Cesium/Workers/createSimplePolylineGeometry.js +2 -2
  89. package/Build/Cesium/Workers/createSphereGeometry.js +2 -2
  90. package/Build/Cesium/Workers/createSphereOutlineGeometry.js +2 -2
  91. package/Build/Cesium/Workers/createTaskProcessorWorker.js +2 -2
  92. package/Build/Cesium/Workers/createVectorTileClampedPolylines.js +2 -2
  93. package/Build/Cesium/Workers/createVectorTileGeometries.js +2 -2
  94. package/Build/Cesium/Workers/createVectorTilePoints.js +2 -2
  95. package/Build/Cesium/Workers/createVectorTilePolygons.js +2 -2
  96. package/Build/Cesium/Workers/createVectorTilePolylines.js +2 -2
  97. package/Build/Cesium/Workers/createVerticesFromCesium3DTilesTerrain.js +2 -2
  98. package/Build/Cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +2 -2
  99. package/Build/Cesium/Workers/createVerticesFromHeightmap.js +2 -2
  100. package/Build/Cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +2 -2
  101. package/Build/Cesium/Workers/createWallGeometry.js +2 -2
  102. package/Build/Cesium/Workers/createWallOutlineGeometry.js +2 -2
  103. package/Build/Cesium/Workers/decodeDraco.js +2 -2
  104. package/Build/Cesium/Workers/decodeGoogleEarthEnterprisePacket.js +2 -2
  105. package/Build/Cesium/Workers/decodeI3S.js +2 -2
  106. package/Build/Cesium/Workers/gaussianSplatSorter.js +2 -2
  107. package/Build/Cesium/Workers/gaussianSplatTextureGenerator.js +2 -2
  108. package/Build/Cesium/Workers/incrementallyBuildTerrainPicker.js +2 -2
  109. package/Build/Cesium/Workers/transcodeKTX2.js +2 -2
  110. package/Build/Cesium/Workers/transferTypedArrayTest.js +1 -1
  111. package/Build/Cesium/Workers/upsampleQuantizedTerrainMesh.js +2 -2
  112. package/Build/Cesium/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +2 -2
  113. package/Build/Cesium/index.cjs +13739 -13824
  114. package/Build/Cesium/index.js +13804 -13889
  115. package/package.json +1 -1
@@ -1151,7 +1151,7 @@ export class BoundingSphere {
1151
1151
  * @param [result] - The object onto which to store the result.
1152
1152
  * @returns The modified result parameter or a new BoundingSphere instance if one was not provided.
1153
1153
  */
1154
- static fromVertices(positions?: number[], center?: Cartesian3, stride?: number, result?: BoundingSphere): BoundingSphere;
1154
+ static fromVertices(positions?: number[] | TypedArray, center?: Cartesian3, stride?: number, result?: BoundingSphere): BoundingSphere;
1155
1155
  /**
1156
1156
  * Computes a tight-fitting bounding sphere enclosing a list of EncodedCartesian3s, where the points are
1157
1157
  stored in parallel flat arrays in X, Y, Z, order. The bounding sphere is computed by running two
@@ -8310,7 +8310,11 @@ export class GoogleGeocoderService {
8310
8310
  * Default settings for accessing the Google Maps API.
8311
8311
  <br/>
8312
8312
  An API key is only required if you are directly using any Google Maps APIs, such as through {@link createGooglePhotorealistic3DTileset}.
8313
- Follow instructions for managing API keys for the Google Maps Platform at {@link https://developers.google.com/maps/documentation/embed/get-api-key}
8313
+ Follow instructions for managing API keys for the Google Maps Platform at {@link https://developers.google.com/maps/documentation/embed/get-api-key}.
8314
+ <br/>
8315
+ You can enable multiple Google Maps Platform APIs on a single API key.
8316
+ However, a separate {@link GoogleMaps.defaultStreetViewStaticApiKey}
8317
+ is available if you prefer to use a dedicated key for the Street View Static API.
8314
8318
  */
8315
8319
  export namespace GoogleMaps {
8316
8320
  /**
@@ -8321,6 +8325,14 @@ export namespace GoogleMaps {
8321
8325
  * Gets or sets the default Google Map Tiles API endpoint.
8322
8326
  */
8323
8327
  var mapTilesApiEndpoint: string | Resource;
8328
+ /**
8329
+ * Gets or sets the default Google Maps Street View Static API key.
8330
+ */
8331
+ var defaultStreetViewStaticApiKey: undefined | string;
8332
+ /**
8333
+ * Gets or sets the default Google Street View Static API endpoint.
8334
+ */
8335
+ var streetViewStaticApiEndpoint: string | Resource;
8324
8336
  }
8325
8337
 
8326
8338
  /**
@@ -27576,6 +27588,565 @@ export class BoxEmitter {
27576
27588
  dimensions: Cartesian3;
27577
27589
  }
27578
27590
 
27591
+ /**
27592
+ * View bound to the underlying buffer data of a {@link BufferPointCollection}.
27593
+
27594
+ <p>BufferPoint instances are {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweights}:
27595
+ a single BufferPoint instance can be temporarily bound to any conceptual
27596
+ "point" in a BufferPointCollection, allowing very large collections to be
27597
+ iterated and updated with a minimal memory footprint.</p>
27598
+
27599
+ Represented as one (1) position.
27600
+ */
27601
+ export class BufferPoint extends BufferPrimitive {
27602
+ /**
27603
+ * Copies data from source point to result.
27604
+ */
27605
+ static clone(point: BufferPoint, result: BufferPoint): BufferPoint;
27606
+ /**
27607
+ * Count of positions (vertices) in this primitive. Always 1.
27608
+ */
27609
+ readonly vertexCount: number;
27610
+ /**
27611
+ * Gets the position of this point.
27612
+ */
27613
+ getPosition(result?: Cartesian3): Cartesian3;
27614
+ /**
27615
+ * Sets the position of this point.
27616
+ */
27617
+ setPosition(position: Cartesian3): void;
27618
+ /**
27619
+ * Returns a JSON-serializable object representing the point. This encoding
27620
+ is not memory-efficient, and should generally be used for debugging and
27621
+ testing.
27622
+ * @returns JSON-serializable object.
27623
+ */
27624
+ toJSON(): any;
27625
+ }
27626
+
27627
+ export type BufferPointOptions = {
27628
+ show?: boolean;
27629
+ color?: Color;
27630
+ position?: Cartesian3;
27631
+ };
27632
+
27633
+ /**
27634
+ * Collection of points held in ArrayBuffer storage for performance and memory optimization.
27635
+
27636
+ <p>Default buffer memory allocation is arbitrary, and collections cannot be resized,
27637
+ so specific per-buffer capacities should be provided in the collection
27638
+ constructor when available.</p>
27639
+ * @example
27640
+ * const collection = new BufferPointCollection({primitiveCountMax: 1024});
27641
+
27642
+ const point = new BufferPoint();
27643
+
27644
+ // Create a new point, temporarily bound to 'point' local variable.
27645
+ collection.add({
27646
+ position: new Cartesian3(0.0, 0.0, 0.0),
27647
+ color: Color.WHITE,
27648
+ }, point);
27649
+
27650
+ // Iterate over all points in collection, temporarily binding 'point'
27651
+ // local variable to each, and updating point color.
27652
+ for (let i = 0; i < collection.primitiveCount; i++) {
27653
+ collection.get(i, point);
27654
+ point.setColor(Color.RED);
27655
+ }
27656
+ */
27657
+ export class BufferPointCollection extends BufferPrimitiveCollection<BufferPoint> {
27658
+ constructor(options: {
27659
+ primitiveCountMax?: number;
27660
+ show?: boolean;
27661
+ debugShowBoundingVolume?: boolean;
27662
+ });
27663
+ /**
27664
+ * Adds a new point to the collection, with the specified options. A
27665
+ {@link BufferPoint} instance is linked to the new point, using
27666
+ the 'result' argument if given, or a new instance if not. For repeated
27667
+ calls, prefer to reuse a single BufferPoint instance rather than
27668
+ allocating a new instance on each call.
27669
+ */
27670
+ add(options: BufferPointOptions, result: BufferPoint): BufferPoint;
27671
+ }
27672
+
27673
+ /**
27674
+ * View bound to the underlying buffer data of a {@link BufferPolygonCollection}.
27675
+
27676
+ <p>BufferPolygon instances are {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweights}:
27677
+ a single BufferPolygon instance can be temporarily bound to any conceptual
27678
+ "polygon" in a BufferPolygonCollection, allowing very large collections to be
27679
+ iterated and updated with a minimal memory footprint.</p>
27680
+
27681
+ <p>Represented as one (1) external linear ring of three (3) or more positions.
27682
+ May optionally define one or more internal linear rings ("holes") within the
27683
+ polygon. Each hole is represented as a single index into the positions array,
27684
+ where the vertex at that index is the start of an internal linear ring that
27685
+ continues along the following vertices until reaching either the vertex
27686
+ index of the next hole, or the end of the vertex list. Stores a precomputed
27687
+ triangulation, represented as three vertex indices per triangle.</p>
27688
+ */
27689
+ export class BufferPolygon extends BufferPrimitive {
27690
+ /**
27691
+ * Copies data from source polygon to result. If the result polygon is not
27692
+ new (the last polygon in the collection) then source and result polygons
27693
+ must have the same vertex counts, hole counts, and triangle counts.
27694
+ */
27695
+ static clone(polygon: BufferPolygon, result: BufferPolygon): BufferPolygon;
27696
+ /**
27697
+ * Count of positions (vertices) in this polygon, including both outer ring and
27698
+ internal rings (holes), number of VEC3 elements.
27699
+ */
27700
+ readonly vertexCount: number;
27701
+ /**
27702
+ * Returns an array view of this polygon's vertex positions. If 'result'
27703
+ argument is given, vertex positions are written to that array and returned.
27704
+ Otherwise, returns an ArrayView on collection memory — changes to this array
27705
+ will not trigger render updates, which requires `.setPositions()`.
27706
+ * @param [result] - return {Float64Array}
27707
+ */
27708
+ getPositions(result?: Float64Array): void;
27709
+ setPositions(positions: Float64Array): void;
27710
+ /**
27711
+ * Offset in collection position array to first vertex in polygon's outer
27712
+ linear ring, number of VEC3 elements.
27713
+ */
27714
+ readonly outerVertexOffset: number;
27715
+ /**
27716
+ * Count of positions (vertices) in this polygon's outer linear ring, number
27717
+ of VEC3 elements.
27718
+ */
27719
+ readonly outerVertexCount: number;
27720
+ /**
27721
+ * Returns an array view of this polygon's outer linear ring vertex positions.
27722
+ If 'result' argument is given, vertex positions are written to that array
27723
+ and returned. Otherwise, returns an ArrayView on collection memory —
27724
+ changes to this array will not trigger render updates, which requires
27725
+ `.setPositions()`.
27726
+ */
27727
+ getOuterPositions(result?: Float64Array): Float64Array;
27728
+ /**
27729
+ * Count of holes (indices) in this polygon.
27730
+ */
27731
+ readonly holeCount: number;
27732
+ /**
27733
+ * Gets this polygon's hole indices, with each hole represented as a single
27734
+ offset into this polygon's positions array. Each hole implicitly
27735
+ continues along an internal linear ring from that vertex offset until
27736
+ reaching either the end of the positions array, or the next hole offset.
27737
+
27738
+ If 'result' argument is given, hole indices are written to that array and
27739
+ returned. Otherwise, returns an ArrayView on collection memory — changes
27740
+ to this array will not trigger render updates, which requires `.setHoles()`.
27741
+ */
27742
+ getHoles(result?: Uint32Array): Uint32Array;
27743
+ /**
27744
+ * Sets this polygon's hole indices, with holes represented as a single
27745
+ offset into this polygon's positions array. Each hole implicitly
27746
+ continues along an internal linear ring from that vertex offset until
27747
+ reaching either the end of the positions array, or the next hole offset.
27748
+ */
27749
+ setHoles(holes: Uint32Array): void;
27750
+ /**
27751
+ * Returns the number of (VEC3) vertices in the specified hole.
27752
+ */
27753
+ getHoleVertexCount(holeIndex: number): number;
27754
+ /**
27755
+ * Returns an array view of the inner linear ring vertex positions for the
27756
+ specified hole. If 'result' argument is given, vertex positions are written
27757
+ to that array and returned. Otherwise, returns an ArrayView on collection
27758
+ memory — changes to this array will not trigger render updates, which
27759
+ requires `.setPositions()`.
27760
+ * @param [result] - return {Float64Array}
27761
+ */
27762
+ getHolePositions(holeIndex: number, result?: Float64Array): void;
27763
+ /**
27764
+ * Count of triangles in this polygon, number of VEC3 elements.
27765
+ */
27766
+ readonly triangleCount: number;
27767
+ /**
27768
+ * Returns an array view of this polygon's triangle indices, represented as
27769
+ three vertex indices per triangle.
27770
+
27771
+ If 'result' argument is given, triangle indices are written to that array
27772
+ and returned. Otherwise, returns an ArrayView on collection memory —
27773
+ changes to this array will not trigger render updates, which requires
27774
+ `.setTriangles()`.
27775
+ */
27776
+ getTriangles(result?: Uint32Array): Uint32Array;
27777
+ /**
27778
+ * Sets this polygon's triangle indices, represented as three vertex indices
27779
+ per triangle.
27780
+ */
27781
+ setTriangles(indices: Uint32Array): void;
27782
+ /**
27783
+ * Returns a JSON-serializable object representing the polygon. This encoding
27784
+ is not memory-efficient, and should generally be used for debugging and
27785
+ testing.
27786
+ * @returns JSON-serializable object.
27787
+ */
27788
+ toJSON(): any;
27789
+ }
27790
+
27791
+ export type BufferPolygonOptions = {
27792
+ show?: boolean;
27793
+ color?: Color;
27794
+ positions?: Float64Array;
27795
+ holes?: Uint32Array;
27796
+ triangles?: Uint32Array;
27797
+ };
27798
+
27799
+ /**
27800
+ * Collection of polygons held in ArrayBuffer storage for performance and memory optimization.
27801
+
27802
+ <p>Default buffer memory allocation is arbitrary, and collections cannot be resized,
27803
+ so specific per-buffer capacities should be provided in the collection
27804
+ constructor when available.</p>
27805
+ * @example
27806
+ * import earcut from "earcut";
27807
+
27808
+ const collection = new BufferPolygonCollection({
27809
+ primitiveCountMax: 1024,
27810
+ vertexCountMax: 4096,
27811
+ holeCountMax: 1024,
27812
+ triangleCountMax: 2048,
27813
+ });
27814
+
27815
+ const polygon = new BufferPolygon();
27816
+ const positions = [ ... ];
27817
+ const holes = [ ... ];
27818
+
27819
+ // Create a new polygon, temporarily bound to 'polygon' local variable.
27820
+ collection.add({
27821
+ positions: new Float64Array(positions),
27822
+ holes: new Uint32Array(holes),
27823
+ triangles: new Uint32Array(earcut(positions, holes, 3)),
27824
+ color: Color.WHITE,
27825
+ }, polygon);
27826
+
27827
+ // Iterate over all polygons in collection, temporarily binding 'polygon'
27828
+ // local variable to each, and updating polygon color.
27829
+ for (let i = 0; i < collection.primitiveCount; i++) {
27830
+ collection.get(i, polygon);
27831
+ polygon.setColor(Color.RED);
27832
+ }
27833
+ */
27834
+ export class BufferPolygonCollection extends BufferPrimitiveCollection<BufferPolygon> {
27835
+ constructor(options: {
27836
+ primitiveCountMax?: number;
27837
+ vertexCountMax?: number;
27838
+ holeCountMax?: number;
27839
+ triangleCountMax?: number;
27840
+ show?: boolean;
27841
+ debugShowBoundingVolume?: boolean;
27842
+ });
27843
+ /**
27844
+ * Duplicates the contents of this collection into the result collection.
27845
+ Result collection is not resized, and must contain enough space for all
27846
+ primitives in the source collection. Existing polygons in the result
27847
+ collection will be overwritten.
27848
+
27849
+ <p>Useful when allocating more space for a collection that has reached its
27850
+ capacity, and efficiently transferring polygons to the new collection.</p>
27851
+ * @example
27852
+ * const result = new BufferPolygonCollection({ ... }); // allocate larger 'result' collection
27853
+ BufferPolygonCollection.clone(collection, result); // copy polygons from 'collection' into 'result'
27854
+ */
27855
+ static clone(collection: BufferPolygonCollection, result: BufferPolygonCollection): BufferPolygonCollection;
27856
+ /**
27857
+ * Adds a new polygon to the collection, with the specified options. A
27858
+ {@link BufferPolygon} instance is linked to the new polygon, using
27859
+ the 'result' argument if given, or a new instance if not. For repeated
27860
+ calls, prefer to reuse a single BufferPolygon instance rather than
27861
+ allocating a new instance on each call.
27862
+ */
27863
+ add(options: BufferPolygonOptions, result: BufferPolygon): BufferPolygon;
27864
+ /**
27865
+ * Total byte length of buffers owned by this collection. Includes any unused
27866
+ space allocated by {@link primitiveCountMax}, even if no polygons have
27867
+ yet been added in that space.
27868
+ */
27869
+ readonly byteLength: number;
27870
+ /**
27871
+ * Number of holes in collection. Must be <= {@link holeCountMax}.
27872
+ */
27873
+ readonly holeCount: number;
27874
+ /**
27875
+ * Maximum number of holes in collection. Must be >= {@link holeCount}.
27876
+ */
27877
+ readonly holeCountMax: number;
27878
+ /**
27879
+ * Number of triangles in collection. Must be <= {@link triangleCountMax}.
27880
+ */
27881
+ readonly triangleCount: number;
27882
+ /**
27883
+ * Maximum number of triangles in collection. Must be >= {@link triangleCount}.
27884
+ */
27885
+ readonly triangleCountMax: number;
27886
+ }
27887
+
27888
+ /**
27889
+ * View bound to the underlying buffer data of a {@link BufferPolylineCollection}.
27890
+
27891
+ <p>BufferPolyline instances are {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweights}:
27892
+ a single BufferPolyline instance can be temporarily bound to any conceptual
27893
+ "polyline" in a BufferPolylineCollection, allowing very large collections to be
27894
+ iterated and updated with a minimal memory footprint.</p>
27895
+
27896
+ Represented as two (2) or more positions.
27897
+ */
27898
+ export class BufferPolyline extends BufferPrimitive {
27899
+ /**
27900
+ * Copies data from source polyline to result. If the result polyline is not
27901
+ new (the last polyline in the collection) then source and result polylines
27902
+ must have the same vertex counts.
27903
+ */
27904
+ static clone(polyline: BufferPolyline, result: BufferPolyline): BufferPolyline;
27905
+ /**
27906
+ * Count of positions (vertices) in this polyline, number of VEC3 elements.
27907
+ */
27908
+ readonly vertexCount: number;
27909
+ /**
27910
+ * Returns an array view of this polyline's vertex positions. If 'result'
27911
+ argument is given, vertex positions are written to that array and returned.
27912
+ Otherwise, returns an ArrayView on collection memory — changes to this array
27913
+ will not trigger render updates, which requires `.setPositions()`.
27914
+ * @param [result] - return {Float64Array}
27915
+ */
27916
+ getPositions(result?: Float64Array): void;
27917
+ setPositions(positions: Float64Array): void;
27918
+ /**
27919
+ * Width of polyline, 0–255px.
27920
+ */
27921
+ width: number;
27922
+ /**
27923
+ * Returns a JSON-serializable object representing the polyline. This encoding
27924
+ is not memory-efficient, and should generally be used for debugging and
27925
+ testing.
27926
+ * @returns JSON-serializable object.
27927
+ */
27928
+ toJSON(): any;
27929
+ }
27930
+
27931
+ export type BufferPolylineOptions = {
27932
+ show?: boolean;
27933
+ color?: Color;
27934
+ positions?: Float64Array;
27935
+ width?: number;
27936
+ };
27937
+
27938
+ /**
27939
+ * Collection of polylines held in ArrayBuffer storage for performance and memory optimization.
27940
+
27941
+ <p>Default buffer memory allocation is arbitrary, and collections cannot be resized,
27942
+ so specific per-buffer capacities should be provided in the collection
27943
+ constructor when available.</p>
27944
+ * @example
27945
+ * const collection = new BufferPolylineCollection({
27946
+ primitiveCountMax: 1024,
27947
+ vertexCountMax: 4096,
27948
+ });
27949
+
27950
+ const polyline = new BufferPolyline();
27951
+
27952
+ // Create a new polyline, temporarily bound to 'polyline' local variable.
27953
+ collection.add({
27954
+ positions: new Float64Array([ ... ]),
27955
+ color: Color.WHITE,
27956
+ }, polyline);
27957
+
27958
+ // Iterate over all polylines in collection, temporarily binding 'polyline'
27959
+ // local variable to each, and updating polyline color.
27960
+ for (let i = 0; i < collection.primitiveCount; i++) {
27961
+ collection.get(i, polyline);
27962
+ polyline.setColor(Color.RED);
27963
+ }
27964
+ */
27965
+ export class BufferPolylineCollection extends BufferPrimitiveCollection<BufferPolyline> {
27966
+ /**
27967
+ * Adds a new polyline to the collection, with the specified options. A
27968
+ {@link BufferPolyline} instance is linked to the new polyline, using
27969
+ the 'result' argument if given, or a new instance if not. For repeated
27970
+ calls, prefer to reuse a single BufferPolyline instance rather than
27971
+ allocating a new instance on each call.
27972
+ */
27973
+ add(options: BufferPolylineOptions, result: BufferPolyline): BufferPolyline;
27974
+ }
27975
+
27976
+ /**
27977
+ * View bound to the underlying buffer data of a {@link BufferPrimitiveCollection}. Abstract.
27978
+
27979
+ <p>BufferPrimitive instances are intended to be reused when iterating over large collections,
27980
+ and temporarily bound to a primitive index while performing read/write operations on that primitive,
27981
+ before being rebound to the next primitive, using the
27982
+ {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweight pattern}.</p>
27983
+ */
27984
+ export class BufferPrimitive {
27985
+ /**
27986
+ * Copies data from source primitive to result. If the result primitive is not
27987
+ new (the last primitive in the collection) then source and result primitives
27988
+ must have the same vertex counts.
27989
+ */
27990
+ static clone(primitive: BufferPrimitive, result: BufferPrimitive): BufferPrimitive;
27991
+ /**
27992
+ * Feature ID associated with the primitive; not required to be unique.
27993
+ */
27994
+ featureId: number;
27995
+ /**
27996
+ * Whether primitive is shown.
27997
+ */
27998
+ show: boolean;
27999
+ /**
28000
+ * Returns the color of primitive.
28001
+ */
28002
+ getColor(result: Color): Color;
28003
+ /**
28004
+ * Updates the color of primitive.
28005
+ */
28006
+ setColor(color: Color): void;
28007
+ /**
28008
+ * Returns a JSON-serializable object representing the primitive. This encoding
28009
+ is not memory-efficient, and should generally be used for debugging and
28010
+ testing.
28011
+ * @returns JSON-serializable object.
28012
+ */
28013
+ toJSON(): any;
28014
+ }
28015
+
28016
+ export type BufferPrimitiveOptions = {
28017
+ show?: boolean;
28018
+ color?: Color;
28019
+ };
28020
+
28021
+ /**
28022
+ * Collection of primitives held in ArrayBuffer storage for performance and memory optimization.
28023
+
28024
+ <p>To get the full performance benefit of using a BufferPrimitiveCollection containing "N" primitives,
28025
+ be careful to avoid allocating "N" instances of any related JavaScript object. {@link BufferPrimitive},
28026
+ {@link Color}, {@link Cartesian3}, and other objects can all be reused when working with large collections,
28027
+ using the {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweight pattern}.</p>
28028
+ */
28029
+ export class BufferPrimitiveCollection<T extends BufferPrimitive> {
28030
+ constructor(options: {
28031
+ primitiveCountMax?: number;
28032
+ vertexCountMax?: number;
28033
+ show?: boolean;
28034
+ debugShowBoundingVolume?: boolean;
28035
+ });
28036
+ /**
28037
+ * Default capacity of buffers on new collections. A quantity of elements:
28038
+ number of vertices in the vertex buffer, primitives in the primitive
28039
+ buffer, etc. This value is arbitrary, and collections cannot be resized,
28040
+ so specific per-buffer capacities should be provided in the collection
28041
+ constructor when available.
28042
+ */
28043
+ readonly DEFAULT_CAPACITY: number;
28044
+ /**
28045
+ * Determines if primitives in this collection will be shown.
28046
+ */
28047
+ show: boolean;
28048
+ /**
28049
+ * Bounding volume for all primitives in the collection, including both
28050
+ shown and hidden primitives.
28051
+ */
28052
+ boundingVolume: BoundingSphere;
28053
+ /**
28054
+ * This property is for debugging only; it is not for production use nor is it optimized.
28055
+ <p>
28056
+ Draws the bounding sphere for each draw command in the primitive.
28057
+ </p>
28058
+ */
28059
+ debugShowBoundingVolume: boolean;
28060
+ /**
28061
+ * Returns true if this object was destroyed; otherwise, false.
28062
+ * @returns True if this object was destroyed; otherwise, false.
28063
+ */
28064
+ isDestroyed(): boolean;
28065
+ /**
28066
+ * Sorts primitives of the collection.
28067
+
28068
+ Because sorting changes the indices (but not the feature IDs) of primitives
28069
+ in the collection, the function also returns an array mapping from previous
28070
+ index to new index. When sorting repeatedly, the array can be reused and
28071
+ passed as the 'result' argument for each call.
28072
+ * @returns Mapping from previous index to new index.
28073
+ */
28074
+ sort(sortFn: (...params: any[]) => any, result: Uint32Array): Uint32Array;
28075
+ /**
28076
+ * Duplicates the contents of this collection into the result collection.
28077
+ Result collection is not resized, and must contain enough space for all
28078
+ primitives in the source collection. Existing primitives in the result
28079
+ collection will be overwritten.
28080
+
28081
+ <p>Useful when allocating more space for a collection that has reached its
28082
+ capacity, and efficiently transferring features to the new collection.</p>
28083
+ * @example
28084
+ * const result = new BufferPrimitiveCollection({ ... }); // allocate larger 'result' collection
28085
+ BufferPrimitiveCollection.clone(collection, result); // copy primitives from 'collection' into 'result'
28086
+ */
28087
+ static clone<T extends BufferPrimitive>(collection: BufferPrimitiveCollection<T>, result: BufferPrimitiveCollection<T>): void;
28088
+ /**
28089
+ * Makes the given {@link BufferPrimitive} a view onto this collection's
28090
+ primitive at the given index, for use when reading/writing primitive
28091
+ properties. When iterating over a large collection, prefer to reuse
28092
+ the same BufferPrimitive instance throughout the loop — rebinding
28093
+ an existing instance to a different primitive is cheap, and avoids
28094
+ allocating in-memory objects for every object.
28095
+ * @example
28096
+ * const primitive = new BufferPrimitive();
28097
+ for (let i = 0; i < collection.primitiveCount; i++) {
28098
+ collection.get(i, primitive);
28099
+ primitive.setColor(Color.RED);
28100
+ }
28101
+ * @returns The BufferPrimitive instance passed as the
28102
+ 'result' argument, now bound to the specified primitive index.
28103
+ */
28104
+ get(index: number, result: BufferPrimitive): BufferPrimitive;
28105
+ /**
28106
+ * Adds a new primitive to the collection, with the specified options. A
28107
+ {@link BufferPrimitive} instance is linked to the new primitive, using
28108
+ the 'result' argument if given, or a new instance if not. For repeated
28109
+ calls, prefer to reuse a single BufferPrimitive instance rather than
28110
+ allocating a new instance on each call.
28111
+ */
28112
+ add(options: BufferPrimitiveOptions, result: BufferPrimitive): BufferPrimitive;
28113
+ update(frameState: any): void;
28114
+ /**
28115
+ * Number of primitives in collection. Must be <= {@link primitiveCountMax}.
28116
+ */
28117
+ readonly primitiveCount: number;
28118
+ /**
28119
+ * Maximum number of primitives this collection can contain. Must be >=
28120
+ {@link primitiveCount}.
28121
+ */
28122
+ readonly primitiveCountMax: number;
28123
+ /**
28124
+ * Total byte length of buffers owned by this collection. Includes any unused
28125
+ space allocated by {@link primitiveCountMax}, even if no primitives have
28126
+ yet been added in that space.
28127
+ */
28128
+ readonly byteLength: number;
28129
+ /**
28130
+ * Number of vertices in collection. Must be <= {@link vertexCountMax}.
28131
+ */
28132
+ readonly vertexCount: number;
28133
+ /**
28134
+ * Maximum number of vertices this collection can contain. Must be >=
28135
+ {@link vertexCount}.
28136
+ */
28137
+ readonly vertexCountMax: number;
28138
+ /**
28139
+ * Returns a JSON-serializable array representing the collection. This encoding
28140
+ is not memory-efficient, and should generally be used for debugging and
28141
+ testing.
28142
+ * @example
28143
+ * console.table(collection.toJSON());
28144
+ * @returns List of JSON-serializable objects, one for each
28145
+ primitive in the collection.
28146
+ */
28147
+ toJSON(): object[];
28148
+ }
28149
+
27579
28150
  /**
27580
28151
  * An orientation given by a pair of unit vectors
27581
28152
  * @property direction - The unit "direction" vector
@@ -31964,6 +32535,97 @@ export class CreditDisplay {
31964
32535
  static cesiumCredit: Credit;
31965
32536
  }
31966
32537
 
32538
+ export namespace CubeMapPanorama {
32539
+ /**
32540
+ * Initialization options for the CubeMapPanorama constructor
32541
+ * @property [options.sources] - The source URL or <code>Image</code> object for each of the six cube map faces. See the example below.
32542
+ * @property [options.transform] - A 4x4 transformation matrix that defines the panorama’s position and orientation
32543
+ * @property [options.show = true] - Determines if this primitive will be shown.
32544
+ * @property [options.credit] - A credit for the panorama, which is displayed on the canvas.
32545
+ */
32546
+ type ConstructorOptions = {};
32547
+ }
32548
+
32549
+ /**
32550
+ * A {@link Panorama} that displays imagery in cube map format in a scene.
32551
+ <p>
32552
+ This is only supported in 3D. The cube map panorama is faded out when morphing to 2D or Columbus view. The size of
32553
+ the cube map panorama must not exceed {@link Scene#maximumSkyBoxSize}.
32554
+ </p>
32555
+ * @example
32556
+ * const modelMatrix = Cesium.Matrix4.getMatrix3(
32557
+ Cesium.Transforms.localFrameToFixedFrameGenerator("north", "down")(
32558
+ Cesium.Cartesian3.fromDegrees(longitude, latitude, height),
32559
+ Cesium.Ellipsoid.default
32560
+ ),
32561
+ new Cesium.Matrix3()
32562
+ );
32563
+
32564
+
32565
+ scene.primitives.add(new Cesium.CubeMapPanorama({
32566
+ sources : {
32567
+ positiveX : 'cubemap_px.png',
32568
+ negativeX : 'cubemap_nx.png',
32569
+ positiveY : 'cubemap_py.png',
32570
+ negativeY : 'cubemap_ny.png',
32571
+ positiveZ : 'cubemap_pz.png',
32572
+ negativeZ : 'cubemap_nz.png'
32573
+ }
32574
+ transform: modelMatrix,
32575
+ }));
32576
+ * @param options - Object describing initialization options
32577
+ */
32578
+ export class CubeMapPanorama {
32579
+ constructor(options: CubeMapPanorama.ConstructorOptions);
32580
+ /**
32581
+ * The sources used to create the cube map faces: an object
32582
+ with <code>positiveX</code>, <code>negativeX</code>, <code>positiveY</code>,
32583
+ <code>negativeY</code>, <code>positiveZ</code>, and <code>negativeZ</code> properties.
32584
+ These can be either URLs or <code>Image</code> objects.
32585
+ */
32586
+ sources: any;
32587
+ /**
32588
+ * Determines if the cube map panorama will be shown.
32589
+ */
32590
+ show: boolean;
32591
+ /**
32592
+ * Gets the transform of the panorama.
32593
+ */
32594
+ readonly transform: Matrix4;
32595
+ /**
32596
+ * Gets the credits of the panorama.
32597
+ */
32598
+ readonly credit: Credit;
32599
+ /**
32600
+ * Called when {@link Viewer} or {@link CesiumWidget} render the scene to
32601
+ get the draw commands needed to render this primitive.
32602
+ <p>
32603
+ Do not call this function directly. This is documented just to
32604
+ list the exceptions that may be propagated when the scene is rendered:
32605
+ </p>
32606
+ */
32607
+ update(): void;
32608
+ /**
32609
+ * Returns true if this object was destroyed; otherwise, false.
32610
+ <br /><br />
32611
+ If this object was destroyed, it should not be used; calling any function other than
32612
+ <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
32613
+ * @returns <code>true</code> if this object was destroyed; otherwise, <code>false</code>.
32614
+ */
32615
+ isDestroyed(): boolean;
32616
+ /**
32617
+ * Destroys the WebGL resources held by this object. Destroying an object allows for deterministic
32618
+ release of WebGL resources, instead of relying on the garbage collector to destroy this object.
32619
+ <br /><br />
32620
+ Once an object is destroyed, it should not be used; calling any function other than
32621
+ <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
32622
+ assign the return value (<code>undefined</code>) to the object as done in the example.
32623
+ * @example
32624
+ * cubeMapPanorama = cubeMapPanorama && cubeMapPanorama.destroy();
32625
+ */
32626
+ destroy(): void;
32627
+ }
32628
+
31967
32629
  /**
31968
32630
  * Determines which triangles, if any, are culled.
31969
32631
  */
@@ -32379,16 +33041,6 @@ export enum DepthFunction {
32379
33041
  ALWAYS = WebGLConstants.ALWAYS
32380
33042
  }
32381
33043
 
32382
- /**
32383
- * Returns the type that the given class property has in a GLSL shader.
32384
- *
32385
- * It returns the same string as `PropertyTextureProperty.prototype.getGlslType`
32386
- * for a property texture property with the given class property
32387
- * @param classProperty - The class property
32388
- * @returns The GLSL shader type string for the property
32389
- */
32390
- export function getGlslType(classProperty: MetadataClassProperty): string;
32391
-
32392
33044
  /**
32393
33045
  * Returns a shader statement that applies the inverse of the
32394
33046
  * value transform to the given value, based on the given offset
@@ -32788,6 +33440,104 @@ export class EllipsoidSurfaceAppearance {
32788
33440
  getRenderState(): any;
32789
33441
  }
32790
33442
 
33443
+ export namespace EquirectangularPanorama {
33444
+ /**
33445
+ * Initialization options for the EquirectangularPanorama constructor
33446
+ * @property options.transform - A 4x4 transformation matrix that defines the panorama’s position and orientation
33447
+ (for example, derived from a position and heading-pitch-roll).
33448
+ * @property options.image - A URL to an image resource, or a preloaded image object.
33449
+ * @property [options.radius = 100000.0] - The radius of the panorama in meters.
33450
+ * @property [options.repeatHorizontal = 1.0] - The number of times to repeat the texture horizontally.
33451
+ * @property [options.repeatVertical = 1.0] - The number of times to repeat the texture vertically.
33452
+ * @property [options.credit] - A credit for the panorama, which is displayed on the canvas.
33453
+ */
33454
+ type ConstructorOptions = {};
33455
+ }
33456
+
33457
+ /**
33458
+ * A {@link Panorama} that displays imagery in equirectangular format in a scene.
33459
+ * @example
33460
+ * const position = Cesium.Cartesian3.fromDegrees(
33461
+ -75.1699, // longitude
33462
+ 39.9522, // latitude
33463
+ 100.0 // height in meters
33464
+ );
33465
+
33466
+ const heading = Cesium.Math.toRadians(45.0); // rotation about up axis
33467
+ const pitch = Cesium.Math.toRadians(-30.0); // pitch (negative looks down)
33468
+ const roll = Cesium.Math.toRadians(10.0); // roll about forward axis
33469
+
33470
+ const hpr = new Cesium.HeadingPitchRoll(
33471
+ heading,
33472
+ pitch,
33473
+ roll
33474
+ );
33475
+
33476
+ const modelMatrix = Cesium.Transforms.headingPitchRollToFixedFrame(
33477
+ position,
33478
+ hpr,
33479
+ Cesium.Ellipsoid.WGS84,
33480
+ Cesium.Transforms.eastNorthUpToFixedFrame
33481
+ );
33482
+
33483
+ scene.primitives.add(new Cesium.EquirectangularPanorama({
33484
+ transform: modelMatrix,
33485
+ image: 'path/to/image',
33486
+ }));
33487
+ * @param options - Object describing initialization options
33488
+ */
33489
+ export class EquirectangularPanorama {
33490
+ constructor(options: EquirectangularPanorama.ConstructorOptions);
33491
+ /**
33492
+ * Gets the radius of the panorama.
33493
+ */
33494
+ readonly radius: number;
33495
+ /**
33496
+ * Gets the source image of the panorama.
33497
+ */
33498
+ readonly image: string | HTMLImageElement | HTMLCanvasElement | ImageBitmap;
33499
+ /**
33500
+ * Gets the transform of the panorama.
33501
+ */
33502
+ readonly transform: Matrix4;
33503
+ /**
33504
+ * Gets the credits of the panorama.
33505
+ */
33506
+ readonly credit: Credit;
33507
+ /**
33508
+ * Determines if the equirectangular panorama will be shown.
33509
+ */
33510
+ show: boolean;
33511
+ /**
33512
+ * Called when {@link Viewer} or {@link CesiumWidget} render the scene to
33513
+ get the draw commands needed to render this primitive.
33514
+ <p>
33515
+ Do not call this function directly. This is documented just to
33516
+ list the exceptions that may be propagated when the scene is rendered:
33517
+ </p>
33518
+ */
33519
+ update(): void;
33520
+ /**
33521
+ * Destroys the WebGL resources held by this object. Destroying an object allows for deterministic
33522
+ release of WebGL resources, instead of relying on the garbage collector to destroy this object.
33523
+ <br /><br />
33524
+ Once an object is destroyed, it should not be used; calling any function other than
33525
+ <code>isDestroyed</code> will result in a {@link DeveloperError} exception. Therefore,
33526
+ assign the return value (<code>undefined</code>) to the object as done in the example.
33527
+ * @example
33528
+ * equirectangularPanorama = equirectangularPanorama && equirectangularPanorama.destroy();
33529
+ */
33530
+ destroy(): void;
33531
+ /**
33532
+ * Returns true if this object was destroyed; otherwise, false.
33533
+ <br /><br />
33534
+ If this object was destroyed, it should not be used; calling any function other than
33535
+ <code>isDestroyed</code> will result in a {@link DeveloperError} exception.
33536
+ * @returns <code>true</code> if this object was destroyed; otherwise, <code>false</code>.
33537
+ */
33538
+ isDestroyed(): boolean;
33539
+ }
33540
+
32791
33541
  /**
32792
33542
  * An expression for a style applied to a {@link Cesium3DTileset}.
32793
33543
  <p>
@@ -34088,6 +34838,87 @@ export class GoogleEarthEnterpriseMapsProvider {
34088
34838
  static logoUrl: string;
34089
34839
  }
34090
34840
 
34841
+ /**
34842
+ * <div class="notice">
34843
+ This object is normally not instantiated directly, use {@link GoogleStreetViewCubeMapPanoramaProvider.fromUrl}.
34844
+ </div>
34845
+
34846
+
34847
+ Creates a {@link PanoramaProvider} which provides imagery from {@link https://developers.google.com/maps/documentation/streetview|Google Street View Static API} to be displayed in a panorama.
34848
+ */
34849
+ export class GoogleStreetViewCubeMapPanoramaProvider {
34850
+ constructor();
34851
+ /**
34852
+ * Gets the panorama primitive for a requested position and orientation.
34853
+ * @example
34854
+ * const provider = await Cesium.GoogleStreetViewCubeMapPanoramaProvider.fromUrl({
34855
+ key: 'your Google Streetview Static api key'
34856
+ })
34857
+
34858
+ const panoIdObject = provider.getNearestPanoId(position);
34859
+ const position = Cartographic.fromDegrees(panoIdObject.location.lng, panoIdObject.location.lat, 0);
34860
+
34861
+ const primitive = await provider.loadPanorama({
34862
+ cartographic: position,
34863
+ panoId: panoIdObject.panoId
34864
+ });
34865
+ viewer.scene.primitive.add(primitive);
34866
+ * @param options - Object with the following properties:
34867
+ * @param options.cartographic - The position to place the panorama in the scene.
34868
+ * @param [options.panoId] - The panoramaId identifier for the image in the Google API. If not provided this will be looked up for the provided cartographic location.
34869
+ * @param [options.tileSize] - Optional tile size override (square).
34870
+ * @param [options.signature] - Optional signature for signed URLs. See {@link https://developers.google.com/maps/documentation/streetview/digital-signature} for more information.
34871
+ * @param [options.credit] - A credit for the data source, which is displayed on the canvas.
34872
+ * @returns The panorama primitive textured with imagery.
34873
+ */
34874
+ loadPanorama(options: {
34875
+ cartographic: Cartographic;
34876
+ panoId?: string;
34877
+ tileSize?: number;
34878
+ signature?: string;
34879
+ credit?: Credit | string;
34880
+ }): CubeMapPanorama;
34881
+ /**
34882
+ * Gets the panoIds for the given cartographic location. See {@link https://developers.google.com/maps/documentation/tile/streetview#panoid-search}.
34883
+ * @example
34884
+ * const provider = await Cesium.GoogleStreetViewCubeMapPanoramaProvider.fromUrl({
34885
+ key: 'your Google Streetview Static api key'
34886
+ })
34887
+ const panoIds = provider.getNearestPanoId(position);
34888
+ * @param position - The position to search for the nearest panoId.
34889
+ * @param [radius = 50] - The radius in meters to search for the nearest panoId.
34890
+ * @returns an object containing a panoId, latitude, and longitude of the closest panorama
34891
+ */
34892
+ getNearestPanoId(position: Cartographic, radius?: number): any;
34893
+ /**
34894
+ * Gets metadata for panoId. See {@link https://developers.google.com/maps/documentation/tile/streetview#metadata_response} for response object.
34895
+ * @example
34896
+ * const panoIdObject = provider.getNearestPanoId(position);
34897
+ const panoIdMetadata = provider.getPanoIdMetadata(panoIdObject.panoId);
34898
+ * @returns object containing metadata for the panoId.
34899
+ */
34900
+ getPanoIdMetadata(panoId: string): any;
34901
+ /**
34902
+ * Creates a {@link PanoramaProvider} which provides cube face images from the {@link https://developers.google.com/maps/documentation/streetview|Google Street View Static API}.
34903
+ * @example
34904
+ * const provider = await Cesium.GoogleStreetViewCubeMapPanoramaProvider.fromUrl({
34905
+ key: 'your Google Streetview Static api key'
34906
+ })
34907
+ * @param options - Object with the following properties:
34908
+ * @param [options.key = GoogleMaps.defaultStreetViewStaticApiKey] - Your API key to access Google Street View Static API. See {@link https://developers.google.com/maps/documentation/javascript/get-api-key} for instructions on how to create your own key. If undefined, defaults to {@link GoogleMaps.defaultStreetViewStaticApiKey}. If that value is unavailable, falls back to {@link GoogleMaps.defaultApiKey}.
34909
+ * @param [options.url = GoogleMaps.streetViewStaticApiEndpoint] - The URL to access Google Street View Static API. See {@link https://developers.google.com/maps/documentation/streetview/overview} for more information.
34910
+ * @param [options.tileSize = 600] - Default width and height (in pixels) of each square tile.
34911
+ * @param [options.credit] - A credit for the data source, which is displayed on the canvas.
34912
+ * @returns A promise that resolves to the created GoogleStreetViewCubeMapPanoramaProvider.'
34913
+ */
34914
+ static fromUrl(options: {
34915
+ key?: string;
34916
+ url?: string | Resource;
34917
+ tileSize?: number;
34918
+ credit?: Credit | string;
34919
+ }): Promise<GoogleStreetViewCubeMapPanoramaProvider>;
34920
+ }
34921
+
34091
34922
  export namespace GridImageryProvider {
34092
34923
  /**
34093
34924
  * Initialization options for the GridImageryProvider constructor
@@ -37695,8 +38526,8 @@ export class MetadataClassProperty {
37695
38526
  max?: number | number[] | number[][];
37696
38527
  offset?: number | number[] | number[][];
37697
38528
  scale?: number | number[] | number[][];
37698
- noData?: boolean | number | string | any[];
37699
- default?: boolean | number | string | any[];
38529
+ noData?: number | string | any[];
38530
+ default?: number | string | any[];
37700
38531
  required?: boolean;
37701
38532
  name?: string;
37702
38533
  description?: string;
@@ -37758,11 +38589,11 @@ export class MetadataClassProperty {
37758
38589
  /**
37759
38590
  * The no-data sentinel value that represents null values
37760
38591
  */
37761
- readonly noData: boolean | number | string | any[];
38592
+ readonly noData: number | string | any[];
37762
38593
  /**
37763
38594
  * A default value to use when an entity's property value is not defined.
37764
38595
  */
37765
- readonly default: boolean | number | string | any[];
38596
+ readonly default: number | string | any[];
37766
38597
  /**
37767
38598
  * Whether the property is required.
37768
38599
  */
@@ -37826,11 +38657,11 @@ export enum MetadataComponentType {
37826
38657
  */
37827
38658
  UINT32 = "UINT32",
37828
38659
  /**
37829
- * A 64-bit signed integer. This type requires BigInt support.
38660
+ * A 64-bit signed integer.
37830
38661
  */
37831
38662
  INT64 = "INT64",
37832
38663
  /**
37833
- * A 64-bit signed integer. This type requires BigInt support
38664
+ * A 64-bit signed integer.
37834
38665
  */
37835
38666
  UINT64 = "UINT64",
37836
38667
  /**
@@ -39898,6 +40729,45 @@ export class OpenStreetMapImageryProvider extends UrlTemplateImageryProvider {
39898
40729
  constructor(options: OpenStreetMapImageryProvider.ConstructorOptions);
39899
40730
  }
39900
40731
 
40732
+ /**
40733
+ * Displays panorama imagery in a scene. This type describes an interface and is not intended to be instantiated directly.
40734
+ */
40735
+ export class Panorama {
40736
+ constructor();
40737
+ /**
40738
+ * Determines if the panorama will be shown.
40739
+ */
40740
+ show: boolean;
40741
+ /**
40742
+ * Gets the transform of the panorama.
40743
+ */
40744
+ readonly transform: Matrix4;
40745
+ /**
40746
+ * Gets the credits of the panorama.
40747
+ */
40748
+ readonly credit: Credit;
40749
+ }
40750
+
40751
+ /**
40752
+ * Provides imagery to be displayed on the surface of an ellipsoid. This type describes an
40753
+ interface and is not intended to be instantiated directly.
40754
+ */
40755
+ export class PanoramaProvider {
40756
+ constructor();
40757
+ /**
40758
+ * Returns a panorama provider.
40759
+ * @param options - Input options to create the panorama provider.
40760
+ * @returns The panorama provider for loading panoramas into a scene.
40761
+ */
40762
+ static fromUrl(options: any): PanoramaProvider;
40763
+ /**
40764
+ * Returns a panorama primitive.
40765
+ * @param options - Input options to create the panorama primitive.
40766
+ * @returns The panorama primitive for displaying panoramas in a scene.
40767
+ */
40768
+ loadPanorama(options: any): Panorama;
40769
+ }
40770
+
39901
40771
  /**
39902
40772
  * A particle emitted by a {@link ParticleSystem}.
39903
40773
  * @param options - An object with the following properties:
@@ -43657,17 +44527,14 @@ export class SkyBox {
43657
44527
  sources?: any;
43658
44528
  show?: boolean;
43659
44529
  });
43660
- /**
43661
- * The sources used to create the cube map faces: an object
43662
- with <code>positiveX</code>, <code>negativeX</code>, <code>positiveY</code>,
43663
- <code>negativeY</code>, <code>positiveZ</code>, and <code>negativeZ</code> properties.
43664
- These can be either URLs or <code>Image</code> objects.
43665
- */
43666
- sources: any;
43667
44530
  /**
43668
44531
  * Determines if the sky box will be shown.
43669
44532
  */
43670
44533
  show: boolean;
44534
+ /**
44535
+ * Gets or sets the the primitive object.
44536
+ */
44537
+ sources: any;
43671
44538
  /**
43672
44539
  * Called when {@link Viewer} or {@link CesiumWidget} render the scene to
43673
44540
  get the draw commands needed to render this primitive.