@cesium/engine 24.0.0 → 25.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/Build/Workers/{chunk-NKT5K3K3.js → chunk-35H3UBIO.js} +13 -12
  2. package/Build/Workers/{chunk-5A2SW66E.js → chunk-3LSD7OOA.js} +16 -16
  3. package/Build/Workers/{chunk-HXJMS2ZI.js → chunk-3RFFPH4M.js} +1 -1
  4. package/Build/Workers/{chunk-EDXL4W76.js → chunk-3TKLDHV3.js} +2 -2
  5. package/Build/Workers/{chunk-GQUNK2XC.js → chunk-3VDDRF2E.js} +14 -14
  6. package/Build/Workers/{chunk-Q3C6VQH6.js → chunk-3XY3MVPG.js} +4 -4
  7. package/Build/Workers/{chunk-A47HVBC5.js → chunk-4GF4MVPY.js} +7 -7
  8. package/Build/Workers/{chunk-YQFTYQMZ.js → chunk-4MTRQFJP.js} +3 -2
  9. package/Build/Workers/{chunk-N65BAKSH.js → chunk-4QQXGTCE.js} +8 -8
  10. package/Build/Workers/{chunk-EV3VGO6Y.js → chunk-4XXHJI6Y.js} +17 -17
  11. package/Build/Workers/{chunk-DHKPFLSJ.js → chunk-5T6QQAJW.js} +3 -2
  12. package/Build/Workers/{chunk-UIGVOKKI.js → chunk-6SDGQI27.js} +3 -2
  13. package/Build/Workers/{chunk-ILMFADZA.js → chunk-77RL3MBD.js} +6 -5
  14. package/Build/Workers/{chunk-2N4KDHS3.js → chunk-7LSFAEWF.js} +12 -11
  15. package/Build/Workers/{chunk-44EMEGKW.js → chunk-A7A433MD.js} +5 -5
  16. package/Build/Workers/{chunk-J6AW5YHS.js → chunk-A7ZBMVFS.js} +14 -14
  17. package/Build/Workers/{chunk-XJRBB253.js → chunk-ACFFCHHZ.js} +11 -11
  18. package/Build/Workers/{chunk-MKM27KGV.js → chunk-AEAVLYPS.js} +2 -2
  19. package/Build/Workers/{chunk-7MDYBRYJ.js → chunk-AWFZHD2B.js} +4 -4
  20. package/Build/Workers/{chunk-UQU4RXLT.js → chunk-BTX2NL3P.js} +50 -45
  21. package/Build/Workers/{chunk-4TIG36AW.js → chunk-BVAIWR7O.js} +12 -12
  22. package/Build/Workers/chunk-CKQP3DSS.js +973 -0
  23. package/Build/Workers/{chunk-VLDEUTOP.js → chunk-CZ23Y3RM.js} +2 -2
  24. package/Build/Workers/{chunk-NPF7SSHZ.js → chunk-DFEI5MAV.js} +7 -7
  25. package/Build/Workers/{chunk-AJLTU6PF.js → chunk-DH26SNAB.js} +4 -1
  26. package/Build/Workers/{chunk-5GXYJQ2K.js → chunk-DYT5NR6P.js} +3 -3
  27. package/Build/Workers/{chunk-63SIWPLS.js → chunk-EZARA5FJ.js} +13 -13
  28. package/Build/Workers/{chunk-AMIHNSST.js → chunk-FIBS5S7R.js} +2 -2
  29. package/Build/Workers/{chunk-Y7HNNPNK.js → chunk-FVLVVOBQ.js} +10 -10
  30. package/Build/Workers/{chunk-XY6HMDGI.js → chunk-GL7DNVUS.js} +5 -5
  31. package/Build/Workers/{chunk-6WLHJFD3.js → chunk-GPIGURCG.js} +59 -32
  32. package/Build/Workers/{chunk-B6SCUUFP.js → chunk-H2A4USJR.js} +10 -10
  33. package/Build/Workers/chunk-HSVQATK2.js +147 -0
  34. package/Build/Workers/{chunk-72VYSVEW.js → chunk-HVMG6AG4.js} +11 -10
  35. package/Build/Workers/{chunk-LXMCPFFS.js → chunk-I3A6DXYZ.js} +4 -4
  36. package/Build/Workers/{chunk-7QRFIKWQ.js → chunk-ITD2IN7N.js} +2 -2
  37. package/Build/Workers/{chunk-RQNJD3O4.js → chunk-J3OFS2RD.js} +12 -12
  38. package/Build/Workers/{chunk-C6P4IG5P.js → chunk-J647NNZW.js} +6 -6
  39. package/Build/Workers/{chunk-7X322WP2.js → chunk-J7KQEKPK.js} +13 -13
  40. package/Build/Workers/{chunk-7O5XJTVE.js → chunk-K6NFIRFB.js} +5 -5
  41. package/Build/Workers/{chunk-AF3MU2RL.js → chunk-LH5SF3XV.js} +7 -6
  42. package/Build/Workers/{chunk-GOQBUCXH.js → chunk-ND3NTTOF.js} +708 -430
  43. package/Build/Workers/chunk-QO2CGXMP.js +2342 -0
  44. package/Build/Workers/chunk-QSDY4NS7.js +1287 -0
  45. package/Build/Workers/chunk-QXNQQYPV.js +3201 -0
  46. package/Build/Workers/{chunk-YAOZMOFL.js → chunk-ST2UWDUU.js} +5 -5
  47. package/Build/Workers/{chunk-PVV64VFW.js → chunk-TA777BGS.js} +3 -2
  48. package/Build/Workers/{chunk-ISY4EZCA.js → chunk-TAI4HLII.js} +4 -4
  49. package/Build/Workers/{chunk-JCI63T3K.js → chunk-URUCCIPS.js} +6 -6
  50. package/Build/Workers/{chunk-VMVOUQ5J.js → chunk-VQKLRBIK.js} +7 -7
  51. package/Build/Workers/{chunk-6MPGQEHA.js → chunk-WC57YYBN.js} +2 -2
  52. package/Build/Workers/{chunk-BJD6QGXZ.js → chunk-WN6P5UDH.js} +12 -12
  53. package/Build/Workers/{chunk-LIB2H534.js → chunk-WNN5D4W3.js} +12 -11
  54. package/Build/Workers/{chunk-D4EJ2NXG.js → chunk-WTQGE7Q6.js} +17 -17
  55. package/Build/Workers/{chunk-YJZGW74L.js → chunk-WUBKZFF6.js} +2213 -1349
  56. package/Build/Workers/{chunk-7TYLCBGK.js → chunk-ZAPOS52G.js} +12 -10
  57. package/Build/Workers/{chunk-6RMS4S72.js → chunk-ZCCIIBZT.js} +6 -6
  58. package/Build/Workers/combineGeometry.js +24 -24
  59. package/Build/Workers/createBoxGeometry.js +18 -18
  60. package/Build/Workers/createBoxOutlineGeometry.js +16 -16
  61. package/Build/Workers/createCircleGeometry.js +26 -26
  62. package/Build/Workers/createCircleOutlineGeometry.js +19 -19
  63. package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
  64. package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
  65. package/Build/Workers/createCorridorGeometry.js +29 -29
  66. package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
  67. package/Build/Workers/createCylinderGeometry.js +20 -20
  68. package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
  69. package/Build/Workers/createEllipseGeometry.js +26 -26
  70. package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
  71. package/Build/Workers/createEllipsoidGeometry.js +19 -19
  72. package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
  73. package/Build/Workers/createFrustumGeometry.js +18 -18
  74. package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
  75. package/Build/Workers/createGeometry.js +24 -24
  76. package/Build/Workers/createGroundPolylineGeometry.js +175 -118
  77. package/Build/Workers/createPlaneGeometry.js +16 -16
  78. package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
  79. package/Build/Workers/createPolygonGeometry.js +32 -32
  80. package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
  81. package/Build/Workers/createPolylineGeometry.js +25 -25
  82. package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
  83. package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
  84. package/Build/Workers/createRectangleGeometry.js +27 -27
  85. package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
  86. package/Build/Workers/createSimplePolylineGeometry.js +23 -23
  87. package/Build/Workers/createSphereGeometry.js +19 -19
  88. package/Build/Workers/createSphereOutlineGeometry.js +18 -18
  89. package/Build/Workers/createTaskProcessorWorker.js +3 -3
  90. package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
  91. package/Build/Workers/createVectorTileGeometries.js +24 -24
  92. package/Build/Workers/createVectorTilePoints.js +13 -13
  93. package/Build/Workers/createVectorTilePolygons.js +22 -22
  94. package/Build/Workers/createVectorTilePolylines.js +14 -14
  95. package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +25 -25
  96. package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
  97. package/Build/Workers/createVerticesFromHeightmap.js +24 -23
  98. package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +20 -20
  99. package/Build/Workers/createWallGeometry.js +24 -24
  100. package/Build/Workers/createWallOutlineGeometry.js +23 -23
  101. package/Build/Workers/decodeDraco.js +10 -10
  102. package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
  103. package/Build/Workers/decodeI3S.js +10 -10
  104. package/Build/Workers/gaussianSplatSorter.js +4 -4
  105. package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
  106. package/Build/Workers/incrementallyBuildTerrainPicker.js +10 -10
  107. package/Build/Workers/transcodeKTX2.js +12 -9
  108. package/Build/Workers/transferTypedArrayTest.js +1 -1
  109. package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
  110. package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +25 -25
  111. package/Source/Core/ArcType.js +6 -1
  112. package/Source/Core/ArticulationStageType.js +5 -1
  113. package/Source/Core/AssociativeArray.js +100 -94
  114. package/Source/Core/BoundingSphere.js +1296 -1300
  115. package/Source/Core/Cartesian3.js +1 -2
  116. package/Source/Core/Cartographic.js +257 -249
  117. package/Source/Core/ClockRange.js +6 -1
  118. package/Source/Core/ClockStep.js +6 -1
  119. package/Source/Core/Color.js +844 -835
  120. package/Source/Core/ComponentDatatype.js +4 -1
  121. package/Source/Core/CornerType.js +6 -1
  122. package/Source/Core/Credit.js +121 -124
  123. package/Source/Core/Ellipsoid.js +637 -660
  124. package/Source/Core/ExtrapolationType.js +6 -1
  125. package/Source/Core/GeocodeType.js +6 -1
  126. package/Source/Core/GeographicProjection.js +74 -74
  127. package/Source/Core/GeographicTilingScheme.js +179 -198
  128. package/Source/Core/GeometryOffsetAttribute.js +7 -1
  129. package/Source/Core/GeometryType.js +7 -1
  130. package/Source/Core/HeightmapEncoding.js +6 -1
  131. package/Source/Core/Iau2006XysData.js +24 -13
  132. package/Source/Core/IndexDatatype.js +3 -1
  133. package/Source/Core/InterpolationType.js +5 -1
  134. package/Source/Core/Intersect.js +6 -1
  135. package/Source/Core/Ion.js +1 -1
  136. package/Source/Core/IonGeocodeProviderType.js +5 -1
  137. package/Source/Core/JulianDate.js +850 -848
  138. package/Source/Core/KeyboardEventModifier.js +6 -1
  139. package/Source/Core/MapProjection.js +39 -44
  140. package/Source/Core/Matrix2.js +906 -893
  141. package/Source/Core/Matrix3.js +1643 -1575
  142. package/Source/Core/Matrix4.js +2903 -2872
  143. package/Source/Core/PixelFormat.js +3 -1
  144. package/Source/Core/PrimitiveType.js +11 -1
  145. package/Source/Core/Ray.js +62 -60
  146. package/Source/Core/Rectangle.js +913 -904
  147. package/Source/Core/ReferenceFrame.js +6 -1
  148. package/Source/Core/RequestScheduler.js +8 -3
  149. package/Source/Core/RequestState.js +6 -1
  150. package/Source/Core/RequestType.js +6 -1
  151. package/Source/Core/ScreenSpaceEventType.js +6 -1
  152. package/Source/Core/TerrainQuantization.js +6 -1
  153. package/Source/Core/TilingScheme.js +100 -98
  154. package/Source/Core/TimeConstants.js +6 -1
  155. package/Source/Core/TimeStandard.js +6 -1
  156. package/Source/Core/TrackingReferenceFrame.js +6 -1
  157. package/Source/Core/Visibility.js +6 -1
  158. package/Source/Core/VulkanConstants.js +6 -1
  159. package/Source/Core/WebGLConstants.js +6 -1
  160. package/Source/Core/WebMercatorProjection.js +108 -109
  161. package/Source/Core/WebMercatorTilingScheme.js +246 -242
  162. package/Source/Core/WindingOrder.js +3 -1
  163. package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +1 -0
  164. package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +1 -0
  165. package/Source/DataSources/StripeOrientation.js +6 -1
  166. package/Source/Renderer/BufferUsage.js +20 -9
  167. package/Source/Renderer/Context.js +2 -29
  168. package/Source/Renderer/DrawCommand.js +435 -403
  169. package/Source/Renderer/MipmapHint.js +5 -1
  170. package/Source/Renderer/Pass.js +7 -1
  171. package/Source/Renderer/PickId.js +44 -0
  172. package/Source/Renderer/PixelDatatype.js +3 -1
  173. package/Source/Renderer/RenderbufferFormat.js +5 -1
  174. package/Source/Renderer/ShaderDestination.js +4 -1
  175. package/Source/Renderer/TextureMagnificationFilter.js +3 -1
  176. package/Source/Renderer/TextureMinificationFilter.js +3 -1
  177. package/Source/Renderer/TextureWrap.js +5 -1
  178. package/Source/Scene/AlphaMode.js +5 -1
  179. package/Source/Scene/ArcGisBaseMapType.js +6 -1
  180. package/Source/Scene/ArcGisMapService.js +1 -1
  181. package/Source/Scene/AttributeType.js +3 -1
  182. package/Source/Scene/Axis.js +3 -1
  183. package/Source/Scene/BingMapsStyle.js +6 -1
  184. package/Source/Scene/BlendEquation.js +6 -1
  185. package/Source/Scene/BlendFunction.js +6 -1
  186. package/Source/Scene/BlendOption.js +6 -1
  187. package/Source/Scene/BlendingState.js +6 -1
  188. package/Source/Scene/BufferLoader.js +0 -2
  189. package/Source/Scene/BufferPointCollection.js +4 -1
  190. package/Source/Scene/BufferPolygonCollection.js +3 -1
  191. package/Source/Scene/BufferPolylineCollection.js +3 -1
  192. package/Source/Scene/BufferPrimitiveCollection.js +140 -24
  193. package/Source/Scene/CameraEventType.js +6 -1
  194. package/Source/Scene/Cesium3DTileColorBlendMode.js +6 -1
  195. package/Source/Scene/Cesium3DTileContentState.js +6 -1
  196. package/Source/Scene/Cesium3DTileContentType.js +3 -1
  197. package/Source/Scene/Cesium3DTileFeature.js +289 -306
  198. package/Source/Scene/Cesium3DTileOptimizationHint.js +6 -1
  199. package/Source/Scene/Cesium3DTilePass.js +5 -1
  200. package/Source/Scene/Cesium3DTilePointFeature.js +433 -511
  201. package/Source/Scene/Cesium3DTileRefine.js +6 -1
  202. package/Source/Scene/Cesium3DTileVectorFeature.js +586 -0
  203. package/Source/Scene/Cesium3DTileset.js +1 -1
  204. package/Source/Scene/ClassificationType.js +3 -1
  205. package/Source/Scene/CloudType.js +3 -1
  206. package/Source/Scene/ColorBlendMode.js +4 -1
  207. package/Source/Scene/CullFace.js +6 -1
  208. package/Source/Scene/DepthFunction.js +6 -1
  209. package/Source/Scene/DynamicAtmosphereLightingType.js +3 -1
  210. package/Source/Scene/EquirectangularPanorama.js +1 -0
  211. package/Source/Scene/ExpressionNodeType.js +6 -1
  212. package/Source/Scene/GltfBufferViewLoader.js +0 -2
  213. package/Source/Scene/GltfDracoLoader.js +0 -2
  214. package/Source/Scene/GltfImageLoader.js +0 -3
  215. package/Source/Scene/GltfIndexBufferLoader.js +0 -4
  216. package/Source/Scene/GltfJsonLoader.js +0 -2
  217. package/Source/Scene/GltfLoader.js +0 -5
  218. package/Source/Scene/GltfLoaderUtil.js +14 -0
  219. package/Source/Scene/GltfSpzLoader.js +0 -2
  220. package/Source/Scene/GltfStructuralMetadataLoader.js +0 -2
  221. package/Source/Scene/GltfTextureLoader.js +0 -2
  222. package/Source/Scene/GltfVertexBufferLoader.js +0 -4
  223. package/Source/Scene/HeightReference.js +5 -1
  224. package/Source/Scene/HorizontalOrigin.js +6 -1
  225. package/Source/Scene/ImageryProvider.js +1 -1
  226. package/Source/Scene/ImageryState.js +6 -1
  227. package/Source/Scene/ImplicitSubdivisionScheme.js +3 -1
  228. package/Source/Scene/InstanceAttributeSemantic.js +3 -1
  229. package/Source/Scene/IonWorldImageryStyle.js +6 -1
  230. package/Source/Scene/JobType.js +6 -1
  231. package/Source/Scene/LabelStyle.js +6 -1
  232. package/Source/Scene/MapMode2D.js +6 -1
  233. package/Source/Scene/MetadataComponentType.js +3 -1
  234. package/Source/Scene/MetadataSchemaLoader.js +0 -2
  235. package/Source/Scene/MetadataSemantic.js +6 -2
  236. package/Source/Scene/MetadataType.js +3 -1
  237. package/Source/Scene/Model/B3dmLoader.js +0 -3
  238. package/Source/Scene/Model/CustomShaderMode.js +3 -1
  239. package/Source/Scene/Model/CustomShaderTranslucencyMode.js +5 -1
  240. package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +44 -71
  241. package/Source/Scene/Model/Extensions/Gpm/PpeSource.js +5 -1
  242. package/Source/Scene/Model/Extensions/Gpm/StorageType.js +5 -1
  243. package/Source/Scene/Model/GeoJsonLoader.js +0 -2
  244. package/Source/Scene/Model/I3dmLoader.js +0 -3
  245. package/Source/Scene/Model/InstancingPipelineStage.js +1 -1
  246. package/Source/Scene/Model/LightingModel.js +5 -1
  247. package/Source/Scene/Model/MaterialPipelineStage.js +184 -3
  248. package/Source/Scene/Model/ModelReader.js +474 -3
  249. package/Source/Scene/Model/ModelRuntimePrimitive.js +2 -1
  250. package/Source/Scene/Model/ModelType.js +3 -1
  251. package/Source/Scene/Model/PntsLoader.js +4 -3
  252. package/Source/Scene/Model/StyleCommandsNeeded.js +3 -1
  253. package/Source/Scene/Model/UniformType.js +5 -1
  254. package/Source/Scene/Model/VaryingType.js +5 -1
  255. package/Source/Scene/Model/createVectorTileBuffersFromModelComponents.js +73 -28
  256. package/Source/Scene/Model/pickModel.js +94 -299
  257. package/Source/Scene/ModelAnimationLoop.js +6 -1
  258. package/Source/Scene/ModelAnimationState.js +6 -1
  259. package/Source/Scene/ModelComponents.js +8 -1
  260. package/Source/Scene/PrimitiveState.js +7 -1
  261. package/Source/Scene/QuadtreeOccluders.js +20 -15
  262. package/Source/Scene/QuadtreeTile.js +547 -541
  263. package/Source/Scene/QuadtreeTileLoadState.js +6 -1
  264. package/Source/Scene/QuadtreeTileProvider.js +159 -175
  265. package/Source/Scene/ResourceLoader.js +0 -1
  266. package/Source/Scene/ResourceLoaderState.js +7 -1
  267. package/Source/Scene/SceneMode.js +4 -1
  268. package/Source/Scene/ShadowMode.js +3 -1
  269. package/Source/Scene/SkyBox.js +1 -1
  270. package/Source/Scene/SplitDirection.js +6 -1
  271. package/Source/Scene/StencilFunction.js +6 -1
  272. package/Source/Scene/StencilOperation.js +6 -1
  273. package/Source/Scene/TerrainState.js +7 -1
  274. package/Source/Scene/TileState.js +7 -1
  275. package/Source/Scene/Tonemapper.js +5 -1
  276. package/Source/Scene/VectorGltf3DTileContent.js +72 -51
  277. package/Source/Scene/VertexAttributeSemantic.js +3 -1
  278. package/Source/Scene/VerticalOrigin.js +6 -1
  279. package/Source/Scene/VoxelBoxShape.js +12 -6
  280. package/Source/Scene/VoxelContent.js +2 -0
  281. package/Source/Scene/VoxelCylinderShape.js +39 -38
  282. package/Source/Scene/VoxelEllipsoidShape.js +46 -96
  283. package/Source/Scene/VoxelMetadataOrder.js +6 -1
  284. package/Source/Scene/VoxelProvider.js +1 -0
  285. package/Source/Scene/VoxelShapeType.js +3 -1
  286. package/Source/Scene/renderBufferPointCollection.js +17 -66
  287. package/Source/Scene/renderBufferPolygonCollection.js +21 -68
  288. package/Source/Scene/renderBufferPolylineCollection.js +22 -73
  289. package/Source/Shaders/Builtin/CzmBuiltins.js +2 -0
  290. package/Source/Shaders/Builtin/Functions/computeTextureTransform.glsl +24 -0
  291. package/Source/Shaders/Builtin/Functions/computeTextureTransform.js +25 -0
  292. package/Source/Shaders/Model/ConstantLodStageFS.glsl +60 -0
  293. package/Source/Shaders/Model/ConstantLodStageFS.js +62 -0
  294. package/Source/Shaders/Model/ConstantLodStageVS.glsl +12 -0
  295. package/Source/Shaders/Model/ConstantLodStageVS.js +13 -0
  296. package/Source/Shaders/Model/MaterialStageFS.glsl +46 -20
  297. package/Source/Shaders/Model/MaterialStageFS.js +46 -20
  298. package/Source/Shaders/Voxels/convertLocalToBoxUv.glsl +0 -1
  299. package/Source/Shaders/Voxels/convertLocalToBoxUv.js +0 -1
  300. package/Source/Shaders/Voxels/convertLocalToCylinderUv.glsl +7 -9
  301. package/Source/Shaders/Voxels/convertLocalToCylinderUv.js +7 -9
  302. package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.glsl +7 -17
  303. package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.js +7 -17
  304. package/Source/Widget/CesiumWidget.js +11 -4
  305. package/index.d.ts +343 -309
  306. package/index.js +443 -438
  307. package/package.json +2 -2
  308. package/Build/Workers/chunk-DVB56LG7.js +0 -114
  309. package/Build/Workers/chunk-HKUES6UG.js +0 -2357
  310. package/Build/Workers/chunk-HRHRYFHS.js +0 -940
  311. package/Build/Workers/chunk-KLPGTXS3.js +0 -642
  312. package/Build/Workers/chunk-ZBZRTRJB.js +0 -1829
