@cesium/engine 0.1.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/ThirdParty/Workers/basis_transcoder.js +2233 -0
- package/Build/ThirdParty/Workers/draco_decoder_nodejs.js +1872 -0
- package/Build/ThirdParty/Workers/package.json +1 -0
- package/Build/ThirdParty/Workers/pako_deflate.min.js +589 -0
- package/Build/ThirdParty/Workers/pako_inflate.min.js +798 -0
- package/Build/ThirdParty/Workers/z-worker-pako.js +503 -0
- package/Build/ThirdParty/basis_transcoder.wasm +0 -0
- package/Build/ThirdParty/draco_decoder.wasm +0 -0
- package/Build/ThirdParty/google-earth-dbroot-parser.js +8019 -0
- package/Build/Widget/CesiumWidget.css +120 -0
- package/Build/Widget/lighter.css +13 -0
- package/Build/Workers/ArcType-ce2e50ab.js +37 -0
- package/Build/Workers/AttributeCompression-4589338a.js +716 -0
- package/Build/Workers/AxisAlignedBoundingBox-bfb1234f.js +258 -0
- package/Build/Workers/BoundingRectangle-7ffc2153.js +369 -0
- package/Build/Workers/BoxGeometry-93f344a3.js +884 -0
- package/Build/Workers/Check-666ab1a0.js +290 -0
- package/Build/Workers/Color-0c5aaf47.js +2262 -0
- package/Build/Workers/ComponentDatatype-f7b11d02.js +341 -0
- package/Build/Workers/CoplanarPolygonGeometryLibrary-6597982a.js +132 -0
- package/Build/Workers/CorridorGeometryLibrary-2119580e.js +498 -0
- package/Build/Workers/CylinderGeometry-f9503c6d.js +467 -0
- package/Build/Workers/CylinderGeometryLibrary-372c07d8.js +63 -0
- package/Build/Workers/EllipseGeometry-fedf72d5.js +1304 -0
- package/Build/Workers/EllipseGeometryLibrary-4ea68687.js +366 -0
- package/Build/Workers/EllipseOutlineGeometry-e2ae6a35.js +443 -0
- package/Build/Workers/EllipsoidGeodesic-16de63ea.js +520 -0
- package/Build/Workers/EllipsoidGeometry-95c0330e.js +637 -0
- package/Build/Workers/EllipsoidOutlineGeometry-d6d2ceec.js +454 -0
- package/Build/Workers/EllipsoidRhumbLine-ae5e65e0.js +741 -0
- package/Build/Workers/EllipsoidTangentPlane-bfc674bf.js +373 -0
- package/Build/Workers/EncodedCartesian3-f473ea18.js +171 -0
- package/Build/Workers/FrustumGeometry-3bf2e4eb.js +2512 -0
- package/Build/Workers/GeometryAttribute-df5f473e.js +619 -0
- package/Build/Workers/GeometryAttributes-f06a2792.js +91 -0
- package/Build/Workers/GeometryInstance-aa75b4cf.js +121 -0
- package/Build/Workers/GeometryOffsetAttribute-04332ce7.js +16 -0
- package/Build/Workers/GeometryPipeline-f0e46c42.js +3690 -0
- package/Build/Workers/IndexDatatype-a55ceaa1.js +200 -0
- package/Build/Workers/IntersectionTests-9de29d51.js +1836 -0
- package/Build/Workers/Math-2dbd6b93.js +1330 -0
- package/Build/Workers/Matrix2-ce637455.js +7084 -0
- package/Build/Workers/Matrix3-4f4df527.js +4282 -0
- package/Build/Workers/OrientedBoundingBox-d3ff3d4d.js +1257 -0
- package/Build/Workers/Plane-b81241c2.js +309 -0
- package/Build/Workers/PolygonGeometryLibrary-6f4937bb.js +1074 -0
- package/Build/Workers/PolygonPipeline-774a8aaf.js +1341 -0
- package/Build/Workers/PolylinePipeline-2e2b015c.js +573 -0
- package/Build/Workers/PolylineVolumeGeometryLibrary-7ee1d449.js +781 -0
- package/Build/Workers/PrimitivePipeline-a9b7aae0.js +966 -0
- package/Build/Workers/RectangleGeometryLibrary-9aa6c8f6.js +280 -0
- package/Build/Workers/RuntimeError-06c93819.js +68 -0
- package/Build/Workers/TerrainEncoding-b52dcfc5.js +1227 -0
- package/Build/Workers/Transforms-2f755df8.js +14683 -0
- package/Build/Workers/VertexFormat-6b480673.js +312 -0
- package/Build/Workers/WallGeometryLibrary-ab19a93d.js +211 -0
- package/Build/Workers/WebGLConstants-a8cc3e8c.js +620 -0
- package/Build/Workers/WebMercatorProjection-9f25de49.js +151 -0
- package/Build/Workers/arrayRemoveDuplicates-c2038105.js +129 -0
- package/Build/Workers/cesiumWorkerBootstrapper.js +1273 -0
- package/Build/Workers/combine-ca22a614.js +82 -0
- package/Build/Workers/combineGeometry.js +17 -0
- package/Build/Workers/createBoxGeometry.js +12 -0
- package/Build/Workers/createBoxOutlineGeometry.js +313 -0
- package/Build/Workers/createCircleGeometry.js +213 -0
- package/Build/Workers/createCircleOutlineGeometry.js +160 -0
- package/Build/Workers/createCoplanarPolygonGeometry.js +586 -0
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +236 -0
- package/Build/Workers/createCorridorGeometry.js +1407 -0
- package/Build/Workers/createCorridorOutlineGeometry.js +603 -0
- package/Build/Workers/createCylinderGeometry.js +12 -0
- package/Build/Workers/createCylinderOutlineGeometry.js +265 -0
- package/Build/Workers/createEllipseGeometry.js +14 -0
- package/Build/Workers/createEllipseOutlineGeometry.js +14 -0
- package/Build/Workers/createEllipsoidGeometry.js +12 -0
- package/Build/Workers/createEllipsoidOutlineGeometry.js +15 -0
- package/Build/Workers/createFrustumGeometry.js +12 -0
- package/Build/Workers/createFrustumOutlineGeometry.js +251 -0
- package/Build/Workers/createGeometry.js +55 -0
- package/Build/Workers/createGroundPolylineGeometry.js +2134 -0
- package/Build/Workers/createPlaneGeometry.js +250 -0
- package/Build/Workers/createPlaneOutlineGeometry.js +115 -0
- package/Build/Workers/createPolygonGeometry.js +1420 -0
- package/Build/Workers/createPolygonOutlineGeometry.js +683 -0
- package/Build/Workers/createPolylineGeometry.js +571 -0
- package/Build/Workers/createPolylineVolumeGeometry.js +411 -0
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +301 -0
- package/Build/Workers/createRectangleGeometry.js +1476 -0
- package/Build/Workers/createRectangleOutlineGeometry.js +535 -0
- package/Build/Workers/createSimplePolylineGeometry.js +458 -0
- package/Build/Workers/createSphereGeometry.js +123 -0
- package/Build/Workers/createSphereOutlineGeometry.js +126 -0
- package/Build/Workers/createTaskProcessorWorker.js +127 -0
- package/Build/Workers/createVectorTileClampedPolylines.js +535 -0
- package/Build/Workers/createVectorTileGeometries.js +445 -0
- package/Build/Workers/createVectorTilePoints.js +79 -0
- package/Build/Workers/createVectorTilePolygons.js +406 -0
- package/Build/Workers/createVectorTilePolylines.js +254 -0
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +640 -0
- package/Build/Workers/createVerticesFromHeightmap.js +2707 -0
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +994 -0
- package/Build/Workers/createWallGeometry.js +623 -0
- package/Build/Workers/createWallOutlineGeometry.js +432 -0
- package/Build/Workers/decodeDraco.js +381 -0
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +3668 -0
- package/Build/Workers/decodeI3S.js +1040 -0
- package/Build/Workers/defaultValue-0a909f67.js +51 -0
- package/Build/Workers/package.js +2 -0
- package/Build/Workers/transcodeKTX2.js +1516 -0
- package/Build/Workers/transferTypedArrayTest.js +18 -0
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +1023 -0
- package/LICENSE.md +933 -0
- package/README.md +58 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_0.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_1.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_10.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_11.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_12.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_13.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_14.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_15.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_16.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_17.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_18.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_19.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_2.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_20.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_21.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_22.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_23.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_24.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_25.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_26.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_27.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_3.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_4.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_5.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_6.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_7.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_8.json +1 -0
- package/Source/Assets/IAU2006_XYS/IAU2006_XYS_9.json +1 -0
- package/Source/Assets/Images/bing_maps_credit.png +0 -0
- package/Source/Assets/Images/cesium_credit.png +0 -0
- package/Source/Assets/Images/google_earth_credit.png +0 -0
- package/Source/Assets/Images/ion-credit.png +0 -0
- package/Source/Assets/Textures/LensFlare/DirtMask.jpg +0 -0
- package/Source/Assets/Textures/LensFlare/StarBurst.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/0/0/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/0/1/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/1/0/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/1/0/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/1/1/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/1/1/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/1/2/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/1/2/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/1/3/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/1/3/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/0/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/0/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/0/2.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/0/3.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/1/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/1/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/1/2.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/1/3.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/2/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/2/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/2/2.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/2/3.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/3/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/3/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/3/2.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/3/3.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/4/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/4/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/4/2.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/4/3.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/5/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/5/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/5/2.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/5/3.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/6/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/6/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/6/2.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/6/3.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/7/0.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/7/1.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/7/2.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/2/7/3.jpg +0 -0
- package/Source/Assets/Textures/NaturalEarthII/tilemapresource.xml +14 -0
- package/Source/Assets/Textures/SkyBox/tycho2t3_80_mx.jpg +0 -0
- package/Source/Assets/Textures/SkyBox/tycho2t3_80_my.jpg +0 -0
- package/Source/Assets/Textures/SkyBox/tycho2t3_80_mz.jpg +0 -0
- package/Source/Assets/Textures/SkyBox/tycho2t3_80_px.jpg +0 -0
- package/Source/Assets/Textures/SkyBox/tycho2t3_80_py.jpg +0 -0
- package/Source/Assets/Textures/SkyBox/tycho2t3_80_pz.jpg +0 -0
- package/Source/Assets/Textures/maki/airfield.png +0 -0
- package/Source/Assets/Textures/maki/airport.png +0 -0
- package/Source/Assets/Textures/maki/alcohol-shop.png +0 -0
- package/Source/Assets/Textures/maki/america-football.png +0 -0
- package/Source/Assets/Textures/maki/art-gallery.png +0 -0
- package/Source/Assets/Textures/maki/bakery.png +0 -0
- package/Source/Assets/Textures/maki/bank.png +0 -0
- package/Source/Assets/Textures/maki/bar.png +0 -0
- package/Source/Assets/Textures/maki/baseball.png +0 -0
- package/Source/Assets/Textures/maki/basketball.png +0 -0
- package/Source/Assets/Textures/maki/beer.png +0 -0
- package/Source/Assets/Textures/maki/bicycle.png +0 -0
- package/Source/Assets/Textures/maki/building.png +0 -0
- package/Source/Assets/Textures/maki/bus.png +0 -0
- package/Source/Assets/Textures/maki/cafe.png +0 -0
- package/Source/Assets/Textures/maki/camera.png +0 -0
- package/Source/Assets/Textures/maki/campsite.png +0 -0
- package/Source/Assets/Textures/maki/car.png +0 -0
- package/Source/Assets/Textures/maki/cemetery.png +0 -0
- package/Source/Assets/Textures/maki/cesium.png +0 -0
- package/Source/Assets/Textures/maki/chemist.png +0 -0
- package/Source/Assets/Textures/maki/cinema.png +0 -0
- package/Source/Assets/Textures/maki/circle-stroked.png +0 -0
- package/Source/Assets/Textures/maki/circle.png +0 -0
- package/Source/Assets/Textures/maki/city.png +0 -0
- package/Source/Assets/Textures/maki/clothing-store.png +0 -0
- package/Source/Assets/Textures/maki/college.png +0 -0
- package/Source/Assets/Textures/maki/commercial.png +0 -0
- package/Source/Assets/Textures/maki/cricket.png +0 -0
- package/Source/Assets/Textures/maki/cross.png +0 -0
- package/Source/Assets/Textures/maki/dam.png +0 -0
- package/Source/Assets/Textures/maki/danger.png +0 -0
- package/Source/Assets/Textures/maki/disability.png +0 -0
- package/Source/Assets/Textures/maki/dog-park.png +0 -0
- package/Source/Assets/Textures/maki/embassy.png +0 -0
- package/Source/Assets/Textures/maki/emergency-telephone.png +0 -0
- package/Source/Assets/Textures/maki/entrance.png +0 -0
- package/Source/Assets/Textures/maki/farm.png +0 -0
- package/Source/Assets/Textures/maki/fast-food.png +0 -0
- package/Source/Assets/Textures/maki/ferry.png +0 -0
- package/Source/Assets/Textures/maki/fire-station.png +0 -0
- package/Source/Assets/Textures/maki/fuel.png +0 -0
- package/Source/Assets/Textures/maki/garden.png +0 -0
- package/Source/Assets/Textures/maki/gift.png +0 -0
- package/Source/Assets/Textures/maki/golf.png +0 -0
- package/Source/Assets/Textures/maki/grocery.png +0 -0
- package/Source/Assets/Textures/maki/hairdresser.png +0 -0
- package/Source/Assets/Textures/maki/harbor.png +0 -0
- package/Source/Assets/Textures/maki/heart.png +0 -0
- package/Source/Assets/Textures/maki/heliport.png +0 -0
- package/Source/Assets/Textures/maki/hospital.png +0 -0
- package/Source/Assets/Textures/maki/ice-cream.png +0 -0
- package/Source/Assets/Textures/maki/industrial.png +0 -0
- package/Source/Assets/Textures/maki/land-use.png +0 -0
- package/Source/Assets/Textures/maki/laundry.png +0 -0
- package/Source/Assets/Textures/maki/library.png +0 -0
- package/Source/Assets/Textures/maki/lighthouse.png +0 -0
- package/Source/Assets/Textures/maki/lodging.png +0 -0
- package/Source/Assets/Textures/maki/logging.png +0 -0
- package/Source/Assets/Textures/maki/london-underground.png +0 -0
- package/Source/Assets/Textures/maki/marker-stroked.png +0 -0
- package/Source/Assets/Textures/maki/marker.png +0 -0
- package/Source/Assets/Textures/maki/minefield.png +0 -0
- package/Source/Assets/Textures/maki/mobilephone.png +0 -0
- package/Source/Assets/Textures/maki/monument.png +0 -0
- package/Source/Assets/Textures/maki/museum.png +0 -0
- package/Source/Assets/Textures/maki/music.png +0 -0
- package/Source/Assets/Textures/maki/oil-well.png +0 -0
- package/Source/Assets/Textures/maki/park.png +0 -0
- package/Source/Assets/Textures/maki/park2.png +0 -0
- package/Source/Assets/Textures/maki/parking-garage.png +0 -0
- package/Source/Assets/Textures/maki/parking.png +0 -0
- package/Source/Assets/Textures/maki/pharmacy.png +0 -0
- package/Source/Assets/Textures/maki/pitch.png +0 -0
- package/Source/Assets/Textures/maki/place-of-worship.png +0 -0
- package/Source/Assets/Textures/maki/playground.png +0 -0
- package/Source/Assets/Textures/maki/police.png +0 -0
- package/Source/Assets/Textures/maki/polling-place.png +0 -0
- package/Source/Assets/Textures/maki/post.png +0 -0
- package/Source/Assets/Textures/maki/prison.png +0 -0
- package/Source/Assets/Textures/maki/rail-above.png +0 -0
- package/Source/Assets/Textures/maki/rail-light.png +0 -0
- package/Source/Assets/Textures/maki/rail-metro.png +0 -0
- package/Source/Assets/Textures/maki/rail-underground.png +0 -0
- package/Source/Assets/Textures/maki/rail.png +0 -0
- package/Source/Assets/Textures/maki/religious-christian.png +0 -0
- package/Source/Assets/Textures/maki/religious-jewish.png +0 -0
- package/Source/Assets/Textures/maki/religious-muslim.png +0 -0
- package/Source/Assets/Textures/maki/restaurant.png +0 -0
- package/Source/Assets/Textures/maki/roadblock.png +0 -0
- package/Source/Assets/Textures/maki/rocket.png +0 -0
- package/Source/Assets/Textures/maki/school.png +0 -0
- package/Source/Assets/Textures/maki/scooter.png +0 -0
- package/Source/Assets/Textures/maki/shop.png +0 -0
- package/Source/Assets/Textures/maki/skiing.png +0 -0
- package/Source/Assets/Textures/maki/slaughterhouse.png +0 -0
- package/Source/Assets/Textures/maki/soccer.png +0 -0
- package/Source/Assets/Textures/maki/square-stroked.png +0 -0
- package/Source/Assets/Textures/maki/square.png +0 -0
- package/Source/Assets/Textures/maki/star-stroked.png +0 -0
- package/Source/Assets/Textures/maki/star.png +0 -0
- package/Source/Assets/Textures/maki/suitcase.png +0 -0
- package/Source/Assets/Textures/maki/swimming.png +0 -0
- package/Source/Assets/Textures/maki/telephone.png +0 -0
- package/Source/Assets/Textures/maki/tennis.png +0 -0
- package/Source/Assets/Textures/maki/theatre.png +0 -0
- package/Source/Assets/Textures/maki/toilets.png +0 -0
- package/Source/Assets/Textures/maki/town-hall.png +0 -0
- package/Source/Assets/Textures/maki/town.png +0 -0
- package/Source/Assets/Textures/maki/triangle-stroked.png +0 -0
- package/Source/Assets/Textures/maki/triangle.png +0 -0
- package/Source/Assets/Textures/maki/village.png +0 -0
- package/Source/Assets/Textures/maki/warehouse.png +0 -0
- package/Source/Assets/Textures/maki/waste-basket.png +0 -0
- package/Source/Assets/Textures/maki/water.png +0 -0
- package/Source/Assets/Textures/maki/wetland.png +0 -0
- package/Source/Assets/Textures/maki/zoo.png +0 -0
- package/Source/Assets/Textures/moonSmall.jpg +0 -0
- package/Source/Assets/Textures/pin.svg +1 -0
- package/Source/Assets/Textures/waterNormals.jpg +0 -0
- package/Source/Assets/Textures/waterNormalsSmall.jpg +0 -0
- package/Source/Assets/approximateTerrainHeights.json +1 -0
- package/Source/Core/ApproximateTerrainHeights.js +256 -0
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +728 -0
- package/Source/Core/ArcType.js +31 -0
- package/Source/Core/ArticulationStageType.js +23 -0
- package/Source/Core/AssociativeArray.js +127 -0
- package/Source/Core/AttributeCompression.js +527 -0
- package/Source/Core/AxisAlignedBoundingBox.js +259 -0
- package/Source/Core/BingMapsGeocoderService.js +107 -0
- package/Source/Core/BoundingRectangle.js +373 -0
- package/Source/Core/BoundingSphere.js +1505 -0
- package/Source/Core/BoxGeometry.js +893 -0
- package/Source/Core/BoxOutlineGeometry.js +314 -0
- package/Source/Core/Cartesian2.js +824 -0
- package/Source/Core/Cartesian3.js +1218 -0
- package/Source/Core/Cartesian4.js +980 -0
- package/Source/Core/Cartographic.js +302 -0
- package/Source/Core/CartographicGeocoderService.js +58 -0
- package/Source/Core/CatmullRomSpline.js +324 -0
- package/Source/Core/CesiumTerrainProvider.js +1318 -0
- package/Source/Core/Check.js +213 -0
- package/Source/Core/CircleGeometry.js +203 -0
- package/Source/Core/CircleOutlineGeometry.js +149 -0
- package/Source/Core/Clock.js +319 -0
- package/Source/Core/ClockRange.js +39 -0
- package/Source/Core/ClockStep.js +38 -0
- package/Source/Core/Color.js +2263 -0
- package/Source/Core/ColorGeometryInstanceAttribute.js +182 -0
- package/Source/Core/ComponentDatatype.js +340 -0
- package/Source/Core/CompressedTextureBuffer.js +114 -0
- package/Source/Core/ConstantSpline.js +119 -0
- package/Source/Core/CoplanarPolygonGeometry.js +599 -0
- package/Source/Core/CoplanarPolygonGeometryLibrary.js +132 -0
- package/Source/Core/CoplanarPolygonOutlineGeometry.js +237 -0
- package/Source/Core/CornerType.js +37 -0
- package/Source/Core/CorridorGeometry.js +1416 -0
- package/Source/Core/CorridorGeometryLibrary.js +501 -0
- package/Source/Core/CorridorOutlineGeometry.js +604 -0
- package/Source/Core/Credit.js +166 -0
- package/Source/Core/CubicRealPolynomial.js +238 -0
- package/Source/Core/CullingVolume.js +217 -0
- package/Source/Core/CustomHeightmapTerrainProvider.js +299 -0
- package/Source/Core/CylinderGeometry.js +479 -0
- package/Source/Core/CylinderGeometryLibrary.js +59 -0
- package/Source/Core/CylinderOutlineGeometry.js +269 -0
- package/Source/Core/DefaultProxy.js +26 -0
- package/Source/Core/DeveloperError.js +75 -0
- package/Source/Core/DistanceDisplayCondition.js +172 -0
- package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +181 -0
- package/Source/Core/DoubleEndedPriorityQueue.js +405 -0
- package/Source/Core/DoublyLinkedList.js +112 -0
- package/Source/Core/EarthOrientationParameters.js +431 -0
- package/Source/Core/EarthOrientationParametersSample.js +52 -0
- package/Source/Core/EasingFunction.js +257 -0
- package/Source/Core/EllipseGeometry.js +1325 -0
- package/Source/Core/EllipseGeometryLibrary.js +365 -0
- package/Source/Core/EllipseOutlineGeometry.js +454 -0
- package/Source/Core/Ellipsoid.js +804 -0
- package/Source/Core/EllipsoidGeodesic.js +523 -0
- package/Source/Core/EllipsoidGeometry.js +649 -0
- package/Source/Core/EllipsoidOutlineGeometry.js +464 -0
- package/Source/Core/EllipsoidRhumbLine.js +745 -0
- package/Source/Core/EllipsoidTangentPlane.js +383 -0
- package/Source/Core/EllipsoidTerrainProvider.js +230 -0
- package/Source/Core/EllipsoidalOccluder.js +559 -0
- package/Source/Core/EncodedCartesian3.js +170 -0
- package/Source/Core/Event.js +164 -0
- package/Source/Core/EventHelper.js +74 -0
- package/Source/Core/ExtrapolationType.js +34 -0
- package/Source/Core/FeatureDetection.js +411 -0
- package/Source/Core/FrustumGeometry.js +583 -0
- package/Source/Core/FrustumOutlineGeometry.js +254 -0
- package/Source/Core/Fullscreen.js +249 -0
- package/Source/Core/GeocodeType.js +24 -0
- package/Source/Core/GeocoderService.js +29 -0
- package/Source/Core/GeographicProjection.js +105 -0
- package/Source/Core/GeographicTilingScheme.js +251 -0
- package/Source/Core/Geometry.js +376 -0
- package/Source/Core/GeometryAttribute.js +138 -0
- package/Source/Core/GeometryAttributes.js +88 -0
- package/Source/Core/GeometryFactory.js +25 -0
- package/Source/Core/GeometryInstance.js +121 -0
- package/Source/Core/GeometryInstanceAttribute.js +138 -0
- package/Source/Core/GeometryOffsetAttribute.js +10 -0
- package/Source/Core/GeometryPipeline.js +3296 -0
- package/Source/Core/GeometryType.js +10 -0
- package/Source/Core/GoogleEarthEnterpriseMetadata.js +597 -0
- package/Source/Core/GoogleEarthEnterpriseTerrainData.js +607 -0
- package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +641 -0
- package/Source/Core/GoogleEarthEnterpriseTileInformation.js +136 -0
- package/Source/Core/GregorianDate.js +69 -0
- package/Source/Core/GroundPolylineGeometry.js +1658 -0
- package/Source/Core/HeadingPitchRange.js +60 -0
- package/Source/Core/HeadingPitchRoll.js +236 -0
- package/Source/Core/Heap.js +234 -0
- package/Source/Core/HeightmapEncoding.js +25 -0
- package/Source/Core/HeightmapTerrainData.js +925 -0
- package/Source/Core/HeightmapTessellator.js +535 -0
- package/Source/Core/HermitePolynomialApproximation.js +342 -0
- package/Source/Core/HermiteSpline.js +620 -0
- package/Source/Core/HilbertOrder.js +118 -0
- package/Source/Core/Iau2000Orientation.js +167 -0
- package/Source/Core/Iau2006XysData.js +277 -0
- package/Source/Core/Iau2006XysSample.js +32 -0
- package/Source/Core/IauOrientationAxes.js +105 -0
- package/Source/Core/IauOrientationParameters.js +54 -0
- package/Source/Core/IndexDatatype.js +199 -0
- package/Source/Core/InterpolationAlgorithm.js +65 -0
- package/Source/Core/InterpolationType.js +14 -0
- package/Source/Core/Intersect.js +34 -0
- package/Source/Core/IntersectionTests.js +1047 -0
- package/Source/Core/Intersections2D.js +358 -0
- package/Source/Core/Interval.js +25 -0
- package/Source/Core/Ion.js +57 -0
- package/Source/Core/IonGeocoderService.js +64 -0
- package/Source/Core/IonResource.js +270 -0
- package/Source/Core/Iso8601.js +54 -0
- package/Source/Core/JulianDate.js +1233 -0
- package/Source/Core/KTX2Transcoder.js +95 -0
- package/Source/Core/KeyboardEventModifier.js +32 -0
- package/Source/Core/LagrangePolynomialApproximation.js +71 -0
- package/Source/Core/LeapSecond.js +24 -0
- package/Source/Core/LinearApproximation.js +83 -0
- package/Source/Core/LinearSpline.js +166 -0
- package/Source/Core/ManagedArray.js +163 -0
- package/Source/Core/MapProjection.js +62 -0
- package/Source/Core/Math.js +1119 -0
- package/Source/Core/Matrix2.js +1092 -0
- package/Source/Core/Matrix3.js +1838 -0
- package/Source/Core/Matrix4.js +3232 -0
- package/Source/Core/MorphWeightSpline.js +161 -0
- package/Source/Core/MortonOrder.js +214 -0
- package/Source/Core/NearFarScalar.js +174 -0
- package/Source/Core/Occluder.js +732 -0
- package/Source/Core/OffsetGeometryInstanceAttribute.js +126 -0
- package/Source/Core/OpenCageGeocoderService.js +118 -0
- package/Source/Core/OrientedBoundingBox.js +1270 -0
- package/Source/Core/OrthographicFrustum.js +338 -0
- package/Source/Core/OrthographicOffCenterFrustum.js +463 -0
- package/Source/Core/Packable.js +40 -0
- package/Source/Core/PackableForInterpolation.js +43 -0
- package/Source/Core/PeliasGeocoderService.js +93 -0
- package/Source/Core/PerspectiveFrustum.js +439 -0
- package/Source/Core/PerspectiveOffCenterFrustum.js +523 -0
- package/Source/Core/PinBuilder.js +234 -0
- package/Source/Core/PixelFormat.js +493 -0
- package/Source/Core/Plane.js +312 -0
- package/Source/Core/PlaneGeometry.js +250 -0
- package/Source/Core/PlaneOutlineGeometry.js +113 -0
- package/Source/Core/PolygonGeometry.js +1436 -0
- package/Source/Core/PolygonGeometryLibrary.js +981 -0
- package/Source/Core/PolygonHierarchy.js +25 -0
- package/Source/Core/PolygonOutlineGeometry.js +692 -0
- package/Source/Core/PolygonPipeline.js +633 -0
- package/Source/Core/PolylineGeometry.js +578 -0
- package/Source/Core/PolylinePipeline.js +580 -0
- package/Source/Core/PolylineVolumeGeometry.js +417 -0
- package/Source/Core/PolylineVolumeGeometryLibrary.js +701 -0
- package/Source/Core/PolylineVolumeOutlineGeometry.js +299 -0
- package/Source/Core/PrimitiveType.js +107 -0
- package/Source/Core/Proxy.js +24 -0
- package/Source/Core/QuadraticRealPolynomial.js +147 -0
- package/Source/Core/QuantizedMeshTerrainData.js +772 -0
- package/Source/Core/QuarticRealPolynomial.js +342 -0
- package/Source/Core/Quaternion.js +1142 -0
- package/Source/Core/QuaternionSpline.js +155 -0
- package/Source/Core/Queue.js +126 -0
- package/Source/Core/Ray.js +80 -0
- package/Source/Core/Rectangle.js +982 -0
- package/Source/Core/RectangleCollisionChecker.js +95 -0
- package/Source/Core/RectangleGeometry.js +1489 -0
- package/Source/Core/RectangleGeometryLibrary.js +283 -0
- package/Source/Core/RectangleOutlineGeometry.js +537 -0
- package/Source/Core/ReferenceFrame.js +23 -0
- package/Source/Core/Request.js +192 -0
- package/Source/Core/RequestErrorEvent.js +58 -0
- package/Source/Core/RequestScheduler.js +520 -0
- package/Source/Core/RequestState.js +55 -0
- package/Source/Core/RequestType.js +39 -0
- package/Source/Core/Resource.js +2307 -0
- package/Source/Core/RuntimeError.js +65 -0
- package/Source/Core/S2Cell.js +811 -0
- package/Source/Core/ScreenSpaceEventHandler.js +1140 -0
- package/Source/Core/ScreenSpaceEventType.js +127 -0
- package/Source/Core/ShowGeometryInstanceAttribute.js +123 -0
- package/Source/Core/Simon1994PlanetaryPositions.js +682 -0
- package/Source/Core/SimplePolylineGeometry.js +457 -0
- package/Source/Core/SphereGeometry.js +118 -0
- package/Source/Core/SphereOutlineGeometry.js +120 -0
- package/Source/Core/Spherical.js +184 -0
- package/Source/Core/Spline.js +189 -0
- package/Source/Core/SteppedSpline.js +160 -0
- package/Source/Core/TaskProcessor.js +377 -0
- package/Source/Core/TerrainData.js +125 -0
- package/Source/Core/TerrainEncoding.js +607 -0
- package/Source/Core/TerrainExaggeration.js +49 -0
- package/Source/Core/TerrainMesh.js +156 -0
- package/Source/Core/TerrainProvider.js +461 -0
- package/Source/Core/TerrainQuantization.js +25 -0
- package/Source/Core/TileAvailability.js +564 -0
- package/Source/Core/TileEdge.js +14 -0
- package/Source/Core/TileProviderError.js +171 -0
- package/Source/Core/TilingScheme.js +132 -0
- package/Source/Core/TimeConstants.js +83 -0
- package/Source/Core/TimeInterval.js +438 -0
- package/Source/Core/TimeIntervalCollection.js +1136 -0
- package/Source/Core/TimeStandard.js +30 -0
- package/Source/Core/Tipsify.js +314 -0
- package/Source/Core/Transforms.js +1132 -0
- package/Source/Core/TranslationRotationScale.js +60 -0
- package/Source/Core/TridiagonalSystemSolver.js +113 -0
- package/Source/Core/TrustedServers.js +146 -0
- package/Source/Core/VRTheWorldTerrainProvider.js +450 -0
- package/Source/Core/VertexFormat.js +311 -0
- package/Source/Core/VideoSynchronizer.js +222 -0
- package/Source/Core/Visibility.js +34 -0
- package/Source/Core/VulkanConstants.js +286 -0
- package/Source/Core/WallGeometry.js +626 -0
- package/Source/Core/WallGeometryLibrary.js +212 -0
- package/Source/Core/WallOutlineGeometry.js +434 -0
- package/Source/Core/WebGLConstants.js +614 -0
- package/Source/Core/WebMercatorProjection.js +154 -0
- package/Source/Core/WebMercatorTilingScheme.js +297 -0
- package/Source/Core/WindingOrder.js +36 -0
- package/Source/Core/WireframeIndexGenerator.js +238 -0
- package/Source/Core/appendForwardSlash.js +10 -0
- package/Source/Core/arrayRemoveDuplicates.js +130 -0
- package/Source/Core/barycentricCoordinates.js +109 -0
- package/Source/Core/binarySearch.js +67 -0
- package/Source/Core/buildModuleUrl.js +151 -0
- package/Source/Core/cancelAnimationFrame.js +53 -0
- package/Source/Core/clone.js +32 -0
- package/Source/Core/combine.js +80 -0
- package/Source/Core/createGuid.js +22 -0
- package/Source/Core/createWorldTerrain.js +42 -0
- package/Source/Core/decodeGoogleEarthEnterpriseData.js +93 -0
- package/Source/Core/decodeVectorPolylinePositions.js +51 -0
- package/Source/Core/defaultValue.js +29 -0
- package/Source/Core/defer.js +44 -0
- package/Source/Core/defined.js +17 -0
- package/Source/Core/deprecationWarning.js +53 -0
- package/Source/Core/destroyObject.js +57 -0
- package/Source/Core/formatError.js +30 -0
- package/Source/Core/getAbsoluteUri.js +47 -0
- package/Source/Core/getBaseUri.js +47 -0
- package/Source/Core/getExtensionFromUri.js +38 -0
- package/Source/Core/getFilenameFromUri.js +32 -0
- package/Source/Core/getImageFromTypedArray.js +24 -0
- package/Source/Core/getImagePixels.js +43 -0
- package/Source/Core/getJsonFromTypedArray.js +21 -0
- package/Source/Core/getMagic.js +15 -0
- package/Source/Core/getStringFromTypedArray.js +166 -0
- package/Source/Core/getTimestamp.js +26 -0
- package/Source/Core/isBitSet.js +7 -0
- package/Source/Core/isBlobUri.js +22 -0
- package/Source/Core/isCrossOriginUrl.js +30 -0
- package/Source/Core/isDataUri.js +22 -0
- package/Source/Core/isLeapYear.js +23 -0
- package/Source/Core/loadAndExecuteScript.js +27 -0
- package/Source/Core/loadImageFromTypedArray.js +64 -0
- package/Source/Core/loadKTX2.js +104 -0
- package/Source/Core/mergeSort.js +111 -0
- package/Source/Core/objectToQuery.js +57 -0
- package/Source/Core/oneTimeWarning.js +52 -0
- package/Source/Core/parseResponseHeaders.js +37 -0
- package/Source/Core/pointInsideTriangle.js +39 -0
- package/Source/Core/queryToObject.js +60 -0
- package/Source/Core/requestAnimationFrame.js +83 -0
- package/Source/Core/resizeImageToNextPowerOfTwo.js +31 -0
- package/Source/Core/sampleTerrain.js +257 -0
- package/Source/Core/sampleTerrainMostDetailed.js +117 -0
- package/Source/Core/scaleToGeodeticSurface.js +147 -0
- package/Source/Core/subdivideArray.js +35 -0
- package/Source/Core/webGLConstantToGlslType.js +25 -0
- package/Source/Core/wrapFunction.js +26 -0
- package/Source/Core/writeTextToCanvas.js +222 -0
- package/Source/DataSources/BillboardGraphics.js +429 -0
- package/Source/DataSources/BillboardVisualizer.js +341 -0
- package/Source/DataSources/BoundingSphereState.js +26 -0
- package/Source/DataSources/BoxGeometryUpdater.js +325 -0
- package/Source/DataSources/BoxGraphics.js +213 -0
- package/Source/DataSources/CallbackProperty.js +111 -0
- package/Source/DataSources/Cesium3DTilesetGraphics.js +113 -0
- package/Source/DataSources/Cesium3DTilesetVisualizer.js +249 -0
- package/Source/DataSources/CheckerboardMaterialProperty.js +151 -0
- package/Source/DataSources/ColorMaterialProperty.js +106 -0
- package/Source/DataSources/CompositeEntityCollection.js +592 -0
- package/Source/DataSources/CompositeMaterialProperty.js +129 -0
- package/Source/DataSources/CompositePositionProperty.js +149 -0
- package/Source/DataSources/CompositeProperty.js +154 -0
- package/Source/DataSources/ConstantPositionProperty.js +146 -0
- package/Source/DataSources/ConstantProperty.js +116 -0
- package/Source/DataSources/CorridorGeometryUpdater.js +404 -0
- package/Source/DataSources/CorridorGraphics.js +328 -0
- package/Source/DataSources/CustomDataSource.js +173 -0
- package/Source/DataSources/CylinderGeometryUpdater.js +373 -0
- package/Source/DataSources/CylinderGraphics.js +265 -0
- package/Source/DataSources/CzmlDataSource.js +5141 -0
- package/Source/DataSources/DataSource.js +121 -0
- package/Source/DataSources/DataSourceClock.js +165 -0
- package/Source/DataSources/DataSourceCollection.js +336 -0
- package/Source/DataSources/DataSourceDisplay.js +510 -0
- package/Source/DataSources/DynamicGeometryBatch.js +56 -0
- package/Source/DataSources/DynamicGeometryUpdater.js +274 -0
- package/Source/DataSources/EllipseGeometryUpdater.js +430 -0
- package/Source/DataSources/EllipseGraphics.js +357 -0
- package/Source/DataSources/EllipsoidGeometryUpdater.js +710 -0
- package/Source/DataSources/EllipsoidGraphics.js +323 -0
- package/Source/DataSources/Entity.js +752 -0
- package/Source/DataSources/EntityCluster.js +997 -0
- package/Source/DataSources/EntityCollection.js +440 -0
- package/Source/DataSources/EntityView.js +426 -0
- package/Source/DataSources/GeoJsonDataSource.js +1064 -0
- package/Source/DataSources/GeometryUpdater.js +545 -0
- package/Source/DataSources/GeometryVisualizer.js +620 -0
- package/Source/DataSources/GpxDataSource.js +1023 -0
- package/Source/DataSources/GridMaterialProperty.js +198 -0
- package/Source/DataSources/GroundGeometryUpdater.js +232 -0
- package/Source/DataSources/ImageMaterialProperty.js +166 -0
- package/Source/DataSources/KmlCamera.js +13 -0
- package/Source/DataSources/KmlDataSource.js +4326 -0
- package/Source/DataSources/KmlLookAt.js +12 -0
- package/Source/DataSources/KmlTour.js +176 -0
- package/Source/DataSources/KmlTourFlyTo.js +109 -0
- package/Source/DataSources/KmlTourWait.js +52 -0
- package/Source/DataSources/LabelGraphics.js +430 -0
- package/Source/DataSources/LabelVisualizer.js +360 -0
- package/Source/DataSources/MaterialProperty.js +105 -0
- package/Source/DataSources/ModelGraphics.js +447 -0
- package/Source/DataSources/ModelVisualizer.js +548 -0
- package/Source/DataSources/NodeTransformationProperty.js +144 -0
- package/Source/DataSources/PathGraphics.js +163 -0
- package/Source/DataSources/PathVisualizer.js +759 -0
- package/Source/DataSources/PlaneGeometryUpdater.js +384 -0
- package/Source/DataSources/PlaneGraphics.js +210 -0
- package/Source/DataSources/PointGraphics.js +221 -0
- package/Source/DataSources/PointVisualizer.js +426 -0
- package/Source/DataSources/PolygonGeometryUpdater.js +575 -0
- package/Source/DataSources/PolygonGraphics.js +400 -0
- package/Source/DataSources/PolylineArrowMaterialProperty.js +104 -0
- package/Source/DataSources/PolylineDashMaterialProperty.js +168 -0
- package/Source/DataSources/PolylineGeometryUpdater.js +886 -0
- package/Source/DataSources/PolylineGlowMaterialProperty.js +146 -0
- package/Source/DataSources/PolylineGraphics.js +248 -0
- package/Source/DataSources/PolylineOutlineMaterialProperty.js +152 -0
- package/Source/DataSources/PolylineVisualizer.js +414 -0
- package/Source/DataSources/PolylineVolumeGeometryUpdater.js +304 -0
- package/Source/DataSources/PolylineVolumeGraphics.js +237 -0
- package/Source/DataSources/PositionProperty.js +133 -0
- package/Source/DataSources/PositionPropertyArray.js +187 -0
- package/Source/DataSources/Property.js +138 -0
- package/Source/DataSources/PropertyArray.js +147 -0
- package/Source/DataSources/PropertyBag.js +275 -0
- package/Source/DataSources/RectangleGeometryUpdater.js +422 -0
- package/Source/DataSources/RectangleGraphics.js +329 -0
- package/Source/DataSources/ReferenceProperty.js +365 -0
- package/Source/DataSources/Rotation.js +156 -0
- package/Source/DataSources/SampledPositionProperty.js +325 -0
- package/Source/DataSources/SampledProperty.js +834 -0
- package/Source/DataSources/ScaledPositionProperty.js +97 -0
- package/Source/DataSources/StaticGeometryColorBatch.js +570 -0
- package/Source/DataSources/StaticGeometryPerMaterialBatch.js +488 -0
- package/Source/DataSources/StaticGroundGeometryColorBatch.js +395 -0
- package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +426 -0
- package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +434 -0
- package/Source/DataSources/StaticOutlineGeometryBatch.js +466 -0
- package/Source/DataSources/StripeMaterialProperty.js +187 -0
- package/Source/DataSources/StripeOrientation.js +19 -0
- package/Source/DataSources/TerrainOffsetProperty.js +246 -0
- package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +152 -0
- package/Source/DataSources/TimeIntervalCollectionProperty.js +136 -0
- package/Source/DataSources/VelocityOrientationProperty.js +154 -0
- package/Source/DataSources/VelocityVectorProperty.js +216 -0
- package/Source/DataSources/Visualizer.js +61 -0
- package/Source/DataSources/WallGeometryUpdater.js +275 -0
- package/Source/DataSources/WallGraphics.js +244 -0
- package/Source/DataSources/createMaterialPropertyDescriptor.js +35 -0
- package/Source/DataSources/createPropertyDescriptor.js +72 -0
- package/Source/DataSources/createRawPropertyDescriptor.js +13 -0
- package/Source/DataSources/exportKml.js +1519 -0
- package/Source/DataSources/getElement.js +26 -0
- package/Source/DataSources/heightReferenceOnEntityPropertyChanged.js +47 -0
- package/Source/Renderer/AutomaticUniforms.js +1625 -0
- package/Source/Renderer/Buffer.js +420 -0
- package/Source/Renderer/BufferUsage.js +19 -0
- package/Source/Renderer/ClearCommand.js +102 -0
- package/Source/Renderer/ComputeCommand.js +119 -0
- package/Source/Renderer/ComputeEngine.js +135 -0
- package/Source/Renderer/Context.js +1601 -0
- package/Source/Renderer/ContextLimits.js +297 -0
- package/Source/Renderer/CubeMap.js +631 -0
- package/Source/Renderer/CubeMapFace.js +361 -0
- package/Source/Renderer/DrawCommand.js +610 -0
- package/Source/Renderer/Framebuffer.js +448 -0
- package/Source/Renderer/FramebufferManager.js +497 -0
- package/Source/Renderer/MipmapHint.js +19 -0
- package/Source/Renderer/MultisampleFramebuffer.js +115 -0
- package/Source/Renderer/Pass.js +26 -0
- package/Source/Renderer/PassState.js +57 -0
- package/Source/Renderer/PixelDatatype.js +98 -0
- package/Source/Renderer/RenderState.js +996 -0
- package/Source/Renderer/Renderbuffer.js +103 -0
- package/Source/Renderer/RenderbufferFormat.js +42 -0
- package/Source/Renderer/Sampler.js +109 -0
- package/Source/Renderer/ShaderBuilder.js +593 -0
- package/Source/Renderer/ShaderCache.js +291 -0
- package/Source/Renderer/ShaderDestination.js +51 -0
- package/Source/Renderer/ShaderFunction.js +66 -0
- package/Source/Renderer/ShaderProgram.js +612 -0
- package/Source/Renderer/ShaderSource.js +519 -0
- package/Source/Renderer/ShaderStruct.js +55 -0
- package/Source/Renderer/Texture.js +1035 -0
- package/Source/Renderer/TextureCache.js +81 -0
- package/Source/Renderer/TextureMagnificationFilter.js +41 -0
- package/Source/Renderer/TextureMinificationFilter.js +94 -0
- package/Source/Renderer/TextureWrap.js +19 -0
- package/Source/Renderer/UniformState.js +1710 -0
- package/Source/Renderer/VertexArray.js +853 -0
- package/Source/Renderer/VertexArrayFacade.js +514 -0
- package/Source/Renderer/createUniform.js +419 -0
- package/Source/Renderer/createUniformArray.js +637 -0
- package/Source/Renderer/freezeRenderState.js +30 -0
- package/Source/Renderer/loadCubeMap.js +93 -0
- package/Source/Renderer/modernizeShader.js +242 -0
- package/Source/Scene/AlphaMode.js +33 -0
- package/Source/Scene/Appearance.js +204 -0
- package/Source/Scene/ArcGisMapServerImageryProvider.js +905 -0
- package/Source/Scene/AttributeType.js +200 -0
- package/Source/Scene/AutoExposure.js +387 -0
- package/Source/Scene/Axis.js +111 -0
- package/Source/Scene/B3dmParser.js +174 -0
- package/Source/Scene/BatchTable.js +636 -0
- package/Source/Scene/BatchTableHierarchy.js +556 -0
- package/Source/Scene/BatchTexture.js +574 -0
- package/Source/Scene/Billboard.js +1552 -0
- package/Source/Scene/BillboardCollection.js +2417 -0
- package/Source/Scene/BingMapsImageryProvider.js +855 -0
- package/Source/Scene/BingMapsStyle.js +93 -0
- package/Source/Scene/BlendEquation.js +53 -0
- package/Source/Scene/BlendFunction.js +129 -0
- package/Source/Scene/BlendOption.js +28 -0
- package/Source/Scene/BlendingState.js +73 -0
- package/Source/Scene/BoxEmitter.js +75 -0
- package/Source/Scene/BrdfLutGenerator.js +75 -0
- package/Source/Scene/BufferLoader.js +146 -0
- package/Source/Scene/Camera.js +3951 -0
- package/Source/Scene/CameraEventAggregator.js +565 -0
- package/Source/Scene/CameraEventType.js +47 -0
- package/Source/Scene/CameraFlightPath.js +576 -0
- package/Source/Scene/Cesium3DContentGroup.js +44 -0
- package/Source/Scene/Cesium3DTile.js +2115 -0
- package/Source/Scene/Cesium3DTileBatchTable.js +1176 -0
- package/Source/Scene/Cesium3DTileColorBlendMode.js +52 -0
- package/Source/Scene/Cesium3DTileContent.js +397 -0
- package/Source/Scene/Cesium3DTileContentFactory.js +104 -0
- package/Source/Scene/Cesium3DTileContentState.js +12 -0
- package/Source/Scene/Cesium3DTileContentType.js +160 -0
- package/Source/Scene/Cesium3DTileFeature.js +444 -0
- package/Source/Scene/Cesium3DTileFeatureTable.js +132 -0
- package/Source/Scene/Cesium3DTileOptimizationHint.js +13 -0
- package/Source/Scene/Cesium3DTileOptimizations.js +115 -0
- package/Source/Scene/Cesium3DTilePass.js +82 -0
- package/Source/Scene/Cesium3DTilePassState.js +52 -0
- package/Source/Scene/Cesium3DTilePointFeature.js +864 -0
- package/Source/Scene/Cesium3DTileRefine.js +29 -0
- package/Source/Scene/Cesium3DTileStyle.js +1475 -0
- package/Source/Scene/Cesium3DTileStyleEngine.js +78 -0
- package/Source/Scene/Cesium3DTileset.js +3158 -0
- package/Source/Scene/Cesium3DTilesetCache.js +82 -0
- package/Source/Scene/Cesium3DTilesetHeatmap.js +165 -0
- package/Source/Scene/Cesium3DTilesetMetadata.js +199 -0
- package/Source/Scene/Cesium3DTilesetMostDetailedTraversal.js +144 -0
- package/Source/Scene/Cesium3DTilesetStatistics.js +129 -0
- package/Source/Scene/Cesium3DTilesetTraversal.js +773 -0
- package/Source/Scene/CircleEmitter.js +62 -0
- package/Source/Scene/ClassificationPrimitive.js +1433 -0
- package/Source/Scene/ClassificationType.js +35 -0
- package/Source/Scene/ClippingPlane.js +184 -0
- package/Source/Scene/ClippingPlaneCollection.js +771 -0
- package/Source/Scene/CloudCollection.js +1050 -0
- package/Source/Scene/CloudType.js +33 -0
- package/Source/Scene/ColorBlendMode.js +33 -0
- package/Source/Scene/Composite3DTileContent.js +346 -0
- package/Source/Scene/ConditionsExpression.js +218 -0
- package/Source/Scene/ConeEmitter.js +62 -0
- package/Source/Scene/ContentMetadata.js +184 -0
- package/Source/Scene/CreditDisplay.js +610 -0
- package/Source/Scene/CullFace.js +33 -0
- package/Source/Scene/CumulusCloud.js +353 -0
- package/Source/Scene/DebugAppearance.js +268 -0
- package/Source/Scene/DebugCameraPrimitive.js +257 -0
- package/Source/Scene/DebugInspector.js +151 -0
- package/Source/Scene/DebugModelMatrixPrimitive.js +222 -0
- package/Source/Scene/DepthFunction.js +73 -0
- package/Source/Scene/DepthPlane.js +245 -0
- package/Source/Scene/DerivedCommand.js +433 -0
- package/Source/Scene/DeviceOrientationCameraController.js +120 -0
- package/Source/Scene/DirectionalLight.js +50 -0
- package/Source/Scene/DiscardEmptyTileImagePolicy.js +54 -0
- package/Source/Scene/DiscardMissingTileImagePolicy.js +148 -0
- package/Source/Scene/DracoLoader.js +76 -0
- package/Source/Scene/EllipsoidPrimitive.js +511 -0
- package/Source/Scene/EllipsoidSurfaceAppearance.js +282 -0
- package/Source/Scene/Empty3DTileContent.js +151 -0
- package/Source/Scene/Expression.js +2232 -0
- package/Source/Scene/ExpressionNodeType.js +25 -0
- package/Source/Scene/Fog.js +205 -0
- package/Source/Scene/FrameRateMonitor.js +384 -0
- package/Source/Scene/FrameState.js +419 -0
- package/Source/Scene/FrustumCommands.js +30 -0
- package/Source/Scene/Geometry3DTileContent.js +526 -0
- package/Source/Scene/GetFeatureInfoFormat.js +395 -0
- package/Source/Scene/Globe.js +1121 -0
- package/Source/Scene/GlobeDepth.js +378 -0
- package/Source/Scene/GlobeSurfaceShaderSet.js +413 -0
- package/Source/Scene/GlobeSurfaceTile.js +997 -0
- package/Source/Scene/GlobeSurfaceTileProvider.js +2818 -0
- package/Source/Scene/GlobeTranslucency.js +239 -0
- package/Source/Scene/GlobeTranslucencyFramebuffer.js +201 -0
- package/Source/Scene/GlobeTranslucencyState.js +1117 -0
- package/Source/Scene/GltfBufferViewLoader.js +268 -0
- package/Source/Scene/GltfDracoLoader.js +250 -0
- package/Source/Scene/GltfImageLoader.js +327 -0
- package/Source/Scene/GltfIndexBufferLoader.js +429 -0
- package/Source/Scene/GltfJsonLoader.js +301 -0
- package/Source/Scene/GltfLoader.js +2663 -0
- package/Source/Scene/GltfLoaderUtil.js +201 -0
- package/Source/Scene/GltfPipeline/ForEach.js +424 -0
- package/Source/Scene/GltfPipeline/addBuffer.js +30 -0
- package/Source/Scene/GltfPipeline/addDefaults.js +236 -0
- package/Source/Scene/GltfPipeline/addExtensionsRequired.js +24 -0
- package/Source/Scene/GltfPipeline/addExtensionsUsed.js +22 -0
- package/Source/Scene/GltfPipeline/addPipelineExtras.js +36 -0
- package/Source/Scene/GltfPipeline/addToArray.js +25 -0
- package/Source/Scene/GltfPipeline/findAccessorMinMax.js +71 -0
- package/Source/Scene/GltfPipeline/forEachTextureInMaterial.js +139 -0
- package/Source/Scene/GltfPipeline/getAccessorByteStride.js +29 -0
- package/Source/Scene/GltfPipeline/getComponentReader.js +147 -0
- package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +138 -0
- package/Source/Scene/GltfPipeline/moveTechniquesToExtension.js +145 -0
- package/Source/Scene/GltfPipeline/numberOfComponentsForType.js +29 -0
- package/Source/Scene/GltfPipeline/parseGlb.js +122 -0
- package/Source/Scene/GltfPipeline/readAccessorPacked.js +54 -0
- package/Source/Scene/GltfPipeline/removeExtension.js +64 -0
- package/Source/Scene/GltfPipeline/removeExtensionsRequired.js +24 -0
- package/Source/Scene/GltfPipeline/removeExtensionsUsed.js +26 -0
- package/Source/Scene/GltfPipeline/removePipelineExtras.js +42 -0
- package/Source/Scene/GltfPipeline/removeUnusedElements.js +881 -0
- package/Source/Scene/GltfPipeline/updateAccessorComponentTypes.js +53 -0
- package/Source/Scene/GltfPipeline/updateVersion.js +1151 -0
- package/Source/Scene/GltfPipeline/usesExtension.js +18 -0
- package/Source/Scene/GltfStructuralMetadataLoader.js +504 -0
- package/Source/Scene/GltfTextureLoader.js +383 -0
- package/Source/Scene/GltfVertexBufferLoader.js +470 -0
- package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +758 -0
- package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +756 -0
- package/Source/Scene/GridImageryProvider.js +436 -0
- package/Source/Scene/GroundPolylinePrimitive.js +926 -0
- package/Source/Scene/GroundPrimitive.js +1040 -0
- package/Source/Scene/GroupMetadata.js +203 -0
- package/Source/Scene/HeightReference.js +28 -0
- package/Source/Scene/HorizontalOrigin.js +41 -0
- package/Source/Scene/I3SDataProvider.js +668 -0
- package/Source/Scene/I3SFeature.js +63 -0
- package/Source/Scene/I3SField.js +255 -0
- package/Source/Scene/I3SGeometry.js +409 -0
- package/Source/Scene/I3SLayer.js +365 -0
- package/Source/Scene/I3SNode.js +816 -0
- package/Source/Scene/I3dmParser.js +141 -0
- package/Source/Scene/ImageBasedLighting.js +510 -0
- package/Source/Scene/Imagery.js +120 -0
- package/Source/Scene/ImageryLayer.js +1541 -0
- package/Source/Scene/ImageryLayerCollection.js +621 -0
- package/Source/Scene/ImageryLayerFeatureInfo.js +112 -0
- package/Source/Scene/ImageryProvider.js +387 -0
- package/Source/Scene/ImageryState.js +14 -0
- package/Source/Scene/Implicit3DTileContent.js +1154 -0
- package/Source/Scene/ImplicitAvailabilityBitstream.js +137 -0
- package/Source/Scene/ImplicitMetadataView.js +178 -0
- package/Source/Scene/ImplicitSubdivisionScheme.js +48 -0
- package/Source/Scene/ImplicitSubtree.js +1146 -0
- package/Source/Scene/ImplicitSubtreeMetadata.js +191 -0
- package/Source/Scene/ImplicitTileCoordinates.js +647 -0
- package/Source/Scene/ImplicitTileset.js +263 -0
- package/Source/Scene/InstanceAttributeSemantic.js +79 -0
- package/Source/Scene/InvertClassification.js +382 -0
- package/Source/Scene/IonImageryProvider.js +555 -0
- package/Source/Scene/IonWorldImageryStyle.js +33 -0
- package/Source/Scene/JobScheduler.js +199 -0
- package/Source/Scene/JobType.js +10 -0
- package/Source/Scene/JsonMetadataTable.js +114 -0
- package/Source/Scene/Label.js +1588 -0
- package/Source/Scene/LabelCollection.js +994 -0
- package/Source/Scene/LabelStyle.js +33 -0
- package/Source/Scene/Light.js +34 -0
- package/Source/Scene/MapMode2D.js +23 -0
- package/Source/Scene/MapboxImageryProvider.js +448 -0
- package/Source/Scene/MapboxStyleImageryProvider.js +457 -0
- package/Source/Scene/Material.js +1742 -0
- package/Source/Scene/MaterialAppearance.js +334 -0
- package/Source/Scene/MetadataClass.js +167 -0
- package/Source/Scene/MetadataClassProperty.js +1104 -0
- package/Source/Scene/MetadataComponentType.js +448 -0
- package/Source/Scene/MetadataEntity.js +425 -0
- package/Source/Scene/MetadataEnum.js +186 -0
- package/Source/Scene/MetadataEnumValue.js +97 -0
- package/Source/Scene/MetadataSchema.js +173 -0
- package/Source/Scene/MetadataSchemaLoader.js +145 -0
- package/Source/Scene/MetadataSemantic.js +145 -0
- package/Source/Scene/MetadataTable.js +357 -0
- package/Source/Scene/MetadataTableProperty.js +859 -0
- package/Source/Scene/MetadataType.js +208 -0
- package/Source/Scene/Model/AlphaPipelineStage.js +52 -0
- package/Source/Scene/Model/B3dmLoader.js +379 -0
- package/Source/Scene/Model/BatchTexturePipelineStage.js +72 -0
- package/Source/Scene/Model/CPUStylingPipelineStage.js +77 -0
- package/Source/Scene/Model/ClassificationModelDrawCommand.js +533 -0
- package/Source/Scene/Model/ClassificationPipelineStage.js +132 -0
- package/Source/Scene/Model/CustomShader.js +473 -0
- package/Source/Scene/Model/CustomShaderMode.js +40 -0
- package/Source/Scene/Model/CustomShaderPipelineStage.js +654 -0
- package/Source/Scene/Model/CustomShaderTranslucencyMode.js +35 -0
- package/Source/Scene/Model/DequantizationPipelineStage.js +178 -0
- package/Source/Scene/Model/FeatureIdPipelineStage.js +504 -0
- package/Source/Scene/Model/GeoJsonLoader.js +722 -0
- package/Source/Scene/Model/GeometryPipelineStage.js +558 -0
- package/Source/Scene/Model/I3dmLoader.js +909 -0
- package/Source/Scene/Model/ImageBasedLightingPipelineStage.js +147 -0
- package/Source/Scene/Model/InstancingPipelineStage.js +1043 -0
- package/Source/Scene/Model/LightingModel.js +30 -0
- package/Source/Scene/Model/LightingPipelineStage.js +75 -0
- package/Source/Scene/Model/MaterialPipelineStage.js +510 -0
- package/Source/Scene/Model/MetadataPipelineStage.js +638 -0
- package/Source/Scene/Model/Model.js +2847 -0
- package/Source/Scene/Model/Model3DTileContent.js +451 -0
- package/Source/Scene/Model/ModelAlphaOptions.js +26 -0
- package/Source/Scene/Model/ModelAnimation.js +422 -0
- package/Source/Scene/Model/ModelAnimationChannel.js +293 -0
- package/Source/Scene/Model/ModelAnimationCollection.js +553 -0
- package/Source/Scene/Model/ModelArticulation.js +214 -0
- package/Source/Scene/Model/ModelArticulationStage.js +261 -0
- package/Source/Scene/Model/ModelClippingPlanesPipelineStage.js +126 -0
- package/Source/Scene/Model/ModelColorPipelineStage.js +99 -0
- package/Source/Scene/Model/ModelDrawCommand.js +864 -0
- package/Source/Scene/Model/ModelFeature.js +229 -0
- package/Source/Scene/Model/ModelFeatureTable.js +322 -0
- package/Source/Scene/Model/ModelLightingOptions.js +29 -0
- package/Source/Scene/Model/ModelMatrixUpdateStage.js +108 -0
- package/Source/Scene/Model/ModelNode.js +125 -0
- package/Source/Scene/Model/ModelRenderResources.js +106 -0
- package/Source/Scene/Model/ModelRuntimeNode.js +648 -0
- package/Source/Scene/Model/ModelRuntimePrimitive.js +340 -0
- package/Source/Scene/Model/ModelSceneGraph.js +968 -0
- package/Source/Scene/Model/ModelSilhouettePipelineStage.js +109 -0
- package/Source/Scene/Model/ModelSkin.js +180 -0
- package/Source/Scene/Model/ModelSplitterPipelineStage.js +66 -0
- package/Source/Scene/Model/ModelStatistics.js +197 -0
- package/Source/Scene/Model/ModelType.js +94 -0
- package/Source/Scene/Model/ModelUtility.js +386 -0
- package/Source/Scene/Model/MorphTargetsPipelineStage.js +249 -0
- package/Source/Scene/Model/NodeRenderResources.js +160 -0
- package/Source/Scene/Model/NodeStatisticsPipelineStage.js +75 -0
- package/Source/Scene/Model/PickingPipelineStage.js +219 -0
- package/Source/Scene/Model/PntsLoader.js +717 -0
- package/Source/Scene/Model/PointCloudStylingPipelineStage.js +396 -0
- package/Source/Scene/Model/PrimitiveOutlineGenerator.js +689 -0
- package/Source/Scene/Model/PrimitiveOutlinePipelineStage.js +99 -0
- package/Source/Scene/Model/PrimitiveRenderResources.js +297 -0
- package/Source/Scene/Model/PrimitiveStatisticsPipelineStage.js +253 -0
- package/Source/Scene/Model/SceneMode2DPipelineStage.js +301 -0
- package/Source/Scene/Model/SelectedFeatureIdPipelineStage.js +185 -0
- package/Source/Scene/Model/SkinningPipelineStage.js +118 -0
- package/Source/Scene/Model/StyleCommandsNeeded.js +29 -0
- package/Source/Scene/Model/TextureManager.js +244 -0
- package/Source/Scene/Model/TextureUniform.js +74 -0
- package/Source/Scene/Model/TilesetPipelineStage.js +73 -0
- package/Source/Scene/Model/UniformType.js +124 -0
- package/Source/Scene/Model/VaryingType.js +61 -0
- package/Source/Scene/Model/WireframePipelineStage.js +118 -0
- package/Source/Scene/Model/buildDrawCommand.js +153 -0
- package/Source/Scene/ModelAnimationLoop.js +33 -0
- package/Source/Scene/ModelAnimationState.js +9 -0
- package/Source/Scene/ModelComponents.js +1466 -0
- package/Source/Scene/Moon.js +174 -0
- package/Source/Scene/Multiple3DTileContent.js +674 -0
- package/Source/Scene/NeverTileDiscardPolicy.js +28 -0
- package/Source/Scene/OIT.js +893 -0
- package/Source/Scene/OctahedralProjectedCubeMap.js +456 -0
- package/Source/Scene/OpenStreetMapImageryProvider.js +124 -0
- package/Source/Scene/OrderedGroundPrimitiveCollection.js +219 -0
- package/Source/Scene/Particle.js +155 -0
- package/Source/Scene/ParticleBurst.js +51 -0
- package/Source/Scene/ParticleEmitter.js +36 -0
- package/Source/Scene/ParticleSystem.js +910 -0
- package/Source/Scene/PerInstanceColorAppearance.js +296 -0
- package/Source/Scene/PerformanceDisplay.js +120 -0
- package/Source/Scene/PickDepth.js +105 -0
- package/Source/Scene/PickDepthFramebuffer.js +79 -0
- package/Source/Scene/PickFramebuffer.js +125 -0
- package/Source/Scene/Picking.js +1316 -0
- package/Source/Scene/PntsParser.js +480 -0
- package/Source/Scene/PointCloud.js +1425 -0
- package/Source/Scene/PointCloudEyeDomeLighting.js +279 -0
- package/Source/Scene/PointCloudShading.js +113 -0
- package/Source/Scene/PointPrimitive.js +668 -0
- package/Source/Scene/PointPrimitiveCollection.js +1217 -0
- package/Source/Scene/Polyline.js +431 -0
- package/Source/Scene/PolylineCollection.js +1962 -0
- package/Source/Scene/PolylineColorAppearance.js +224 -0
- package/Source/Scene/PolylineMaterialAppearance.js +236 -0
- package/Source/Scene/PostProcessStage.js +1023 -0
- package/Source/Scene/PostProcessStageCollection.js +888 -0
- package/Source/Scene/PostProcessStageComposite.js +362 -0
- package/Source/Scene/PostProcessStageLibrary.js +838 -0
- package/Source/Scene/PostProcessStageSampleMode.js +22 -0
- package/Source/Scene/PostProcessStageTextureCache.js +454 -0
- package/Source/Scene/Primitive.js +2536 -0
- package/Source/Scene/PrimitiveCollection.js +467 -0
- package/Source/Scene/PrimitiveLoadPlan.js +280 -0
- package/Source/Scene/PrimitivePipeline.js +855 -0
- package/Source/Scene/PrimitiveState.js +13 -0
- package/Source/Scene/PropertyAttribute.js +160 -0
- package/Source/Scene/PropertyAttributeProperty.js +165 -0
- package/Source/Scene/PropertyTable.js +541 -0
- package/Source/Scene/PropertyTexture.js +162 -0
- package/Source/Scene/PropertyTextureProperty.js +263 -0
- package/Source/Scene/QuadtreeOccluders.js +30 -0
- package/Source/Scene/QuadtreePrimitive.js +1546 -0
- package/Source/Scene/QuadtreeTile.js +539 -0
- package/Source/Scene/QuadtreeTileLoadState.js +39 -0
- package/Source/Scene/QuadtreeTileProvider.js +226 -0
- package/Source/Scene/ResourceCache.js +810 -0
- package/Source/Scene/ResourceCacheKey.js +567 -0
- package/Source/Scene/ResourceCacheStatistics.js +183 -0
- package/Source/Scene/ResourceLoader.js +139 -0
- package/Source/Scene/ResourceLoaderState.js +48 -0
- package/Source/Scene/SDFSettings.js +39 -0
- package/Source/Scene/Scene.js +4498 -0
- package/Source/Scene/SceneFramebuffer.js +106 -0
- package/Source/Scene/SceneMode.js +56 -0
- package/Source/Scene/SceneTransforms.js +466 -0
- package/Source/Scene/SceneTransitioner.js +1111 -0
- package/Source/Scene/ScreenSpaceCameraController.js +2933 -0
- package/Source/Scene/ShadowMap.js +1958 -0
- package/Source/Scene/ShadowMapShader.js +395 -0
- package/Source/Scene/ShadowMode.js +78 -0
- package/Source/Scene/ShadowVolumeAppearance.js +937 -0
- package/Source/Scene/SingleTileImageryProvider.js +501 -0
- package/Source/Scene/SkyAtmosphere.js +402 -0
- package/Source/Scene/SkyBox.js +252 -0
- package/Source/Scene/SphereEmitter.js +66 -0
- package/Source/Scene/SplitDirection.js +34 -0
- package/Source/Scene/Splitter.js +49 -0
- package/Source/Scene/StencilConstants.js +37 -0
- package/Source/Scene/StencilFunction.js +73 -0
- package/Source/Scene/StencilOperation.js +73 -0
- package/Source/Scene/StructuralMetadata.js +243 -0
- package/Source/Scene/StyleExpression.js +86 -0
- package/Source/Scene/Sun.js +359 -0
- package/Source/Scene/SunLight.js +31 -0
- package/Source/Scene/SunPostProcess.js +288 -0
- package/Source/Scene/SupportedImageFormats.js +18 -0
- package/Source/Scene/TerrainFillMesh.js +2220 -0
- package/Source/Scene/TerrainState.js +13 -0
- package/Source/Scene/TextureAtlas.js +556 -0
- package/Source/Scene/TileBoundingRegion.js +490 -0
- package/Source/Scene/TileBoundingS2Cell.js +703 -0
- package/Source/Scene/TileBoundingSphere.js +167 -0
- package/Source/Scene/TileBoundingVolume.js +68 -0
- package/Source/Scene/TileCoordinatesImageryProvider.js +379 -0
- package/Source/Scene/TileDiscardPolicy.js +34 -0
- package/Source/Scene/TileImagery.js +130 -0
- package/Source/Scene/TileMapServiceImageryProvider.js +403 -0
- package/Source/Scene/TileMetadata.js +184 -0
- package/Source/Scene/TileOrientedBoundingBox.js +219 -0
- package/Source/Scene/TileReplacementQueue.js +119 -0
- package/Source/Scene/TileSelectionResult.js +80 -0
- package/Source/Scene/TileState.js +10 -0
- package/Source/Scene/Tileset3DTileContent.js +158 -0
- package/Source/Scene/TilesetMetadata.js +186 -0
- package/Source/Scene/TimeDynamicImagery.js +308 -0
- package/Source/Scene/TimeDynamicPointCloud.js +819 -0
- package/Source/Scene/Tonemapper.js +52 -0
- package/Source/Scene/TranslucentTileClassification.js +524 -0
- package/Source/Scene/TweenCollection.js +588 -0
- package/Source/Scene/UrlTemplateImageryProvider.js +1240 -0
- package/Source/Scene/Vector3DTileBatch.js +37 -0
- package/Source/Scene/Vector3DTileClampedPolylines.js +772 -0
- package/Source/Scene/Vector3DTileContent.js +774 -0
- package/Source/Scene/Vector3DTileGeometry.js +490 -0
- package/Source/Scene/Vector3DTilePoints.js +529 -0
- package/Source/Scene/Vector3DTilePolygons.js +479 -0
- package/Source/Scene/Vector3DTilePolylines.js +676 -0
- package/Source/Scene/Vector3DTilePrimitive.js +1282 -0
- package/Source/Scene/VertexAttributeSemantic.js +273 -0
- package/Source/Scene/VerticalOrigin.js +49 -0
- package/Source/Scene/View.js +431 -0
- package/Source/Scene/ViewportQuad.js +182 -0
- package/Source/Scene/WebMapServiceImageryProvider.js +768 -0
- package/Source/Scene/WebMapTileServiceImageryProvider.js +711 -0
- package/Source/Scene/computeFlyToLocationForRectangle.js +69 -0
- package/Source/Scene/createBillboardPointCallback.js +70 -0
- package/Source/Scene/createElevationBandMaterial.js +585 -0
- package/Source/Scene/createOsmBuildings.js +75 -0
- package/Source/Scene/createTangentSpaceDebugPrimitive.js +116 -0
- package/Source/Scene/createWorldImagery.js +38 -0
- package/Source/Scene/findContentMetadata.js +54 -0
- package/Source/Scene/findGroupMetadata.js +39 -0
- package/Source/Scene/findTileMetadata.js +56 -0
- package/Source/Scene/getBinaryAccessor.js +56 -0
- package/Source/Scene/getClipAndStyleCode.js +34 -0
- package/Source/Scene/getClippingFunction.js +163 -0
- package/Source/Scene/hasExtension.js +19 -0
- package/Source/Scene/parseBatchTable.js +439 -0
- package/Source/Scene/parseBoundingVolumeSemantics.js +121 -0
- package/Source/Scene/parseFeatureMetadataLegacy.js +139 -0
- package/Source/Scene/parseStructuralMetadata.js +102 -0
- package/Source/Scene/preprocess3DTileContent.js +94 -0
- package/Source/Shaders/AdjustTranslucentFS.glsl +24 -0
- package/Source/Shaders/AdjustTranslucentFS.js +26 -0
- package/Source/Shaders/Appearances/AllMaterialAppearanceFS.glsl +29 -0
- package/Source/Shaders/Appearances/AllMaterialAppearanceFS.js +31 -0
- package/Source/Shaders/Appearances/AllMaterialAppearanceVS.glsl +26 -0
- package/Source/Shaders/Appearances/AllMaterialAppearanceVS.js +28 -0
- package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.glsl +23 -0
- package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.js +25 -0
- package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.glsl +17 -0
- package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.js +19 -0
- package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.glsl +33 -0
- package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.js +35 -0
- package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.glsl +19 -0
- package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.js +21 -0
- package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.glsl +24 -0
- package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.js +26 -0
- package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.glsl +20 -0
- package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.js +22 -0
- package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.glsl +6 -0
- package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.js +8 -0
- package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.glsl +15 -0
- package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.js +17 -0
- package/Source/Shaders/Appearances/PolylineColorAppearanceVS.glsl +28 -0
- package/Source/Shaders/Appearances/PolylineColorAppearanceVS.js +30 -0
- package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.glsl +33 -0
- package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.js +35 -0
- package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.glsl +25 -0
- package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.js +27 -0
- package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.glsl +20 -0
- package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.js +22 -0
- package/Source/Shaders/AtmosphereCommon.glsl +152 -0
- package/Source/Shaders/AtmosphereCommon.js +154 -0
- package/Source/Shaders/BillboardCollectionFS.glsl +208 -0
- package/Source/Shaders/BillboardCollectionFS.js +210 -0
- package/Source/Shaders/BillboardCollectionVS.glsl +434 -0
- package/Source/Shaders/BillboardCollectionVS.js +436 -0
- package/Source/Shaders/BrdfLutGeneratorFS.glsl +83 -0
- package/Source/Shaders/BrdfLutGeneratorFS.js +85 -0
- package/Source/Shaders/Builtin/Constants/degreesPerRadian.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/degreesPerRadian.js +18 -0
- package/Source/Shaders/Builtin/Constants/depthRange.glsl +14 -0
- package/Source/Shaders/Builtin/Constants/depthRange.js +16 -0
- package/Source/Shaders/Builtin/Constants/epsilon1.glsl +7 -0
- package/Source/Shaders/Builtin/Constants/epsilon1.js +9 -0
- package/Source/Shaders/Builtin/Constants/epsilon2.glsl +7 -0
- package/Source/Shaders/Builtin/Constants/epsilon2.js +9 -0
- package/Source/Shaders/Builtin/Constants/epsilon3.glsl +7 -0
- package/Source/Shaders/Builtin/Constants/epsilon3.js +9 -0
- package/Source/Shaders/Builtin/Constants/epsilon4.glsl +7 -0
- package/Source/Shaders/Builtin/Constants/epsilon4.js +9 -0
- package/Source/Shaders/Builtin/Constants/epsilon5.glsl +7 -0
- package/Source/Shaders/Builtin/Constants/epsilon5.js +9 -0
- package/Source/Shaders/Builtin/Constants/epsilon6.glsl +7 -0
- package/Source/Shaders/Builtin/Constants/epsilon6.js +9 -0
- package/Source/Shaders/Builtin/Constants/epsilon7.glsl +7 -0
- package/Source/Shaders/Builtin/Constants/epsilon7.js +9 -0
- package/Source/Shaders/Builtin/Constants/infinity.glsl +7 -0
- package/Source/Shaders/Builtin/Constants/infinity.js +9 -0
- package/Source/Shaders/Builtin/Constants/oneOverPi.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/oneOverPi.js +18 -0
- package/Source/Shaders/Builtin/Constants/oneOverTwoPi.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/oneOverTwoPi.js +18 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTile.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTile.js +11 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassification.js +11 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passCesium3DTileClassificationIgnoreShow.js +11 -0
- package/Source/Shaders/Builtin/Constants/passClassification.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passClassification.js +11 -0
- package/Source/Shaders/Builtin/Constants/passCompute.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passCompute.js +11 -0
- package/Source/Shaders/Builtin/Constants/passEnvironment.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passEnvironment.js +11 -0
- package/Source/Shaders/Builtin/Constants/passGlobe.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passGlobe.js +11 -0
- package/Source/Shaders/Builtin/Constants/passOpaque.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passOpaque.js +11 -0
- package/Source/Shaders/Builtin/Constants/passOverlay.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passOverlay.js +11 -0
- package/Source/Shaders/Builtin/Constants/passTerrainClassification.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passTerrainClassification.js +11 -0
- package/Source/Shaders/Builtin/Constants/passTranslucent.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passTranslucent.js +11 -0
- package/Source/Shaders/Builtin/Constants/pi.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/pi.js +18 -0
- package/Source/Shaders/Builtin/Constants/piOverFour.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/piOverFour.js +18 -0
- package/Source/Shaders/Builtin/Constants/piOverSix.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/piOverSix.js +18 -0
- package/Source/Shaders/Builtin/Constants/piOverThree.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/piOverThree.js +18 -0
- package/Source/Shaders/Builtin/Constants/piOverTwo.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/piOverTwo.js +18 -0
- package/Source/Shaders/Builtin/Constants/radiansPerDegree.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/radiansPerDegree.js +18 -0
- package/Source/Shaders/Builtin/Constants/sceneMode2D.glsl +11 -0
- package/Source/Shaders/Builtin/Constants/sceneMode2D.js +13 -0
- package/Source/Shaders/Builtin/Constants/sceneMode3D.glsl +11 -0
- package/Source/Shaders/Builtin/Constants/sceneMode3D.js +13 -0
- package/Source/Shaders/Builtin/Constants/sceneModeColumbusView.glsl +11 -0
- package/Source/Shaders/Builtin/Constants/sceneModeColumbusView.js +13 -0
- package/Source/Shaders/Builtin/Constants/sceneModeMorphing.glsl +11 -0
- package/Source/Shaders/Builtin/Constants/sceneModeMorphing.js +13 -0
- package/Source/Shaders/Builtin/Constants/solarRadius.glsl +13 -0
- package/Source/Shaders/Builtin/Constants/solarRadius.js +15 -0
- package/Source/Shaders/Builtin/Constants/threePiOver2.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/threePiOver2.js +18 -0
- package/Source/Shaders/Builtin/Constants/twoPi.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/twoPi.js +18 -0
- package/Source/Shaders/Builtin/Constants/webMercatorMaxLatitude.glsl +16 -0
- package/Source/Shaders/Builtin/Constants/webMercatorMaxLatitude.js +18 -0
- package/Source/Shaders/Builtin/CzmBuiltins.js +262 -0
- package/Source/Shaders/Builtin/Functions/HSBToRGB.glsl +24 -0
- package/Source/Shaders/Builtin/Functions/HSBToRGB.js +26 -0
- package/Source/Shaders/Builtin/Functions/HSLToRGB.glsl +31 -0
- package/Source/Shaders/Builtin/Functions/HSLToRGB.js +33 -0
- package/Source/Shaders/Builtin/Functions/RGBToHSB.glsl +27 -0
- package/Source/Shaders/Builtin/Functions/RGBToHSB.js +29 -0
- package/Source/Shaders/Builtin/Functions/RGBToHSL.glsl +34 -0
- package/Source/Shaders/Builtin/Functions/RGBToHSL.js +36 -0
- package/Source/Shaders/Builtin/Functions/RGBToXYZ.glsl +30 -0
- package/Source/Shaders/Builtin/Functions/RGBToXYZ.js +32 -0
- package/Source/Shaders/Builtin/Functions/XYZToRGB.glsl +30 -0
- package/Source/Shaders/Builtin/Functions/XYZToRGB.js +32 -0
- package/Source/Shaders/Builtin/Functions/acesTonemapping.glsl +16 -0
- package/Source/Shaders/Builtin/Functions/acesTonemapping.js +18 -0
- package/Source/Shaders/Builtin/Functions/alphaWeight.glsl +11 -0
- package/Source/Shaders/Builtin/Functions/alphaWeight.js +13 -0
- package/Source/Shaders/Builtin/Functions/antialias.glsl +39 -0
- package/Source/Shaders/Builtin/Functions/antialias.js +41 -0
- package/Source/Shaders/Builtin/Functions/approximateSphericalCoordinates.glsl +18 -0
- package/Source/Shaders/Builtin/Functions/approximateSphericalCoordinates.js +20 -0
- package/Source/Shaders/Builtin/Functions/backFacing.glsl +13 -0
- package/Source/Shaders/Builtin/Functions/backFacing.js +15 -0
- package/Source/Shaders/Builtin/Functions/branchFreeTernary.glsl +71 -0
- package/Source/Shaders/Builtin/Functions/branchFreeTernary.js +73 -0
- package/Source/Shaders/Builtin/Functions/cascadeColor.glsl +8 -0
- package/Source/Shaders/Builtin/Functions/cascadeColor.js +10 -0
- package/Source/Shaders/Builtin/Functions/cascadeDistance.glsl +7 -0
- package/Source/Shaders/Builtin/Functions/cascadeDistance.js +9 -0
- package/Source/Shaders/Builtin/Functions/cascadeMatrix.glsl +10 -0
- package/Source/Shaders/Builtin/Functions/cascadeMatrix.js +12 -0
- package/Source/Shaders/Builtin/Functions/cascadeWeights.glsl +10 -0
- package/Source/Shaders/Builtin/Functions/cascadeWeights.js +12 -0
- package/Source/Shaders/Builtin/Functions/columbusViewMorph.glsl +12 -0
- package/Source/Shaders/Builtin/Functions/columbusViewMorph.js +14 -0
- package/Source/Shaders/Builtin/Functions/computePosition.glsl +22 -0
- package/Source/Shaders/Builtin/Functions/computePosition.js +24 -0
- package/Source/Shaders/Builtin/Functions/cosineAndSine.glsl +211 -0
- package/Source/Shaders/Builtin/Functions/cosineAndSine.js +213 -0
- package/Source/Shaders/Builtin/Functions/decompressTextureCoordinates.glsl +17 -0
- package/Source/Shaders/Builtin/Functions/decompressTextureCoordinates.js +19 -0
- package/Source/Shaders/Builtin/Functions/defaultPbrMaterial.glsl +16 -0
- package/Source/Shaders/Builtin/Functions/defaultPbrMaterial.js +18 -0
- package/Source/Shaders/Builtin/Functions/depthClamp.glsl +47 -0
- package/Source/Shaders/Builtin/Functions/depthClamp.js +49 -0
- package/Source/Shaders/Builtin/Functions/eastNorthUpToEyeCoordinates.glsl +33 -0
- package/Source/Shaders/Builtin/Functions/eastNorthUpToEyeCoordinates.js +35 -0
- package/Source/Shaders/Builtin/Functions/ellipsoidContainsPoint.glsl +12 -0
- package/Source/Shaders/Builtin/Functions/ellipsoidContainsPoint.js +14 -0
- package/Source/Shaders/Builtin/Functions/ellipsoidWgs84TextureCoordinates.glsl +10 -0
- package/Source/Shaders/Builtin/Functions/ellipsoidWgs84TextureCoordinates.js +12 -0
- package/Source/Shaders/Builtin/Functions/equalsEpsilon.glsl +36 -0
- package/Source/Shaders/Builtin/Functions/equalsEpsilon.js +38 -0
- package/Source/Shaders/Builtin/Functions/eyeOffset.glsl +20 -0
- package/Source/Shaders/Builtin/Functions/eyeOffset.js +22 -0
- package/Source/Shaders/Builtin/Functions/eyeToWindowCoordinates.glsl +32 -0
- package/Source/Shaders/Builtin/Functions/eyeToWindowCoordinates.js +34 -0
- package/Source/Shaders/Builtin/Functions/fastApproximateAtan.glsl +55 -0
- package/Source/Shaders/Builtin/Functions/fastApproximateAtan.js +57 -0
- package/Source/Shaders/Builtin/Functions/fog.glsl +38 -0
- package/Source/Shaders/Builtin/Functions/fog.js +40 -0
- package/Source/Shaders/Builtin/Functions/gammaCorrect.glsl +22 -0
- package/Source/Shaders/Builtin/Functions/gammaCorrect.js +24 -0
- package/Source/Shaders/Builtin/Functions/geodeticSurfaceNormal.glsl +16 -0
- package/Source/Shaders/Builtin/Functions/geodeticSurfaceNormal.js +18 -0
- package/Source/Shaders/Builtin/Functions/getDefaultMaterial.glsl +27 -0
- package/Source/Shaders/Builtin/Functions/getDefaultMaterial.js +29 -0
- package/Source/Shaders/Builtin/Functions/getLambertDiffuse.glsl +22 -0
- package/Source/Shaders/Builtin/Functions/getLambertDiffuse.js +24 -0
- package/Source/Shaders/Builtin/Functions/getSpecular.glsl +29 -0
- package/Source/Shaders/Builtin/Functions/getSpecular.js +31 -0
- package/Source/Shaders/Builtin/Functions/getWaterNoise.glsl +37 -0
- package/Source/Shaders/Builtin/Functions/getWaterNoise.js +39 -0
- package/Source/Shaders/Builtin/Functions/hue.glsl +30 -0
- package/Source/Shaders/Builtin/Functions/hue.js +32 -0
- package/Source/Shaders/Builtin/Functions/inverseGamma.glsl +12 -0
- package/Source/Shaders/Builtin/Functions/inverseGamma.js +14 -0
- package/Source/Shaders/Builtin/Functions/isEmpty.glsl +19 -0
- package/Source/Shaders/Builtin/Functions/isEmpty.js +21 -0
- package/Source/Shaders/Builtin/Functions/isFull.glsl +19 -0
- package/Source/Shaders/Builtin/Functions/isFull.js +21 -0
- package/Source/Shaders/Builtin/Functions/latitudeToWebMercatorFraction.glsl +21 -0
- package/Source/Shaders/Builtin/Functions/latitudeToWebMercatorFraction.js +23 -0
- package/Source/Shaders/Builtin/Functions/lineDistance.glsl +14 -0
- package/Source/Shaders/Builtin/Functions/lineDistance.js +16 -0
- package/Source/Shaders/Builtin/Functions/linearToSrgb.glsl +16 -0
- package/Source/Shaders/Builtin/Functions/linearToSrgb.js +18 -0
- package/Source/Shaders/Builtin/Functions/luminance.glsl +20 -0
- package/Source/Shaders/Builtin/Functions/luminance.js +22 -0
- package/Source/Shaders/Builtin/Functions/metersPerPixel.glsl +61 -0
- package/Source/Shaders/Builtin/Functions/metersPerPixel.js +63 -0
- package/Source/Shaders/Builtin/Functions/modelToWindowCoordinates.glsl +37 -0
- package/Source/Shaders/Builtin/Functions/modelToWindowCoordinates.js +39 -0
- package/Source/Shaders/Builtin/Functions/multiplyWithColorBalance.glsl +18 -0
- package/Source/Shaders/Builtin/Functions/multiplyWithColorBalance.js +20 -0
- package/Source/Shaders/Builtin/Functions/nearFarScalar.glsl +26 -0
- package/Source/Shaders/Builtin/Functions/nearFarScalar.js +28 -0
- package/Source/Shaders/Builtin/Functions/octDecode.glsl +83 -0
- package/Source/Shaders/Builtin/Functions/octDecode.js +85 -0
- package/Source/Shaders/Builtin/Functions/packDepth.glsl +18 -0
- package/Source/Shaders/Builtin/Functions/packDepth.js +20 -0
- package/Source/Shaders/Builtin/Functions/pbrLighting.glsl +99 -0
- package/Source/Shaders/Builtin/Functions/pbrLighting.js +101 -0
- package/Source/Shaders/Builtin/Functions/pbrMetallicRoughnessMaterial.glsl +37 -0
- package/Source/Shaders/Builtin/Functions/pbrMetallicRoughnessMaterial.js +39 -0
- package/Source/Shaders/Builtin/Functions/pbrSpecularGlossinessMaterial.glsl +30 -0
- package/Source/Shaders/Builtin/Functions/pbrSpecularGlossinessMaterial.js +32 -0
- package/Source/Shaders/Builtin/Functions/phong.glsl +63 -0
- package/Source/Shaders/Builtin/Functions/phong.js +65 -0
- package/Source/Shaders/Builtin/Functions/planeDistance.glsl +28 -0
- package/Source/Shaders/Builtin/Functions/planeDistance.js +30 -0
- package/Source/Shaders/Builtin/Functions/pointAlongRay.glsl +19 -0
- package/Source/Shaders/Builtin/Functions/pointAlongRay.js +21 -0
- package/Source/Shaders/Builtin/Functions/rayEllipsoidIntersectionInterval.glsl +83 -0
- package/Source/Shaders/Builtin/Functions/rayEllipsoidIntersectionInterval.js +85 -0
- package/Source/Shaders/Builtin/Functions/raySphereIntersectionInterval.glsl +36 -0
- package/Source/Shaders/Builtin/Functions/raySphereIntersectionInterval.js +38 -0
- package/Source/Shaders/Builtin/Functions/readDepth.glsl +4 -0
- package/Source/Shaders/Builtin/Functions/readDepth.js +6 -0
- package/Source/Shaders/Builtin/Functions/readNonPerspective.glsl +31 -0
- package/Source/Shaders/Builtin/Functions/readNonPerspective.js +33 -0
- package/Source/Shaders/Builtin/Functions/reverseLogDepth.glsl +11 -0
- package/Source/Shaders/Builtin/Functions/reverseLogDepth.js +13 -0
- package/Source/Shaders/Builtin/Functions/round.glsl +22 -0
- package/Source/Shaders/Builtin/Functions/round.js +24 -0
- package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.glsl +78 -0
- package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.js +80 -0
- package/Source/Shaders/Builtin/Functions/saturation.glsl +22 -0
- package/Source/Shaders/Builtin/Functions/saturation.js +24 -0
- package/Source/Shaders/Builtin/Functions/shadowDepthCompare.glsl +24 -0
- package/Source/Shaders/Builtin/Functions/shadowDepthCompare.js +26 -0
- package/Source/Shaders/Builtin/Functions/shadowVisibility.glsl +66 -0
- package/Source/Shaders/Builtin/Functions/shadowVisibility.js +68 -0
- package/Source/Shaders/Builtin/Functions/signNotZero.glsl +29 -0
- package/Source/Shaders/Builtin/Functions/signNotZero.js +31 -0
- package/Source/Shaders/Builtin/Functions/sphericalHarmonics.glsl +42 -0
- package/Source/Shaders/Builtin/Functions/sphericalHarmonics.js +44 -0
- package/Source/Shaders/Builtin/Functions/srgbToLinear.glsl +16 -0
- package/Source/Shaders/Builtin/Functions/srgbToLinear.js +18 -0
- package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.glsl +25 -0
- package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.js +27 -0
- package/Source/Shaders/Builtin/Functions/transformPlane.glsl +15 -0
- package/Source/Shaders/Builtin/Functions/transformPlane.js +17 -0
- package/Source/Shaders/Builtin/Functions/translateRelativeToEye.glsl +40 -0
- package/Source/Shaders/Builtin/Functions/translateRelativeToEye.js +42 -0
- package/Source/Shaders/Builtin/Functions/translucentPhong.glsl +27 -0
- package/Source/Shaders/Builtin/Functions/translucentPhong.js +29 -0
- package/Source/Shaders/Builtin/Functions/transpose.glsl +45 -0
- package/Source/Shaders/Builtin/Functions/transpose.js +47 -0
- package/Source/Shaders/Builtin/Functions/unpackDepth.glsl +16 -0
- package/Source/Shaders/Builtin/Functions/unpackDepth.js +18 -0
- package/Source/Shaders/Builtin/Functions/unpackFloat.glsl +24 -0
- package/Source/Shaders/Builtin/Functions/unpackFloat.js +26 -0
- package/Source/Shaders/Builtin/Functions/unpackUint.glsl +31 -0
- package/Source/Shaders/Builtin/Functions/unpackUint.js +33 -0
- package/Source/Shaders/Builtin/Functions/valueTransform.glsl +38 -0
- package/Source/Shaders/Builtin/Functions/valueTransform.js +40 -0
- package/Source/Shaders/Builtin/Functions/vertexLogDepth.glsl +64 -0
- package/Source/Shaders/Builtin/Functions/vertexLogDepth.js +66 -0
- package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.glsl +99 -0
- package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.js +101 -0
- package/Source/Shaders/Builtin/Functions/writeDepthClamp.glsl +27 -0
- package/Source/Shaders/Builtin/Functions/writeDepthClamp.js +29 -0
- package/Source/Shaders/Builtin/Functions/writeLogDepth.glsl +82 -0
- package/Source/Shaders/Builtin/Functions/writeLogDepth.js +84 -0
- package/Source/Shaders/Builtin/Functions/writeNonPerspective.glsl +32 -0
- package/Source/Shaders/Builtin/Functions/writeNonPerspective.js +34 -0
- package/Source/Shaders/Builtin/Structs/depthRangeStruct.glsl +9 -0
- package/Source/Shaders/Builtin/Structs/depthRangeStruct.js +11 -0
- package/Source/Shaders/Builtin/Structs/material.glsl +22 -0
- package/Source/Shaders/Builtin/Structs/material.js +24 -0
- package/Source/Shaders/Builtin/Structs/materialInput.glsl +28 -0
- package/Source/Shaders/Builtin/Structs/materialInput.js +30 -0
- package/Source/Shaders/Builtin/Structs/modelMaterial.glsl +29 -0
- package/Source/Shaders/Builtin/Structs/modelMaterial.js +31 -0
- package/Source/Shaders/Builtin/Structs/modelVertexOutput.glsl +16 -0
- package/Source/Shaders/Builtin/Structs/modelVertexOutput.js +18 -0
- package/Source/Shaders/Builtin/Structs/pbrParameters.glsl +16 -0
- package/Source/Shaders/Builtin/Structs/pbrParameters.js +18 -0
- package/Source/Shaders/Builtin/Structs/ray.glsl +11 -0
- package/Source/Shaders/Builtin/Structs/ray.js +13 -0
- package/Source/Shaders/Builtin/Structs/raySegment.glsl +27 -0
- package/Source/Shaders/Builtin/Structs/raySegment.js +29 -0
- package/Source/Shaders/Builtin/Structs/shadowParameters.glsl +15 -0
- package/Source/Shaders/Builtin/Structs/shadowParameters.js +17 -0
- package/Source/Shaders/CloudCollectionFS.glsl +263 -0
- package/Source/Shaders/CloudCollectionFS.js +265 -0
- package/Source/Shaders/CloudCollectionVS.glsl +48 -0
- package/Source/Shaders/CloudCollectionVS.js +50 -0
- package/Source/Shaders/CloudNoiseFS.glsl +92 -0
- package/Source/Shaders/CloudNoiseFS.js +94 -0
- package/Source/Shaders/CloudNoiseVS.glsl +18 -0
- package/Source/Shaders/CloudNoiseVS.js +20 -0
- package/Source/Shaders/CompareAndPackTranslucentDepth.glsl +12 -0
- package/Source/Shaders/CompareAndPackTranslucentDepth.js +14 -0
- package/Source/Shaders/CompositeOITFS.glsl +31 -0
- package/Source/Shaders/CompositeOITFS.js +33 -0
- package/Source/Shaders/DepthPlaneFS.glsl +36 -0
- package/Source/Shaders/DepthPlaneFS.js +38 -0
- package/Source/Shaders/DepthPlaneVS.glsl +11 -0
- package/Source/Shaders/DepthPlaneVS.js +13 -0
- package/Source/Shaders/EllipsoidFS.glsl +112 -0
- package/Source/Shaders/EllipsoidFS.js +114 -0
- package/Source/Shaders/EllipsoidVS.glsl +28 -0
- package/Source/Shaders/EllipsoidVS.js +30 -0
- package/Source/Shaders/FXAA3_11.glsl +648 -0
- package/Source/Shaders/FXAA3_11.js +678 -0
- package/Source/Shaders/GlobeFS.glsl +652 -0
- package/Source/Shaders/GlobeFS.js +654 -0
- package/Source/Shaders/GlobeVS.glsl +253 -0
- package/Source/Shaders/GlobeVS.js +255 -0
- package/Source/Shaders/GroundAtmosphere.glsl +18 -0
- package/Source/Shaders/GroundAtmosphere.js +20 -0
- package/Source/Shaders/Materials/AspectRampMaterial.glsl +11 -0
- package/Source/Shaders/Materials/AspectRampMaterial.js +13 -0
- package/Source/Shaders/Materials/BumpMapMaterial.glsl +29 -0
- package/Source/Shaders/Materials/BumpMapMaterial.js +31 -0
- package/Source/Shaders/Materials/CheckerboardMaterial.glsl +29 -0
- package/Source/Shaders/Materials/CheckerboardMaterial.js +31 -0
- package/Source/Shaders/Materials/DotMaterial.glsl +18 -0
- package/Source/Shaders/Materials/DotMaterial.js +20 -0
- package/Source/Shaders/Materials/ElevationBandMaterial.glsl +74 -0
- package/Source/Shaders/Materials/ElevationBandMaterial.js +76 -0
- package/Source/Shaders/Materials/ElevationContourMaterial.glsl +29 -0
- package/Source/Shaders/Materials/ElevationContourMaterial.js +31 -0
- package/Source/Shaders/Materials/ElevationRampMaterial.glsl +14 -0
- package/Source/Shaders/Materials/ElevationRampMaterial.js +16 -0
- package/Source/Shaders/Materials/FadeMaterial.glsl +37 -0
- package/Source/Shaders/Materials/FadeMaterial.js +39 -0
- package/Source/Shaders/Materials/GridMaterial.glsl +60 -0
- package/Source/Shaders/Materials/GridMaterial.js +62 -0
- package/Source/Shaders/Materials/NormalMapMaterial.glsl +19 -0
- package/Source/Shaders/Materials/NormalMapMaterial.js +21 -0
- package/Source/Shaders/Materials/PolylineArrowMaterial.glsl +66 -0
- package/Source/Shaders/Materials/PolylineArrowMaterial.js +68 -0
- package/Source/Shaders/Materials/PolylineDashMaterial.glsl +39 -0
- package/Source/Shaders/Materials/PolylineDashMaterial.js +41 -0
- package/Source/Shaders/Materials/PolylineGlowMaterial.glsl +25 -0
- package/Source/Shaders/Materials/PolylineGlowMaterial.js +27 -0
- package/Source/Shaders/Materials/PolylineOutlineMaterial.glsl +29 -0
- package/Source/Shaders/Materials/PolylineOutlineMaterial.js +31 -0
- package/Source/Shaders/Materials/RimLightingMaterial.glsl +21 -0
- package/Source/Shaders/Materials/RimLightingMaterial.js +23 -0
- package/Source/Shaders/Materials/SlopeRampMaterial.glsl +11 -0
- package/Source/Shaders/Materials/SlopeRampMaterial.js +13 -0
- package/Source/Shaders/Materials/StripeMaterial.glsl +24 -0
- package/Source/Shaders/Materials/StripeMaterial.js +26 -0
- package/Source/Shaders/Materials/Water.glsl +58 -0
- package/Source/Shaders/Materials/Water.js +60 -0
- package/Source/Shaders/Model/CPUStylingStageFS.glsl +49 -0
- package/Source/Shaders/Model/CPUStylingStageFS.js +51 -0
- package/Source/Shaders/Model/CPUStylingStageVS.glsl +30 -0
- package/Source/Shaders/Model/CPUStylingStageVS.js +32 -0
- package/Source/Shaders/Model/CustomShaderStageFS.glsl +18 -0
- package/Source/Shaders/Model/CustomShaderStageFS.js +20 -0
- package/Source/Shaders/Model/CustomShaderStageVS.glsl +19 -0
- package/Source/Shaders/Model/CustomShaderStageVS.js +21 -0
- package/Source/Shaders/Model/FeatureIdStageFS.glsl +4 -0
- package/Source/Shaders/Model/FeatureIdStageFS.js +6 -0
- package/Source/Shaders/Model/FeatureIdStageVS.glsl +6 -0
- package/Source/Shaders/Model/FeatureIdStageVS.js +8 -0
- package/Source/Shaders/Model/GeometryStageFS.glsl +25 -0
- package/Source/Shaders/Model/GeometryStageFS.js +27 -0
- package/Source/Shaders/Model/GeometryStageVS.glsl +42 -0
- package/Source/Shaders/Model/GeometryStageVS.js +44 -0
- package/Source/Shaders/Model/ImageBasedLightingStageFS.glsl +165 -0
- package/Source/Shaders/Model/ImageBasedLightingStageFS.js +166 -0
- package/Source/Shaders/Model/InstancingStageCommon.glsl +67 -0
- package/Source/Shaders/Model/InstancingStageCommon.js +69 -0
- package/Source/Shaders/Model/InstancingStageVS.glsl +18 -0
- package/Source/Shaders/Model/InstancingStageVS.js +20 -0
- package/Source/Shaders/Model/LegacyInstancingStageVS.glsl +20 -0
- package/Source/Shaders/Model/LegacyInstancingStageVS.js +22 -0
- package/Source/Shaders/Model/LightingStageFS.glsl +73 -0
- package/Source/Shaders/Model/LightingStageFS.js +75 -0
- package/Source/Shaders/Model/MaterialStageFS.glsl +226 -0
- package/Source/Shaders/Model/MaterialStageFS.js +228 -0
- package/Source/Shaders/Model/MetadataStageFS.glsl +9 -0
- package/Source/Shaders/Model/MetadataStageFS.js +11 -0
- package/Source/Shaders/Model/MetadataStageVS.glsl +10 -0
- package/Source/Shaders/Model/MetadataStageVS.js +12 -0
- package/Source/Shaders/Model/ModelClippingPlanesStageFS.glsl +88 -0
- package/Source/Shaders/Model/ModelClippingPlanesStageFS.js +90 -0
- package/Source/Shaders/Model/ModelColorStageFS.glsl +7 -0
- package/Source/Shaders/Model/ModelColorStageFS.js +8 -0
- package/Source/Shaders/Model/ModelFS.glsl +89 -0
- package/Source/Shaders/Model/ModelFS.js +91 -0
- package/Source/Shaders/Model/ModelSilhouetteStageFS.glsl +5 -0
- package/Source/Shaders/Model/ModelSilhouetteStageFS.js +6 -0
- package/Source/Shaders/Model/ModelSilhouetteStageVS.glsl +10 -0
- package/Source/Shaders/Model/ModelSilhouetteStageVS.js +12 -0
- package/Source/Shaders/Model/ModelSplitterStageFS.glsl +9 -0
- package/Source/Shaders/Model/ModelSplitterStageFS.js +11 -0
- package/Source/Shaders/Model/ModelVS.glsl +136 -0
- package/Source/Shaders/Model/ModelVS.js +138 -0
- package/Source/Shaders/Model/MorphTargetsStageVS.glsl +15 -0
- package/Source/Shaders/Model/MorphTargetsStageVS.js +16 -0
- package/Source/Shaders/Model/PointCloudStylingStageVS.glsl +45 -0
- package/Source/Shaders/Model/PointCloudStylingStageVS.js +46 -0
- package/Source/Shaders/Model/PrimitiveOutlineStageFS.glsl +16 -0
- package/Source/Shaders/Model/PrimitiveOutlineStageFS.js +18 -0
- package/Source/Shaders/Model/PrimitiveOutlineStageVS.glsl +3 -0
- package/Source/Shaders/Model/PrimitiveOutlineStageVS.js +5 -0
- package/Source/Shaders/Model/SelectedFeatureIdStageCommon.glsl +51 -0
- package/Source/Shaders/Model/SelectedFeatureIdStageCommon.js +53 -0
- package/Source/Shaders/Model/SkinningStageVS.glsl +18 -0
- package/Source/Shaders/Model/SkinningStageVS.js +19 -0
- package/Source/Shaders/OctahedralProjectionAtlasFS.glsl +89 -0
- package/Source/Shaders/OctahedralProjectionAtlasFS.js +91 -0
- package/Source/Shaders/OctahedralProjectionFS.glsl +14 -0
- package/Source/Shaders/OctahedralProjectionFS.js +16 -0
- package/Source/Shaders/OctahedralProjectionVS.glsl +10 -0
- package/Source/Shaders/OctahedralProjectionVS.js +12 -0
- package/Source/Shaders/PointPrimitiveCollectionFS.glsl +43 -0
- package/Source/Shaders/PointPrimitiveCollectionFS.js +45 -0
- package/Source/Shaders/PointPrimitiveCollectionVS.glsl +180 -0
- package/Source/Shaders/PointPrimitiveCollectionVS.js +182 -0
- package/Source/Shaders/PolylineCommon.glsl +176 -0
- package/Source/Shaders/PolylineCommon.js +178 -0
- package/Source/Shaders/PolylineFS.glsl +25 -0
- package/Source/Shaders/PolylineFS.js +27 -0
- package/Source/Shaders/PolylineShadowVolumeFS.glsl +90 -0
- package/Source/Shaders/PolylineShadowVolumeFS.js +92 -0
- package/Source/Shaders/PolylineShadowVolumeMorphFS.glsl +45 -0
- package/Source/Shaders/PolylineShadowVolumeMorphFS.js +47 -0
- package/Source/Shaders/PolylineShadowVolumeMorphVS.glsl +177 -0
- package/Source/Shaders/PolylineShadowVolumeMorphVS.js +179 -0
- package/Source/Shaders/PolylineShadowVolumeVS.glsl +168 -0
- package/Source/Shaders/PolylineShadowVolumeVS.js +170 -0
- package/Source/Shaders/PolylineVS.glsl +103 -0
- package/Source/Shaders/PolylineVS.js +105 -0
- package/Source/Shaders/PostProcessStages/AcesTonemappingStage.glsl +21 -0
- package/Source/Shaders/PostProcessStages/AcesTonemappingStage.js +23 -0
- package/Source/Shaders/PostProcessStages/AdditiveBlend.glsl +17 -0
- package/Source/Shaders/PostProcessStages/AdditiveBlend.js +19 -0
- package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.glsl +115 -0
- package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.js +117 -0
- package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.glsl +11 -0
- package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.js +13 -0
- package/Source/Shaders/PostProcessStages/BlackAndWhite.glsl +19 -0
- package/Source/Shaders/PostProcessStages/BlackAndWhite.js +21 -0
- package/Source/Shaders/PostProcessStages/BloomComposite.glsl +20 -0
- package/Source/Shaders/PostProcessStages/BloomComposite.js +22 -0
- package/Source/Shaders/PostProcessStages/BrightPass.glsl +30 -0
- package/Source/Shaders/PostProcessStages/BrightPass.js +32 -0
- package/Source/Shaders/PostProcessStages/Brightness.glsl +11 -0
- package/Source/Shaders/PostProcessStages/Brightness.js +13 -0
- package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.glsl +31 -0
- package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.js +33 -0
- package/Source/Shaders/PostProcessStages/ContrastBias.glsl +17 -0
- package/Source/Shaders/PostProcessStages/ContrastBias.js +19 -0
- package/Source/Shaders/PostProcessStages/DepthOfField.glsl +39 -0
- package/Source/Shaders/PostProcessStages/DepthOfField.js +41 -0
- package/Source/Shaders/PostProcessStages/DepthView.glsl +9 -0
- package/Source/Shaders/PostProcessStages/DepthView.js +11 -0
- package/Source/Shaders/PostProcessStages/DepthViewPacked.glsl +14 -0
- package/Source/Shaders/PostProcessStages/DepthViewPacked.js +16 -0
- package/Source/Shaders/PostProcessStages/EdgeDetection.glsl +60 -0
- package/Source/Shaders/PostProcessStages/EdgeDetection.js +62 -0
- package/Source/Shaders/PostProcessStages/FXAA.glsl +21 -0
- package/Source/Shaders/PostProcessStages/FXAA.js +23 -0
- package/Source/Shaders/PostProcessStages/FilmicTonemapping.glsl +36 -0
- package/Source/Shaders/PostProcessStages/FilmicTonemapping.js +38 -0
- package/Source/Shaders/PostProcessStages/GaussianBlur1D.glsl +47 -0
- package/Source/Shaders/PostProcessStages/GaussianBlur1D.js +49 -0
- package/Source/Shaders/PostProcessStages/LensFlare.glsl +153 -0
- package/Source/Shaders/PostProcessStages/LensFlare.js +155 -0
- package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.glsl +24 -0
- package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.js +26 -0
- package/Source/Shaders/PostProcessStages/NightVision.glsl +16 -0
- package/Source/Shaders/PostProcessStages/NightVision.js +18 -0
- package/Source/Shaders/PostProcessStages/PassThrough.glsl +8 -0
- package/Source/Shaders/PostProcessStages/PassThrough.js +10 -0
- package/Source/Shaders/PostProcessStages/PassThroughDepth.glsl +8 -0
- package/Source/Shaders/PostProcessStages/PassThroughDepth.js +10 -0
- package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.glsl +63 -0
- package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.js +65 -0
- package/Source/Shaders/PostProcessStages/ReinhardTonemapping.glsl +23 -0
- package/Source/Shaders/PostProcessStages/ReinhardTonemapping.js +25 -0
- package/Source/Shaders/PostProcessStages/Silhouette.glsl +11 -0
- package/Source/Shaders/PostProcessStages/Silhouette.js +13 -0
- package/Source/Shaders/ReprojectWebMercatorFS.glsl +8 -0
- package/Source/Shaders/ReprojectWebMercatorFS.js +10 -0
- package/Source/Shaders/ReprojectWebMercatorVS.glsl +12 -0
- package/Source/Shaders/ReprojectWebMercatorVS.js +14 -0
- package/Source/Shaders/ShadowVolumeAppearanceFS.glsl +165 -0
- package/Source/Shaders/ShadowVolumeAppearanceFS.js +167 -0
- package/Source/Shaders/ShadowVolumeAppearanceVS.glsl +101 -0
- package/Source/Shaders/ShadowVolumeAppearanceVS.js +103 -0
- package/Source/Shaders/ShadowVolumeFS.glsl +17 -0
- package/Source/Shaders/ShadowVolumeFS.js +19 -0
- package/Source/Shaders/SkyAtmosphereCommon.glsl +91 -0
- package/Source/Shaders/SkyAtmosphereCommon.js +93 -0
- package/Source/Shaders/SkyAtmosphereFS.glsl +64 -0
- package/Source/Shaders/SkyAtmosphereFS.js +66 -0
- package/Source/Shaders/SkyAtmosphereVS.glsl +30 -0
- package/Source/Shaders/SkyAtmosphereVS.js +32 -0
- package/Source/Shaders/SkyBoxFS.glsl +9 -0
- package/Source/Shaders/SkyBoxFS.js +11 -0
- package/Source/Shaders/SkyBoxVS.glsl +10 -0
- package/Source/Shaders/SkyBoxVS.js +12 -0
- package/Source/Shaders/SunFS.glsl +9 -0
- package/Source/Shaders/SunFS.js +11 -0
- package/Source/Shaders/SunTextureFS.glsl +55 -0
- package/Source/Shaders/SunTextureFS.js +57 -0
- package/Source/Shaders/SunVS.glsl +28 -0
- package/Source/Shaders/SunVS.js +30 -0
- package/Source/Shaders/Vector3DTileClampedPolylinesFS.glsl +52 -0
- package/Source/Shaders/Vector3DTileClampedPolylinesFS.js +54 -0
- package/Source/Shaders/Vector3DTileClampedPolylinesVS.glsl +85 -0
- package/Source/Shaders/Vector3DTileClampedPolylinesVS.js +87 -0
- package/Source/Shaders/Vector3DTilePolylinesVS.glsl +22 -0
- package/Source/Shaders/Vector3DTilePolylinesVS.js +24 -0
- package/Source/Shaders/VectorTileVS.glsl +9 -0
- package/Source/Shaders/VectorTileVS.js +11 -0
- package/Source/Shaders/ViewportQuadFS.glsl +16 -0
- package/Source/Shaders/ViewportQuadFS.js +18 -0
- package/Source/Shaders/ViewportQuadVS.glsl +10 -0
- package/Source/Shaders/ViewportQuadVS.js +12 -0
- package/Source/ThirdParty/Workers/basis_transcoder.js +21 -0
- package/Source/ThirdParty/Workers/draco_decoder_nodejs.js +118 -0
- package/Source/ThirdParty/Workers/package.json +1 -0
- package/Source/ThirdParty/Workers/pako_deflate.min.js +2 -0
- package/Source/ThirdParty/Workers/pako_inflate.min.js +2 -0
- package/Source/ThirdParty/Workers/z-worker-pako.js +1 -0
- package/Source/ThirdParty/basis_transcoder.wasm +0 -0
- package/Source/ThirdParty/draco_decoder.wasm +0 -0
- package/Source/ThirdParty/google-earth-dbroot-parser.js +8337 -0
- package/Source/Widget/CesiumWidget.css +124 -0
- package/Source/Widget/CesiumWidget.js +807 -0
- package/Source/Widget/lighter.css +14 -0
- package/Source/Workers/cesiumWorkerBootstrapper.js +2290 -0
- package/Source/Workers/package.json +1 -0
- package/Source/Workers/transferTypedArrayTest.js +22 -0
- package/Source/WorkersES6/combineGeometry.js +14 -0
- package/Source/WorkersES6/createBoxGeometry.js +10 -0
- package/Source/WorkersES6/createBoxOutlineGeometry.js +10 -0
- package/Source/WorkersES6/createCircleGeometry.js +18 -0
- package/Source/WorkersES6/createCircleOutlineGeometry.js +18 -0
- package/Source/WorkersES6/createCoplanarPolygonGeometry.js +10 -0
- package/Source/WorkersES6/createCoplanarPolygonOutlineGeometry.js +15 -0
- package/Source/WorkersES6/createCorridorGeometry.js +12 -0
- package/Source/WorkersES6/createCorridorOutlineGeometry.js +17 -0
- package/Source/WorkersES6/createCylinderGeometry.js +10 -0
- package/Source/WorkersES6/createCylinderOutlineGeometry.js +10 -0
- package/Source/WorkersES6/createEllipseGeometry.js +14 -0
- package/Source/WorkersES6/createEllipseOutlineGeometry.js +14 -0
- package/Source/WorkersES6/createEllipsoidGeometry.js +10 -0
- package/Source/WorkersES6/createEllipsoidOutlineGeometry.js +13 -0
- package/Source/WorkersES6/createFrustumGeometry.js +10 -0
- package/Source/WorkersES6/createFrustumOutlineGeometry.js +10 -0
- package/Source/WorkersES6/createGeometry.js +52 -0
- package/Source/WorkersES6/createGroundPolylineGeometry.js +16 -0
- package/Source/WorkersES6/createPlaneGeometry.js +10 -0
- package/Source/WorkersES6/createPlaneOutlineGeometry.js +10 -0
- package/Source/WorkersES6/createPolygonGeometry.js +12 -0
- package/Source/WorkersES6/createPolygonOutlineGeometry.js +12 -0
- package/Source/WorkersES6/createPolylineGeometry.js +12 -0
- package/Source/WorkersES6/createPolylineVolumeGeometry.js +17 -0
- package/Source/WorkersES6/createPolylineVolumeOutlineGeometry.js +22 -0
- package/Source/WorkersES6/createRectangleGeometry.js +14 -0
- package/Source/WorkersES6/createRectangleOutlineGeometry.js +17 -0
- package/Source/WorkersES6/createSimplePolylineGeometry.js +17 -0
- package/Source/WorkersES6/createSphereGeometry.js +10 -0
- package/Source/WorkersES6/createSphereOutlineGeometry.js +10 -0
- package/Source/WorkersES6/createTaskProcessorWorker.js +129 -0
- package/Source/WorkersES6/createVectorTileClampedPolylines.js +541 -0
- package/Source/WorkersES6/createVectorTileGeometries.js +414 -0
- package/Source/WorkersES6/createVectorTilePoints.js +81 -0
- package/Source/WorkersES6/createVectorTilePolygons.js +412 -0
- package/Source/WorkersES6/createVectorTilePolylines.js +210 -0
- package/Source/WorkersES6/createVerticesFromGoogleEarthEnterpriseBuffer.js +653 -0
- package/Source/WorkersES6/createVerticesFromHeightmap.js +53 -0
- package/Source/WorkersES6/createVerticesFromQuantizedTerrainMesh.js +549 -0
- package/Source/WorkersES6/createWallGeometry.js +12 -0
- package/Source/WorkersES6/createWallOutlineGeometry.js +12 -0
- package/Source/WorkersES6/decodeDraco.js +381 -0
- package/Source/WorkersES6/decodeGoogleEarthEnterprisePacket.js +268 -0
- package/Source/WorkersES6/decodeI3S.js +1044 -0
- package/Source/WorkersES6/transcodeKTX2.js +316 -0
- package/Source/WorkersES6/upsampleQuantizedTerrainMesh.js +680 -0
- package/index.d.ts +41767 -0
- package/index.js +1085 -0
- package/package.json +73 -0
|
@@ -0,0 +1,1146 @@
|
|
|
1
|
+
import Check from "../Core/Check.js";
|
|
2
|
+
import defaultValue from "../Core/defaultValue.js";
|
|
3
|
+
import DeveloperError from "../Core/DeveloperError.js";
|
|
4
|
+
import defined from "../Core/defined.js";
|
|
5
|
+
import destroyObject from "../Core/destroyObject.js";
|
|
6
|
+
import getJsonFromTypedArray from "../Core/getJsonFromTypedArray.js";
|
|
7
|
+
import RuntimeError from "../Core/RuntimeError.js";
|
|
8
|
+
import hasExtension from "./hasExtension.js";
|
|
9
|
+
import ImplicitAvailabilityBitstream from "./ImplicitAvailabilityBitstream.js";
|
|
10
|
+
import ImplicitMetadataView from "./ImplicitMetadataView.js";
|
|
11
|
+
import ImplicitSubdivisionScheme from "./ImplicitSubdivisionScheme.js";
|
|
12
|
+
import ImplicitSubtreeMetadata from "./ImplicitSubtreeMetadata.js";
|
|
13
|
+
import MetadataTable from "./MetadataTable.js";
|
|
14
|
+
import ResourceCache from "./ResourceCache.js";
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* An object representing a single subtree in an implicit tileset
|
|
18
|
+
* including availability.
|
|
19
|
+
* <p>
|
|
20
|
+
* Subtrees handle tile metadata, defined in the subtree JSON in either
|
|
21
|
+
* tileMetadata (3D Tiles 1.1) or the <code>3DTILES_metadata</code> extension.
|
|
22
|
+
* Subtrees also handle content metadata and metadata about the subtree itself.
|
|
23
|
+
* </p>
|
|
24
|
+
*
|
|
25
|
+
* @see {@link https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_metadata#implicit-tile-properties|Implicit Tile Properties in the 3DTILES_metadata specification}
|
|
26
|
+
*
|
|
27
|
+
* @alias ImplicitSubtree
|
|
28
|
+
* @constructor
|
|
29
|
+
*
|
|
30
|
+
* @param {Resource} resource The resource for this subtree. This is used for fetching external buffers as needed.
|
|
31
|
+
* @param {Object} [json] The JSON object for this subtree. Mutually exclusive with subtreeView.
|
|
32
|
+
* @param {Uint8Array} [subtreeView] The contents of a subtree binary in a Uint8Array. Mutually exclusive with json.
|
|
33
|
+
* @param {ImplicitTileset} implicitTileset The implicit tileset. This includes information about the size of subtrees
|
|
34
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The coordinates of the subtree's root tile.
|
|
35
|
+
*
|
|
36
|
+
* @exception {DeveloperError} One of json and subtreeView must be defined.
|
|
37
|
+
*
|
|
38
|
+
* @private
|
|
39
|
+
* @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.
|
|
40
|
+
*/
|
|
41
|
+
function ImplicitSubtree(
|
|
42
|
+
resource,
|
|
43
|
+
json,
|
|
44
|
+
subtreeView,
|
|
45
|
+
implicitTileset,
|
|
46
|
+
implicitCoordinates
|
|
47
|
+
) {
|
|
48
|
+
//>>includeStart('debug', pragmas.debug);
|
|
49
|
+
Check.typeOf.object("resource", resource);
|
|
50
|
+
if (defined(json) === defined(subtreeView)) {
|
|
51
|
+
throw new DeveloperError("One of json and subtreeView must be defined.");
|
|
52
|
+
}
|
|
53
|
+
Check.typeOf.object("implicitTileset", implicitTileset);
|
|
54
|
+
Check.typeOf.object("implicitCoordinates", implicitCoordinates);
|
|
55
|
+
//>>includeEnd('debug');
|
|
56
|
+
|
|
57
|
+
this._resource = resource;
|
|
58
|
+
this._subtreeJson = undefined;
|
|
59
|
+
this._bufferLoader = undefined;
|
|
60
|
+
this._tileAvailability = undefined;
|
|
61
|
+
this._contentAvailabilityBitstreams = [];
|
|
62
|
+
this._childSubtreeAvailability = undefined;
|
|
63
|
+
this._implicitCoordinates = implicitCoordinates;
|
|
64
|
+
this._subtreeLevels = implicitTileset.subtreeLevels;
|
|
65
|
+
this._subdivisionScheme = implicitTileset.subdivisionScheme;
|
|
66
|
+
this._branchingFactor = implicitTileset.branchingFactor;
|
|
67
|
+
|
|
68
|
+
// properties for metadata
|
|
69
|
+
this._metadata = undefined;
|
|
70
|
+
this._tileMetadataTable = undefined;
|
|
71
|
+
this._tilePropertyTableJson = undefined;
|
|
72
|
+
|
|
73
|
+
this._contentMetadataTables = [];
|
|
74
|
+
this._contentPropertyTableJsons = [];
|
|
75
|
+
|
|
76
|
+
// Jump buffers are maps of availability bit index to entity ID
|
|
77
|
+
this._tileJumpBuffer = undefined;
|
|
78
|
+
this._contentJumpBuffers = [];
|
|
79
|
+
|
|
80
|
+
this._readyPromise = initialize(this, json, subtreeView, implicitTileset);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
Object.defineProperties(ImplicitSubtree.prototype, {
|
|
84
|
+
/**
|
|
85
|
+
* A promise that resolves once all necessary availability buffers
|
|
86
|
+
* are loaded.
|
|
87
|
+
*
|
|
88
|
+
* @type {Promise}
|
|
89
|
+
* @readonly
|
|
90
|
+
* @private
|
|
91
|
+
*/
|
|
92
|
+
readyPromise: {
|
|
93
|
+
get: function () {
|
|
94
|
+
return this._readyPromise;
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* When subtree metadata is present (3D Tiles 1.1), this property stores an {@link ImplicitSubtreeMetadata} instance
|
|
100
|
+
*
|
|
101
|
+
* @type {ImplicitSubtreeMetadata}
|
|
102
|
+
* @readonly
|
|
103
|
+
* @private
|
|
104
|
+
*/
|
|
105
|
+
metadata: {
|
|
106
|
+
get: function () {
|
|
107
|
+
return this._metadata;
|
|
108
|
+
},
|
|
109
|
+
},
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* When tile metadata is present (3D Tiles 1.1) or the <code>3DTILES_metadata</code> extension is used,
|
|
113
|
+
* this property stores a {@link MetadataTable} instance for the tiles in the subtree.
|
|
114
|
+
*
|
|
115
|
+
* @type {MetadataTable}
|
|
116
|
+
* @readonly
|
|
117
|
+
* @private
|
|
118
|
+
*/
|
|
119
|
+
tileMetadataTable: {
|
|
120
|
+
get: function () {
|
|
121
|
+
return this._tileMetadataTable;
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* When tile metadata is present (3D Tiles 1.1) or the <code>3DTILES_metadata</code> extension is used,
|
|
127
|
+
* this property stores the JSON from the extension. This is used by {@link TileMetadata}
|
|
128
|
+
* to get the extras and extensions for the tiles in the subtree.
|
|
129
|
+
*
|
|
130
|
+
* @type {Object}
|
|
131
|
+
* @readonly
|
|
132
|
+
* @private
|
|
133
|
+
*/
|
|
134
|
+
tilePropertyTableJson: {
|
|
135
|
+
get: function () {
|
|
136
|
+
return this._tilePropertyTableJson;
|
|
137
|
+
},
|
|
138
|
+
},
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* When content metadata is present (3D Tiles 1.1), this property stores
|
|
142
|
+
* an array of {@link MetadataTable} instances for the contents in the subtree.
|
|
143
|
+
*
|
|
144
|
+
* @type {Array}
|
|
145
|
+
* @readonly
|
|
146
|
+
* @private
|
|
147
|
+
*/
|
|
148
|
+
contentMetadataTables: {
|
|
149
|
+
get: function () {
|
|
150
|
+
return this._contentMetadataTables;
|
|
151
|
+
},
|
|
152
|
+
},
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* When content metadata is present (3D Tiles 1.1), this property
|
|
156
|
+
* an array of the JSONs from the extension. This is used to get the extras
|
|
157
|
+
* and extensions for the contents in the subtree.
|
|
158
|
+
*
|
|
159
|
+
* @type {Array}
|
|
160
|
+
* @readonly
|
|
161
|
+
* @private
|
|
162
|
+
*/
|
|
163
|
+
contentPropertyTableJsons: {
|
|
164
|
+
get: function () {
|
|
165
|
+
return this._contentPropertyTableJsons;
|
|
166
|
+
},
|
|
167
|
+
},
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Gets the implicit tile coordinates for the root of the subtree.
|
|
171
|
+
*
|
|
172
|
+
* @type {ImplicitTileCoordinates}
|
|
173
|
+
* @readonly
|
|
174
|
+
* @private
|
|
175
|
+
*/
|
|
176
|
+
implicitCoordinates: {
|
|
177
|
+
get: function () {
|
|
178
|
+
return this._implicitCoordinates;
|
|
179
|
+
},
|
|
180
|
+
},
|
|
181
|
+
});
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Check if a specific tile is available at an index of the tile availability bitstream
|
|
185
|
+
*
|
|
186
|
+
* @param {Number} index The index of the desired tile
|
|
187
|
+
* @returns {Boolean} The value of the i-th bit
|
|
188
|
+
* @private
|
|
189
|
+
*/
|
|
190
|
+
ImplicitSubtree.prototype.tileIsAvailableAtIndex = function (index) {
|
|
191
|
+
return this._tileAvailability.getBit(index);
|
|
192
|
+
};
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* Check if a specific tile is available at an implicit tile coordinate
|
|
196
|
+
*
|
|
197
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a tile
|
|
198
|
+
* @returns {Boolean} The value of the i-th bit
|
|
199
|
+
* @private
|
|
200
|
+
*/
|
|
201
|
+
ImplicitSubtree.prototype.tileIsAvailableAtCoordinates = function (
|
|
202
|
+
implicitCoordinates
|
|
203
|
+
) {
|
|
204
|
+
const index = this.getTileIndex(implicitCoordinates);
|
|
205
|
+
return this.tileIsAvailableAtIndex(index);
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
/**
|
|
209
|
+
* Check if a specific tile's content is available at an index of the content availability bitstream
|
|
210
|
+
*
|
|
211
|
+
* @param {Number} index The index of the desired tile
|
|
212
|
+
* @param {Number} [contentIndex=0] The index of the desired content when multiple contents are used.
|
|
213
|
+
* @returns {Boolean} The value of the i-th bit
|
|
214
|
+
* @private
|
|
215
|
+
*/
|
|
216
|
+
ImplicitSubtree.prototype.contentIsAvailableAtIndex = function (
|
|
217
|
+
index,
|
|
218
|
+
contentIndex
|
|
219
|
+
) {
|
|
220
|
+
contentIndex = defaultValue(contentIndex, 0);
|
|
221
|
+
//>>includeStart('debug', pragmas.debug);
|
|
222
|
+
if (
|
|
223
|
+
contentIndex < 0 ||
|
|
224
|
+
contentIndex >= this._contentAvailabilityBitstreams.length
|
|
225
|
+
) {
|
|
226
|
+
throw new DeveloperError("contentIndex out of bounds.");
|
|
227
|
+
}
|
|
228
|
+
//>>includeEnd('debug');
|
|
229
|
+
|
|
230
|
+
return this._contentAvailabilityBitstreams[contentIndex].getBit(index);
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
/**
|
|
234
|
+
* Check if a specific tile's content is available at an implicit tile coordinate
|
|
235
|
+
*
|
|
236
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a tile
|
|
237
|
+
* @param {Number} [contentIndex=0] The index of the desired content when the <code>3DTILES_multiple_contents</code> extension is used.
|
|
238
|
+
* @returns {Boolean} The value of the i-th bit
|
|
239
|
+
* @private
|
|
240
|
+
*/
|
|
241
|
+
ImplicitSubtree.prototype.contentIsAvailableAtCoordinates = function (
|
|
242
|
+
implicitCoordinates,
|
|
243
|
+
contentIndex
|
|
244
|
+
) {
|
|
245
|
+
const index = this.getTileIndex(implicitCoordinates);
|
|
246
|
+
return this.contentIsAvailableAtIndex(index, contentIndex);
|
|
247
|
+
};
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* Check if a child subtree is available at an index of the child subtree availability bitstream
|
|
251
|
+
*
|
|
252
|
+
* @param {Number} index The index of the desired child subtree
|
|
253
|
+
* @returns {Boolean} The value of the i-th bit
|
|
254
|
+
* @private
|
|
255
|
+
*/
|
|
256
|
+
ImplicitSubtree.prototype.childSubtreeIsAvailableAtIndex = function (index) {
|
|
257
|
+
return this._childSubtreeAvailability.getBit(index);
|
|
258
|
+
};
|
|
259
|
+
|
|
260
|
+
/**
|
|
261
|
+
* Check if a specific child subtree is available at an implicit tile coordinate
|
|
262
|
+
*
|
|
263
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a child subtree
|
|
264
|
+
* @returns {Boolean} The value of the i-th bit
|
|
265
|
+
* @private
|
|
266
|
+
*/
|
|
267
|
+
ImplicitSubtree.prototype.childSubtreeIsAvailableAtCoordinates = function (
|
|
268
|
+
implicitCoordinates
|
|
269
|
+
) {
|
|
270
|
+
const index = this.getChildSubtreeIndex(implicitCoordinates);
|
|
271
|
+
return this.childSubtreeIsAvailableAtIndex(index);
|
|
272
|
+
};
|
|
273
|
+
|
|
274
|
+
/**
|
|
275
|
+
* Get the index of the first node at the given level within this subtree.
|
|
276
|
+
* e.g. for a quadtree:
|
|
277
|
+
* <ul>
|
|
278
|
+
* <li>Level 0 starts at index 0</li>
|
|
279
|
+
* <li>Level 1 starts at index 1</li>
|
|
280
|
+
* <li>Level 2 starts at index 5</li>
|
|
281
|
+
* </ul>
|
|
282
|
+
*
|
|
283
|
+
* @param {Number} level The 0-indexed level number relative to the root of the subtree
|
|
284
|
+
* @returns {Number} The first index at the desired level
|
|
285
|
+
* @private
|
|
286
|
+
*/
|
|
287
|
+
ImplicitSubtree.prototype.getLevelOffset = function (level) {
|
|
288
|
+
const branchingFactor = this._branchingFactor;
|
|
289
|
+
return (Math.pow(branchingFactor, level) - 1) / (branchingFactor - 1);
|
|
290
|
+
};
|
|
291
|
+
|
|
292
|
+
/**
|
|
293
|
+
* Get the morton index of a tile's parent. This is equivalent to
|
|
294
|
+
* chopping off the last 2 (quadtree) or 3 (octree) bits of the morton
|
|
295
|
+
* index.
|
|
296
|
+
*
|
|
297
|
+
* @param {Number} childIndex The morton index of the child tile relative to its parent
|
|
298
|
+
* @returns {Number} The index of the child's parent node
|
|
299
|
+
* @private
|
|
300
|
+
*/
|
|
301
|
+
ImplicitSubtree.prototype.getParentMortonIndex = function (mortonIndex) {
|
|
302
|
+
let bitsPerLevel = 2;
|
|
303
|
+
if (this._subdivisionScheme === ImplicitSubdivisionScheme.OCTREE) {
|
|
304
|
+
bitsPerLevel = 3;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
return mortonIndex >> bitsPerLevel;
|
|
308
|
+
};
|
|
309
|
+
|
|
310
|
+
/**
|
|
311
|
+
* Parse all relevant information out of the subtree. This fetches any
|
|
312
|
+
* external buffers that are used by the implicit tileset. When finished,
|
|
313
|
+
* it resolves/rejects subtree.readyPromise.
|
|
314
|
+
*
|
|
315
|
+
* @param {ImplicitSubtree} subtree The subtree
|
|
316
|
+
* @param {Object} [json] The JSON object for this subtree. If parsing from a binary subtree file, this will be undefined.
|
|
317
|
+
* @param {Uint8Array} [subtreeView] The contents of the subtree binary
|
|
318
|
+
* @param {ImplicitTileset} implicitTileset The implicit tileset this subtree belongs to.
|
|
319
|
+
* @private
|
|
320
|
+
*/
|
|
321
|
+
function initialize(subtree, json, subtreeView, implicitTileset) {
|
|
322
|
+
let chunks;
|
|
323
|
+
if (defined(json)) {
|
|
324
|
+
chunks = {
|
|
325
|
+
json: json,
|
|
326
|
+
binary: undefined,
|
|
327
|
+
};
|
|
328
|
+
} else {
|
|
329
|
+
chunks = parseSubtreeChunks(subtreeView);
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
const subtreeJson = chunks.json;
|
|
333
|
+
subtree._subtreeJson = subtreeJson;
|
|
334
|
+
|
|
335
|
+
let tilePropertyTableJson;
|
|
336
|
+
if (hasExtension(subtreeJson, "3DTILES_metadata")) {
|
|
337
|
+
tilePropertyTableJson = subtreeJson.extensions["3DTILES_metadata"];
|
|
338
|
+
} else if (defined(subtreeJson.tileMetadata)) {
|
|
339
|
+
const propertyTableIndex = subtreeJson.tileMetadata;
|
|
340
|
+
tilePropertyTableJson = subtreeJson.propertyTables[propertyTableIndex];
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
const contentPropertyTableJsons = [];
|
|
344
|
+
if (defined(subtreeJson.contentMetadata)) {
|
|
345
|
+
const length = subtreeJson.contentMetadata.length;
|
|
346
|
+
for (let i = 0; i < length; i++) {
|
|
347
|
+
const propertyTableIndex = subtreeJson.contentMetadata[i];
|
|
348
|
+
contentPropertyTableJsons.push(
|
|
349
|
+
subtreeJson.propertyTables[propertyTableIndex]
|
|
350
|
+
);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
let metadata;
|
|
355
|
+
const schema = implicitTileset.metadataSchema;
|
|
356
|
+
const subtreeMetadata = subtreeJson.subtreeMetadata;
|
|
357
|
+
if (defined(subtreeMetadata)) {
|
|
358
|
+
const metadataClass = subtreeMetadata.class;
|
|
359
|
+
const subtreeMetadataClass = schema.classes[metadataClass];
|
|
360
|
+
metadata = new ImplicitSubtreeMetadata({
|
|
361
|
+
subtreeMetadata: subtreeMetadata,
|
|
362
|
+
class: subtreeMetadataClass,
|
|
363
|
+
});
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
subtree._metadata = metadata;
|
|
367
|
+
subtree._tilePropertyTableJson = tilePropertyTableJson;
|
|
368
|
+
subtree._contentPropertyTableJsons = contentPropertyTableJsons;
|
|
369
|
+
|
|
370
|
+
// if no contentAvailability is specified, no tile in the subtree has
|
|
371
|
+
// content
|
|
372
|
+
const defaultContentAvailability = {
|
|
373
|
+
constant: 0,
|
|
374
|
+
};
|
|
375
|
+
|
|
376
|
+
// In 3D Tiles 1.1, content availability is provided in an array in the subtree JSON
|
|
377
|
+
// regardless of whether or not it contains multiple contents. This differs from previous
|
|
378
|
+
// schemas, where content availability is either a single object in the subtree JSON or
|
|
379
|
+
// as an array in the 3DTILES_multiple_contents extension.
|
|
380
|
+
//
|
|
381
|
+
// After identifying how availability is stored, put the results in this new array for consistent processing later
|
|
382
|
+
subtreeJson.contentAvailabilityHeaders = [];
|
|
383
|
+
if (hasExtension(subtreeJson, "3DTILES_multiple_contents")) {
|
|
384
|
+
subtreeJson.contentAvailabilityHeaders =
|
|
385
|
+
subtreeJson.extensions["3DTILES_multiple_contents"].contentAvailability;
|
|
386
|
+
} else if (Array.isArray(subtreeJson.contentAvailability)) {
|
|
387
|
+
subtreeJson.contentAvailabilityHeaders = subtreeJson.contentAvailability;
|
|
388
|
+
} else {
|
|
389
|
+
subtreeJson.contentAvailabilityHeaders.push(
|
|
390
|
+
defaultValue(subtreeJson.contentAvailability, defaultContentAvailability)
|
|
391
|
+
);
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
const bufferHeaders = preprocessBuffers(subtreeJson.buffers);
|
|
395
|
+
const bufferViewHeaders = preprocessBufferViews(
|
|
396
|
+
subtreeJson.bufferViews,
|
|
397
|
+
bufferHeaders
|
|
398
|
+
);
|
|
399
|
+
|
|
400
|
+
// Buffers and buffer views are inactive until explicitly marked active.
|
|
401
|
+
// This way we can avoid fetching buffers that will not be used.
|
|
402
|
+
markActiveBufferViews(subtreeJson, bufferViewHeaders);
|
|
403
|
+
if (defined(tilePropertyTableJson)) {
|
|
404
|
+
markActiveMetadataBufferViews(tilePropertyTableJson, bufferViewHeaders);
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
for (let i = 0; i < contentPropertyTableJsons.length; i++) {
|
|
408
|
+
const contentPropertyTableJson = contentPropertyTableJsons[i];
|
|
409
|
+
markActiveMetadataBufferViews(contentPropertyTableJson, bufferViewHeaders);
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
return requestActiveBuffers(subtree, bufferHeaders, chunks.binary).then(
|
|
413
|
+
function (buffersU8) {
|
|
414
|
+
const bufferViewsU8 = parseActiveBufferViews(
|
|
415
|
+
bufferViewHeaders,
|
|
416
|
+
buffersU8
|
|
417
|
+
);
|
|
418
|
+
parseAvailability(subtree, subtreeJson, implicitTileset, bufferViewsU8);
|
|
419
|
+
|
|
420
|
+
if (defined(tilePropertyTableJson)) {
|
|
421
|
+
parseTileMetadataTable(subtree, implicitTileset, bufferViewsU8);
|
|
422
|
+
makeTileJumpBuffer(subtree);
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
parseContentMetadataTables(subtree, implicitTileset, bufferViewsU8);
|
|
426
|
+
makeContentJumpBuffers(subtree);
|
|
427
|
+
|
|
428
|
+
return subtree;
|
|
429
|
+
}
|
|
430
|
+
);
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
/**
|
|
434
|
+
* A helper object for storing the two parts of the subtree binary
|
|
435
|
+
*
|
|
436
|
+
* @typedef {Object} SubtreeChunks
|
|
437
|
+
* @property {Object} json The json chunk of the subtree
|
|
438
|
+
* @property {Uint8Array} binary The binary chunk of the subtree. This represents the internal buffer.
|
|
439
|
+
* @private
|
|
440
|
+
*/
|
|
441
|
+
|
|
442
|
+
/**
|
|
443
|
+
* Given the binary contents of a subtree, split into JSON and binary chunks
|
|
444
|
+
*
|
|
445
|
+
* @param {Uint8Array} subtreeView The subtree binary
|
|
446
|
+
* @returns {SubtreeChunks} An object containing the JSON and binary chunks.
|
|
447
|
+
* @private
|
|
448
|
+
*/
|
|
449
|
+
function parseSubtreeChunks(subtreeView) {
|
|
450
|
+
// Parse the header
|
|
451
|
+
const littleEndian = true;
|
|
452
|
+
const subtreeReader = new DataView(
|
|
453
|
+
subtreeView.buffer,
|
|
454
|
+
subtreeView.byteOffset
|
|
455
|
+
);
|
|
456
|
+
// Skip to the chunk lengths
|
|
457
|
+
let byteOffset = 8;
|
|
458
|
+
|
|
459
|
+
// Read the bottom 32 bits of the 64-bit byte length. This is ok for now because:
|
|
460
|
+
// 1) not all browsers have native 64-bit operations
|
|
461
|
+
// 2) the data is well under 4GB
|
|
462
|
+
const jsonByteLength = subtreeReader.getUint32(byteOffset, littleEndian);
|
|
463
|
+
byteOffset += 8;
|
|
464
|
+
const binaryByteLength = subtreeReader.getUint32(byteOffset, littleEndian);
|
|
465
|
+
byteOffset += 8;
|
|
466
|
+
|
|
467
|
+
const subtreeJson = getJsonFromTypedArray(
|
|
468
|
+
subtreeView,
|
|
469
|
+
byteOffset,
|
|
470
|
+
jsonByteLength
|
|
471
|
+
);
|
|
472
|
+
byteOffset += jsonByteLength;
|
|
473
|
+
const subtreeBinary = subtreeView.subarray(
|
|
474
|
+
byteOffset,
|
|
475
|
+
byteOffset + binaryByteLength
|
|
476
|
+
);
|
|
477
|
+
|
|
478
|
+
return {
|
|
479
|
+
json: subtreeJson,
|
|
480
|
+
binary: subtreeBinary,
|
|
481
|
+
};
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
/**
|
|
485
|
+
* A buffer header is the JSON header from the subtree JSON chunk plus
|
|
486
|
+
* a couple extra boolean flags for easy reference.
|
|
487
|
+
*
|
|
488
|
+
* Buffers are assumed inactive until explicitly marked active. This is used
|
|
489
|
+
* to avoid fetching unneeded buffers.
|
|
490
|
+
*
|
|
491
|
+
* @typedef {Object} BufferHeader
|
|
492
|
+
* @property {Boolean} isExternal True if this is an external buffer
|
|
493
|
+
* @property {Boolean} isActive Whether this buffer is currently used.
|
|
494
|
+
* @property {String} [uri] The URI of the buffer (external buffers only)
|
|
495
|
+
* @property {Number} byteLength The byte length of the buffer, including any padding contained within.
|
|
496
|
+
* @private
|
|
497
|
+
*/
|
|
498
|
+
|
|
499
|
+
/**
|
|
500
|
+
* Iterate over the list of buffers from the subtree JSON and add the
|
|
501
|
+
* isExternal and isActive fields for easier parsing later. This modifies
|
|
502
|
+
* the objects in place.
|
|
503
|
+
*
|
|
504
|
+
* @param {Object[]} [bufferHeaders=[]] The JSON from subtreeJson.buffers.
|
|
505
|
+
* @returns {BufferHeader[]} The same array of headers with additional fields.
|
|
506
|
+
* @private
|
|
507
|
+
*/
|
|
508
|
+
function preprocessBuffers(bufferHeaders) {
|
|
509
|
+
bufferHeaders = defined(bufferHeaders) ? bufferHeaders : [];
|
|
510
|
+
for (let i = 0; i < bufferHeaders.length; i++) {
|
|
511
|
+
const bufferHeader = bufferHeaders[i];
|
|
512
|
+
bufferHeader.isExternal = defined(bufferHeader.uri);
|
|
513
|
+
bufferHeader.isActive = false;
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
return bufferHeaders;
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
/**
|
|
520
|
+
* A buffer header is the JSON header from the subtree JSON chunk plus
|
|
521
|
+
* the isActive flag and a reference to the header for the underlying buffer
|
|
522
|
+
*
|
|
523
|
+
* @typedef {Object} BufferViewHeader
|
|
524
|
+
* @property {BufferHeader} bufferHeader A reference to the header for the underlying buffer
|
|
525
|
+
* @property {Boolean} isActive Whether this bufferView is currently used.
|
|
526
|
+
* @property {Number} buffer The index of the underlying buffer.
|
|
527
|
+
* @property {Number} byteOffset The start byte of the bufferView within the buffer.
|
|
528
|
+
* @property {Number} byteLength The length of the bufferView. No padding is included in this length.
|
|
529
|
+
* @private
|
|
530
|
+
*/
|
|
531
|
+
|
|
532
|
+
/**
|
|
533
|
+
* Iterate the list of buffer views from the subtree JSON and add the
|
|
534
|
+
* isActive flag. Also save a reference to the bufferHeader
|
|
535
|
+
*
|
|
536
|
+
* @param {Object[]} [bufferViewHeaders=[]] The JSON from subtree.bufferViews
|
|
537
|
+
* @param {BufferHeader[]} bufferHeaders The preprocessed buffer headers
|
|
538
|
+
* @returns {BufferViewHeader[]} The same array of bufferView headers with additional fields
|
|
539
|
+
* @private
|
|
540
|
+
*/
|
|
541
|
+
function preprocessBufferViews(bufferViewHeaders, bufferHeaders) {
|
|
542
|
+
bufferViewHeaders = defined(bufferViewHeaders) ? bufferViewHeaders : [];
|
|
543
|
+
for (let i = 0; i < bufferViewHeaders.length; i++) {
|
|
544
|
+
const bufferViewHeader = bufferViewHeaders[i];
|
|
545
|
+
const bufferHeader = bufferHeaders[bufferViewHeader.buffer];
|
|
546
|
+
bufferViewHeader.bufferHeader = bufferHeader;
|
|
547
|
+
bufferViewHeader.isActive = false;
|
|
548
|
+
}
|
|
549
|
+
return bufferViewHeaders;
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
/**
|
|
553
|
+
* Determine which buffer views need to be loaded into memory. This includes:
|
|
554
|
+
*
|
|
555
|
+
* <ul>
|
|
556
|
+
* <li>The tile availability bitstream (if a bitstream is defined)</li>
|
|
557
|
+
* <li>The content availability bitstream(s) (if a bitstream is defined)</li>
|
|
558
|
+
* <li>The child subtree availability bitstream (if a bitstream is defined)</li>
|
|
559
|
+
* </ul>
|
|
560
|
+
*
|
|
561
|
+
* <p>
|
|
562
|
+
* This function modifies the buffer view headers' isActive flags in place.
|
|
563
|
+
* </p>
|
|
564
|
+
*
|
|
565
|
+
* @param {Object[]} subtreeJson The JSON chunk from the subtree
|
|
566
|
+
* @param {BufferViewHeader[]} bufferViewHeaders The preprocessed buffer view headers
|
|
567
|
+
* @private
|
|
568
|
+
*/
|
|
569
|
+
function markActiveBufferViews(subtreeJson, bufferViewHeaders) {
|
|
570
|
+
let header;
|
|
571
|
+
const tileAvailabilityHeader = subtreeJson.tileAvailability;
|
|
572
|
+
|
|
573
|
+
// Check for bitstream first, which is part of the current schema.
|
|
574
|
+
// bufferView is the name of the bitstream from an older schema.
|
|
575
|
+
if (defined(tileAvailabilityHeader.bitstream)) {
|
|
576
|
+
header = bufferViewHeaders[tileAvailabilityHeader.bitstream];
|
|
577
|
+
} else if (defined(tileAvailabilityHeader.bufferView)) {
|
|
578
|
+
header = bufferViewHeaders[tileAvailabilityHeader.bufferView];
|
|
579
|
+
}
|
|
580
|
+
|
|
581
|
+
if (defined(header)) {
|
|
582
|
+
header.isActive = true;
|
|
583
|
+
header.bufferHeader.isActive = true;
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
const contentAvailabilityHeaders = subtreeJson.contentAvailabilityHeaders;
|
|
587
|
+
for (let i = 0; i < contentAvailabilityHeaders.length; i++) {
|
|
588
|
+
header = undefined;
|
|
589
|
+
if (defined(contentAvailabilityHeaders[i].bitstream)) {
|
|
590
|
+
header = bufferViewHeaders[contentAvailabilityHeaders[i].bitstream];
|
|
591
|
+
} else if (defined(contentAvailabilityHeaders[i].bufferView)) {
|
|
592
|
+
header = bufferViewHeaders[contentAvailabilityHeaders[i].bufferView];
|
|
593
|
+
}
|
|
594
|
+
|
|
595
|
+
if (defined(header)) {
|
|
596
|
+
header.isActive = true;
|
|
597
|
+
header.bufferHeader.isActive = true;
|
|
598
|
+
}
|
|
599
|
+
}
|
|
600
|
+
|
|
601
|
+
header = undefined;
|
|
602
|
+
const childSubtreeAvailabilityHeader = subtreeJson.childSubtreeAvailability;
|
|
603
|
+
if (defined(childSubtreeAvailabilityHeader.bitstream)) {
|
|
604
|
+
header = bufferViewHeaders[childSubtreeAvailabilityHeader.bitstream];
|
|
605
|
+
} else if (defined(childSubtreeAvailabilityHeader.bufferView)) {
|
|
606
|
+
header = bufferViewHeaders[childSubtreeAvailabilityHeader.bufferView];
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
if (defined(header)) {
|
|
610
|
+
header.isActive = true;
|
|
611
|
+
header.bufferHeader.isActive = true;
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
|
|
615
|
+
/**
|
|
616
|
+
* For handling metadata, look over the tile and content metadata buffers
|
|
617
|
+
* <p>
|
|
618
|
+
* This always loads all of the metadata immediately. Future iterations may
|
|
619
|
+
* allow filtering this to avoid downloading unneeded buffers.
|
|
620
|
+
* </p>
|
|
621
|
+
*
|
|
622
|
+
* @param {Object} propertyTableJson The property table JSON for either a tile or some content
|
|
623
|
+
* @param {BufferViewHeader[]} bufferViewHeaders The preprocessed buffer view headers
|
|
624
|
+
* @private
|
|
625
|
+
*/
|
|
626
|
+
function markActiveMetadataBufferViews(propertyTableJson, bufferViewHeaders) {
|
|
627
|
+
const properties = propertyTableJson.properties;
|
|
628
|
+
let header;
|
|
629
|
+
for (const key in properties) {
|
|
630
|
+
if (properties.hasOwnProperty(key)) {
|
|
631
|
+
const metadataHeader = properties[key];
|
|
632
|
+
|
|
633
|
+
// An older spec used bufferView
|
|
634
|
+
const valuesBufferView = defaultValue(
|
|
635
|
+
metadataHeader.values,
|
|
636
|
+
metadataHeader.bufferView
|
|
637
|
+
);
|
|
638
|
+
header = bufferViewHeaders[valuesBufferView];
|
|
639
|
+
header.isActive = true;
|
|
640
|
+
header.bufferHeader.isActive = true;
|
|
641
|
+
|
|
642
|
+
// An older spec used stringOffsetBufferView
|
|
643
|
+
const stringOffsetBufferView = defaultValue(
|
|
644
|
+
metadataHeader.stringOffsets,
|
|
645
|
+
metadataHeader.stringOffsetBufferView
|
|
646
|
+
);
|
|
647
|
+
if (defined(stringOffsetBufferView)) {
|
|
648
|
+
header = bufferViewHeaders[stringOffsetBufferView];
|
|
649
|
+
header.isActive = true;
|
|
650
|
+
header.bufferHeader.isActive = true;
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
// an older spec used arrayOffsetBufferView
|
|
654
|
+
const arrayOffsetBufferView = defaultValue(
|
|
655
|
+
metadataHeader.arrayOffsets,
|
|
656
|
+
metadataHeader.arrayOffsetBufferView
|
|
657
|
+
);
|
|
658
|
+
if (defined(arrayOffsetBufferView)) {
|
|
659
|
+
header = bufferViewHeaders[arrayOffsetBufferView];
|
|
660
|
+
header.isActive = true;
|
|
661
|
+
header.bufferHeader.isActive = true;
|
|
662
|
+
}
|
|
663
|
+
}
|
|
664
|
+
}
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
/**
|
|
668
|
+
* Go through the list of buffers and gather all the active ones into a
|
|
669
|
+
* a dictionary. Since external buffers are allowed, this sometimes involves
|
|
670
|
+
* fetching separate binary files. Consequently, this method returns a promise.
|
|
671
|
+
* <p>
|
|
672
|
+
* The results are put into a dictionary object. The keys are indices of
|
|
673
|
+
* buffers, and the values are Uint8Arrays of the contents. Only buffers
|
|
674
|
+
* marked with the isActive flag are fetched.
|
|
675
|
+
* </p>
|
|
676
|
+
* <p>
|
|
677
|
+
* The internal buffer (the subtree's binary chunk) is also stored in this
|
|
678
|
+
* dictionary if it is marked active.
|
|
679
|
+
* </p>
|
|
680
|
+
* @param {ImplicitSubtree} subtree The subtree
|
|
681
|
+
* @param {BufferHeader[]} bufferHeaders The preprocessed buffer headers
|
|
682
|
+
* @param {Uint8Array} internalBuffer The binary chunk of the subtree file
|
|
683
|
+
* @returns {Promise<Object>} A promise resolving to the dictionary of active buffers
|
|
684
|
+
* @private
|
|
685
|
+
*/
|
|
686
|
+
function requestActiveBuffers(subtree, bufferHeaders, internalBuffer) {
|
|
687
|
+
const promises = [];
|
|
688
|
+
for (let i = 0; i < bufferHeaders.length; i++) {
|
|
689
|
+
const bufferHeader = bufferHeaders[i];
|
|
690
|
+
if (!bufferHeader.isActive) {
|
|
691
|
+
promises.push(Promise.resolve(undefined));
|
|
692
|
+
} else if (bufferHeader.isExternal) {
|
|
693
|
+
const promise = requestExternalBuffer(subtree, bufferHeader);
|
|
694
|
+
promises.push(promise);
|
|
695
|
+
} else {
|
|
696
|
+
promises.push(Promise.resolve(internalBuffer));
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
return Promise.all(promises).then(function (bufferResults) {
|
|
700
|
+
const buffersU8 = {};
|
|
701
|
+
for (let i = 0; i < bufferResults.length; i++) {
|
|
702
|
+
const result = bufferResults[i];
|
|
703
|
+
if (defined(result)) {
|
|
704
|
+
buffersU8[i] = result;
|
|
705
|
+
}
|
|
706
|
+
}
|
|
707
|
+
return buffersU8;
|
|
708
|
+
});
|
|
709
|
+
}
|
|
710
|
+
|
|
711
|
+
function requestExternalBuffer(subtree, bufferHeader) {
|
|
712
|
+
const baseResource = subtree._resource;
|
|
713
|
+
const bufferResource = baseResource.getDerivedResource({
|
|
714
|
+
url: bufferHeader.uri,
|
|
715
|
+
});
|
|
716
|
+
|
|
717
|
+
const bufferLoader = ResourceCache.loadExternalBuffer({
|
|
718
|
+
resource: bufferResource,
|
|
719
|
+
});
|
|
720
|
+
subtree._bufferLoader = bufferLoader;
|
|
721
|
+
|
|
722
|
+
return bufferLoader.promise.then(function (bufferLoader) {
|
|
723
|
+
return bufferLoader.typedArray;
|
|
724
|
+
});
|
|
725
|
+
}
|
|
726
|
+
|
|
727
|
+
/**
|
|
728
|
+
* Go through the list of buffer views, and if they are marked as active,
|
|
729
|
+
* extract a subarray from one of the active buffers.
|
|
730
|
+
*
|
|
731
|
+
* @param {BufferViewHeader[]} bufferViewHeaders
|
|
732
|
+
* @param {Object} buffersU8 A dictionary of buffer index to a Uint8Array of its contents.
|
|
733
|
+
* @returns {Object} A dictionary of buffer view index to a Uint8Array of its contents.
|
|
734
|
+
* @private
|
|
735
|
+
*/
|
|
736
|
+
function parseActiveBufferViews(bufferViewHeaders, buffersU8) {
|
|
737
|
+
const bufferViewsU8 = {};
|
|
738
|
+
for (let i = 0; i < bufferViewHeaders.length; i++) {
|
|
739
|
+
const bufferViewHeader = bufferViewHeaders[i];
|
|
740
|
+
|
|
741
|
+
if (!bufferViewHeader.isActive) {
|
|
742
|
+
continue;
|
|
743
|
+
}
|
|
744
|
+
|
|
745
|
+
const start = bufferViewHeader.byteOffset;
|
|
746
|
+
const end = start + bufferViewHeader.byteLength;
|
|
747
|
+
const buffer = buffersU8[bufferViewHeader.buffer];
|
|
748
|
+
const bufferView = buffer.subarray(start, end);
|
|
749
|
+
bufferViewsU8[i] = bufferView;
|
|
750
|
+
}
|
|
751
|
+
return bufferViewsU8;
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
/**
|
|
755
|
+
* Parse the three availability bitstreams and store them in the subtree
|
|
756
|
+
*
|
|
757
|
+
* @param {ImplicitSubtree} subtree The subtree to modify
|
|
758
|
+
* @param {Object} subtreeJson The subtree JSON
|
|
759
|
+
* @param {ImplicitTileset} implicitTileset The implicit tileset this subtree belongs to
|
|
760
|
+
* @param {Object} bufferViewsU8 A dictionary of buffer view index to a Uint8Array of its contents.
|
|
761
|
+
* @private
|
|
762
|
+
*/
|
|
763
|
+
function parseAvailability(
|
|
764
|
+
subtree,
|
|
765
|
+
subtreeJson,
|
|
766
|
+
implicitTileset,
|
|
767
|
+
bufferViewsU8
|
|
768
|
+
) {
|
|
769
|
+
const branchingFactor = implicitTileset.branchingFactor;
|
|
770
|
+
const subtreeLevels = implicitTileset.subtreeLevels;
|
|
771
|
+
const tileAvailabilityBits =
|
|
772
|
+
(Math.pow(branchingFactor, subtreeLevels) - 1) / (branchingFactor - 1);
|
|
773
|
+
const childSubtreeBits = Math.pow(branchingFactor, subtreeLevels);
|
|
774
|
+
|
|
775
|
+
// availableCount is only needed for the metadata jump buffer, which
|
|
776
|
+
// corresponds to the tile availability bitstream.
|
|
777
|
+
const hasMetadataExtension = hasExtension(subtreeJson, "3DTILES_metadata");
|
|
778
|
+
const hasTileMetadata = defined(subtree._tilePropertyTableJson);
|
|
779
|
+
let computeAvailableCountEnabled = hasMetadataExtension || hasTileMetadata;
|
|
780
|
+
|
|
781
|
+
subtree._tileAvailability = parseAvailabilityBitstream(
|
|
782
|
+
subtreeJson.tileAvailability,
|
|
783
|
+
bufferViewsU8,
|
|
784
|
+
tileAvailabilityBits,
|
|
785
|
+
computeAvailableCountEnabled
|
|
786
|
+
);
|
|
787
|
+
|
|
788
|
+
const hasContentMetadata = subtree._contentPropertyTableJsons.length > 0;
|
|
789
|
+
computeAvailableCountEnabled =
|
|
790
|
+
computeAvailableCountEnabled || hasContentMetadata;
|
|
791
|
+
|
|
792
|
+
for (let i = 0; i < subtreeJson.contentAvailabilityHeaders.length; i++) {
|
|
793
|
+
const bitstream = parseAvailabilityBitstream(
|
|
794
|
+
subtreeJson.contentAvailabilityHeaders[i],
|
|
795
|
+
bufferViewsU8,
|
|
796
|
+
// content availability has the same length as tile availability.
|
|
797
|
+
tileAvailabilityBits,
|
|
798
|
+
computeAvailableCountEnabled
|
|
799
|
+
);
|
|
800
|
+
subtree._contentAvailabilityBitstreams.push(bitstream);
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
subtree._childSubtreeAvailability = parseAvailabilityBitstream(
|
|
804
|
+
subtreeJson.childSubtreeAvailability,
|
|
805
|
+
bufferViewsU8,
|
|
806
|
+
childSubtreeBits
|
|
807
|
+
);
|
|
808
|
+
}
|
|
809
|
+
|
|
810
|
+
/**
|
|
811
|
+
* Given the JSON describing an availability bitstream, turn it into an
|
|
812
|
+
* in-memory representation using an {@link ImplicitAvailabilityBitstream}
|
|
813
|
+
* object. This handles both constants and bitstreams from a bufferView.
|
|
814
|
+
*
|
|
815
|
+
* @param {Object} availabilityJson A JSON object representing the availability
|
|
816
|
+
* @param {Object} bufferViewsU8 A dictionary of bufferView index to its Uint8Array contents.
|
|
817
|
+
* @param {Number} lengthBits The length of the availability bitstream in bits
|
|
818
|
+
* @param {Boolean} [computeAvailableCountEnabled] If true and availabilityJson.availableCount is undefined, the availableCount will be computed.
|
|
819
|
+
* @returns {ImplicitAvailabilityBitstream} The parsed bitstream object
|
|
820
|
+
* @private
|
|
821
|
+
*/
|
|
822
|
+
function parseAvailabilityBitstream(
|
|
823
|
+
availabilityJson,
|
|
824
|
+
bufferViewsU8,
|
|
825
|
+
lengthBits,
|
|
826
|
+
computeAvailableCountEnabled
|
|
827
|
+
) {
|
|
828
|
+
if (defined(availabilityJson.constant)) {
|
|
829
|
+
return new ImplicitAvailabilityBitstream({
|
|
830
|
+
constant: Boolean(availabilityJson.constant),
|
|
831
|
+
lengthBits: lengthBits,
|
|
832
|
+
availableCount: availabilityJson.availableCount,
|
|
833
|
+
});
|
|
834
|
+
}
|
|
835
|
+
|
|
836
|
+
let bufferView;
|
|
837
|
+
|
|
838
|
+
// Check for bitstream first, which is part of the current schema.
|
|
839
|
+
// bufferView is the name of the bitstream from an older schema.
|
|
840
|
+
if (defined(availabilityJson.bitstream)) {
|
|
841
|
+
bufferView = bufferViewsU8[availabilityJson.bitstream];
|
|
842
|
+
} else if (defined(availabilityJson.bufferView)) {
|
|
843
|
+
bufferView = bufferViewsU8[availabilityJson.bufferView];
|
|
844
|
+
}
|
|
845
|
+
|
|
846
|
+
return new ImplicitAvailabilityBitstream({
|
|
847
|
+
bitstream: bufferView,
|
|
848
|
+
lengthBits: lengthBits,
|
|
849
|
+
availableCount: availabilityJson.availableCount,
|
|
850
|
+
computeAvailableCountEnabled: computeAvailableCountEnabled,
|
|
851
|
+
});
|
|
852
|
+
}
|
|
853
|
+
|
|
854
|
+
/**
|
|
855
|
+
* Parse the metadata table for the tile metadata, storing a {@link MetadataTable}
|
|
856
|
+
* in the subtree.
|
|
857
|
+
*
|
|
858
|
+
* @param {ImplicitSubtree} subtree The subtree
|
|
859
|
+
* @param {ImplicitTileset} implicitTileset The implicit tileset this subtree belongs to.
|
|
860
|
+
* @param {Object} bufferViewsU8 A dictionary of bufferView index to its Uint8Array contents.
|
|
861
|
+
* @private
|
|
862
|
+
*/
|
|
863
|
+
function parseTileMetadataTable(subtree, implicitTileset, bufferViewsU8) {
|
|
864
|
+
const tilePropertyTableJson = subtree._tilePropertyTableJson;
|
|
865
|
+
const tileCount = subtree._tileAvailability.availableCount;
|
|
866
|
+
const metadataSchema = implicitTileset.metadataSchema;
|
|
867
|
+
|
|
868
|
+
const tileMetadataClassName = tilePropertyTableJson.class;
|
|
869
|
+
const tileMetadataClass = metadataSchema.classes[tileMetadataClassName];
|
|
870
|
+
|
|
871
|
+
subtree._tileMetadataTable = new MetadataTable({
|
|
872
|
+
class: tileMetadataClass,
|
|
873
|
+
count: tileCount,
|
|
874
|
+
properties: tilePropertyTableJson.properties,
|
|
875
|
+
bufferViews: bufferViewsU8,
|
|
876
|
+
});
|
|
877
|
+
}
|
|
878
|
+
|
|
879
|
+
/**
|
|
880
|
+
* Parse the metadata tables for the content metadata, storing an array of
|
|
881
|
+
* {@link MetadataTable}s in the subtree.
|
|
882
|
+
*
|
|
883
|
+
* @param {ImplicitSubtree} subtree The subtree
|
|
884
|
+
* @param {ImplicitTileset} implicitTileset The implicit tileset this subtree belongs to.
|
|
885
|
+
* @param {Object} bufferViewsU8 A dictionary of bufferView index to its Uint8Array contents.
|
|
886
|
+
* @private
|
|
887
|
+
*/
|
|
888
|
+
function parseContentMetadataTables(subtree, implicitTileset, bufferViewsU8) {
|
|
889
|
+
const contentPropertyTableJsons = subtree._contentPropertyTableJsons;
|
|
890
|
+
const contentAvailabilityBitstreams = subtree._contentAvailabilityBitstreams;
|
|
891
|
+
const metadataSchema = implicitTileset.metadataSchema;
|
|
892
|
+
|
|
893
|
+
const contentMetadataTables = subtree._contentMetadataTables;
|
|
894
|
+
for (let i = 0; i < contentPropertyTableJsons.length; i++) {
|
|
895
|
+
const contentPropertyTableJson = contentPropertyTableJsons[i];
|
|
896
|
+
const contentAvailabilityBitsteam = contentAvailabilityBitstreams[i];
|
|
897
|
+
|
|
898
|
+
const contentCount = contentAvailabilityBitsteam.availableCount;
|
|
899
|
+
const contentMetadataClassName = contentPropertyTableJson.class;
|
|
900
|
+
const contentMetadataClass =
|
|
901
|
+
metadataSchema.classes[contentMetadataClassName];
|
|
902
|
+
|
|
903
|
+
const metadataTable = new MetadataTable({
|
|
904
|
+
class: contentMetadataClass,
|
|
905
|
+
count: contentCount,
|
|
906
|
+
properties: contentPropertyTableJson.properties,
|
|
907
|
+
bufferViews: bufferViewsU8,
|
|
908
|
+
});
|
|
909
|
+
|
|
910
|
+
contentMetadataTables.push(metadataTable);
|
|
911
|
+
}
|
|
912
|
+
}
|
|
913
|
+
|
|
914
|
+
/**
|
|
915
|
+
* Make a jump buffer, i.e. a map of a bit index to the metadata entity ID.
|
|
916
|
+
* <p>
|
|
917
|
+
* For unavailable tiles and content, the jump buffer entries will be uninitialized.
|
|
918
|
+
* Use the tile and content availability to determine whether a jump buffer value is valid.
|
|
919
|
+
* </p>
|
|
920
|
+
*
|
|
921
|
+
* @param {ImplicitAvailabilityBitstream} availability The availability bitstream to create the jump buffer from.
|
|
922
|
+
* @returns {Array} The resulting jump buffer.
|
|
923
|
+
* @private
|
|
924
|
+
*/
|
|
925
|
+
function makeJumpBuffer(availability) {
|
|
926
|
+
let entityId = 0;
|
|
927
|
+
const bufferLength = availability.lengthBits;
|
|
928
|
+
const availableCount = availability.availableCount;
|
|
929
|
+
|
|
930
|
+
let jumpBuffer;
|
|
931
|
+
if (availableCount < 256) {
|
|
932
|
+
jumpBuffer = new Uint8Array(bufferLength);
|
|
933
|
+
} else if (availableCount < 65536) {
|
|
934
|
+
jumpBuffer = new Uint16Array(bufferLength);
|
|
935
|
+
} else {
|
|
936
|
+
jumpBuffer = new Uint32Array(bufferLength);
|
|
937
|
+
}
|
|
938
|
+
|
|
939
|
+
for (let i = 0; i < availability.lengthBits; i++) {
|
|
940
|
+
if (availability.getBit(i)) {
|
|
941
|
+
jumpBuffer[i] = entityId;
|
|
942
|
+
entityId++;
|
|
943
|
+
}
|
|
944
|
+
}
|
|
945
|
+
|
|
946
|
+
return jumpBuffer;
|
|
947
|
+
}
|
|
948
|
+
|
|
949
|
+
/**
|
|
950
|
+
* Make the jump buffer, i.e. a map of a bit index to the metadata entity ID,
|
|
951
|
+
* for the content metadata. This is stored in the subtree.
|
|
952
|
+
*
|
|
953
|
+
* @param {ImplicitSubtree} subtree The subtree
|
|
954
|
+
* @private
|
|
955
|
+
*/
|
|
956
|
+
function makeTileJumpBuffer(subtree) {
|
|
957
|
+
const tileJumpBuffer = makeJumpBuffer(subtree._tileAvailability);
|
|
958
|
+
subtree._tileJumpBuffer = tileJumpBuffer;
|
|
959
|
+
}
|
|
960
|
+
|
|
961
|
+
/**
|
|
962
|
+
* Make the jump buffers, i.e. maps of bit indices to the metadata entity IDs,
|
|
963
|
+
* for the content metadata. This is stored in the subtree.
|
|
964
|
+
*
|
|
965
|
+
* @param {ImplicitSubtree} subtree The subtree
|
|
966
|
+
* @private
|
|
967
|
+
*/
|
|
968
|
+
function makeContentJumpBuffers(subtree) {
|
|
969
|
+
const contentJumpBuffers = subtree._contentJumpBuffers;
|
|
970
|
+
const contentAvailabilityBitstreams = subtree._contentAvailabilityBitstreams;
|
|
971
|
+
for (let i = 0; i < contentAvailabilityBitstreams.length; i++) {
|
|
972
|
+
const contentAvailability = contentAvailabilityBitstreams[i];
|
|
973
|
+
const contentJumpBuffer = makeJumpBuffer(contentAvailability);
|
|
974
|
+
contentJumpBuffers.push(contentJumpBuffer);
|
|
975
|
+
}
|
|
976
|
+
}
|
|
977
|
+
|
|
978
|
+
/**
|
|
979
|
+
* Given the implicit tiling coordinates for a tile, get the index within the
|
|
980
|
+
* subtree's tile availability bitstream.
|
|
981
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a tile
|
|
982
|
+
* @return {Number} The tile's index within the subtree.
|
|
983
|
+
* @private
|
|
984
|
+
*/
|
|
985
|
+
ImplicitSubtree.prototype.getTileIndex = function (implicitCoordinates) {
|
|
986
|
+
const localLevel =
|
|
987
|
+
implicitCoordinates.level - this._implicitCoordinates.level;
|
|
988
|
+
if (localLevel < 0 || this._subtreeLevels <= localLevel) {
|
|
989
|
+
throw new RuntimeError("level is out of bounds for this subtree");
|
|
990
|
+
}
|
|
991
|
+
|
|
992
|
+
const subtreeCoordinates = implicitCoordinates.getSubtreeCoordinates();
|
|
993
|
+
const offsetCoordinates = subtreeCoordinates.getOffsetCoordinates(
|
|
994
|
+
implicitCoordinates
|
|
995
|
+
);
|
|
996
|
+
const index = offsetCoordinates.tileIndex;
|
|
997
|
+
return index;
|
|
998
|
+
};
|
|
999
|
+
|
|
1000
|
+
/**
|
|
1001
|
+
* Given the implicit tiling coordinates for a child subtree, get the index within the
|
|
1002
|
+
* subtree's child subtree availability bitstream.
|
|
1003
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a child subtree
|
|
1004
|
+
* @return {Number} The child subtree's index within the subtree's child subtree availability bitstream.
|
|
1005
|
+
* @private
|
|
1006
|
+
*/
|
|
1007
|
+
ImplicitSubtree.prototype.getChildSubtreeIndex = function (
|
|
1008
|
+
implicitCoordinates
|
|
1009
|
+
) {
|
|
1010
|
+
const localLevel =
|
|
1011
|
+
implicitCoordinates.level - this._implicitCoordinates.level;
|
|
1012
|
+
if (localLevel !== this._implicitCoordinates.subtreeLevels) {
|
|
1013
|
+
throw new RuntimeError("level is out of bounds for this subtree");
|
|
1014
|
+
}
|
|
1015
|
+
|
|
1016
|
+
// Call getParentSubtreeCoordinates instead of getSubtreeCoordinates because the
|
|
1017
|
+
// child subtree is by definition the root of its own subtree, so we need to find
|
|
1018
|
+
// the parent subtree.
|
|
1019
|
+
const parentSubtreeCoordinates = implicitCoordinates.getParentSubtreeCoordinates();
|
|
1020
|
+
const offsetCoordinates = parentSubtreeCoordinates.getOffsetCoordinates(
|
|
1021
|
+
implicitCoordinates
|
|
1022
|
+
);
|
|
1023
|
+
const index = offsetCoordinates.mortonIndex;
|
|
1024
|
+
return index;
|
|
1025
|
+
};
|
|
1026
|
+
|
|
1027
|
+
/**
|
|
1028
|
+
* Get the entity ID for a tile within this subtree.
|
|
1029
|
+
* @param {ImplicitSubtree} subtree The subtree
|
|
1030
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a tile
|
|
1031
|
+
* @return {Number} The entity ID for this tile for accessing tile metadata, or <code>undefined</code> if not applicable.
|
|
1032
|
+
*
|
|
1033
|
+
* @private
|
|
1034
|
+
*/
|
|
1035
|
+
function getTileEntityId(subtree, implicitCoordinates) {
|
|
1036
|
+
if (!defined(subtree._tileMetadataTable)) {
|
|
1037
|
+
return undefined;
|
|
1038
|
+
}
|
|
1039
|
+
|
|
1040
|
+
const tileIndex = subtree.getTileIndex(implicitCoordinates);
|
|
1041
|
+
if (subtree._tileAvailability.getBit(tileIndex)) {
|
|
1042
|
+
return subtree._tileJumpBuffer[tileIndex];
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1045
|
+
return undefined;
|
|
1046
|
+
}
|
|
1047
|
+
|
|
1048
|
+
/**
|
|
1049
|
+
* Get the entity ID for a content within this subtree.
|
|
1050
|
+
* @param {ImplicitSubtree} subtree The subtree
|
|
1051
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a content
|
|
1052
|
+
* @param {Number} contentIndex The content index, for distinguishing between multiple contents.
|
|
1053
|
+
* @return {Number} The entity ID for this content for accessing content metadata, or <code>undefined</code> if not applicable.
|
|
1054
|
+
*
|
|
1055
|
+
* @private
|
|
1056
|
+
*/
|
|
1057
|
+
function getContentEntityId(subtree, implicitCoordinates, contentIndex) {
|
|
1058
|
+
const metadataTables = subtree._contentMetadataTables;
|
|
1059
|
+
if (!defined(metadataTables)) {
|
|
1060
|
+
return undefined;
|
|
1061
|
+
}
|
|
1062
|
+
|
|
1063
|
+
const metadataTable = metadataTables[contentIndex];
|
|
1064
|
+
if (!defined(metadataTable)) {
|
|
1065
|
+
return undefined;
|
|
1066
|
+
}
|
|
1067
|
+
|
|
1068
|
+
const availability = subtree._contentAvailabilityBitstreams[contentIndex];
|
|
1069
|
+
const tileIndex = subtree.getTileIndex(implicitCoordinates);
|
|
1070
|
+
if (availability.getBit(tileIndex)) {
|
|
1071
|
+
const contentJumpBuffer = subtree._contentJumpBuffers[contentIndex];
|
|
1072
|
+
return contentJumpBuffer[tileIndex];
|
|
1073
|
+
}
|
|
1074
|
+
|
|
1075
|
+
return undefined;
|
|
1076
|
+
}
|
|
1077
|
+
|
|
1078
|
+
/**
|
|
1079
|
+
* Create and return a metadata table view for a tile within this subtree.
|
|
1080
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a tile
|
|
1081
|
+
* @return {ImplicitMetadataView} The metadata view for this tile, or <code>undefined</code> if not applicable.
|
|
1082
|
+
*
|
|
1083
|
+
* @private
|
|
1084
|
+
*/
|
|
1085
|
+
ImplicitSubtree.prototype.getTileMetadataView = function (implicitCoordinates) {
|
|
1086
|
+
const entityId = getTileEntityId(this, implicitCoordinates);
|
|
1087
|
+
if (!defined(entityId)) {
|
|
1088
|
+
return undefined;
|
|
1089
|
+
}
|
|
1090
|
+
|
|
1091
|
+
const metadataTable = this._tileMetadataTable;
|
|
1092
|
+
return new ImplicitMetadataView({
|
|
1093
|
+
class: metadataTable.class,
|
|
1094
|
+
metadataTable: metadataTable,
|
|
1095
|
+
entityId: entityId,
|
|
1096
|
+
propertyTableJson: this._tilePropertyTableJson,
|
|
1097
|
+
});
|
|
1098
|
+
};
|
|
1099
|
+
|
|
1100
|
+
/**
|
|
1101
|
+
* Create and return a metadata table view for a content within this subtree.
|
|
1102
|
+
* @param {ImplicitTileCoordinates} implicitCoordinates The global coordinates of a content
|
|
1103
|
+
* @param {Number} contentIndex The index of the content used to distinguish between multiple contents
|
|
1104
|
+
* @return {ImplicitMetadataView} The metadata view for this content, or <code>undefined</code> if not applicable.
|
|
1105
|
+
*
|
|
1106
|
+
* @private
|
|
1107
|
+
*/
|
|
1108
|
+
ImplicitSubtree.prototype.getContentMetadataView = function (
|
|
1109
|
+
implicitCoordinates,
|
|
1110
|
+
contentIndex
|
|
1111
|
+
) {
|
|
1112
|
+
const entityId = getContentEntityId(this, implicitCoordinates, contentIndex);
|
|
1113
|
+
if (!defined(entityId)) {
|
|
1114
|
+
return undefined;
|
|
1115
|
+
}
|
|
1116
|
+
|
|
1117
|
+
const metadataTable = this._contentMetadataTables[contentIndex];
|
|
1118
|
+
const propertyTableJson = this._contentPropertyTableJsons[contentIndex];
|
|
1119
|
+
return new ImplicitMetadataView({
|
|
1120
|
+
class: metadataTable.class,
|
|
1121
|
+
metadataTable: metadataTable,
|
|
1122
|
+
entityId: entityId,
|
|
1123
|
+
contentIndex: contentIndex,
|
|
1124
|
+
propertyTableJson: propertyTableJson,
|
|
1125
|
+
});
|
|
1126
|
+
};
|
|
1127
|
+
|
|
1128
|
+
/**
|
|
1129
|
+
* @private
|
|
1130
|
+
*/
|
|
1131
|
+
ImplicitSubtree.prototype.isDestroyed = function () {
|
|
1132
|
+
return false;
|
|
1133
|
+
};
|
|
1134
|
+
|
|
1135
|
+
/**
|
|
1136
|
+
* @private
|
|
1137
|
+
*/
|
|
1138
|
+
ImplicitSubtree.prototype.destroy = function () {
|
|
1139
|
+
if (defined(this._bufferLoader)) {
|
|
1140
|
+
ResourceCache.unload(this._bufferLoader);
|
|
1141
|
+
}
|
|
1142
|
+
|
|
1143
|
+
return destroyObject(this);
|
|
1144
|
+
};
|
|
1145
|
+
|
|
1146
|
+
export default ImplicitSubtree;
|