mars3d-cesium 1.141.0 → 1.142.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/Build/Cesium/Cesium.d.ts +249 -35
  2. package/Build/Cesium/Cesium.js +15564 -15503
  3. package/Build/Cesium/Workers/{chunk-5VC6GKJD.js → chunk-2WTSOQGS.js} +2 -2
  4. package/Build/Cesium/Workers/{chunk-RLPCZZG4.js → chunk-2ZR6QSSI.js} +2 -2
  5. package/Build/Cesium/Workers/{chunk-SHV2E5IR.js → chunk-3TSBNXE7.js} +2 -2
  6. package/Build/Cesium/Workers/{chunk-2ZUMP6FE.js → chunk-3WEMURR3.js} +2 -2
  7. package/Build/Cesium/Workers/{chunk-R5O5DVZD.js → chunk-4ETAQ37B.js} +2 -2
  8. package/Build/Cesium/Workers/{chunk-ILES6JJL.js → chunk-4N7H6YZE.js} +2 -2
  9. package/Build/Cesium/Workers/{chunk-5WIQWIDU.js → chunk-4P7GORSL.js} +2 -2
  10. package/Build/Cesium/Workers/{chunk-HPSKSBFG.js → chunk-5JDT4VMQ.js} +2 -2
  11. package/Build/Cesium/Workers/chunk-5RMHOCKK.js +26 -0
  12. package/Build/Cesium/Workers/{chunk-NAOK3KGT.js → chunk-7N2AJIJC.js} +2 -2
  13. package/Build/Cesium/Workers/{chunk-7CH4MFDA.js → chunk-7PLCLLWC.js} +2 -2
  14. package/Build/Cesium/Workers/{chunk-CGRCHWFG.js → chunk-7Z4ZLIOW.js} +2 -2
  15. package/Build/Cesium/Workers/{chunk-KTQRKFCB.js → chunk-7ZJXIJ2F.js} +2 -2
  16. package/Build/Cesium/Workers/{chunk-UASTG4AF.js → chunk-AC5MHRDL.js} +2 -2
  17. package/Build/Cesium/Workers/{chunk-EKDYIJLI.js → chunk-AMW3SAPD.js} +2 -2
  18. package/Build/Cesium/Workers/{chunk-FRM2YCDS.js → chunk-B2DQOEDE.js} +2 -2
  19. package/Build/Cesium/Workers/{chunk-N6EN2BOY.js → chunk-C3JKZBS5.js} +2 -2
  20. package/Build/Cesium/Workers/{chunk-GXMV6G6L.js → chunk-EPSEO3NS.js} +2 -2
  21. package/Build/Cesium/Workers/{chunk-5OG7DLNT.js → chunk-EXLRE22Z.js} +2 -2
  22. package/Build/Cesium/Workers/{chunk-TMOFTMUE.js → chunk-FBIEWIA4.js} +2 -2
  23. package/Build/Cesium/Workers/{chunk-KSOWBQGD.js → chunk-G6WZEABM.js} +2 -2
  24. package/Build/Cesium/Workers/{chunk-WIGTKL4L.js → chunk-G7RN6XT4.js} +2 -2
  25. package/Build/Cesium/Workers/{chunk-XGFD24GJ.js → chunk-GJZHYIBC.js} +1 -1
  26. package/Build/Cesium/Workers/{chunk-3FTNCCYT.js → chunk-GUQRQN7K.js} +2 -2
  27. package/Build/Cesium/Workers/{chunk-CDZ3XKVQ.js → chunk-GXRULXBP.js} +2 -2
  28. package/Build/Cesium/Workers/{chunk-SHB4D2PT.js → chunk-H6LAOR5B.js} +2 -2
  29. package/Build/Cesium/Workers/{chunk-SINVTWVY.js → chunk-HKFO4UYN.js} +2 -2
  30. package/Build/Cesium/Workers/{chunk-KW5HG37J.js → chunk-JZGYJV5E.js} +2 -2
  31. package/Build/Cesium/Workers/{chunk-7E4Z2TKQ.js → chunk-KXVHCEY2.js} +2 -2
  32. package/Build/Cesium/Workers/{chunk-GNV373C3.js → chunk-KYDKUWWA.js} +2 -2
  33. package/Build/Cesium/Workers/{chunk-ESGQYWWC.js → chunk-L6XPUI5D.js} +2 -2
  34. package/Build/Cesium/Workers/{chunk-V35VUQVS.js → chunk-LJS2AJIZ.js} +1 -1
  35. package/Build/Cesium/Workers/{chunk-7WRUK24H.js → chunk-LQ243OAE.js} +2 -2
  36. package/Build/Cesium/Workers/{chunk-DPLTI5HQ.js → chunk-LS5FAYAA.js} +2 -2
  37. package/Build/Cesium/Workers/{chunk-OUMYLVEO.js → chunk-LVWTUFWY.js} +2 -2
  38. package/Build/Cesium/Workers/{chunk-TN5MKFRC.js → chunk-NQPJPU5W.js} +1 -1
  39. package/Build/Cesium/Workers/{chunk-BCBAUFC4.js → chunk-O6FXZBDO.js} +2 -2
  40. package/Build/Cesium/Workers/{chunk-ULKPUL26.js → chunk-OSIBWZIF.js} +2 -2
  41. package/Build/Cesium/Workers/{chunk-M6ON6VVV.js → chunk-P52G42H4.js} +2 -2
  42. package/Build/Cesium/Workers/{chunk-PBVQ42HU.js → chunk-PGY3OEVW.js} +1 -1
  43. package/Build/Cesium/Workers/{chunk-TOWGTZPA.js → chunk-QZ5EGJQN.js} +2 -2
  44. package/Build/Cesium/Workers/{chunk-DIWYAFRL.js → chunk-RDFB7N2T.js} +2 -2
  45. package/Build/Cesium/Workers/{chunk-Y7MKUU32.js → chunk-RHD3WQLV.js} +2 -2
  46. package/Build/Cesium/Workers/{chunk-VPREA3UD.js → chunk-RO4BRLAD.js} +2 -2
  47. package/Build/Cesium/Workers/{chunk-OBWPHK5H.js → chunk-RRSSD2CI.js} +2 -2
  48. package/Build/Cesium/Workers/{chunk-K6GWWKQU.js → chunk-RSFJBA3I.js} +2 -2
  49. package/Build/Cesium/Workers/{chunk-7NLQQSNP.js → chunk-TKI7JJEW.js} +2 -2
  50. package/Build/Cesium/Workers/{chunk-YJKT47HQ.js → chunk-TXZVEXHN.js} +1 -1
  51. package/Build/Cesium/Workers/{chunk-4DV5ZZMP.js → chunk-VSASJODR.js} +1 -1
  52. package/Build/Cesium/Workers/{chunk-HGQZAEVQ.js → chunk-XBYMS5AV.js} +2 -2
  53. package/Build/Cesium/Workers/{chunk-Y66T7GYQ.js → chunk-XEIKJVHN.js} +2 -2
  54. package/Build/Cesium/Workers/{chunk-L6WRMVET.js → chunk-XIOENNW3.js} +2 -2
  55. package/Build/Cesium/Workers/{chunk-JZEYWMXO.js → chunk-XJHYCOQA.js} +2 -2
  56. package/Build/Cesium/Workers/{chunk-7DBMV4BS.js → chunk-XMAHJCEX.js} +2 -2
  57. package/Build/Cesium/Workers/{chunk-UDUMKSBO.js → chunk-XWBCSISC.js} +2 -2
  58. package/Build/Cesium/Workers/{chunk-H5AVOACH.js → chunk-ZQ6XEE6M.js} +2 -2
  59. package/Build/Cesium/Workers/{chunk-UIR2RSB2.js → chunk-ZR4ZOFPL.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 +15596 -15535
  114. package/Build/Cesium/index.js +15608 -15547
  115. package/package.json +1 -1
  116. package/Build/Cesium/Workers/chunk-I7E7ZFTX.js +0 -26
@@ -8019,6 +8019,31 @@ export type TypedArrayConstructor = Float64ArrayConstructor | Float32ArrayConstr
8019
8019
 
8020
8020
  export type Destroyable = any;
8021
8021
 
8022
+ /**
8023
+ * A GeoJSON position expressed as [longitude, latitude] or [longitude, latitude, altitude].
8024
+ */
8025
+ export type GeoJsonPosition = number[];
8026
+
8027
+ /**
8028
+ * A GeoJSON geometry object.
8029
+ */
8030
+ export type GeoJsonGeometry = any;
8031
+
8032
+ /**
8033
+ * A GeoJSON feature object.
8034
+ */
8035
+ export type GeoJsonFeature = any;
8036
+
8037
+ /**
8038
+ * A GeoJSON feature collection object.
8039
+ */
8040
+ export type GeoJsonFeatureCollection = any;
8041
+
8042
+ /**
8043
+ * A top-level GeoJSON object (Geometry, Feature, or FeatureCollection).
8044
+ */
8045
+ export type GeoJson = GeoJsonGeometry | GeoJsonFeature | GeoJsonFeatureCollection;
8046
+
8022
8047
  /**
8023
8048
  * <div class="notice">
8024
8049
  To construct GoogleEarthEnterpriseMetadata, call {@link GoogleEarthEnterpriseMetadata.fromUrl}. Do not call the constructor directly.
@@ -9872,7 +9897,7 @@ export interface MapProjection {
9872
9897
  /**
9873
9898
  * Gets the {@link Ellipsoid}.
9874
9899
  */
9875
- ellipsoid: Ellipsoid;
9900
+ readonly ellipsoid: Ellipsoid;
9876
9901
  /**
9877
9902
  * Projects {@link Cartographic} coordinates, in radians, to projection-specific map coordinates, in meters.
9878
9903
  * @param cartographic - The coordinates to project.
@@ -16565,25 +16590,25 @@ export class ScreenSpaceEventHandler {
16565
16590
  * Set a function to be executed on an input event.
16566
16591
  * @param action - Function to be executed when the input event occurs.
16567
16592
  * @param type - The ScreenSpaceEventType of input event.
16568
- * @param [modifier] - A KeyboardEventModifier key that is held when a <code>type</code>
16593
+ * @param [modifiers] - The KeyboardEventModifier keys that are held when a <code>type</code>
16569
16594
  event occurs.
16570
16595
  */
16571
- setInputAction(action: ScreenSpaceEventHandler.PositionedEventCallback | ScreenSpaceEventHandler.MotionEventCallback | ScreenSpaceEventHandler.WheelEventCallback | ScreenSpaceEventHandler.TwoPointEventCallback | ScreenSpaceEventHandler.TwoPointMotionEventCallback, type: ScreenSpaceEventType, modifier?: KeyboardEventModifier): void;
16596
+ setInputAction(action: ScreenSpaceEventHandler.PositionedEventCallback | ScreenSpaceEventHandler.MotionEventCallback | ScreenSpaceEventHandler.WheelEventCallback | ScreenSpaceEventHandler.TwoPointEventCallback | ScreenSpaceEventHandler.TwoPointMotionEventCallback, type: ScreenSpaceEventType, modifiers?: KeyboardEventModifier[] | KeyboardEventModifier): void;
16572
16597
  /**
16573
16598
  * Returns the function to be executed on an input event.
16574
16599
  * @param type - The ScreenSpaceEventType of input event.
16575
- * @param [modifier] - A KeyboardEventModifier key that is held when a <code>type</code>
16600
+ * @param [modifiers] - The KeyboardEventModifier keys that are held when a <code>type</code>
16576
16601
  event occurs.
16577
16602
  * @returns The function to be executed on an input event.
16578
16603
  */
16579
- getInputAction(type: ScreenSpaceEventType, modifier?: KeyboardEventModifier): ScreenSpaceEventHandler.PositionedEventCallback | ScreenSpaceEventHandler.MotionEventCallback | ScreenSpaceEventHandler.WheelEventCallback | ScreenSpaceEventHandler.TwoPointEventCallback | ScreenSpaceEventHandler.TwoPointMotionEventCallback;
16604
+ getInputAction(type: ScreenSpaceEventType, modifiers?: KeyboardEventModifier[] | KeyboardEventModifier): ScreenSpaceEventHandler.PositionedEventCallback | ScreenSpaceEventHandler.MotionEventCallback | ScreenSpaceEventHandler.WheelEventCallback | ScreenSpaceEventHandler.TwoPointEventCallback | ScreenSpaceEventHandler.TwoPointMotionEventCallback;
16580
16605
  /**
16581
16606
  * Removes the function to be executed on an input event.
16582
16607
  * @param type - The ScreenSpaceEventType of input event.
16583
- * @param [modifier] - A KeyboardEventModifier key that is held when a <code>type</code>
16608
+ * @param [modifiers] - The KeyboardEventModifier keys that are held when a <code>type</code>
16584
16609
  event occurs.
16585
16610
  */
16586
- removeInputAction(type: ScreenSpaceEventType, modifier?: KeyboardEventModifier): void;
16611
+ removeInputAction(type: ScreenSpaceEventType, modifiers?: KeyboardEventModifier[] | KeyboardEventModifier): void;
16587
16612
  /**
16588
16613
  * Returns true if this object was destroyed; otherwise, false.
16589
16614
  <br /><br />
@@ -27716,15 +27741,22 @@ for (let i = 0; i < collection.primitiveCount; i++) {
27716
27741
  }
27717
27742
  * @param [options.modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
27718
27743
  * @param [options.allowPicking = false] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
27744
+ * @param [options.boundingVolume] - Bounding volume, in world space, for the collection. When
27745
+ unspecified, a bounding volume is computed automatically and updated when primitive positions change. When
27746
+ specified, users are responsible for updating bounding volume as needed. Pre-computing the bounding volume
27747
+ manually, and updating it only as needed, will improve performance for larger dynamic collections.
27719
27748
  */
27720
27749
  export class BufferPointCollection extends BufferPrimitiveCollection<BufferPoint> {
27721
27750
  constructor(options: {
27722
27751
  modelMatrix?: Matrix4;
27723
27752
  primitiveCountMax?: number;
27724
- show?: boolean;
27725
27753
  positionDatatype?: ComponentDatatype;
27754
+ positionNormalized?: boolean;
27755
+ show?: boolean;
27726
27756
  allowPicking?: boolean;
27757
+ boundingVolume?: BoundingSphere;
27727
27758
  debugShowBoundingVolume?: boolean;
27759
+ blendOption?: BlendOption;
27728
27760
  });
27729
27761
  /**
27730
27762
  * Adds a new point to the collection, with the specified options. A
@@ -27953,6 +27985,10 @@ for (let i = 0; i < collection.primitiveCount; i++) {
27953
27985
  polygon.setMaterial(material);
27954
27986
  }
27955
27987
  * @param [options.allowPicking = true] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
27988
+ * @param [options.boundingVolume] - Bounding volume, in world space, for the collection. When
27989
+ unspecified, a bounding volume is computed automatically and updated when primitive positions change. When
27990
+ specified, users are responsible for updating bounding volume as needed. Pre-computing the bounding volume
27991
+ manually, and updating it only as needed, will improve performance for larger dynamic collections.
27956
27992
  */
27957
27993
  export class BufferPolygonCollection extends BufferPrimitiveCollection<BufferPolygon> {
27958
27994
  constructor(options: {
@@ -27961,9 +27997,12 @@ export class BufferPolygonCollection extends BufferPrimitiveCollection<BufferPol
27961
27997
  holeCountMax?: number;
27962
27998
  triangleCountMax?: number;
27963
27999
  positionDatatype?: ComponentDatatype;
28000
+ positionNormalized?: boolean;
27964
28001
  show?: boolean;
27965
28002
  allowPicking?: boolean;
28003
+ boundingVolume?: BoundingSphere;
27966
28004
  debugShowBoundingVolume?: boolean;
28005
+ blendOption?: BlendOption;
27967
28006
  });
27968
28007
  /**
27969
28008
  * Duplicates the contents of this collection into the result collection.
@@ -28243,7 +28282,14 @@ be careful to avoid allocating "N" instances of any related JavaScript object. {
28243
28282
  {@link Color}, {@link Cartesian3}, and other objects can all be reused when working with large collections,
28244
28283
  using the {@link https://en.wikipedia.org/wiki/Flyweight_pattern|flyweight pattern}.</p>
28245
28284
  * @param [options.modelMatrix = Matrix4.IDENTITY] - Transforms geometry from model to world coordinates.
28285
+ * @param [options.positionNormalized = false] - When <code>true</code>, integer position values are treated as normalized,
28286
+ where the full integer range maps to [-1, 1] (signed) or [0, 1] (unsigned). Only relevant for integer position datatypes
28287
+ (BYTE, UNSIGNED_BYTE, SHORT, UNSIGNED_SHORT).
28246
28288
  * @param [options.allowPicking = false] - When <code>true</code>, primitives are pickable with {@link Scene#pick}. When <code>false</code>, memory and initialization cost are lower.
28289
+ * @param [options.boundingVolume] - Bounding volume, in world space, for the collection. When
28290
+ unspecified, a bounding volume is computed automatically and updated when primitive positions change. When
28291
+ specified, users are responsible for updating bounding volume as needed. Pre-computing the bounding volume
28292
+ manually, and updating it only as needed, will improve performance for larger dynamic collections.
28247
28293
  */
28248
28294
  export class BufferPrimitiveCollection<T extends BufferPrimitive> {
28249
28295
  constructor(options: {
@@ -28252,16 +28298,22 @@ export class BufferPrimitiveCollection<T extends BufferPrimitive> {
28252
28298
  vertexCountMax?: number;
28253
28299
  show?: boolean;
28254
28300
  positionDatatype?: ComponentDatatype;
28301
+ positionNormalized?: boolean;
28255
28302
  allowPicking?: boolean;
28303
+ boundingVolume?: BoundingSphere;
28256
28304
  debugShowBoundingVolume?: boolean;
28305
+ blendOption?: BlendOption;
28257
28306
  });
28258
28307
  /**
28259
28308
  * Determines if primitives in this collection will be shown.
28260
28309
  */
28261
28310
  show: boolean;
28311
+ /**
28312
+ * Transforms geometry from model to world coordinates.
28313
+ */
28262
28314
  protected readonly _modelMatrix: Matrix4;
28263
28315
  protected readonly _boundingVolume: BoundingSphere;
28264
- protected readonly _boundingVolumeWC: BoundingSphere;
28316
+ protected readonly _boundingVolumeAutoUpdate: boolean;
28265
28317
  /**
28266
28318
  * This property is for debugging only; it is not for production use nor is it optimized.
28267
28319
  <p>
@@ -28356,15 +28408,20 @@ export class BufferPrimitiveCollection<T extends BufferPrimitive> {
28356
28408
  */
28357
28409
  readonly modelMatrix: Matrix4;
28358
28410
  /**
28359
- * Local bounding volume for all primitives in the collection, including both
28411
+ * World-space bounding volume for all primitives in the collection, including both
28360
28412
  shown and hidden primitives.
28361
28413
  */
28362
28414
  readonly boundingVolume: BoundingSphere;
28363
28415
  /**
28364
- * World bounding volume for all primitives in the collection, including both
28365
- shown and hidden primitives.
28416
+ * The component datatype used to store position values.
28417
+ */
28418
+ readonly positionDatatype: ComponentDatatype;
28419
+ /**
28420
+ * When <code>true</code>, integer position values are treated as normalized
28421
+ values, where the full integer range maps to [-1, 1] (signed) or [0, 1]
28422
+ (unsigned).
28366
28423
  */
28367
- readonly boundingVolumeWC: BoundingSphere;
28424
+ readonly positionNormalized: boolean;
28368
28425
  /**
28369
28426
  * Returns a JSON-serializable array representing the collection. This encoding
28370
28427
  is not memory-efficient, and should generally be used for debugging and
@@ -29328,8 +29385,7 @@ Access derived objects through {@link Cesium3DTile#content}.
29328
29385
  This type describes an interface and is not intended to be instantiated directly.
29329
29386
  </p>
29330
29387
  */
29331
- export class Cesium3DTileContent {
29332
- constructor();
29388
+ export interface Cesium3DTileContent {
29333
29389
  /**
29334
29390
  * Gets the number of features in the tile.
29335
29391
  */
@@ -29853,6 +29909,7 @@ export namespace Cesium3DTileset {
29853
29909
  * @property [debugColorizeTiles = false] - For debugging only. When true, assigns a random color to each tile.
29854
29910
  * @property [enableDebugWireframe = false] - For debugging only. This must be true for debugWireframe to work in WebGL1. This cannot be set after the tileset has been created.
29855
29911
  * @property [debugWireframe = false] - For debugging only. When true, render's each tile's content as a wireframe.
29912
+ * @property [edgeDisplayMode = EdgeDisplayMode.SURFACES_ONLY] - Controls how edges from the {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility} glTF extension are rendered relative to surface geometry.
29856
29913
  * @property [debugShowBoundingVolume = false] - For debugging only. When true, renders the bounding volume for each tile.
29857
29914
  * @property [debugShowContentBoundingVolume = false] - For debugging only. When true, renders the bounding volume for each tile's content.
29858
29915
  * @property [debugShowViewerRequestVolume = false] - For debugging only. When true, renders the viewer request volume for each tile.
@@ -29921,6 +29978,7 @@ export namespace Cesium3DTileset {
29921
29978
  debugColorizeTiles?: boolean;
29922
29979
  enableDebugWireframe?: boolean;
29923
29980
  debugWireframe?: boolean;
29981
+ edgeDisplayMode?: EdgeDisplayMode;
29924
29982
  debugShowBoundingVolume?: boolean;
29925
29983
  debugShowContentBoundingVolume?: boolean;
29926
29984
  debugShowViewerRequestVolume?: boolean;
@@ -30345,6 +30403,13 @@ export class Cesium3DTileset {
30345
30403
  </p>
30346
30404
  */
30347
30405
  debugWireframe: boolean;
30406
+ /**
30407
+ * Controls how edges from the
30408
+ {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
30409
+ glTF extension are rendered relative to surface geometry. Tile content
30410
+ primitives that do not declare the extension are unaffected.
30411
+ */
30412
+ edgeDisplayMode: EdgeDisplayMode;
30348
30413
  /**
30349
30414
  * This property is for debugging only; it is not optimized for production use.
30350
30415
  <p>
@@ -33615,6 +33680,35 @@ export class DynamicEnvironmentMapManager {
33615
33680
  static readonly DEFAULT_SPHERICAL_HARMONIC_COEFFICIENTS: Cartesian3[];
33616
33681
  }
33617
33682
 
33683
+ /**
33684
+ * Defines how edges contributed by the
33685
+ {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
33686
+ glTF extension are rendered relative to surface geometry.
33687
+ <p>
33688
+ Primitives that do not include the extension are unaffected by this setting
33689
+ and always render normally.
33690
+ </p>
33691
+ */
33692
+ export enum EdgeDisplayMode {
33693
+ /**
33694
+ * Render surfaces only. Edges from the
33695
+ {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
33696
+ extension are hidden.
33697
+ */
33698
+ SURFACES_ONLY = 0,
33699
+ /**
33700
+ * Render both surfaces and edges. Edges from the
33701
+ {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
33702
+ extension are composited on top of the surface geometry.
33703
+ */
33704
+ SURFACES_AND_EDGES = 1,
33705
+ /**
33706
+ * Render edges only. Surface geometry is hidden for primitives that have edge visibility data,
33707
+ approximating CAD-style wireframe rendering. Primitives without the extension are unaffected.
33708
+ */
33709
+ EDGES_ONLY = 2
33710
+ }
33711
+
33618
33712
  /**
33619
33713
  * An appearance for geometry on the surface of the ellipsoid like {@link PolygonGeometry}
33620
33714
  and {@link RectangleGeometry}, which supports all materials like {@link MaterialAppearance}
@@ -34072,14 +34166,16 @@ export class FrameRateMonitor {
34072
34166
  destroy(): void;
34073
34167
  }
34074
34168
 
34169
+ export interface GaussianSplat3DTileContent extends Cesium3DTileContent {
34170
+ }
34171
+
34075
34172
  /**
34076
34173
  * Represents the contents of a glTF or glb using the {@link https://github.com/CesiumGS/glTF/tree/draft-splat-spz/extensions/2.0/Khronos/KHR_gaussian_splatting | KHR_gaussian_splatting} and {@link https://github.com/CesiumGS/glTF/tree/draft-splat-spz/extensions/2.0/Khronos/KHR_gaussian_splatting_compression_spz_2 | KHR_gaussian_splatting_compression_spz_2} extensions.
34077
34174
  <p>
34078
34175
  Implements the {@link Cesium3DTileContent} interface.
34079
34176
  </p>
34080
34177
  */
34081
- export class GaussianSplat3DTileContent {
34082
- constructor();
34178
+ export class GaussianSplat3DTileContent implements Cesium3DTileContent {
34083
34179
  /**
34084
34180
  * Performs checks to ensure that the provided tileset has the Gaussian Splatting extensions.
34085
34181
  * @param tileset - The tileset to check for the extensions.
@@ -34144,7 +34240,7 @@ export class GaussianSplat3DTileContent {
34144
34240
  * The resource that this content was loaded from.
34145
34241
  <p>
34146
34242
  */
34147
- readonly url: Resource;
34243
+ readonly url: string;
34148
34244
  /**
34149
34245
  * Returns whether the feature has this property.
34150
34246
  * @param batchId - The batchId for the feature.
@@ -34165,6 +34261,75 @@ export class GaussianSplat3DTileContent {
34165
34261
  getFeature(batchId: number): Cesium3DTileFeature;
34166
34262
  }
34167
34263
 
34264
+ export type GeoJsonPrimitiveConstructorOptions = {
34265
+ geoJson?: any;
34266
+ url?: Resource | string;
34267
+ ellipsoid?: Ellipsoid;
34268
+ allowPicking?: boolean;
34269
+ show?: boolean;
34270
+ pickObjectFactory?: (...params: any[]) => any;
34271
+ };
34272
+
34273
+ /**
34274
+ * Lightweight GeoJSON loader that converts features directly into
34275
+ {@link BufferPointCollection}, {@link BufferPolylineCollection}, and
34276
+ {@link BufferPolygonCollection}.
34277
+
34278
+ Unlike {@link GeoJsonDataSource}, this path does not create entities.
34279
+ Instead, it exposes high-throughput buffer primitive collections that can be
34280
+ added directly to {@link Scene#primitives}.
34281
+ * @example
34282
+ * const loader = await Cesium.GeoJsonPrimitive.fromUrl("./data.geojson");
34283
+ viewer.scene.primitives.add(loader);
34284
+
34285
+ loader.points; // BufferPointCollection | undefined
34286
+ loader.polylines; // BufferPolylineCollection | undefined
34287
+ loader.polygons; // BufferPolygonCollection | undefined
34288
+ loader.ids; // source feature IDs
34289
+ loader.properties; // source feature properties
34290
+ */
34291
+ export class GeoJsonPrimitive {
34292
+ constructor(options?: GeoJsonPrimitiveConstructorOptions);
34293
+ /**
34294
+ * Loader source URL when created via {@link GeoJsonPrimitive.fromUrl}.
34295
+ */
34296
+ readonly url: string | undefined;
34297
+ /**
34298
+ * Feature count represented by the loaded collections.
34299
+ */
34300
+ readonly featureCount: number;
34301
+ /**
34302
+ * Lookup table from integer ID generated by GeoJsonPrimitive, to integer or string Feature ID from GeoJSON source.
34303
+ */
34304
+ readonly ids: (string | number | undefined)[];
34305
+ /**
34306
+ * Source GeoJSON properties, indexed by generated integer ID.
34307
+ */
34308
+ readonly properties: Record<string, unknown>[];
34309
+ /**
34310
+ * Buffer point collection for point geometries.
34311
+ */
34312
+ readonly points: BufferPointCollection | undefined;
34313
+ /**
34314
+ * Buffer polyline collection for linestring geometries.
34315
+ */
34316
+ readonly polylines: BufferPolylineCollection | undefined;
34317
+ /**
34318
+ * Buffer polygon collection for polygon geometries.
34319
+ */
34320
+ readonly polygons: BufferPolygonCollection | undefined;
34321
+ /**
34322
+ * Loads GeoJSON from a URL or {@link Resource}.
34323
+ */
34324
+ static fromUrl(url: Resource | string, options?: GeoJsonPrimitiveConstructorOptions): Promise<GeoJsonPrimitive>;
34325
+ /**
34326
+ * Creates a loader directly from a parsed GeoJSON object.
34327
+ */
34328
+ static fromGeoJson(geoJson: any, options?: GeoJsonPrimitiveConstructorOptions): GeoJsonPrimitive;
34329
+ getId(featureId: number): void;
34330
+ getProperties(featureId: number): void;
34331
+ }
34332
+
34168
34333
  /**
34169
34334
  * Describes the format in which to request GetFeatureInfo from a Web Map Service (WMS) or Web Map Tile Service (WMTS) server.
34170
34335
  * @param type - The type of response to expect from a GetFeatureInfo request. Valid
@@ -34570,6 +34735,15 @@ export class GlobeTranslucency {
34570
34735
  */
34571
34736
  export function loadGltfJson(): void;
34572
34737
 
34738
+ export type EXTMeshPolygonExtension = {
34739
+ count: number;
34740
+ indicesOffsets: number;
34741
+ loopIndices?: number;
34742
+ loopIndicesOffsets?: number;
34743
+ triangleIndices?: number;
34744
+ triangleIndicesOffsets?: number;
34745
+ };
34746
+
34573
34747
  /**
34574
34748
  * Removes an extension from gltf.extensions, gltf.extensionsUsed, gltf.extensionsRequired, and any other objects in the glTF if it is present.
34575
34749
  * @param gltf - A javascript object containing a glTF asset.
@@ -39735,6 +39909,11 @@ Cesium supports glTF assets with the following extensions:
39735
39909
  {@link https://github.com/KhronosGroup/glTF/pull/2514|EXT_mesh_primitive_restart}
39736
39910
  </li>
39737
39911
  <li>
39912
+ {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
39913
+ (edges are hidden by default; set {@link EdgeDisplayMode} via
39914
+ {@link Model#edgeDisplayMode} or {@link Cesium3DTileset#edgeDisplayMode} to display them)
39915
+ </li>
39916
+ <li>
39738
39917
  {@link https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Vendor/EXT_meshopt_compression|EXT_meshopt_compression}
39739
39918
  </li>
39740
39919
  <li>
@@ -39907,6 +40086,13 @@ export class Model {
39907
40086
  </p>
39908
40087
  */
39909
40088
  debugWireframe: boolean;
40089
+ /**
40090
+ * Controls how edges from the
40091
+ {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility}
40092
+ glTF extension are rendered relative to surface geometry. Primitives that
40093
+ do not declare the extension are unaffected by this setting.
40094
+ */
40095
+ edgeDisplayMode: EdgeDisplayMode;
39910
40096
  /**
39911
40097
  * Whether or not to render the model.
39912
40098
  */
@@ -40206,6 +40392,7 @@ export class Model {
40206
40392
  * @param [options.color] - A color that blends with the model's rendered color.
40207
40393
  * @param [options.colorBlendMode = ColorBlendMode.HIGHLIGHT] - Defines how the color blends with the model.
40208
40394
  * @param [options.colorBlendAmount = 0.5] - Value used to determine the color strength when the <code>colorBlendMode</code> is <code>MIX</code>. A value of 0.0 results in the model's rendered color while a value of 1.0 results in a solid color, with any value in-between resulting in a mix of the two.
40395
+ * @param [options.edgeDisplayMode = EdgeDisplayMode.SURFACES_ONLY] - Controls how edges from the {@link https://github.com/KhronosGroup/glTF/pull/2479|EXT_mesh_primitive_edge_visibility} extension are rendered relative to surface geometry.
40209
40396
  * @param [options.silhouetteColor = Color.RED] - The silhouette color. If more than 256 models have silhouettes enabled, there is a small chance that overlapping models will have minor artifacts.
40210
40397
  * @param [options.silhouetteSize = 0.0] - The size of the silhouette in pixels.
40211
40398
  * @param [options.enableShowOutline = true] - Whether to enable outlines for models using the {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Vendor/CESIUM_primitive_outline|CESIUM_primitive_outline} extension. This can be set false to avoid post-processing geometry at load time. When false, the showOutlines and outlineColor options are ignored.
@@ -40260,6 +40447,7 @@ export class Model {
40260
40447
  color?: Color;
40261
40448
  colorBlendMode?: ColorBlendMode;
40262
40449
  colorBlendAmount?: number;
40450
+ edgeDisplayMode?: EdgeDisplayMode;
40263
40451
  silhouetteColor?: Color;
40264
40452
  silhouetteSize?: number;
40265
40453
  enableShowOutline?: boolean;
@@ -40981,6 +41169,32 @@ export class Moon {
40981
41169
  destroy(): void;
40982
41170
  }
40983
41171
 
41172
+ /**
41173
+ * A Mapbox Vector Tiles (MVT) data provider. Loads .mvt or .pbf tiles, converting tiles
41174
+ dynamically (at runtime) into 3D Tiles.
41175
+
41176
+ <div class="notice">
41177
+ This object is normally not instantiated directly, use {@link MVTDataProvider.fromUrl}.
41178
+ </div>
41179
+ */
41180
+ export class MVTDataProvider {
41181
+ /**
41182
+ * Creates an MVTDataProvider from the specified URL template and options.
41183
+ * @param url - URL template, containing {z}, {x}, and {y} placeholders.
41184
+ * @param [options] - Provider options.
41185
+ * @param [options.minZoom = 0] - Minimum zoom level represented in the generated tileset.
41186
+ * @param [options.maxZoom = 14] - Maximum zoom level represented in the generated tileset.
41187
+ * @param [options.extent] - Optional geographic extent in radians to constrain the generated tile tree.
41188
+ * @param [options.featureIdProperty] - MVT property name to use as feature ID.
41189
+ */
41190
+ static fromUrl(url: Resource | string, options?: {
41191
+ minZoom?: number;
41192
+ maxZoom?: number;
41193
+ extent?: Rectangle;
41194
+ featureIdProperty?: string;
41195
+ }): void;
41196
+ }
41197
+
40984
41198
  /**
40985
41199
  * A {@link TileDiscardPolicy} specifying that tile images should never be discard.
40986
41200
  */
@@ -46318,7 +46532,8 @@ export class VoxelPrimitive {
46318
46532
  */
46319
46533
  clippingPlanes: ClippingPlaneCollection;
46320
46534
  /**
46321
- * Gets or sets the custom shader. If undefined, {@link VoxelPrimitive.DefaultCustomShader} is set.
46535
+ * Gets or sets the custom shader. If undefined, attempt to build a default custom shader
46536
+ appropriate to the metadata type. If that fails, use {@link VoxelPrimitive.DefaultCustomShader}.
46322
46537
  */
46323
46538
  customShader: CustomShader;
46324
46539
  /**
@@ -46351,7 +46566,21 @@ export class VoxelPrimitive {
46351
46566
  This type describes an interface and is not intended to be instantiated directly.
46352
46567
  */
46353
46568
  export class VoxelProvider {
46354
- constructor();
46569
+ /**
46570
+ * Requests the data for a given tile.
46571
+ * @param [options] - Object with the following properties:
46572
+ * @param [options.tileLevel = 0] - The tile's level.
46573
+ * @param [options.tileX = 0] - The tile's X coordinate.
46574
+ * @param [options.tileY = 0] - The tile's Y coordinate.
46575
+ * @param [options.tileZ = 0] - The tile's Z coordinate.
46576
+ * @returns A promise resolving to a VoxelContent containing the data for the tile, or undefined if the request could not be scheduled this frame.
46577
+ */
46578
+ requestData(options?: {
46579
+ tileLevel?: number;
46580
+ tileX?: number;
46581
+ tileY?: number;
46582
+ tileZ?: number;
46583
+ }): Promise<VoxelContent> | undefined;
46355
46584
  /**
46356
46585
  * A transform from local space to global space.
46357
46586
  */
@@ -46416,21 +46645,6 @@ export class VoxelProvider {
46416
46645
  * The number of levels of detail containing available tiles in the tileset.
46417
46646
  */
46418
46647
  readonly availableLevels: number | undefined;
46419
- /**
46420
- * Requests the data for a given tile.
46421
- * @param [options] - Object with the following properties:
46422
- * @param [options.tileLevel = 0] - The tile's level.
46423
- * @param [options.tileX = 0] - The tile's X coordinate.
46424
- * @param [options.tileY = 0] - The tile's Y coordinate.
46425
- * @param [options.tileZ = 0] - The tile's Z coordinate.
46426
- * @returns A promise resolving to a VoxelContent containing the data for the tile, or undefined if the request could not be scheduled this frame.
46427
- */
46428
- requestData(options?: {
46429
- tileLevel?: number;
46430
- tileX?: number;
46431
- tileY?: number;
46432
- tileZ?: number;
46433
- }): Promise<VoxelContent> | undefined;
46434
46648
  }
46435
46649
 
46436
46650
  /**