@@ -1,6 +1,10 @@
1
1
  import Color from "../Core/Color.js";
2
2
  import defined from "../Core/defined.js";
3
3
 
4
+ /** @import Cesium3DTileBatchTable from "./Cesium3DTileBatchTable.js"; */
5
+ /** @import Cesium3DTileContent from "./Cesium3DTileContent.js"; */
6
+ /** @import Cesium3DTileset from "./Cesium3DTileset.js"; */
7
+
4
8
  /**
5
9
  * A feature of a {@link Cesium3DTileset}.
6
10
  * <p>
@@ -19,9 +23,6 @@ import defined from "../Core/defined.js";
19
23
  * or picking using {@link Scene#pick}.
20
24
  * </p>
21
25
  *
22
- * @alias Cesium3DTileFeature
23
- * @constructor
24
- *
25
26
  * @example
26
27
  * // On mouse over, display all the properties for a feature in the console log.
27
28
  * handler.setInputAction(function(movement) {
@@ -36,409 +37,391 @@ import defined from "../Core/defined.js";
36
37
  * }
37
38
  * }, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
38
39
  */
39
- function Cesium3DTileFeature(content, batchId) {
40
- this._content = content;
41
- this._batchId = batchId;
42
- this._color = undefined; // for calling getColor
43
- }
40
+ class Cesium3DTileFeature {
41
+ /**
42
+ * @param {Cesium3DTileContent} content
43
+ * @param {number} batchId
44
+ */
45
+ constructor(content, batchId) {
46
+ this._content = content;
47
+ this._batchId = batchId;
48
+ this._color = undefined; // for calling getColor
49
+ }
44
50
 
45
- Object.defineProperties(Cesium3DTileFeature.prototype, {
46
51
  /**
47
52
  * Gets or sets if the feature will be shown. This is set for all features
48
53
  * when a style's show is evaluated.
49
54
  *
50
- * @memberof Cesium3DTileFeature.prototype
51
- *
52
55
  * @type {boolean}
53
56
  *
54
57
  * @default true
55
58
  */
56
- show: {
57
- get: function () {
58
- return this._content.batchTable.getShow(this._batchId);
59
- },
60
- set: function (value) {
61
- this._content.batchTable.setShow(this._batchId, value);
62
- },
63
- },
59
+ get show() {
60
+ return this._content.batchTable.getShow(this._batchId);
61
+ }
62
+
63
+ set show(value) {
64
+ this._content.batchTable.setShow(this._batchId, value);
65
+ }
64
66
 
65
67
  /**
66
68
  * Gets or sets the highlight color multiplied with the feature's color. When
67
69
  * this is white, the feature's color is not changed. This is set for all features
68
70
  * when a style's color is evaluated.
69
71
  *
70
- * @memberof Cesium3DTileFeature.prototype
71
- *
72
72
  * @type {Color}
73
73
  *
74
74
  * @default {@link Color.WHITE}
75
75
  */
76
- color: {
77
- get: function () {
78
- if (!defined(this._color)) {
79
- this._color = new Color();
80
- }
81
- return this._content.batchTable.getColor(this._batchId, this._color);
82
- },
83
- set: function (value) {
84
- this._content.batchTable.setColor(this._batchId, value);
85
- },
86
- },
76
+ get color() {
77
+ if (!defined(this._color)) {
78
+ this._color = new Color();
79
+ }
80
+ return this._content.batchTable.getColor(this._batchId, this._color);
81
+ }
82
+
83
+ set color(value) {
84
+ this._content.batchTable.setColor(this._batchId, value);
85
+ }
87
86
 
88
87
  /**
89
88
  * Gets a typed array containing the ECEF positions of the polyline.
90
89
  * Returns undefined if {@link Cesium3DTileset#vectorKeepDecodedPositions} is false
91
90
  * or the feature is not a polyline in a vector tile.
92
91
  *
93
- * @memberof Cesium3DTileFeature.prototype
94
- *
95
92
  * @experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.
96
93
  *
97
94
  * @type {Float64Array}
98
95
  */
99
- polylinePositions: {
100
- get: function () {
101
- if (!defined(this._content.getPolylinePositions)) {
102
- return undefined;
103
- }
96
+ get polylinePositions() {
97
+ if (!defined(this._content.getPolylinePositions)) {
98
+ return undefined;
99
+ }
104
100
 
105
- return this._content.getPolylinePositions(this._batchId);
106
- },
107
- },
101
+ return this._content.getPolylinePositions(this._batchId);
102
+ }
108
103
 
109
104
  /**
110
105
  * Gets the content of the tile containing the feature.
111
106
  *
112
- * @memberof Cesium3DTileFeature.prototype
113
- *
114
107
  * @type {Cesium3DTileContent}
115
108
  *
116
109
  * @readonly
117
110
  * @private
118
111
  */
119
- content: {
120
- get: function () {
121
- return this._content;
122
- },
123
- },
112
+ get content() {
113
+ return this._content;
114
+ }
124
115
 
125
116
  /**
126
117
  * Gets the tileset containing the feature.
127
118
  *
128
- * @memberof Cesium3DTileFeature.prototype
129
- *
130
119
  * @type {Cesium3DTileset}
131
120
  *
132
121
  * @readonly
133
122
  */
134
- tileset: {
135
- get: function () {
136
- return this._content.tileset;
137
- },
138
- },
123
+ get tileset() {
124
+ return this._content.tileset;
125
+ }
139
126
 
140
127
  /**
141
128
  * All objects returned by {@link Scene#pick} have a <code>primitive</code> property. This returns
142
129
  * the tileset containing the feature.
143
130
  *
144
- * @memberof Cesium3DTileFeature.prototype
145
- *
146
131
  * @type {Cesium3DTileset}
147
132
  *
148
133
  * @readonly
149
134
  */
150
- primitive: {
151
- get: function () {
152
- return this._content.tileset;
153
- },
154
- },
135
+ get primitive() {
136
+ return this._content.tileset;
137
+ }
155
138
 
156
139
  /**
157
140
  * Get the feature ID associated with this feature. For 3D Tiles 1.0, the
158
141
  * batch ID is returned. For EXT_mesh_features, this is the feature ID from
159
142
  * the selected feature ID set.
160
143
  *
161
- * @memberof Cesium3DTileFeature.prototype
162
- *
163
144
  * @type {number}
164
145
  *
165
146
  * @readonly
166
147
  * @experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.
167
148
  */
168
- featureId: {
169
- get: function () {
170
- return this._batchId;
171
- },
172
- },
149
+ get featureId() {
150
+ return this._batchId;
151
+ }
173
152
 
174
153
  /**
175
154
  * @private
176
155
  */
177
- pickId: {
178
- get: function () {
179
- return this._content.batchTable.getPickColor(this._batchId);
180
- },
181
- },
182
- });
156
+ get pickId() {
157
+ return this._content.batchTable.getPickColor(this._batchId);
158
+ }
183
159
 
184
- /**
185
- * Returns whether the feature contains this property. This includes properties from this feature's
186
- * class and inherited classes when using a batch table hierarchy.
187
- *
188
- * @see {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_batch_table_hierarchy}
189
- *
190
- * @param {string} name The case-sensitive name of the property.
191
- * @returns {boolean} Whether the feature contains this property.
192
- */
193
- Cesium3DTileFeature.prototype.hasProperty = function (name) {
194
- return this._content.batchTable.hasProperty(this._batchId, name);
195
- };
160
+ /**
161
+ * Returns whether the feature contains this property. This includes properties from this feature's
162
+ * class and inherited classes when using a batch table hierarchy.
163
+ *
164
+ * @see {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_batch_table_hierarchy}
165
+ *
166
+ * @param {string} name The case-sensitive name of the property.
167
+ * @returns {boolean} Whether the feature contains this property.
168
+ */
169
+ hasProperty(name) {
170
+ return this._content.batchTable.hasProperty(this._batchId, name);
171
+ }
196
172
 
197
- /**
198
- * Returns an array of property IDs for the feature. This includes properties from this feature's
199
- * class and inherited classes when using a batch table hierarchy.
200
- *
201
- * @see {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_batch_table_hierarchy}
202
- *
203
- * @param {string[]} [results] An array into which to store the results.
204
- * @returns {string[]} The IDs of the feature's properties.
205
- */
206
- Cesium3DTileFeature.prototype.getPropertyIds = function (results) {
207
- return this._content.batchTable.getPropertyIds(this._batchId, results);
208
- };
173
+ /**
174
+ * Returns an array of property IDs for the feature. This includes properties from this feature's
175
+ * class and inherited classes when using a batch table hierarchy.
176
+ *
177
+ * @see {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_batch_table_hierarchy}
178
+ *
179
+ * @param {string[]} [results] An array into which to store the results.
180
+ * @returns {string[]} The IDs of the feature's properties.
181
+ */
182
+ getPropertyIds(results) {
183
+ return this._content.batchTable.getPropertyIds(this._batchId, results);
184
+ }
209
185
 
210
- /**
211
- * Returns a copy of the value of the feature's property with the given name. This includes properties from this feature's
212
- * class and inherited classes when using a batch table hierarchy.
213
- *
214
- * @see {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_batch_table_hierarchy}
215
- *
216
- * @param {string} name The case-sensitive name of the property.
217
- * @returns {*} The value of the property or <code>undefined</code> if the feature does not have this property.
218
- *
219
- * @example
220
- * // Display all the properties for a feature in the console log.
221
- * const propertyIds = feature.getPropertyIds();
222
- * const length = propertyIds.length;
223
- * for (let i = 0; i < length; ++i) {
224
- * const propertyId = propertyIds[i];
225
- * console.log(`{propertyId}: ${feature.getProperty(propertyId)}`);
226
- * }
227
- */
228
- Cesium3DTileFeature.prototype.getProperty = function (name) {
229
- return this._content.batchTable.getProperty(this._batchId, name);
230
- };
186
+ /**
187
+ * Returns a copy of the value of the feature's property with the given name. This includes properties from this feature's
188
+ * class and inherited classes when using a batch table hierarchy.
189
+ *
190
+ * @see {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_batch_table_hierarchy}
191
+ *
192
+ * @param {string} name The case-sensitive name of the property.
193
+ * @returns {*} The value of the property or <code>undefined</code> if the feature does not have this property.
194
+ *
195
+ * @example
196
+ * // Display all the properties for a feature in the console log.
197
+ * const propertyIds = feature.getPropertyIds();
198
+ * const length = propertyIds.length;
199
+ * for (let i = 0; i < length; ++i) {
200
+ * const propertyId = propertyIds[i];
201
+ * console.log(`{propertyId}: ${feature.getProperty(propertyId)}`);
202
+ * }
203
+ */
204
+ getProperty(name) {
205
+ return this._content.batchTable.getProperty(this._batchId, name);
206
+ }
231
207
 
232
- /**
233
- * Returns a copy of the feature's property with the given name, examining all
234
- * the metadata from 3D Tiles 1.0 formats, the EXT_structural_metadata and legacy
235
- * EXT_feature_metadata glTF extensions, and the metadata present either in the
236
- * tileset JSON (3D Tiles 1.1) or in the 3DTILES_metadata 3D Tiles extension.
237
- * Metadata is checked against name from most specific to most general and the
238
- * first match is returned. Metadata is checked in this order:
239
- *
240
- * <ol>
241
- * <li>Batch table (structural metadata) property by semantic</li>
242
- * <li>Batch table (structural metadata) property by property ID</li>
243
- * <li>Content metadata property by semantic</li>
244
- * <li>Content metadata property by property</li>
245
- * <li>Tile metadata property by semantic</li>
246
- * <li>Tile metadata property by property ID</li>
247
- * <li>Subtree metadata property by semantic</li>
248
- * <li>Subtree metadata property by property ID</li>
249
- * <li>Group metadata property by semantic</li>
250
- * <li>Group metadata property by property ID</li>
251
- * <li>Tileset metadata property by semantic</li>
252
- * <li>Tileset metadata property by property ID</li>
253
- * <li>Otherwise, return undefined</li>
254
- * </ol>
255
- * <p>
256
- * For 3D Tiles Next details, see the {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_metadata|3DTILES_metadata Extension}
257
- * for 3D Tiles, as well as the {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_structural_metadata|EXT_structural_metadata Extension}
258
- * for glTF. For the legacy glTF extension, see {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_feature_metadata|EXT_feature_metadata Extension}
259
- * </p>
260
- *
261
- * @param {Cesium3DTileContent} content The content for accessing the metadata
262
- * @param {number} batchId The batch ID (or feature ID) of the feature to get a property for
263
- * @param {string} name The semantic or property ID of the feature. Semantics are checked before property IDs in each granularity of metadata.
264
- * @return {*} The value of the property or <code>undefined</code> if the feature does not have this property.
265
- *
266
- * @experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.
267
- */
268
- Cesium3DTileFeature.getPropertyInherited = function (content, batchId, name) {
269
- const batchTable = content.batchTable;
270
- if (defined(batchTable)) {
271
- if (batchTable.hasPropertyBySemantic(batchId, name)) {
272
- return batchTable.getPropertyBySemantic(batchId, name);
273
- }
208
+ /**
209
+ * Returns a copy of the feature's property with the given name, examining all
210
+ * the metadata from 3D Tiles 1.0 formats, the EXT_structural_metadata and legacy
211
+ * EXT_feature_metadata glTF extensions, and the metadata present either in the
212
+ * tileset JSON (3D Tiles 1.1) or in the 3DTILES_metadata 3D Tiles extension.
213
+ * Metadata is checked against name from most specific to most general and the
214
+ * first match is returned. Metadata is checked in this order:
215
+ *
216
+ * <ol>
217
+ * <li>Batch table (structural metadata) property by semantic</li>
218
+ * <li>Batch table (structural metadata) property by property ID</li>
219
+ * <li>Content metadata property by semantic</li>
220
+ * <li>Content metadata property by property</li>
221
+ * <li>Tile metadata property by semantic</li>
222
+ * <li>Tile metadata property by property ID</li>
223
+ * <li>Subtree metadata property by semantic</li>
224
+ * <li>Subtree metadata property by property ID</li>
225
+ * <li>Group metadata property by semantic</li>
226
+ * <li>Group metadata property by property ID</li>
227
+ * <li>Tileset metadata property by semantic</li>
228
+ * <li>Tileset metadata property by property ID</li>
229
+ * <li>Otherwise, return undefined</li>
230
+ * </ol>
231
+ * <p>
232
+ * For 3D Tiles Next details, see the {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_metadata|3DTILES_metadata Extension}
233
+ * for 3D Tiles, as well as the {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_structural_metadata|EXT_structural_metadata Extension}
234
+ * for glTF. For the legacy glTF extension, see {@link https://github.com/CesiumGS/glTF/tree/3d-tiles-next/extensions/2.0/Vendor/EXT_feature_metadata|EXT_feature_metadata Extension}
235
+ * </p>
236
+ *
237
+ * @param {Cesium3DTileContent} content The content for accessing the metadata
238
+ * @param {number} batchId The batch ID (or feature ID) of the feature to get a property for
239
+ * @param {string} name The semantic or property ID of the feature. Semantics are checked before property IDs in each granularity of metadata.
240
+ * @privateParam {Cesium3DTileBatchTable} [batchTable] Batch table in which to look up the feature property. If unspecified, `content.batchTable` is used.
241
+ * @return {*} The value of the property or <code>undefined</code> if the feature does not have this property.
242
+ *
243
+ * @experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.
244
+ */
245
+ static getPropertyInherited(
246
+ content,
247
+ batchId,
248
+ name,
249
+ batchTable = content.batchTable,
250
+ ) {
251
+ if (defined(batchTable)) {
252
+ if (batchTable.hasPropertyBySemantic(batchId, name)) {
253
+ return batchTable.getPropertyBySemantic(batchId, name);
254
+ }
274
255
 
275
- if (batchTable.hasProperty(batchId, name)) {
276
- return batchTable.getProperty(batchId, name);
256
+ if (batchTable.hasProperty(batchId, name)) {
257
+ return batchTable.getProperty(batchId, name);
258
+ }
277
259
  }
278
- }
279
260
 
280
- const contentMetadata = content.metadata;
281
- if (defined(contentMetadata)) {
282
- if (contentMetadata.hasPropertyBySemantic(name)) {
283
- return contentMetadata.getPropertyBySemantic(name);
284
- }
261
+ const contentMetadata = content.metadata;
262
+ if (defined(contentMetadata)) {
263
+ if (contentMetadata.hasPropertyBySemantic(name)) {
264
+ return contentMetadata.getPropertyBySemantic(name);
265
+ }
285
266
 
286
- if (contentMetadata.hasProperty(name)) {
287
- return contentMetadata.getProperty(name);
267
+ if (contentMetadata.hasProperty(name)) {
268
+ return contentMetadata.getProperty(name);
269
+ }
288
270
  }
289
- }
290
271
 
291
- const tile = content.tile;
292
- const tileMetadata = tile.metadata;
293
- if (defined(tileMetadata)) {
294
- if (tileMetadata.hasPropertyBySemantic(name)) {
295
- return tileMetadata.getPropertyBySemantic(name);
272
+ const tile = content.tile;
273
+ const tileMetadata = tile.metadata;
274
+ if (defined(tileMetadata)) {
275
+ if (tileMetadata.hasPropertyBySemantic(name)) {
276
+ return tileMetadata.getPropertyBySemantic(name);
277
+ }
278
+
279
+ if (tileMetadata.hasProperty(name)) {
280
+ return tileMetadata.getProperty(name);
281
+ }
296
282
  }
297
283
 
298
- if (tileMetadata.hasProperty(name)) {
299
- return tileMetadata.getProperty(name);
284
+ let subtreeMetadata;
285
+ if (defined(tile.implicitSubtree)) {
286
+ subtreeMetadata = tile.implicitSubtree.metadata;
300
287
  }
301
- }
302
288
 
303
- let subtreeMetadata;
304
- if (defined(tile.implicitSubtree)) {
305
- subtreeMetadata = tile.implicitSubtree.metadata;
306
- }
289
+ if (defined(subtreeMetadata)) {
290
+ if (subtreeMetadata.hasPropertyBySemantic(name)) {
291
+ return subtreeMetadata.getPropertyBySemantic(name);
292
+ }
307
293
 
308
- if (defined(subtreeMetadata)) {
309
- if (subtreeMetadata.hasPropertyBySemantic(name)) {
310
- return subtreeMetadata.getPropertyBySemantic(name);
294
+ if (subtreeMetadata.hasProperty(name)) {
295
+ return subtreeMetadata.getProperty(name);
296
+ }
311
297
  }
312
298
 
313
- if (subtreeMetadata.hasProperty(name)) {
314
- return subtreeMetadata.getProperty(name);
315
- }
316
- }
299
+ const groupMetadata = defined(content.group)
300
+ ? content.group.metadata
301
+ : undefined;
302
+ if (defined(groupMetadata)) {
303
+ if (groupMetadata.hasPropertyBySemantic(name)) {
304
+ return groupMetadata.getPropertyBySemantic(name);
305
+ }
317
306
 
318
- const groupMetadata = defined(content.group)
319
- ? content.group.metadata
320
- : undefined;
321
- if (defined(groupMetadata)) {
322
- if (groupMetadata.hasPropertyBySemantic(name)) {
323
- return groupMetadata.getPropertyBySemantic(name);
307
+ if (groupMetadata.hasProperty(name)) {
308
+ return groupMetadata.getProperty(name);
309
+ }
324
310
  }
325
311
 
326
- if (groupMetadata.hasProperty(name)) {
327
- return groupMetadata.getProperty(name);
328
- }
329
- }
312
+ const tilesetMetadata = content.tileset.metadata;
313
+ if (defined(tilesetMetadata)) {
314
+ if (tilesetMetadata.hasPropertyBySemantic(name)) {
315
+ return tilesetMetadata.getPropertyBySemantic(name);
316
+ }
330
317
 
331
- const tilesetMetadata = content.tileset.metadata;
332
- if (defined(tilesetMetadata)) {
333
- if (tilesetMetadata.hasPropertyBySemantic(name)) {
334
- return tilesetMetadata.getPropertyBySemantic(name);
318
+ if (tilesetMetadata.hasProperty(name)) {
319
+ return tilesetMetadata.getProperty(name);
320
+ }
335
321
  }
336
322
 
337
- if (tilesetMetadata.hasProperty(name)) {
338
- return tilesetMetadata.getProperty(name);
339
- }
323
+ return undefined;
340
324
  }
341
325
 
342
- return undefined;
343
- };
326
+ /**
327
+ * Returns a copy of the value of the feature's property with the given name.
328
+ * If the feature is contained within a tileset that has metadata (3D Tiles 1.1)
329
+ * or uses the <code>3DTILES_metadata</code> extension, tileset, group and tile
330
+ * metadata is inherited.
331
+ * <p>
332
+ * To resolve name conflicts, this method resolves names from most specific to
333
+ * least specific by metadata granularity in the order: feature, tile, group,
334
+ * tileset. Within each granularity, semantics are resolved first, then other
335
+ * properties.
336
+ * </p>
337
+ * @param {string} name The case-sensitive name of the property.
338
+ * @returns {*} The value of the property or <code>undefined</code> if the feature does not have this property.
339
+ * @private
340
+ */
341
+ getPropertyInherited(name) {
342
+ return Cesium3DTileFeature.getPropertyInherited(
343
+ this._content,
344
+ this._batchId,
345
+ name,
346
+ );
347
+ }
344
348
 
345
- /**
346
- * Returns a copy of the value of the feature's property with the given name.
347
- * If the feature is contained within a tileset that has metadata (3D Tiles 1.1)
348
- * or uses the <code>3DTILES_metadata</code> extension, tileset, group and tile
349
- * metadata is inherited.
350
- * <p>
351
- * To resolve name conflicts, this method resolves names from most specific to
352
- * least specific by metadata granularity in the order: feature, tile, group,
353
- * tileset. Within each granularity, semantics are resolved first, then other
354
- * properties.
355
- * </p>
356
- * @param {string} name The case-sensitive name of the property.
357
- * @returns {*} The value of the property or <code>undefined</code> if the feature does not have this property.
358
- * @private
359
- */
360
- Cesium3DTileFeature.prototype.getPropertyInherited = function (name) {
361
- return Cesium3DTileFeature.getPropertyInherited(
362
- this._content,
363
- this._batchId,
364
- name,
365
- );
366
- };
349
+ /**
350
+ * Sets the value of the feature's property with the given name.
351
+ * <p>
352
+ * If a property with the given name doesn't exist, it is created.
353
+ * </p>
354
+ *
355
+ * @param {string} name The case-sensitive name of the property.
356
+ * @param {*} value The value of the property that will be copied.
357
+ *
358
+ * @exception {DeveloperError} Inherited batch table hierarchy property is read only.
359
+ *
360
+ * @example
361
+ * const height = feature.getProperty('Height'); // e.g., the height of a building
362
+ *
363
+ * @example
364
+ * const name = 'clicked';
365
+ * if (feature.getProperty(name)) {
366
+ * console.log('already clicked');
367
+ * } else {
368
+ * feature.setProperty(name, true);
369
+ * console.log('first click');
370
+ * }
371
+ */
372
+ setProperty(name, value) {
373
+ this._content.batchTable.setProperty(this._batchId, name, value);
367
374
 
368
- /**
369
- * Sets the value of the feature's property with the given name.
370
- * <p>
371
- * If a property with the given name doesn't exist, it is created.
372
- * </p>
373
- *
374
- * @param {string} name The case-sensitive name of the property.
375
- * @param {*} value The value of the property that will be copied.
376
- *
377
- * @exception {DeveloperError} Inherited batch table hierarchy property is read only.
378
- *
379
- * @example
380
- * const height = feature.getProperty('Height'); // e.g., the height of a building
381
- *
382
- * @example
383
- * const name = 'clicked';
384
- * if (feature.getProperty(name)) {
385
- * console.log('already clicked');
386
- * } else {
387
- * feature.setProperty(name, true);
388
- * console.log('first click');
389
- * }
390
- */
391
- Cesium3DTileFeature.prototype.setProperty = function (name, value) {
392
- this._content.batchTable.setProperty(this._batchId, name, value);
375
+ // PERFORMANCE_IDEA: Probably overkill, but maybe only mark the tile dirty if the
376
+ // property is in one of the style's expressions or - if it can be done quickly -
377
+ // if the new property value changed the result of an expression.
378
+ this._content.featurePropertiesDirty = true;
379
+ }
393
380
 
394
- // PERFORMANCE_IDEA: Probably overkill, but maybe only mark the tile dirty if the
395
- // property is in one of the style's expressions or - if it can be done quickly -
396
- // if the new property value changed the result of an expression.
397
- this._content.featurePropertiesDirty = true;
398
- };
381
+ /**
382
+ * Returns whether the feature's class name equals <code>className</code>. Unlike {@link Cesium3DTileFeature#isClass}
383
+ * this function only checks the feature's exact class and not inherited classes.
384
+ * <p>
385
+ * This function returns <code>false</code> if no batch table hierarchy is present.
386
+ * </p>
387
+ *
388
+ * @param {string} className The name to check against.
389
+ * @returns {boolean} Whether the feature's class name equals <code>className</code>
390
+ *
391
+ * @private
392
+ */
393
+ isExactClass(className) {
394
+ return this._content.batchTable.isExactClass(this._batchId, className);
395
+ }
399
396
 
400
- /**
401
- * Returns whether the feature's class name equals <code>className</code>. Unlike {@link Cesium3DTileFeature#isClass}
402
- * this function only checks the feature's exact class and not inherited classes.
403
- * <p>
404
- * This function returns <code>false</code> if no batch table hierarchy is present.
405
- * </p>
406
- *
407
- * @param {string} className The name to check against.
408
- * @returns {boolean} Whether the feature's class name equals <code>className</code>
409
- *
410
- * @private
411
- */
412
- Cesium3DTileFeature.prototype.isExactClass = function (className) {
413
- return this._content.batchTable.isExactClass(this._batchId, className);
414
- };
397
+ /**
398
+ * Returns whether the feature's class or any inherited classes are named <code>className</code>.
399
+ * <p>
400
+ * This function returns <code>false</code> if no batch table hierarchy is present.
401
+ * </p>
402
+ *
403
+ * @param {string} className The name to check against.
404
+ * @returns {boolean} Whether the feature's class or inherited classes are named <code>className</code>
405
+ *
406
+ * @private
407
+ */
408
+ isClass(className) {
409
+ return this._content.batchTable.isClass(this._batchId, className);
410
+ }
415
411
 
416
- /**
417
- * Returns whether the feature's class or any inherited classes are named <code>className</code>.
418
- * <p>
419
- * This function returns <code>false</code> if no batch table hierarchy is present.
420
- * </p>
421
- *
422
- * @param {string} className The name to check against.
423
- * @returns {boolean} Whether the feature's class or inherited classes are named <code>className</code>
424
- *
425
- * @private
426
- */
427
- Cesium3DTileFeature.prototype.isClass = function (className) {
428
- return this._content.batchTable.isClass(this._batchId, className);
429
- };
412
+ /**
413
+ * Returns the feature's class name.
414
+ * <p>
415
+ * This function returns <code>undefined</code> if no batch table hierarchy is present.
416
+ * </p>
417
+ *
418
+ * @returns {string} The feature's class name.
419
+ *
420
+ * @private
421
+ */
422
+ getExactClassName() {
423
+ return this._content.batchTable.getExactClassName(this._batchId);
424
+ }
425
+ }
430
426
 
431
- /**
432
- * Returns the feature's class name.
433
- * <p>
434
- * This function returns <code>undefined</code> if no batch table hierarchy is present.
435
- * </p>
436
- *
437
- * @returns {string} The feature's class name.
438
- *
439
- * @private
440
- */
441
- Cesium3DTileFeature.prototype.getExactClassName = function () {
442
- return this._content.batchTable.getExactClassName(this._batchId);
443
- };
444
427
  export default Cesium3DTileFeature;