@cesium/engine 22.2.0 → 23.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Build/Workers/{chunk-YFEZPDAY.js → chunk-2GL2EUEE.js} +11 -11
- package/Build/Workers/{chunk-A3NUMZBG.js → chunk-2WI4HGJU.js} +6 -6
- package/Build/Workers/{chunk-3JB2X2PR.js → chunk-36LBFITA.js} +665 -366
- package/Build/Workers/{chunk-VSZ5DB2W.js → chunk-3B65YFXC.js} +1 -1
- package/Build/Workers/{chunk-PSHZAHFE.js → chunk-4LGFX2P5.js} +11 -11
- package/Build/Workers/{chunk-AMWXJ5A7.js → chunk-4UNQX2MP.js} +2 -2
- package/Build/Workers/{chunk-LDSQMLRC.js → chunk-52K3GJKG.js} +3 -3
- package/Build/Workers/{chunk-MSTAVM2N.js → chunk-56OHFSLH.js} +10 -10
- package/Build/Workers/{chunk-IWOSJVFQ.js → chunk-5A7YSAXT.js} +14 -14
- package/Build/Workers/{chunk-PMDPP22G.js → chunk-5JP5FG7U.js} +7 -7
- package/Build/Workers/{chunk-DIJ7IG5D.js → chunk-5R7SBUTW.js} +10 -10
- package/Build/Workers/chunk-5VKZVPO5.js +1829 -0
- package/Build/Workers/{chunk-L2FSBEW2.js → chunk-6FVFM2KB.js} +5 -5
- package/Build/Workers/{chunk-G6WQA27G.js → chunk-6SLGTBB2.js} +5 -5
- package/Build/Workers/{chunk-3HUEBDFC.js → chunk-7KRN6JPQ.js} +14 -14
- package/Build/Workers/{chunk-GMHDOQPH.js → chunk-AA33B6PU.js} +4 -4
- package/Build/Workers/{chunk-7CDQUIP5.js → chunk-AP6XWET5.js} +8 -8
- package/Build/Workers/{chunk-IVN5HSOI.js → chunk-APDKMX7W.js} +6 -6
- package/Build/Workers/{chunk-72LZ3FN6.js → chunk-ARCFIOKA.js} +12 -12
- package/Build/Workers/{chunk-UBJYWGMV.js → chunk-BNBD2YZK.js} +16 -16
- package/Build/Workers/{chunk-VGH2CSC7.js → chunk-DT5SJBKA.js} +29 -15
- package/Build/Workers/{chunk-ED4UXMYY.js → chunk-ESD4IEOU.js} +5 -5
- package/Build/Workers/{chunk-JFN2DQHY.js → chunk-FSDVXW7M.js} +5 -5
- package/Build/Workers/{chunk-JERDRSEI.js → chunk-G3YT7M7A.js} +1 -1
- package/Build/Workers/{chunk-NY3CWLIZ.js → chunk-GN5NEUDT.js} +8 -8
- package/Build/Workers/{chunk-O3GWUTWM.js → chunk-HYLEKKO5.js} +1 -1
- package/Build/Workers/{chunk-64PJ4MTB.js → chunk-HYTFXWMY.js} +7 -7
- package/Build/Workers/{chunk-FPRM6PCE.js → chunk-IFA7VHHP.js} +560 -306
- package/Build/Workers/{chunk-FM5XPC2E.js → chunk-IYVDOB5V.js} +4 -4
- package/Build/Workers/{chunk-P7ISUYLW.js → chunk-JUGY5AZN.js} +4 -4
- package/Build/Workers/{chunk-JONWM4IO.js → chunk-KPYU6YZG.js} +1 -1
- package/Build/Workers/{chunk-JUOSYFXT.js → chunk-L7RDJ4V7.js} +1 -1
- package/Build/Workers/{chunk-MWGB6DLR.js → chunk-LDQWNMEC.js} +1 -1
- package/Build/Workers/{chunk-C6FTHSJA.js → chunk-MQJG522T.js} +6 -6
- package/Build/Workers/{chunk-WH4HDRGN.js → chunk-MT5M7RLZ.js} +2 -2
- package/Build/Workers/{chunk-4ZQN7M7E.js → chunk-N4AWE7TZ.js} +10 -10
- package/Build/Workers/{chunk-SDUH3N6G.js → chunk-NAYRNPEP.js} +4 -4
- package/Build/Workers/{chunk-7OPRTZBT.js → chunk-NNHU33JK.js} +7 -7
- package/Build/Workers/{chunk-CQCEPC6N.js → chunk-NQCAZU7S.js} +13 -13
- package/Build/Workers/{chunk-35J4D6PX.js → chunk-NUYLNQKV.js} +2 -2
- package/Build/Workers/{chunk-I45CATZK.js → chunk-OC6X22PG.js} +9 -9
- package/Build/Workers/{chunk-7MGTX4WP.js → chunk-OHBM4YG4.js} +12 -12
- package/Build/Workers/{chunk-DCR62BCO.js → chunk-OMXN7YF4.js} +12 -12
- package/Build/Workers/{chunk-XPNY2VY3.js → chunk-OQ3EAJNW.js} +2 -2
- package/Build/Workers/{chunk-4I7BCCNU.js → chunk-OQBPOKPZ.js} +6 -6
- package/Build/Workers/{chunk-2JNPWPLE.js → chunk-PQVNT5CJ.js} +6 -6
- package/Build/Workers/{chunk-K64RQCRK.js → chunk-QA24Q62E.js} +17 -17
- package/Build/Workers/{chunk-K6BXEBAF.js → chunk-QQX7S5QT.js} +17 -17
- package/Build/Workers/{chunk-2YVTOY5Z.js → chunk-QTOHIXGF.js} +10 -10
- package/Build/Workers/{chunk-4MCPC4TE.js → chunk-R7M4XNPP.js} +8 -8
- package/Build/Workers/{chunk-C35SJ4QP.js → chunk-SGKTBHFQ.js} +13 -13
- package/Build/Workers/{chunk-BKYJBTHW.js → chunk-SQTRWKO2.js} +5 -5
- package/Build/Workers/{chunk-I4D5IP46.js → chunk-T43FXHNC.js} +7 -7
- package/Build/Workers/{chunk-QO6Z5UJE.js → chunk-UEEGWJJP.js} +2 -2
- package/Build/Workers/{chunk-ZUWF63QU.js → chunk-WKXDCVBO.js} +4 -4
- package/Build/Workers/{chunk-N5MNKWED.js → chunk-Y5AJSEEN.js} +2 -2
- package/Build/Workers/{chunk-V26Y7ZQL.js → chunk-ZIW5FCIW.js} +37 -27
- package/Build/Workers/combineGeometry.js +24 -24
- package/Build/Workers/createBoxGeometry.js +18 -18
- package/Build/Workers/createBoxOutlineGeometry.js +16 -16
- package/Build/Workers/createCircleGeometry.js +26 -26
- package/Build/Workers/createCircleOutlineGeometry.js +19 -19
- package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createCorridorGeometry.js +29 -29
- package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
- package/Build/Workers/createCylinderGeometry.js +20 -20
- package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
- package/Build/Workers/createEllipseGeometry.js +26 -26
- package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
- package/Build/Workers/createEllipsoidGeometry.js +19 -19
- package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
- package/Build/Workers/createFrustumGeometry.js +18 -18
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
- package/Build/Workers/createGeometry.js +24 -24
- package/Build/Workers/createGroundPolylineGeometry.js +22 -22
- package/Build/Workers/createPlaneGeometry.js +16 -16
- package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
- package/Build/Workers/createPolygonGeometry.js +32 -32
- package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
- package/Build/Workers/createPolylineGeometry.js +25 -25
- package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
- package/Build/Workers/createRectangleGeometry.js +27 -27
- package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
- package/Build/Workers/createSimplePolylineGeometry.js +23 -23
- package/Build/Workers/createSphereGeometry.js +19 -19
- package/Build/Workers/createSphereOutlineGeometry.js +18 -18
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
- package/Build/Workers/createVectorTileGeometries.js +24 -24
- package/Build/Workers/createVectorTilePoints.js +13 -13
- package/Build/Workers/createVectorTilePolygons.js +22 -22
- package/Build/Workers/createVectorTilePolylines.js +14 -14
- package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
- package/Build/Workers/createVerticesFromHeightmap.js +22 -22
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +20 -20
- package/Build/Workers/createWallGeometry.js +24 -24
- package/Build/Workers/createWallOutlineGeometry.js +23 -23
- package/Build/Workers/decodeDraco.js +10 -10
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -10
- package/Build/Workers/gaussianSplatSorter.js +4 -4
- package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
- package/Build/Workers/incrementallyBuildTerrainPicker.js +20 -12
- package/Build/Workers/transcodeKTX2.js +6 -6
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
- package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Source/Core/AttributeCompression.js +53 -6
- package/Source/Core/BoxGeometry.js +1 -1
- package/Source/Core/Cartesian2.js +689 -684
- package/Source/Core/Cartesian3.js +1044 -1043
- package/Source/Core/Cartesian4.js +816 -813
- package/Source/Core/CornerType.js +1 -1
- package/Source/Core/CorridorGeometry.js +1 -1
- package/Source/Core/FeatureDetection.js +1 -32
- package/Source/Core/Geometry.js +1 -1
- package/Source/Core/GoogleMaps.js +23 -2
- package/Source/Core/IntersectionTests.js +2 -2
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/OpenCageGeocoderService.js +2 -3
- package/Source/Core/PinBuilder.js +1 -1
- package/Source/Core/PolygonGeometry.js +1 -1
- package/Source/Core/PolylineGeometry.js +1 -1
- package/Source/Core/PolylineVolumeGeometry.js +1 -1
- package/Source/Core/RectangleGeometry.js +1 -1
- package/Source/Core/ScreenSpaceEventHandler.js +4 -8
- package/Source/Core/TerrainMesh.js +11 -8
- package/Source/Core/TerrainPicker.js +24 -7
- package/Source/Core/VideoSynchronizer.js +1 -1
- package/Source/Core/WallGeometry.js +1 -1
- package/Source/Core/globalTypes.js +16 -0
- package/Source/Core/writeTextToCanvas.js +40 -86
- package/Source/DataSources/BillboardGraphics.js +1 -1
- package/Source/DataSources/BoxGraphics.js +1 -1
- package/Source/DataSources/CallbackPositionProperty.js +1 -1
- package/Source/DataSources/CorridorGraphics.js +1 -1
- package/Source/DataSources/CzmlDataSource.js +1 -1
- package/Source/DataSources/EllipseGraphics.js +1 -1
- package/Source/DataSources/EllipsoidGraphics.js +1 -1
- package/Source/DataSources/Entity.js +1 -1
- package/Source/DataSources/EntityCluster.js +2 -2
- package/Source/DataSources/GeoJsonDataSource.js +2 -2
- package/Source/DataSources/GpxDataSource.js +1 -1
- package/Source/DataSources/KmlDataSource.js +1 -1
- package/Source/DataSources/KmlTour.js +1 -1
- package/Source/DataSources/LabelGraphics.js +1 -1
- package/Source/DataSources/ModelGraphics.js +1 -1
- package/Source/DataSources/PlaneGraphics.js +1 -1
- package/Source/DataSources/PolygonGraphics.js +1 -1
- package/Source/DataSources/PolylineGraphics.js +1 -1
- package/Source/DataSources/PolylineVolumeGraphics.js +1 -1
- package/Source/DataSources/RectangleGraphics.js +1 -1
- package/Source/DataSources/WallGraphics.js +1 -1
- package/Source/DataSources/exportKml.js +1 -1
- package/Source/Renderer/Context.js +11 -10
- package/Source/Renderer/ContextLimits.js +66 -33
- package/Source/Renderer/ShaderDestination.js +54 -13
- package/Source/Renderer/ShaderSource.js +19 -18
- package/Source/Renderer/Texture.js +1 -1
- package/Source/Renderer/Texture3D.js +166 -7
- package/Source/Renderer/TextureAtlas.js +2 -2
- package/Source/Scene/Appearance.js +1 -1
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/Billboard.js +8 -5
- package/Source/Scene/BillboardCollection.js +65 -26
- package/Source/Scene/BillboardTexture.js +4 -1
- package/Source/Scene/BufferLoader.js +65 -74
- package/Source/Scene/Camera.js +13 -2
- package/Source/Scene/ClippingPlaneCollection.js +2 -2
- package/Source/Scene/CloudCollection.js +2 -2
- package/Source/Scene/CubeMapPanorama.js +351 -0
- package/Source/Scene/CumulusCloud.js +1 -1
- package/Source/Scene/DerivedCommand.js +8 -31
- package/Source/Scene/DracoLoader.js +79 -78
- package/Source/Scene/DynamicEnvironmentMapManager.js +41 -26
- package/Source/Scene/EquirectangularPanorama.js +264 -0
- package/Source/Scene/Fog.js +1 -1
- package/Source/Scene/FrameState.js +7 -0
- package/Source/Scene/GaussianSplatPrimitive.js +907 -168
- package/Source/Scene/Globe.js +3 -10
- package/Source/Scene/GlobeSurfaceShaderSet.js +36 -32
- package/Source/Scene/GltfBufferViewLoader.js +109 -118
- package/Source/Scene/GltfDracoLoader.js +167 -176
- package/Source/Scene/GltfImageLoader.js +91 -101
- package/Source/Scene/GltfIndexBufferLoader.js +228 -241
- package/Source/Scene/GltfJsonLoader.js +90 -99
- package/Source/Scene/GltfLoader.js +323 -324
- package/Source/Scene/GltfSpzLoader.js +127 -134
- package/Source/Scene/GltfStructuralMetadataLoader.js +181 -186
- package/Source/Scene/GltfTextureLoader.js +217 -231
- package/Source/Scene/GltfVertexBufferLoader.js +267 -276
- package/Source/Scene/GoogleStreetViewCubeMapPanoramaProvider.js +341 -0
- package/Source/Scene/ImageBasedLighting.js +2 -2
- package/Source/Scene/ImageryLayerCollection.js +2 -2
- package/Source/Scene/ImageryProvider.js +2 -2
- package/Source/Scene/Label.js +7 -5
- package/Source/Scene/LabelCollection.js +60 -2
- package/Source/Scene/Material.js +1 -1
- package/Source/Scene/MaterialAppearance.js +1 -1
- package/Source/Scene/Megatexture.js +174 -242
- package/Source/Scene/MetadataClassProperty.js +212 -7
- package/Source/Scene/MetadataComponentType.js +162 -127
- package/Source/Scene/MetadataSchemaLoader.js +60 -67
- package/Source/Scene/MetadataTable.js +14 -0
- package/Source/Scene/MetadataTableProperty.js +14 -0
- package/Source/Scene/Model/B3dmLoader.js +216 -224
- package/Source/Scene/Model/CustomShader.js +6 -1
- package/Source/Scene/Model/CustomShaderPipelineStage.js +122 -7
- package/Source/Scene/Model/GeoJsonLoader.js +53 -61
- package/Source/Scene/Model/GeometryPipelineStage.js +17 -3
- package/Source/Scene/Model/I3dmLoader.js +232 -240
- package/Source/Scene/Model/MaterialPipelineStage.js +17 -0
- package/Source/Scene/Model/MetadataPipelineStage.js +438 -22
- package/Source/Scene/Model/Model.js +1 -1
- package/Source/Scene/Model/PntsLoader.js +78 -89
- package/Source/Scene/ModelComponents.js +10 -0
- package/Source/Scene/Panorama.js +53 -0
- package/Source/Scene/PanoramaProvider.js +43 -0
- package/Source/Scene/ParticleSystem.js +2 -2
- package/Source/Scene/PointPrimitive.js +1 -1
- package/Source/Scene/PointPrimitiveCollection.js +14 -22
- package/Source/Scene/Polyline.js +0 -1
- package/Source/Scene/PolylineCollection.js +1 -4
- package/Source/Scene/PolylineColorAppearance.js +1 -6
- package/Source/Scene/PolylineMaterialAppearance.js +1 -6
- package/Source/Scene/PostProcessStageCollection.js +1 -1
- package/Source/Scene/PropertyTable.js +43 -0
- package/Source/Scene/PropertyTexture.js +1 -1
- package/Source/Scene/PropertyTextureProperty.js +0 -97
- package/Source/Scene/QuadtreePrimitive.js +6 -3
- package/Source/Scene/ResourceLoader.js +84 -92
- package/Source/Scene/Scene.js +12 -0
- package/Source/Scene/ShadowMap.js +1 -2
- package/Source/Scene/SkyBox.js +29 -164
- package/Source/Scene/StructuralMetadata.js +18 -3
- package/Source/Scene/Vector3DTileClampedPolylines.js +1 -5
- package/Source/Scene/Vector3DTilePolylines.js +1 -5
- package/Source/Scene/VoxelPrimitive.js +16 -33
- package/Source/Scene/VoxelRenderResources.js +1 -8
- package/Source/Scene/VoxelTraversal.js +16 -61
- package/Source/Scene/WebMapTileServiceImageryProvider.js +1 -1
- package/Source/Scene/createElevationBandMaterial.js +1 -1
- package/Source/Scene/parseStructuralMetadata.js +244 -0
- package/Source/Scene/processVoxelProperties.js +1 -1
- package/Source/Shaders/BillboardCollectionFS.glsl +66 -40
- package/Source/Shaders/BillboardCollectionFS.js +67 -40
- package/Source/Shaders/BillboardCollectionVS.glsl +22 -31
- package/Source/Shaders/BillboardCollectionVS.js +22 -31
- package/Source/Shaders/Builtin/CzmBuiltins.js +4 -0
- package/Source/Shaders/Builtin/Functions/columbusViewMorph.glsl +8 -1
- package/Source/Shaders/Builtin/Functions/columbusViewMorph.js +8 -1
- package/Source/Shaders/Builtin/Functions/decodeRGB8.glsl +22 -0
- package/Source/Shaders/Builtin/Functions/decodeRGB8.js +24 -0
- package/Source/Shaders/Builtin/Functions/unpackTexture.glsl +35 -0
- package/Source/Shaders/Builtin/Functions/unpackTexture.js +37 -0
- package/Source/Shaders/CubeMapPanoramaVS.glsl +11 -0
- package/Source/Shaders/CubeMapPanoramaVS.js +13 -0
- package/Source/Shaders/Model/MetadataStageFS.glsl +2 -1
- package/Source/Shaders/Model/MetadataStageFS.js +2 -1
- package/Source/Shaders/Model/MetadataStageVS.glsl +2 -1
- package/Source/Shaders/Model/MetadataStageVS.js +2 -1
- package/Source/Shaders/Model/ModelFS.glsl +9 -1
- package/Source/Shaders/Model/ModelFS.js +9 -1
- package/Source/Shaders/Model/ModelVS.glsl +4 -2
- package/Source/Shaders/Model/ModelVS.js +4 -2
- package/Source/Shaders/PointPrimitiveCollectionVS.glsl +8 -39
- package/Source/Shaders/PointPrimitiveCollectionVS.js +8 -39
- package/Source/Shaders/Voxels/IntersectionUtils.glsl +1 -1
- package/Source/Shaders/Voxels/IntersectionUtils.js +1 -1
- package/Source/Shaders/Voxels/Megatexture.glsl +15 -83
- package/Source/Shaders/Voxels/Megatexture.js +15 -83
- package/Source/Shaders/Voxels/Octree.glsl +6 -9
- package/Source/Shaders/Voxels/Octree.js +6 -9
- package/Source/Widget/CesiumWidget.js +1 -1
- package/Source/Workers/incrementallyBuildTerrainPicker.js +16 -2
- package/index.d.ts +582 -193
- package/index.js +91 -83
- package/package.json +2 -1
- package/Build/Workers/chunk-ZGWX2R5I.js +0 -1443
|
@@ -4817,7 +4817,7 @@ function DocumentPacket() {
|
|
|
4817
4817
|
*
|
|
4818
4818
|
* @param {string} [name] An optional name for the data source. This value will be overwritten if a loaded document contains a name.
|
|
4819
4819
|
*
|
|
4820
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
4820
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=czml|Cesium Sandcastle CZML Demo}
|
|
4821
4821
|
*/
|
|
4822
4822
|
function CzmlDataSource(name) {
|
|
4823
4823
|
this._name = name;
|
|
@@ -43,7 +43,7 @@ import createPropertyDescriptor from "./createPropertyDescriptor.js";
|
|
|
43
43
|
*
|
|
44
44
|
* @param {EllipseGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
45
45
|
*
|
|
46
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
46
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=circles-and-ellipses|Cesium Sandcastle Circles and Ellipses Demo}
|
|
47
47
|
*/
|
|
48
48
|
function EllipseGraphics(options) {
|
|
49
49
|
this._definitionChanged = new Event();
|
|
@@ -38,7 +38,7 @@ import createPropertyDescriptor from "./createPropertyDescriptor.js";
|
|
|
38
38
|
*
|
|
39
39
|
* @param {EllipsoidGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
40
40
|
*
|
|
41
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
41
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=spheres-and-ellipsoids|Cesium Sandcastle Spheres and Ellipsoids Demo}
|
|
42
42
|
*/
|
|
43
43
|
function EllipsoidGraphics(options) {
|
|
44
44
|
this._definitionChanged = new Event();
|
|
@@ -302,7 +302,7 @@ Object.defineProperties(Entity.prototype, {
|
|
|
302
302
|
},
|
|
303
303
|
/**
|
|
304
304
|
* Gets or sets the entity's tracking reference frame.
|
|
305
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
305
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=entity-tracking|Cesium Sandcastle Entity tracking Demo}
|
|
306
306
|
*
|
|
307
307
|
* @memberof Entity.prototype
|
|
308
308
|
* @type {TrackingReferenceFrame}
|
|
@@ -30,7 +30,7 @@ import KDBush from "kdbush";
|
|
|
30
30
|
* @alias EntityCluster
|
|
31
31
|
* @constructor
|
|
32
32
|
*
|
|
33
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
33
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=clustering|Cesium Sandcastle Clustering Demo}
|
|
34
34
|
*/
|
|
35
35
|
function EntityCluster(options) {
|
|
36
36
|
options = options ?? Frozen.EMPTY_OBJECT;
|
|
@@ -330,7 +330,7 @@ function createDeclutterCallback(entityCluster) {
|
|
|
330
330
|
let collectionIndex;
|
|
331
331
|
|
|
332
332
|
if (points.length > 0) {
|
|
333
|
-
const index = new KDBush(points.length, 64,
|
|
333
|
+
const index = new KDBush(points.length, 64, Float64Array);
|
|
334
334
|
for (let p = 0; p < points.length; ++p) {
|
|
335
335
|
index.add(points[p].coord.x, points[p].coord.y);
|
|
336
336
|
}
|
|
@@ -578,8 +578,8 @@ function processTopology(dataSource, geoJson, geometry, crsFunction, options) {
|
|
|
578
578
|
* @param {string} [name] The name of this data source. If undefined, a name will be taken from
|
|
579
579
|
* the name of the GeoJSON file.
|
|
580
580
|
*
|
|
581
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
582
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
581
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=geojson-and-topojson|Cesium Sandcastle GeoJSON and TopoJSON Demo}
|
|
582
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=geojson-simplestyle|Cesium Sandcastle GeoJSON simplestyle Demo}
|
|
583
583
|
*
|
|
584
584
|
* @example
|
|
585
585
|
* const viewer = new Cesium.Viewer('cesiumContainer');
|
|
@@ -738,7 +738,7 @@ function load(dataSource, entityCollection, data, options) {
|
|
|
738
738
|
* @see {@link http://www.topografix.com/gpx.asp|Topografix GPX Standard}
|
|
739
739
|
* @see {@link http://www.topografix.com/gpx/1/1/|Topografix GPX Documentation}
|
|
740
740
|
*
|
|
741
|
-
* @demo {@link http://sandcastle.cesium.com/index.html?
|
|
741
|
+
* @demo {@link http://sandcastle.cesium.com/index.html?id=gpx}
|
|
742
742
|
*
|
|
743
743
|
* @example
|
|
744
744
|
* const viewer = new Cesium.Viewer('cesiumContainer');
|
|
@@ -3518,7 +3518,7 @@ function load(dataSource, entityCollection, data, options) {
|
|
|
3518
3518
|
* @see {@link http://www.opengeospatial.org/standards/kml/|Open Geospatial Consortium KML Standard}
|
|
3519
3519
|
* @see {@link https://developers.google.com/kml/|Google KML Documentation}
|
|
3520
3520
|
*
|
|
3521
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
3521
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=kml|Cesium Sandcastle KML Demo}
|
|
3522
3522
|
*
|
|
3523
3523
|
* @example
|
|
3524
3524
|
* const viewer = new Cesium.Viewer('cesiumContainer');
|
|
@@ -14,7 +14,7 @@ import Event from "../Core/Event.js";
|
|
|
14
14
|
* @see KmlTourFlyTo
|
|
15
15
|
* @see KmlTourWait
|
|
16
16
|
*
|
|
17
|
-
* @demo {@link https://sandcastle.cesium.com/?
|
|
17
|
+
* @demo {@link https://sandcastle.cesium.com/?id=kml-tours|KML Tours}
|
|
18
18
|
*/
|
|
19
19
|
function KmlTour(name, id) {
|
|
20
20
|
/**
|
|
@@ -46,7 +46,7 @@ import createPropertyDescriptor from "./createPropertyDescriptor.js";
|
|
|
46
46
|
*
|
|
47
47
|
* @param {LabelGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
48
48
|
*
|
|
49
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
49
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=labels|Cesium Sandcastle Labels Demo}
|
|
50
50
|
*/
|
|
51
51
|
function LabelGraphics(options) {
|
|
52
52
|
this._definitionChanged = new Event();
|
|
@@ -66,7 +66,7 @@ function createEnvironmentMapPropertyBag(value) {
|
|
|
66
66
|
*
|
|
67
67
|
* @param {ModelGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
68
68
|
*
|
|
69
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
69
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=3d-models|Cesium Sandcastle 3D Models Demo}
|
|
70
70
|
*/
|
|
71
71
|
function ModelGraphics(options) {
|
|
72
72
|
this._definitionChanged = new Event();
|
|
@@ -30,7 +30,7 @@ import createPropertyDescriptor from "./createPropertyDescriptor.js";
|
|
|
30
30
|
*
|
|
31
31
|
* @param {PlaneGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
32
32
|
*
|
|
33
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
33
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=plane|Cesium Sandcastle Plane Demo}
|
|
34
34
|
*/
|
|
35
35
|
function PlaneGraphics(options) {
|
|
36
36
|
this._definitionChanged = new Event();
|
|
@@ -55,7 +55,7 @@ function createPolygonHierarchyProperty(value) {
|
|
|
55
55
|
* @param {PolygonGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
56
56
|
*
|
|
57
57
|
* @see Entity
|
|
58
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
58
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=polygon|Cesium Sandcastle Polygon Demo}
|
|
59
59
|
*/
|
|
60
60
|
function PolygonGraphics(options) {
|
|
61
61
|
this._definitionChanged = new Event();
|
|
@@ -35,7 +35,7 @@ import createPropertyDescriptor from "./createPropertyDescriptor.js";
|
|
|
35
35
|
* @param {PolylineGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
36
36
|
*
|
|
37
37
|
* @see Entity
|
|
38
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
38
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=polyline|Cesium Sandcastle Polyline Demo}
|
|
39
39
|
*/
|
|
40
40
|
function PolylineGraphics(options) {
|
|
41
41
|
this._definitionChanged = new Event();
|
|
@@ -34,7 +34,7 @@ import createPropertyDescriptor from "./createPropertyDescriptor.js";
|
|
|
34
34
|
* @param {PolylineVolumeGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
35
35
|
*
|
|
36
36
|
* @see Entity
|
|
37
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
37
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=polyline-volume|Cesium Sandcastle Polyline Volume Demo}
|
|
38
38
|
*/
|
|
39
39
|
function PolylineVolumeGraphics(options) {
|
|
40
40
|
this._definitionChanged = new Event();
|
|
@@ -41,7 +41,7 @@ import createPropertyDescriptor from "./createPropertyDescriptor.js";
|
|
|
41
41
|
* @param {RectangleGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
42
42
|
*
|
|
43
43
|
* @see Entity
|
|
44
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
44
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=rectangle|Cesium Sandcastle Rectangle Demo}
|
|
45
45
|
*/
|
|
46
46
|
function RectangleGraphics(options) {
|
|
47
47
|
this._definitionChanged = new Event();
|
|
@@ -34,7 +34,7 @@ import createPropertyDescriptor from "./createPropertyDescriptor.js";
|
|
|
34
34
|
* @param {WallGraphics.ConstructorOptions} [options] Object describing initialization options
|
|
35
35
|
*
|
|
36
36
|
* @see Entity
|
|
37
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
37
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=wall|Cesium Sandcastle Wall Demo}
|
|
38
38
|
*/
|
|
39
39
|
function WallGraphics(options) {
|
|
40
40
|
this._definitionChanged = new Event();
|
|
@@ -263,7 +263,7 @@ IdManager.prototype.get = function (id) {
|
|
|
263
263
|
* @param {boolean} [options.kmz=false] If true KML and external files will be compressed into a kmz file.
|
|
264
264
|
*
|
|
265
265
|
* @returns {Promise<exportKmlResultKml|exportKmlResultKmz>} A promise that resolved to an object containing the KML string and a dictionary of external file blobs, or a kmz file as a blob if options.kmz is true.
|
|
266
|
-
* @demo {@link https://sandcastle.cesium.com/index.html?
|
|
266
|
+
* @demo {@link https://sandcastle.cesium.com/index.html?id=export-kml|Cesium Sandcastle KML Export Demo}
|
|
267
267
|
* @example
|
|
268
268
|
* Cesium.exportKml({
|
|
269
269
|
* entities: entityCollection
|
|
@@ -86,32 +86,33 @@ function Context(canvas, options) {
|
|
|
86
86
|
|
|
87
87
|
ContextLimits._maximumCombinedTextureImageUnits = gl.getParameter(
|
|
88
88
|
gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS,
|
|
89
|
-
);
|
|
89
|
+
);
|
|
90
90
|
ContextLimits._maximumCubeMapSize = gl.getParameter(
|
|
91
91
|
gl.MAX_CUBE_MAP_TEXTURE_SIZE,
|
|
92
|
-
);
|
|
92
|
+
);
|
|
93
93
|
ContextLimits._maximumFragmentUniformVectors = gl.getParameter(
|
|
94
94
|
gl.MAX_FRAGMENT_UNIFORM_VECTORS,
|
|
95
|
-
);
|
|
95
|
+
);
|
|
96
96
|
ContextLimits._maximumTextureImageUnits = gl.getParameter(
|
|
97
97
|
gl.MAX_TEXTURE_IMAGE_UNITS,
|
|
98
|
-
);
|
|
98
|
+
);
|
|
99
99
|
ContextLimits._maximumRenderbufferSize = gl.getParameter(
|
|
100
100
|
gl.MAX_RENDERBUFFER_SIZE,
|
|
101
|
-
);
|
|
102
|
-
ContextLimits._maximumTextureSize = gl.getParameter(gl.MAX_TEXTURE_SIZE);
|
|
101
|
+
);
|
|
102
|
+
ContextLimits._maximumTextureSize = gl.getParameter(gl.MAX_TEXTURE_SIZE);
|
|
103
|
+
ContextLimits._maximum3DTextureSize = gl.getParameter(gl.MAX_3D_TEXTURE_SIZE);
|
|
103
104
|
ContextLimits._maximumVaryingVectors = gl.getParameter(
|
|
104
105
|
gl.MAX_VARYING_VECTORS,
|
|
105
|
-
);
|
|
106
|
+
);
|
|
106
107
|
ContextLimits._maximumVertexAttributes = gl.getParameter(
|
|
107
108
|
gl.MAX_VERTEX_ATTRIBS,
|
|
108
|
-
);
|
|
109
|
+
);
|
|
109
110
|
ContextLimits._maximumVertexTextureImageUnits = gl.getParameter(
|
|
110
111
|
gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS,
|
|
111
|
-
);
|
|
112
|
+
);
|
|
112
113
|
ContextLimits._maximumVertexUniformVectors = gl.getParameter(
|
|
113
114
|
gl.MAX_VERTEX_UNIFORM_VECTORS,
|
|
114
|
-
);
|
|
115
|
+
);
|
|
115
116
|
|
|
116
117
|
ContextLimits._maximumSamples = this._webgl2
|
|
117
118
|
? gl.getParameter(gl.MAX_SAMPLES)
|
|
@@ -10,6 +10,7 @@ const ContextLimits = {
|
|
|
10
10
|
_maximumTextureImageUnits: 0,
|
|
11
11
|
_maximumRenderbufferSize: 0,
|
|
12
12
|
_maximumTextureSize: 0,
|
|
13
|
+
_maximum3DTextureSize: 0,
|
|
13
14
|
_maximumVaryingVectors: 0,
|
|
14
15
|
_maximumVertexAttributes: 0,
|
|
15
16
|
_maximumVertexTextureImageUnits: 0,
|
|
@@ -31,11 +32,13 @@ const ContextLimits = {
|
|
|
31
32
|
Object.defineProperties(ContextLimits, {
|
|
32
33
|
/**
|
|
33
34
|
* The maximum number of texture units that can be used from the vertex and fragment
|
|
34
|
-
* shader with this WebGL implementation.
|
|
35
|
-
* same texture unit, this counts as two texture units.
|
|
35
|
+
* shader with this WebGL implementation.
|
|
36
|
+
* If both shaders access the same texture unit, this counts as two texture units.
|
|
37
|
+
* The minimum in WebGL2 contexts is 32, or 8 in WebGL1 contexts.
|
|
36
38
|
* @memberof ContextLimits
|
|
37
39
|
* @type {number}
|
|
38
|
-
* @see {@link https://
|
|
40
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_COMBINED_TEXTURE_IMAGE_UNITS</code>.
|
|
41
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
39
42
|
*/
|
|
40
43
|
maximumCombinedTextureImageUnits: {
|
|
41
44
|
get: function () {
|
|
@@ -45,10 +48,12 @@ Object.defineProperties(ContextLimits, {
|
|
|
45
48
|
|
|
46
49
|
/**
|
|
47
50
|
* The approximate maximum cube map width and height supported by this WebGL implementation.
|
|
48
|
-
* The minimum is
|
|
51
|
+
* The minimum in WebGL2 contexts is 2048, but most desktop and laptop implementations will support much larger sizes like 8192.
|
|
52
|
+
* The minimum in WebGL1 contexts is 16.
|
|
49
53
|
* @memberof ContextLimits
|
|
50
54
|
* @type {number}
|
|
51
|
-
* @see {@link https://
|
|
55
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_CUBE_MAP_TEXTURE_SIZE</code>.
|
|
56
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
52
57
|
*/
|
|
53
58
|
maximumCubeMapSize: {
|
|
54
59
|
get: function () {
|
|
@@ -58,10 +63,12 @@ Object.defineProperties(ContextLimits, {
|
|
|
58
63
|
|
|
59
64
|
/**
|
|
60
65
|
* The maximum number of <code>vec4</code>, <code>ivec4</code>, and <code>bvec4</code>
|
|
61
|
-
* uniforms that can be used by a fragment shader with this WebGL implementation.
|
|
66
|
+
* uniforms that can be used by a fragment shader with this WebGL implementation.
|
|
67
|
+
* The minimum in WebGL2 contexts is 224, or 16 in WebGL1 contexts.
|
|
62
68
|
* @memberof ContextLimits
|
|
63
69
|
* @type {number}
|
|
64
|
-
* @see {@link https://
|
|
70
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_FRAGMENT_UNIFORM_VECTORS</code>.
|
|
71
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
65
72
|
*/
|
|
66
73
|
maximumFragmentUniformVectors: {
|
|
67
74
|
get: function () {
|
|
@@ -70,10 +77,12 @@ Object.defineProperties(ContextLimits, {
|
|
|
70
77
|
},
|
|
71
78
|
|
|
72
79
|
/**
|
|
73
|
-
* The maximum number of texture units that can be used from the fragment shader with this WebGL implementation.
|
|
80
|
+
* The maximum number of texture units that can be used from the fragment shader with this WebGL implementation.
|
|
81
|
+
* The minimum in WebGL2 contexts is 16, or 8 in WebGL1 contexts.
|
|
74
82
|
* @memberof ContextLimits
|
|
75
83
|
* @type {number}
|
|
76
|
-
* @see {@link https://
|
|
84
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_TEXTURE_IMAGE_UNITS</code>.
|
|
85
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
77
86
|
*/
|
|
78
87
|
maximumTextureImageUnits: {
|
|
79
88
|
get: function () {
|
|
@@ -83,10 +92,12 @@ Object.defineProperties(ContextLimits, {
|
|
|
83
92
|
|
|
84
93
|
/**
|
|
85
94
|
* The maximum renderbuffer width and height supported by this WebGL implementation.
|
|
86
|
-
* The minimum is
|
|
95
|
+
* The minimum in WebGL2 contexts is 2048, but most desktop and laptop implementations will support much larger sizes like 8192.
|
|
96
|
+
* The minimum in WebGL1 contexts is 1.
|
|
87
97
|
* @memberof ContextLimits
|
|
88
98
|
* @type {number}
|
|
89
|
-
* @see {@link https://
|
|
99
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_RENDERBUFFER_SIZE</code>.
|
|
100
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
90
101
|
*/
|
|
91
102
|
maximumRenderbufferSize: {
|
|
92
103
|
get: function () {
|
|
@@ -96,10 +107,12 @@ Object.defineProperties(ContextLimits, {
|
|
|
96
107
|
|
|
97
108
|
/**
|
|
98
109
|
* The approximate maximum texture width and height supported by this WebGL implementation.
|
|
99
|
-
* The minimum is
|
|
110
|
+
* The minimum in WebGL2 contexts is 2048, but most desktop and laptop implementations will support much larger sizes like 8192.
|
|
111
|
+
* The minimum in WebGL1 contexts is 64.
|
|
100
112
|
* @memberof ContextLimits
|
|
101
113
|
* @type {number}
|
|
102
|
-
* @see {@link https://
|
|
114
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_TEXTURE_SIZE</code>.
|
|
115
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
103
116
|
*/
|
|
104
117
|
maximumTextureSize: {
|
|
105
118
|
get: function () {
|
|
@@ -107,12 +120,27 @@ Object.defineProperties(ContextLimits, {
|
|
|
107
120
|
},
|
|
108
121
|
},
|
|
109
122
|
|
|
123
|
+
/**
|
|
124
|
+
* The approximate maximum texture width, height, and depth supported by this WebGL2 implementation.
|
|
125
|
+
* The minimum is 256, but most desktop and laptop implementations will support much larger sizes like 2048.
|
|
126
|
+
* 3D textures are not supported in WebGL1 contexts.
|
|
127
|
+
* @memberof ContextLimits
|
|
128
|
+
* @type {number}
|
|
129
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_3D_TEXTURE_SIZE</code>.
|
|
130
|
+
*/
|
|
131
|
+
maximum3DTextureSize: {
|
|
132
|
+
get: function () {
|
|
133
|
+
return ContextLimits._maximum3DTextureSize;
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
|
|
110
137
|
/**
|
|
111
138
|
* The maximum number of <code>vec4</code> varying variables supported by this WebGL implementation.
|
|
112
|
-
* The minimum is
|
|
139
|
+
* The minimum is 15 in WebGL2 contexts, or 8 in WebGL1 contexts. Matrices and arrays count as multiple <code>vec4</code>s.
|
|
113
140
|
* @memberof ContextLimits
|
|
114
141
|
* @type {number}
|
|
115
|
-
* @see {@link https://
|
|
142
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_VARYING_VECTORS</code>.
|
|
143
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
116
144
|
*/
|
|
117
145
|
maximumVaryingVectors: {
|
|
118
146
|
get: function () {
|
|
@@ -121,10 +149,12 @@ Object.defineProperties(ContextLimits, {
|
|
|
121
149
|
},
|
|
122
150
|
|
|
123
151
|
/**
|
|
124
|
-
* The maximum number of <code>vec4</code> vertex attributes supported by this WebGL implementation.
|
|
152
|
+
* The maximum number of <code>vec4</code> vertex attributes supported by this WebGL implementation.
|
|
153
|
+
* The minimum is 16 in WebGL2 contexts, or 8 in WebGL1 contexts.
|
|
125
154
|
* @memberof ContextLimits
|
|
126
155
|
* @type {number}
|
|
127
|
-
* @see {@link https://
|
|
156
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_VERTEX_ATTRIBS</code>.
|
|
157
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
128
158
|
*/
|
|
129
159
|
maximumVertexAttributes: {
|
|
130
160
|
get: function () {
|
|
@@ -134,10 +164,11 @@ Object.defineProperties(ContextLimits, {
|
|
|
134
164
|
|
|
135
165
|
/**
|
|
136
166
|
* The maximum number of texture units that can be used from the vertex shader with this WebGL implementation.
|
|
137
|
-
* The minimum is
|
|
167
|
+
* The minimum is 16 in WebGL2 contexts, or 0 in WebGL1 contexts.
|
|
138
168
|
* @memberof ContextLimits
|
|
139
169
|
* @type {number}
|
|
140
|
-
* @see {@link https://
|
|
170
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_VERTEX_TEXTURE_IMAGE_UNITS</code>.
|
|
171
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
141
172
|
*/
|
|
142
173
|
maximumVertexTextureImageUnits: {
|
|
143
174
|
get: function () {
|
|
@@ -147,10 +178,12 @@ Object.defineProperties(ContextLimits, {
|
|
|
147
178
|
|
|
148
179
|
/**
|
|
149
180
|
* The maximum number of <code>vec4</code>, <code>ivec4</code>, and <code>bvec4</code>
|
|
150
|
-
* uniforms that can be used by a vertex shader with this WebGL implementation.
|
|
181
|
+
* uniforms that can be used by a vertex shader with this WebGL implementation.
|
|
182
|
+
* The minimum is 256 in WebGL2 contexts, or 128 in WebGL1 contexts.
|
|
151
183
|
* @memberof ContextLimits
|
|
152
184
|
* @type {number}
|
|
153
|
-
* @see {@link https://
|
|
185
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_VERTEX_UNIFORM_VECTORS</code>.
|
|
186
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glGet.xml|glGet in OpenGL ES 2.0} for WebGL1 contexts.
|
|
154
187
|
*/
|
|
155
188
|
maximumVertexUniformVectors: {
|
|
156
189
|
get: function () {
|
|
@@ -159,10 +192,10 @@ Object.defineProperties(ContextLimits, {
|
|
|
159
192
|
},
|
|
160
193
|
|
|
161
194
|
/**
|
|
162
|
-
* The minimum aliased line width, in pixels, supported by this WebGL implementation.
|
|
195
|
+
* The minimum aliased line width, in pixels, supported by this WebGL implementation. It will be at most one.
|
|
196
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>ALIASED_LINE_WIDTH_RANGE</code>.
|
|
163
197
|
* @memberof ContextLimits
|
|
164
198
|
* @type {number}
|
|
165
|
-
* @see {@link https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGet.xml|glGet} with <code>ALIASED_LINE_WIDTH_RANGE</code>.
|
|
166
199
|
*/
|
|
167
200
|
minimumAliasedLineWidth: {
|
|
168
201
|
get: function () {
|
|
@@ -171,10 +204,10 @@ Object.defineProperties(ContextLimits, {
|
|
|
171
204
|
},
|
|
172
205
|
|
|
173
206
|
/**
|
|
174
|
-
* The maximum aliased line width, in pixels, supported by this WebGL implementation.
|
|
207
|
+
* The maximum aliased line width, in pixels, supported by this WebGL implementation. It will be at least one.
|
|
208
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>ALIASED_LINE_WIDTH_RANGE</code>.
|
|
175
209
|
* @memberof ContextLimits
|
|
176
210
|
* @type {number}
|
|
177
|
-
* @see {@link https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGet.xml|glGet} with <code>ALIASED_LINE_WIDTH_RANGE</code>.
|
|
178
211
|
*/
|
|
179
212
|
maximumAliasedLineWidth: {
|
|
180
213
|
get: function () {
|
|
@@ -183,10 +216,10 @@ Object.defineProperties(ContextLimits, {
|
|
|
183
216
|
},
|
|
184
217
|
|
|
185
218
|
/**
|
|
186
|
-
* The minimum aliased point size, in pixels, supported by this WebGL implementation.
|
|
219
|
+
* The minimum aliased point size, in pixels, supported by this WebGL implementation. It will be at most one.
|
|
220
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>ALIASED_POINT_SIZE_RANGE</code>.
|
|
187
221
|
* @memberof ContextLimits
|
|
188
222
|
* @type {number}
|
|
189
|
-
* @see {@link https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGet.xml|glGet} with <code>ALIASED_POINT_SIZE_RANGE</code>.
|
|
190
223
|
*/
|
|
191
224
|
minimumAliasedPointSize: {
|
|
192
225
|
get: function () {
|
|
@@ -195,10 +228,10 @@ Object.defineProperties(ContextLimits, {
|
|
|
195
228
|
},
|
|
196
229
|
|
|
197
230
|
/**
|
|
198
|
-
* The maximum aliased point size, in pixels, supported by this WebGL implementation.
|
|
231
|
+
* The maximum aliased point size, in pixels, supported by this WebGL implementation. It will be at least one.
|
|
232
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>ALIASED_POINT_SIZE_RANGE</code>.
|
|
199
233
|
* @memberof ContextLimits
|
|
200
234
|
* @type {number}
|
|
201
|
-
* @see {@link https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGet.xml|glGet} with <code>ALIASED_POINT_SIZE_RANGE</code>.
|
|
202
235
|
*/
|
|
203
236
|
maximumAliasedPointSize: {
|
|
204
237
|
get: function () {
|
|
@@ -207,10 +240,10 @@ Object.defineProperties(ContextLimits, {
|
|
|
207
240
|
},
|
|
208
241
|
|
|
209
242
|
/**
|
|
210
|
-
* The maximum supported width of the viewport.
|
|
243
|
+
* The maximum supported width of the viewport. It will be at least as large as the visible width of the associated canvas.
|
|
244
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_VIEWPORT_DIMS</code>.
|
|
211
245
|
* @memberof ContextLimits
|
|
212
246
|
* @type {number}
|
|
213
|
-
* @see {@link https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGet.xml|glGet} with <code>MAX_VIEWPORT_DIMS</code>.
|
|
214
247
|
*/
|
|
215
248
|
maximumViewportWidth: {
|
|
216
249
|
get: function () {
|
|
@@ -219,10 +252,10 @@ Object.defineProperties(ContextLimits, {
|
|
|
219
252
|
},
|
|
220
253
|
|
|
221
254
|
/**
|
|
222
|
-
* The maximum supported height of the viewport.
|
|
255
|
+
* The maximum supported height of the viewport. It will be at least as large as the visible height of the associated canvas.
|
|
256
|
+
* @see {@link https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glGet.xhtml|glGet in OpenGL ES 3.0} with <code>MAX_VIEWPORT_DIMS</code>.
|
|
223
257
|
* @memberof ContextLimits
|
|
224
258
|
* @type {number}
|
|
225
|
-
* @see {@link https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGet.xml|glGet} with <code>MAX_VIEWPORT_DIMS</code>.
|
|
226
259
|
*/
|
|
227
260
|
maximumViewportHeight: {
|
|
228
261
|
get: function () {
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
|
+
import DeveloperError from "../Core/DeveloperError.js";
|
|
2
3
|
|
|
3
4
|
/**
|
|
4
|
-
*
|
|
5
|
-
* vertex shader, the fragment shader, or both.
|
|
5
|
+
* A bit flag describing whether a variable should be added to the
|
|
6
|
+
* vertex shader, the fragment shader, or both (or none).
|
|
6
7
|
*
|
|
7
8
|
* @private
|
|
8
9
|
*/
|
|
9
10
|
const ShaderDestination = {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
NONE: 0,
|
|
12
|
+
VERTEX: 1,
|
|
13
|
+
FRAGMENT: 2,
|
|
14
|
+
BOTH: 3,
|
|
13
15
|
};
|
|
14
16
|
|
|
15
17
|
/**
|
|
@@ -24,10 +26,7 @@ ShaderDestination.includesVertexShader = function (destination) {
|
|
|
24
26
|
Check.typeOf.number("destination", destination);
|
|
25
27
|
//>>includeEnd('debug');
|
|
26
28
|
|
|
27
|
-
return (
|
|
28
|
-
destination === ShaderDestination.VERTEX ||
|
|
29
|
-
destination === ShaderDestination.BOTH
|
|
30
|
-
);
|
|
29
|
+
return (destination & ShaderDestination.VERTEX) !== 0;
|
|
31
30
|
};
|
|
32
31
|
|
|
33
32
|
/**
|
|
@@ -42,10 +41,52 @@ ShaderDestination.includesFragmentShader = function (destination) {
|
|
|
42
41
|
Check.typeOf.number("destination", destination);
|
|
43
42
|
//>>includeEnd('debug');
|
|
44
43
|
//
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
|
|
45
|
+
return (destination & ShaderDestination.FRAGMENT) !== 0;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Compute the union of multiple ShaderDestinations (e.g., VERTEX | FRAGMENT yields BOTH)
|
|
50
|
+
* @param {...ShaderDestination} destinations
|
|
51
|
+
* @returns {ShaderDestination} The union of the provided destinations
|
|
52
|
+
* @private
|
|
53
|
+
*/
|
|
54
|
+
ShaderDestination.union = function (...destinations) {
|
|
55
|
+
//>>includeStart('debug', pragmas.debug);
|
|
56
|
+
if (destinations.length === 0) {
|
|
57
|
+
throw new DeveloperError(
|
|
58
|
+
"ShaderDestination.union requires at least one destination.",
|
|
59
|
+
);
|
|
60
|
+
}
|
|
61
|
+
//>>includeEnd('debug');
|
|
62
|
+
|
|
63
|
+
let result = 0;
|
|
64
|
+
for (let i = 0; i < destinations.length; i++) {
|
|
65
|
+
result |= destinations[i];
|
|
66
|
+
}
|
|
67
|
+
return result;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Compute the intersection of multiple ShaderDestinations (e.g., VERTEX & FRAGMENT yields NONE)
|
|
72
|
+
* @param {...ShaderDestination} destinations
|
|
73
|
+
* @returns {ShaderDestination} The intersection of the provided destinations
|
|
74
|
+
* @private
|
|
75
|
+
*/
|
|
76
|
+
ShaderDestination.intersection = function (...destinations) {
|
|
77
|
+
//>>includeStart('debug', pragmas.debug);
|
|
78
|
+
if (destinations.length === 0) {
|
|
79
|
+
throw new DeveloperError(
|
|
80
|
+
"ShaderDestination.intersection requires at least one destination.",
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
//>>includeEnd('debug');
|
|
84
|
+
|
|
85
|
+
let result = destinations[0];
|
|
86
|
+
for (let i = 1; i < destinations.length; i++) {
|
|
87
|
+
result &= destinations[i];
|
|
88
|
+
}
|
|
89
|
+
return result;
|
|
49
90
|
};
|
|
50
91
|
|
|
51
92
|
export default Object.freeze(ShaderDestination);
|