@cesium/engine 9.2.0 → 10.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/Workers/{chunk-GOQEANLM.js → chunk-2GEAGYUY.js} +13 -13
- package/Build/Workers/{chunk-WOYQB5HM.js → chunk-2J3JKXCP.js} +5 -5
- package/Build/Workers/{chunk-IXYFH7DV.js → chunk-3WUV74WM.js} +2 -2
- package/Build/Workers/{chunk-WHDEZSAL.js → chunk-4MSUJ4I7.js} +8 -8
- package/Build/Workers/chunk-4RMIRG6T.js +1800 -0
- package/Build/Workers/{chunk-CVCVMOQA.js → chunk-4VFBBNQ3.js} +1 -1
- package/Build/Workers/{chunk-ZHJDE6JN.js → chunk-4YSNMHZ4.js} +6 -6
- package/Build/Workers/{chunk-YGNQJ4YI.js → chunk-5BLJ5ZM6.js} +5 -5
- package/Build/Workers/{chunk-4RG6WOXH.js → chunk-5KWHSZYL.js} +11 -11
- package/Build/Workers/{chunk-BBBTT36L.js → chunk-5O6JWQ4E.js} +14 -14
- package/Build/Workers/{chunk-GX2BWBN2.js → chunk-65MZOUNU.js} +14 -14
- package/Build/Workers/{chunk-K5F23SZO.js → chunk-6D66DPRV.js} +7 -7
- package/Build/Workers/{chunk-2TRB253J.js → chunk-6OFDHMHR.js} +7 -7
- package/Build/Workers/{chunk-U6MTSO6A.js → chunk-76BYYG7N.js} +424 -449
- package/Build/Workers/{chunk-3PV5HQ2R.js → chunk-A5CODJ4M.js} +6 -6
- package/Build/Workers/{chunk-IF2OX6R4.js → chunk-AA4GZKOT.js} +1 -1
- package/Build/Workers/{chunk-OYP23VAL.js → chunk-ACRTCBN5.js} +11 -11
- package/Build/Workers/chunk-B75IEX2S.js +390 -0
- package/Build/Workers/{chunk-EODIOQ35.js → chunk-BAVI3ZS2.js} +1 -1
- package/Build/Workers/{chunk-CFBGPZU6.js → chunk-BBDZYSZB.js} +10 -10
- package/Build/Workers/{chunk-LZFFO4KB.js → chunk-BGE4QVG7.js} +12 -12
- package/Build/Workers/chunk-BY3E4ONI.js +456 -0
- package/Build/Workers/{chunk-RDR4KVPA.js → chunk-C3Z23UUJ.js} +18 -18
- package/Build/Workers/{chunk-I6CW7ZE5.js → chunk-C45MU4GZ.js} +10 -8
- package/Build/Workers/chunk-CF7P7K7E.js +684 -0
- package/Build/Workers/{chunk-KTZK2UDR.js → chunk-D2U4RI64.js} +7 -7
- package/Build/Workers/{chunk-QZIWFSRM.js → chunk-D4K27X2M.js} +4 -4
- package/Build/Workers/{chunk-UYKG3UFK.js → chunk-DKVHRNFY.js} +5 -5
- package/Build/Workers/{chunk-5OK5JFDP.js → chunk-EB7PNZTK.js} +5 -5
- package/Build/Workers/{chunk-7PFZ4Z7C.js → chunk-ELI4BUOT.js} +11 -9
- package/Build/Workers/chunk-F3NDOSTZ.js +963 -0
- package/Build/Workers/{chunk-3VDHTBY5.js → chunk-FDCLACT5.js} +10 -10
- package/Build/Workers/{chunk-BNT2SNWU.js → chunk-FEVVHITK.js} +4 -4
- package/Build/Workers/{chunk-7HLZRYGD.js → chunk-FOZWUH4T.js} +7 -7
- package/Build/Workers/chunk-FQPSOOPH.js +258 -0
- package/Build/Workers/{chunk-A5CSB5ZE.js → chunk-G5V4GPZE.js} +9 -9
- package/Build/Workers/{chunk-TDIGL45B.js → chunk-GNHZH7HP.js} +1 -1
- package/Build/Workers/{chunk-26NE4LRW.js → chunk-GPJR7MPQ.js} +11 -8
- package/Build/Workers/chunk-GWT64LKY.js +171 -0
- package/Build/Workers/{chunk-PUQR43HZ.js → chunk-HGEEOMSC.js} +6 -6
- package/Build/Workers/{chunk-SC3TBKST.js → chunk-I2RC4XVN.js} +4 -4
- package/Build/Workers/chunk-IUROUBPA.js +300 -0
- package/Build/Workers/{chunk-G7IAO7CW.js → chunk-J7MQUQJY.js} +7 -7
- package/Build/Workers/chunk-JNLWLSTP.js +476 -0
- package/Build/Workers/{chunk-TP4FFUAH.js → chunk-JYQNWIQQ.js} +2 -2
- package/Build/Workers/{chunk-RRUO4QEK.js → chunk-KUN2ZA5X.js} +4 -4
- package/Build/Workers/chunk-KV4EQHK4.js +1477 -0
- package/Build/Workers/chunk-LSSWVB2X.js +138 -0
- package/Build/Workers/{chunk-EJZVBTX4.js → chunk-LXQ5QAEJ.js} +6 -6
- package/Build/Workers/chunk-MBZH7YZ7.js +945 -0
- package/Build/Workers/{chunk-WP3LCUOE.js → chunk-MKXWJTFQ.js} +13 -13
- package/Build/Workers/{chunk-AROLUUGS.js → chunk-MMV6TO3P.js} +2 -2
- package/Build/Workers/{chunk-ETC45PHH.js → chunk-MSKXMXJI.js} +4 -4
- package/Build/Workers/chunk-N4QEHO3U.js +75 -0
- package/Build/Workers/chunk-NVOABL76.js +100 -0
- package/Build/Workers/chunk-OAPA2RTG.js +239 -0
- package/Build/Workers/{chunk-PHT53MCH.js → chunk-OE4MCOC7.js} +13 -13
- package/Build/Workers/chunk-OJF4RTJG.js +634 -0
- package/Build/Workers/{chunk-UICVDDCQ.js → chunk-OOK53QUQ.js} +1 -1
- package/Build/Workers/{chunk-W4OS542B.js → chunk-OOMCT7OL.js} +13 -13
- package/Build/Workers/{chunk-YGTWKLFY.js → chunk-OWGTMVDB.js} +19 -19
- package/Build/Workers/{chunk-GUFV24F4.js → chunk-OXALEQPI.js} +61 -17
- package/Build/Workers/chunk-OXSI7N4C.js +768 -0
- package/Build/Workers/{chunk-26XJDV3D.js → chunk-PNFHVBSF.js} +15 -15
- package/Build/Workers/chunk-POSRARY7.js +834 -0
- package/Build/Workers/{chunk-GX5LMUGZ.js → chunk-PYHLO636.js} +42 -13
- package/Build/Workers/chunk-Q55ECN3Y.js +37 -0
- package/Build/Workers/chunk-QD4KM3GO.js +138 -0
- package/Build/Workers/chunk-QMLTCCYG.js +55 -0
- package/Build/Workers/chunk-QX5XS4LC.js +101 -0
- package/Build/Workers/{chunk-UKJCFXVV.js → chunk-QYQIVZBU.js} +6 -6
- package/Build/Workers/chunk-R3TKLC6E.js +1075 -0
- package/Build/Workers/chunk-R4OIEIPE.js +500 -0
- package/Build/Workers/chunk-R4ZEWO4I.js +122 -0
- package/Build/Workers/chunk-R6B7UCQB.js +44 -0
- package/Build/Workers/chunk-RCK55EDX.js +691 -0
- package/Build/Workers/chunk-RHBWXX7C.js +629 -0
- package/Build/Workers/chunk-RZLZWKFN.js +305 -0
- package/Build/Workers/{chunk-DIVFF6DK.js → chunk-S3PI2KFM.js} +2 -2
- package/Build/Workers/chunk-SAPFXU5X.js +102 -0
- package/Build/Workers/chunk-T6LPN7RI.js +2857 -0
- package/Build/Workers/{chunk-U2LSTOMA.js → chunk-T77JILCU.js} +2 -2
- package/Build/Workers/chunk-TBBFDFCS.js +368 -0
- package/Build/Workers/chunk-TF776XCO.js +1258 -0
- package/Build/Workers/chunk-TGY6H6N6.js +163 -0
- package/Build/Workers/{chunk-RTIT7UDN.js → chunk-TO2PVHKI.js} +2 -2
- package/Build/Workers/chunk-UCIPJSZX.js +398 -0
- package/Build/Workers/chunk-UOEUCKKU.js +59 -0
- package/Build/Workers/chunk-VE7BFUIX.js +39 -0
- package/Build/Workers/chunk-VFBNELXB.js +353 -0
- package/Build/Workers/chunk-VRZ46QZ5.js +781 -0
- package/Build/Workers/chunk-VYWUFRRR.js +1052 -0
- package/Build/Workers/chunk-WVSELU6O.js +2716 -0
- package/Build/Workers/chunk-X23FRWHJ.js +117 -0
- package/Build/Workers/chunk-X2ZQ7RJR.js +287 -0
- package/Build/Workers/chunk-X43SJLQL.js +10364 -0
- package/Build/Workers/chunk-XLTOBCDI.js +220 -0
- package/Build/Workers/chunk-XQI7XZHX.js +196 -0
- package/Build/Workers/chunk-XUOJCLOH.js +511 -0
- package/Build/Workers/chunk-XZZNKIEV.js +157 -0
- package/Build/Workers/chunk-YLYBLJ3Y.js +73 -0
- package/Build/Workers/chunk-ZEE2EIFD.js +430 -0
- package/Build/Workers/chunk-ZIKGV7EL.js +58 -0
- package/Build/Workers/chunk-ZU334IDQ.js +421 -0
- package/Build/Workers/combineGeometry.js +22 -22
- package/Build/Workers/createBoxGeometry.js +16 -16
- package/Build/Workers/createBoxOutlineGeometry.js +14 -14
- package/Build/Workers/createCircleGeometry.js +29 -25
- package/Build/Workers/createCircleOutlineGeometry.js +17 -17
- package/Build/Workers/createCoplanarPolygonGeometry.js +32 -32
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +29 -29
- package/Build/Workers/createCorridorGeometry.js +29 -29
- package/Build/Workers/createCorridorOutlineGeometry.js +27 -27
- package/Build/Workers/createCylinderGeometry.js +18 -18
- package/Build/Workers/createCylinderOutlineGeometry.js +16 -16
- package/Build/Workers/createEllipseGeometry.js +24 -24
- package/Build/Workers/createEllipseOutlineGeometry.js +17 -17
- package/Build/Workers/createEllipsoidGeometry.js +17 -17
- package/Build/Workers/createEllipsoidOutlineGeometry.js +16 -16
- package/Build/Workers/createFrustumGeometry.js +16 -16
- package/Build/Workers/createFrustumOutlineGeometry.js +16 -16
- package/Build/Workers/createGeometry.js +22 -22
- package/Build/Workers/createGroundPolylineGeometry.js +24 -24
- package/Build/Workers/createPlaneGeometry.js +14 -14
- package/Build/Workers/createPlaneOutlineGeometry.js +13 -13
- package/Build/Workers/createPolygonGeometry.js +32 -32
- package/Build/Workers/createPolygonOutlineGeometry.js +29 -29
- package/Build/Workers/createPolylineGeometry.js +24 -24
- package/Build/Workers/createPolylineVolumeGeometry.js +30 -30
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +26 -26
- package/Build/Workers/createRectangleGeometry.js +27 -27
- package/Build/Workers/createRectangleOutlineGeometry.js +19 -19
- package/Build/Workers/createSimplePolylineGeometry.js +22 -22
- package/Build/Workers/createSphereGeometry.js +17 -17
- package/Build/Workers/createSphereOutlineGeometry.js +16 -16
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +13 -13
- package/Build/Workers/createVectorTileGeometries.js +22 -22
- package/Build/Workers/createVectorTilePoints.js +12 -12
- package/Build/Workers/createVectorTilePolygons.js +20 -20
- package/Build/Workers/createVectorTilePolylines.js +13 -13
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +20 -20
- package/Build/Workers/createVerticesFromHeightmap.js +21 -21
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +17 -17
- package/Build/Workers/createWallGeometry.js +23 -23
- package/Build/Workers/createWallOutlineGeometry.js +22 -22
- package/Build/Workers/decodeDraco.js +11 -11
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -10
- package/Build/Workers/transcodeKTX2.js +8 -11
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +20 -20
- package/Source/Core/ApproximateTerrainHeights.js +4 -4
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +12 -8
- package/Source/Core/BoundingRectangle.js +2 -0
- package/Source/Core/BoundingSphere.js +4 -2
- package/Source/Core/Cartesian3.js +13 -10
- package/Source/Core/Cartographic.js +11 -8
- package/Source/Core/CesiumTerrainProvider.js +3 -2
- package/Source/Core/CircleGeometry.js +6 -2
- package/Source/Core/CircleOutlineGeometry.js +1 -1
- package/Source/Core/CoplanarPolygonGeometry.js +3 -3
- package/Source/Core/CorridorGeometry.js +4 -4
- package/Source/Core/CorridorOutlineGeometry.js +2 -2
- package/Source/Core/Credit.js +3 -2
- package/Source/Core/CustomHeightmapTerrainProvider.js +17 -3
- package/Source/Core/EllipseGeometry.js +4 -4
- package/Source/Core/EllipseOutlineGeometry.js +2 -2
- package/Source/Core/Ellipsoid.js +34 -0
- package/Source/Core/EllipsoidGeodesic.js +2 -2
- package/Source/Core/EllipsoidRhumbLine.js +4 -4
- package/Source/Core/EllipsoidTangentPlane.js +3 -3
- package/Source/Core/EllipsoidTerrainProvider.js +3 -3
- package/Source/Core/GeographicProjection.js +4 -3
- package/Source/Core/GeographicTilingScheme.js +3 -3
- package/Source/Core/GeometryPipeline.js +2 -2
- package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +1 -1
- package/Source/Core/GoogleMaps.js +1 -1
- package/Source/Core/GroundPolylineGeometry.js +1 -1
- package/Source/Core/HeightmapTessellator.js +2 -2
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/Occluder.js +3 -3
- package/Source/Core/OrientedBoundingBox.js +2 -2
- package/Source/Core/PolygonGeometry.js +4 -4
- package/Source/Core/PolygonGeometryLibrary.js +1 -1
- package/Source/Core/PolygonOutlineGeometry.js +3 -3
- package/Source/Core/PolygonPipeline.js +2 -2
- package/Source/Core/PolylineGeometry.js +2 -2
- package/Source/Core/PolylinePipeline.js +6 -6
- package/Source/Core/PolylineVolumeGeometry.js +2 -2
- package/Source/Core/PolylineVolumeOutlineGeometry.js +2 -2
- package/Source/Core/Rectangle.js +6 -6
- package/Source/Core/RectangleGeometry.js +6 -6
- package/Source/Core/RectangleGeometryLibrary.js +3 -0
- package/Source/Core/RectangleOutlineGeometry.js +2 -2
- package/Source/Core/Simon1994PlanetaryPositions.js +4 -2
- package/Source/Core/SimplePolylineGeometry.js +2 -2
- package/Source/Core/Stereographic.js +2 -2
- package/Source/Core/Transforms.js +154 -19
- package/Source/Core/VRTheWorldTerrainProvider.js +2 -2
- package/Source/Core/WallGeometry.js +3 -3
- package/Source/Core/WallOutlineGeometry.js +3 -3
- package/Source/Core/WebMercatorTilingScheme.js +3 -3
- package/Source/Core/createWorldTerrainAsync.js +2 -0
- package/Source/DataSources/BillboardGraphics.js +16 -0
- package/Source/DataSources/BillboardVisualizer.js +7 -0
- package/Source/DataSources/BoxGeometryUpdater.js +2 -2
- package/Source/DataSources/CylinderGeometryUpdater.js +2 -2
- package/Source/DataSources/CzmlDataSource.js +8 -8
- package/Source/DataSources/EllipsoidGeometryUpdater.js +3 -3
- package/Source/DataSources/EntityCluster.js +1 -1
- package/Source/DataSources/EntityView.js +2 -2
- package/Source/DataSources/KmlDataSource.js +4 -4
- package/Source/DataSources/ModelVisualizer.js +1 -2
- package/Source/DataSources/PathVisualizer.js +4 -4
- package/Source/DataSources/PointGraphics.js +17 -0
- package/Source/DataSources/PointVisualizer.js +12 -0
- package/Source/DataSources/PolygonGeometryUpdater.js +1 -1
- package/Source/DataSources/PolylineGeometryUpdater.js +3 -2
- package/Source/DataSources/PositionProperty.js +4 -7
- package/Source/DataSources/RectangleGeometryUpdater.js +1 -1
- package/Source/DataSources/ScaledPositionProperty.js +2 -2
- package/Source/DataSources/TerrainOffsetProperty.js +3 -7
- package/Source/DataSources/VelocityOrientationProperty.js +2 -2
- package/Source/DataSources/exportKml.js +2 -2
- package/Source/Renderer/AutomaticUniforms.js +1 -1
- package/Source/Renderer/UniformState.js +6 -12
- package/Source/Scene/ArcGisMapServerImageryProvider.js +2 -2
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/Billboard.js +35 -6
- package/Source/Scene/BillboardCollection.js +49 -0
- package/Source/Scene/BingMapsImageryProvider.js +11 -2
- package/Source/Scene/Camera.js +16 -10
- package/Source/Scene/Cesium3DTileset.js +1 -1
- package/Source/Scene/ClippingPolygon.js +2 -2
- package/Source/Scene/ClippingPolygonCollection.js +1 -1
- package/Source/Scene/CreditDisplay.js +94 -104
- package/Source/Scene/Globe.js +16 -13
- package/Source/Scene/GltfLoaderUtil.js +2 -4
- package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +1 -1
- package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +1 -1
- package/Source/Scene/GridImageryProvider.js +2 -2
- package/Source/Scene/ImageBasedLighting.js +2 -2
- package/Source/Scene/ImageryLayerCollection.js +2 -2
- package/Source/Scene/MapboxImageryProvider.js +1 -1
- package/Source/Scene/MapboxStyleImageryProvider.js +1 -1
- package/Source/Scene/MetadataSemantic.js +4 -4
- package/Source/Scene/Model/InstancingPipelineStage.js +3 -3
- package/Source/Scene/Model/MaterialPipelineStage.js +49 -0
- package/Source/Scene/Model/Model.js +8 -5
- package/Source/Scene/Model/ModelSceneGraph.js +1 -1
- package/Source/Scene/Model/SceneMode2DPipelineStage.js +3 -3
- package/Source/Scene/Model/pickModel.js +2 -2
- package/Source/Scene/ModelComponents.js +9 -0
- package/Source/Scene/OctahedralProjectedCubeMap.js +5 -6
- package/Source/Scene/Picking.js +4 -13
- package/Source/Scene/PointPrimitive.js +33 -4
- package/Source/Scene/PointPrimitiveCollection.js +22 -9
- package/Source/Scene/Scene.js +39 -31
- package/Source/Scene/SceneTransforms.js +78 -20
- package/Source/Scene/SceneTransitioner.js +2 -2
- package/Source/Scene/ScreenSpaceCameraController.js +29 -19
- package/Source/Scene/SkyBox.js +26 -0
- package/Source/Scene/Sun.js +1 -1
- package/Source/Shaders/BillboardCollectionFS.glsl +4 -0
- package/Source/Shaders/BillboardCollectionFS.js +4 -0
- package/Source/Shaders/BillboardCollectionVS.glsl +3 -1
- package/Source/Shaders/BillboardCollectionVS.js +3 -1
- package/Source/Shaders/BrdfLutGeneratorFS.glsl +30 -13
- package/Source/Shaders/BrdfLutGeneratorFS.js +30 -13
- package/Source/Shaders/Builtin/CzmBuiltins.js +2 -2
- package/Source/Shaders/Builtin/Functions/ellipsoidTextureCoordinates.glsl +10 -0
- package/Source/Shaders/Builtin/Functions/{ellipsoidWgs84TextureCoordinates.js → ellipsoidTextureCoordinates.js} +3 -3
- package/Source/Shaders/Builtin/Functions/pbrLighting.glsl +40 -39
- package/Source/Shaders/Builtin/Functions/pbrLighting.js +40 -39
- package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.glsl +1 -1
- package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.js +1 -1
- package/Source/Shaders/Builtin/Structs/materialInput.glsl +1 -1
- package/Source/Shaders/Builtin/Structs/materialInput.js +1 -1
- package/Source/Shaders/Builtin/Structs/modelMaterial.glsl +2 -0
- package/Source/Shaders/Builtin/Structs/modelMaterial.js +2 -0
- package/Source/Shaders/EllipsoidFS.glsl +1 -1
- package/Source/Shaders/EllipsoidFS.js +1 -1
- package/Source/Shaders/GlobeFS.glsl +2 -2
- package/Source/Shaders/GlobeFS.js +2 -2
- package/Source/Shaders/Model/ImageBasedLightingStageFS.glsl +23 -23
- package/Source/Shaders/Model/ImageBasedLightingStageFS.js +23 -23
- package/Source/Shaders/Model/LightingStageFS.glsl +6 -5
- package/Source/Shaders/Model/LightingStageFS.js +6 -5
- package/Source/Shaders/Model/MaterialStageFS.glsl +31 -26
- package/Source/Shaders/Model/MaterialStageFS.js +31 -26
- package/Source/Shaders/PointPrimitiveCollectionFS.glsl +4 -0
- package/Source/Shaders/PointPrimitiveCollectionFS.js +4 -0
- package/Source/Shaders/PointPrimitiveCollectionVS.glsl +9 -7
- package/Source/Shaders/PointPrimitiveCollectionVS.js +9 -7
- package/Source/Widget/CesiumWidget.css +0 -5
- package/Source/Widget/CesiumWidget.js +29 -28
- package/index.d.ts +254 -117
- package/index.js +45 -45
- package/package.json +4 -4
- package/Source/Shaders/Builtin/Functions/ellipsoidWgs84TextureCoordinates.glsl +0 -10
|
@@ -21,6 +21,7 @@ import HorizontalOrigin from "./HorizontalOrigin.js";
|
|
|
21
21
|
import SceneMode from "./SceneMode.js";
|
|
22
22
|
import SceneTransforms from "./SceneTransforms.js";
|
|
23
23
|
import VerticalOrigin from "./VerticalOrigin.js";
|
|
24
|
+
import SplitDirection from "./SplitDirection.js";
|
|
24
25
|
|
|
25
26
|
/**
|
|
26
27
|
* @typedef {object} Billboard.ConstructorOptions
|
|
@@ -49,6 +50,7 @@ import VerticalOrigin from "./VerticalOrigin.js";
|
|
|
49
50
|
* @property {BoundingRectangle} [imageSubRegion] A {@link BoundingRectangle} Specifying the sub-region of the image to use for the billboard, rather than the entire image.
|
|
50
51
|
* @property {DistanceDisplayCondition} [distanceDisplayCondition] A {@link DistanceDisplayCondition} Specifying the distance from the camera at which this billboard will be displayed.
|
|
51
52
|
* @property {number} [disableDepthTestDistance] A number specifying the distance from the camera at which to disable the depth test to, for example, prevent clipping against terrain.
|
|
53
|
+
* @property {SplitDirection} [splitDirection] A {@link SplitDirection} Specifying the split property of the billboard.
|
|
52
54
|
*/
|
|
53
55
|
|
|
54
56
|
/**
|
|
@@ -250,6 +252,11 @@ function Billboard(options, billboardCollection) {
|
|
|
250
252
|
this._outlineWidth = defaultValue(options.outlineWidth, 0.0);
|
|
251
253
|
|
|
252
254
|
this._updateClamping();
|
|
255
|
+
|
|
256
|
+
this._splitDirection = defaultValue(
|
|
257
|
+
options.splitDirection,
|
|
258
|
+
SplitDirection.NONE
|
|
259
|
+
);
|
|
253
260
|
}
|
|
254
261
|
|
|
255
262
|
const SHOW_INDEX = (Billboard.SHOW_INDEX = 0);
|
|
@@ -270,7 +277,8 @@ const DISTANCE_DISPLAY_CONDITION = (Billboard.DISTANCE_DISPLAY_CONDITION = 14);
|
|
|
270
277
|
const DISABLE_DEPTH_DISTANCE = (Billboard.DISABLE_DEPTH_DISTANCE = 15);
|
|
271
278
|
Billboard.TEXTURE_COORDINATE_BOUNDS = 16;
|
|
272
279
|
const SDF_INDEX = (Billboard.SDF_INDEX = 17);
|
|
273
|
-
Billboard.
|
|
280
|
+
const SPLIT_DIRECTION_INDEX = (Billboard.SPLIT_DIRECTION_INDEX = 18);
|
|
281
|
+
Billboard.NUMBER_OF_PROPERTIES = 19;
|
|
274
282
|
|
|
275
283
|
function makeDirty(billboard, propertyChanged) {
|
|
276
284
|
const billboardCollection = billboard._billboardCollection;
|
|
@@ -1072,6 +1080,24 @@ Object.defineProperties(Billboard.prototype, {
|
|
|
1072
1080
|
}
|
|
1073
1081
|
},
|
|
1074
1082
|
},
|
|
1083
|
+
|
|
1084
|
+
/**
|
|
1085
|
+
* Gets or sets the {@link SplitDirection} of this billboard.
|
|
1086
|
+
* @memberof Billboard.prototype
|
|
1087
|
+
* @type {SplitDirection}
|
|
1088
|
+
* @default {@link SplitDirection.NONE}
|
|
1089
|
+
*/
|
|
1090
|
+
splitDirection: {
|
|
1091
|
+
get: function () {
|
|
1092
|
+
return this._splitDirection;
|
|
1093
|
+
},
|
|
1094
|
+
set: function (value) {
|
|
1095
|
+
if (this._splitDirection !== value) {
|
|
1096
|
+
this._splitDirection = value;
|
|
1097
|
+
makeDirty(this, SPLIT_DIRECTION_INDEX);
|
|
1098
|
+
}
|
|
1099
|
+
},
|
|
1100
|
+
},
|
|
1075
1101
|
});
|
|
1076
1102
|
|
|
1077
1103
|
Billboard.prototype.getPickId = function (context) {
|
|
@@ -1104,8 +1130,7 @@ Billboard._updateClamping = function (collection, owner) {
|
|
|
1104
1130
|
return;
|
|
1105
1131
|
}
|
|
1106
1132
|
|
|
1107
|
-
const
|
|
1108
|
-
const ellipsoid = defaultValue(globe?.ellipsoid, Ellipsoid.WGS84);
|
|
1133
|
+
const ellipsoid = defaultValue(scene.ellipsoid, Ellipsoid.default);
|
|
1109
1134
|
|
|
1110
1135
|
const mode = scene.frameState.mode;
|
|
1111
1136
|
|
|
@@ -1375,7 +1400,10 @@ Billboard._computeActualPosition = function (
|
|
|
1375
1400
|
}
|
|
1376
1401
|
|
|
1377
1402
|
Matrix4.multiplyByPoint(modelMatrix, position, tempCartesian3);
|
|
1378
|
-
return SceneTransforms.
|
|
1403
|
+
return SceneTransforms.computeActualEllipsoidPosition(
|
|
1404
|
+
frameState,
|
|
1405
|
+
tempCartesian3
|
|
1406
|
+
);
|
|
1379
1407
|
};
|
|
1380
1408
|
|
|
1381
1409
|
const scratchCartesian3 = new Cartesian3();
|
|
@@ -1397,7 +1425,7 @@ Billboard._computeScreenSpacePosition = function (
|
|
|
1397
1425
|
);
|
|
1398
1426
|
|
|
1399
1427
|
// World to window coordinates
|
|
1400
|
-
const positionWC = SceneTransforms.
|
|
1428
|
+
const positionWC = SceneTransforms.worldWithEyeOffsetToWindowCoordinates(
|
|
1401
1429
|
scene,
|
|
1402
1430
|
positionWorld,
|
|
1403
1431
|
eyeOffset,
|
|
@@ -1565,7 +1593,8 @@ Billboard.prototype.equals = function (other) {
|
|
|
1565
1593
|
this._distanceDisplayCondition,
|
|
1566
1594
|
other._distanceDisplayCondition
|
|
1567
1595
|
) &&
|
|
1568
|
-
this._disableDepthTestDistance === other._disableDepthTestDistance
|
|
1596
|
+
this._disableDepthTestDistance === other._disableDepthTestDistance &&
|
|
1597
|
+
this._splitDirection === other._splitDirection)
|
|
1569
1598
|
);
|
|
1570
1599
|
};
|
|
1571
1600
|
|
|
@@ -54,6 +54,7 @@ const DISTANCE_DISPLAY_CONDITION_INDEX = Billboard.DISTANCE_DISPLAY_CONDITION;
|
|
|
54
54
|
const DISABLE_DEPTH_DISTANCE = Billboard.DISABLE_DEPTH_DISTANCE;
|
|
55
55
|
const TEXTURE_COORDINATE_BOUNDS = Billboard.TEXTURE_COORDINATE_BOUNDS;
|
|
56
56
|
const SDF_INDEX = Billboard.SDF_INDEX;
|
|
57
|
+
const SPLIT_DIRECTION_INDEX = Billboard.SPLIT_DIRECTION_INDEX;
|
|
57
58
|
const NUMBER_OF_PROPERTIES = Billboard.NUMBER_OF_PROPERTIES;
|
|
58
59
|
|
|
59
60
|
let attributeLocations;
|
|
@@ -71,6 +72,7 @@ const attributeLocationsBatched = {
|
|
|
71
72
|
textureCoordinateBoundsOrLabelTranslate: 9,
|
|
72
73
|
a_batchId: 10,
|
|
73
74
|
sdf: 11,
|
|
75
|
+
splitDirection: 12,
|
|
74
76
|
};
|
|
75
77
|
|
|
76
78
|
const attributeLocationsInstanced = {
|
|
@@ -87,6 +89,7 @@ const attributeLocationsInstanced = {
|
|
|
87
89
|
textureCoordinateBoundsOrLabelTranslate: 10,
|
|
88
90
|
a_batchId: 11,
|
|
89
91
|
sdf: 12,
|
|
92
|
+
splitDirection: 13,
|
|
90
93
|
};
|
|
91
94
|
|
|
92
95
|
/**
|
|
@@ -311,6 +314,7 @@ function BillboardCollection(options) {
|
|
|
311
314
|
BufferUsage.STATIC_DRAW, // PIXEL_OFFSET_SCALE_BY_DISTANCE_INDEX
|
|
312
315
|
BufferUsage.STATIC_DRAW, // DISTANCE_DISPLAY_CONDITION_INDEX
|
|
313
316
|
BufferUsage.STATIC_DRAW, // TEXTURE_COORDINATE_BOUNDS
|
|
317
|
+
BufferUsage.STATIC_DRAW, // SPLIT_DIRECTION_INDEX
|
|
314
318
|
];
|
|
315
319
|
|
|
316
320
|
this._highlightColor = Color.clone(Color.WHITE); // Only used by Vector3DTilePoints
|
|
@@ -777,6 +781,12 @@ function createVAF(
|
|
|
777
781
|
componentDatatype: ComponentDatatype.FLOAT,
|
|
778
782
|
usage: buffersUsage[TEXTURE_COORDINATE_BOUNDS],
|
|
779
783
|
},
|
|
784
|
+
{
|
|
785
|
+
index: attributeLocations.splitDirection,
|
|
786
|
+
componentsPerAttribute: 1,
|
|
787
|
+
componentDatatype: ComponentDatatype.FLOAT,
|
|
788
|
+
usage: buffersUsage[SPLIT_DIRECTION_INDEX],
|
|
789
|
+
},
|
|
780
790
|
];
|
|
781
791
|
|
|
782
792
|
// Instancing requires one non-instanced attribute.
|
|
@@ -1586,6 +1596,34 @@ function writeSDF(
|
|
|
1586
1596
|
}
|
|
1587
1597
|
}
|
|
1588
1598
|
|
|
1599
|
+
function writeSplitDirection(
|
|
1600
|
+
billboardCollection,
|
|
1601
|
+
frameState,
|
|
1602
|
+
textureAtlasCoordinates,
|
|
1603
|
+
vafWriters,
|
|
1604
|
+
billboard
|
|
1605
|
+
) {
|
|
1606
|
+
const writer = vafWriters[attributeLocations.splitDirection];
|
|
1607
|
+
let direction = 0.0;
|
|
1608
|
+
|
|
1609
|
+
const split = billboard.splitDirection;
|
|
1610
|
+
if (defined(split)) {
|
|
1611
|
+
direction = split;
|
|
1612
|
+
}
|
|
1613
|
+
|
|
1614
|
+
let i;
|
|
1615
|
+
if (billboardCollection._instanced) {
|
|
1616
|
+
i = billboard._index;
|
|
1617
|
+
writer(i, direction);
|
|
1618
|
+
} else {
|
|
1619
|
+
i = billboard._index * 4;
|
|
1620
|
+
writer(i + 0, direction);
|
|
1621
|
+
writer(i + 1, direction);
|
|
1622
|
+
writer(i + 2, direction);
|
|
1623
|
+
writer(i + 3, direction);
|
|
1624
|
+
}
|
|
1625
|
+
}
|
|
1626
|
+
|
|
1589
1627
|
function writeBillboard(
|
|
1590
1628
|
billboardCollection,
|
|
1591
1629
|
frameState,
|
|
@@ -1670,6 +1708,13 @@ function writeBillboard(
|
|
|
1670
1708
|
vafWriters,
|
|
1671
1709
|
billboard
|
|
1672
1710
|
);
|
|
1711
|
+
writeSplitDirection(
|
|
1712
|
+
billboardCollection,
|
|
1713
|
+
frameState,
|
|
1714
|
+
textureAtlasCoordinates,
|
|
1715
|
+
vafWriters,
|
|
1716
|
+
billboard
|
|
1717
|
+
);
|
|
1673
1718
|
}
|
|
1674
1719
|
|
|
1675
1720
|
function recomputeActualPositions(
|
|
@@ -1981,6 +2026,10 @@ BillboardCollection.prototype.update = function (frameState) {
|
|
|
1981
2026
|
writers.push(writeSDF);
|
|
1982
2027
|
}
|
|
1983
2028
|
|
|
2029
|
+
if (properties[SPLIT_DIRECTION_INDEX]) {
|
|
2030
|
+
writers.push(writeSplitDirection);
|
|
2031
|
+
}
|
|
2032
|
+
|
|
1984
2033
|
const numWriters = writers.length;
|
|
1985
2034
|
vafWriters = this._vaf.writers;
|
|
1986
2035
|
|
|
@@ -28,7 +28,7 @@ import ImageryProvider from "./ImageryProvider.js";
|
|
|
28
28
|
* @property {string} [culture=''] The culture to use when requesting Bing Maps imagery. Not
|
|
29
29
|
* all cultures are supported. See {@link http://msdn.microsoft.com/en-us/library/hh441729.aspx}
|
|
30
30
|
* for information on the supported cultures.
|
|
31
|
-
* @property {Ellipsoid} [ellipsoid] The ellipsoid. If not specified, the
|
|
31
|
+
* @property {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid. If not specified, the default ellipsoid is used.
|
|
32
32
|
* @property {TileDiscardPolicy} [tileDiscardPolicy] The policy that determines if a tile
|
|
33
33
|
* is invalid and should be discarded. By default, a {@link DiscardEmptyTileImagePolicy}
|
|
34
34
|
* will be used, with the expectation that the Bing Maps server will send a zero-length response for missing tiles.
|
|
@@ -120,7 +120,16 @@ function metadataSuccess(data, imageryProviderBuilder) {
|
|
|
120
120
|
imageryProviderBuilder.maximumLevel = resource.zoomMax - 1;
|
|
121
121
|
imageryProviderBuilder.imageUrlSubdomains = resource.imageUrlSubdomains;
|
|
122
122
|
imageryProviderBuilder.imageUrlTemplate = resource.imageUrl;
|
|
123
|
-
|
|
123
|
+
|
|
124
|
+
let validProviders = resource.imageryProviders;
|
|
125
|
+
if (defined(resource.imageryProviders)) {
|
|
126
|
+
// prevent issues with the imagery API from crashing the viewer when the expected properties are not there
|
|
127
|
+
// See https://github.com/CesiumGS/cesium/issues/12088
|
|
128
|
+
validProviders = resource.imageryProviders.filter((provider) =>
|
|
129
|
+
provider.coverageAreas?.some((area) => defined(area.bbox))
|
|
130
|
+
);
|
|
131
|
+
}
|
|
132
|
+
imageryProviderBuilder.attributionList = validProviders;
|
|
124
133
|
}
|
|
125
134
|
|
|
126
135
|
function metadataFailure(metadataResource, error, provider) {
|
package/Source/Scene/Camera.js
CHANGED
|
@@ -1436,7 +1436,7 @@ const scratchHpr = new HeadingPitchRoll();
|
|
|
1436
1436
|
* Sets the camera position, orientation and transform.
|
|
1437
1437
|
*
|
|
1438
1438
|
* @param {object} options Object with the following properties:
|
|
1439
|
-
* @param {Cartesian3|Rectangle} [options.destination] The final position of the camera in
|
|
1439
|
+
* @param {Cartesian3|Rectangle} [options.destination] The final position of the camera in world coordinates or a rectangle that would be visible from a top-down view.
|
|
1440
1440
|
* @param {HeadingPitchRollValues|DirectionUp} [options.orientation] An object that contains either direction and up properties or heading, pitch and roll properties. By default, the direction will point
|
|
1441
1441
|
* towards the center of the frame in 3D and in the negative z direction in Columbus view. The up direction will point towards local north in 3D and in the positive
|
|
1442
1442
|
* y direction in Columbus view. Orientation is not used in 2D when in infinite scrolling mode.
|
|
@@ -2343,9 +2343,12 @@ Camera.prototype.lookAt = function (target, offset) {
|
|
|
2343
2343
|
}
|
|
2344
2344
|
//>>includeEnd('debug');
|
|
2345
2345
|
|
|
2346
|
+
const scene = this._scene;
|
|
2347
|
+
const ellipsoid = defaultValue(scene.ellipsoid, Ellipsoid.default);
|
|
2348
|
+
|
|
2346
2349
|
const transform = Transforms.eastNorthUpToFixedFrame(
|
|
2347
2350
|
target,
|
|
2348
|
-
|
|
2351
|
+
ellipsoid,
|
|
2349
2352
|
scratchLookAtMatrix4
|
|
2350
2353
|
);
|
|
2351
2354
|
this.lookAtTransform(transform, offset);
|
|
@@ -2841,7 +2844,7 @@ Camera.prototype.getRectangleCameraCoordinates = function (rectangle, result) {
|
|
|
2841
2844
|
|
|
2842
2845
|
const pickEllipsoid3DRay = new Ray();
|
|
2843
2846
|
function pickEllipsoid3D(camera, windowPosition, ellipsoid, result) {
|
|
2844
|
-
ellipsoid = defaultValue(ellipsoid, Ellipsoid.
|
|
2847
|
+
ellipsoid = defaultValue(ellipsoid, Ellipsoid.default);
|
|
2845
2848
|
const ray = camera.getPickRay(windowPosition, pickEllipsoid3DRay);
|
|
2846
2849
|
const intersection = IntersectionTests.rayEllipsoid(ray, ellipsoid);
|
|
2847
2850
|
if (!intersection) {
|
|
@@ -2893,7 +2896,7 @@ function pickMapColumbusView(camera, windowPosition, projection, result) {
|
|
|
2893
2896
|
* Pick an ellipsoid or map.
|
|
2894
2897
|
*
|
|
2895
2898
|
* @param {Cartesian2} windowPosition The x and y coordinates of a pixel.
|
|
2896
|
-
* @param {Ellipsoid} [ellipsoid=Ellipsoid.
|
|
2899
|
+
* @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid to pick.
|
|
2897
2900
|
* @param {Cartesian3} [result] The object onto which to store the result.
|
|
2898
2901
|
* @returns {Cartesian3 | undefined} If the ellipsoid or map was picked,
|
|
2899
2902
|
* returns the point on the surface of the ellipsoid or map in world
|
|
@@ -2902,7 +2905,7 @@ function pickMapColumbusView(camera, windowPosition, projection, result) {
|
|
|
2902
2905
|
* @example
|
|
2903
2906
|
* const canvas = viewer.scene.canvas;
|
|
2904
2907
|
* const center = new Cesium.Cartesian2(canvas.clientWidth / 2.0, canvas.clientHeight / 2.0);
|
|
2905
|
-
* const ellipsoid = viewer.scene.
|
|
2908
|
+
* const ellipsoid = viewer.scene.ellipsoid;
|
|
2906
2909
|
* const result = viewer.camera.pickEllipsoid(center, ellipsoid);
|
|
2907
2910
|
*/
|
|
2908
2911
|
Camera.prototype.pickEllipsoid = function (windowPosition, ellipsoid, result) {
|
|
@@ -2921,7 +2924,7 @@ Camera.prototype.pickEllipsoid = function (windowPosition, ellipsoid, result) {
|
|
|
2921
2924
|
result = new Cartesian3();
|
|
2922
2925
|
}
|
|
2923
2926
|
|
|
2924
|
-
ellipsoid = defaultValue(ellipsoid, Ellipsoid.
|
|
2927
|
+
ellipsoid = defaultValue(ellipsoid, Ellipsoid.default);
|
|
2925
2928
|
|
|
2926
2929
|
if (this._mode === SceneMode.SCENE3D) {
|
|
2927
2930
|
result = pickEllipsoid3D(this, windowPosition, ellipsoid, result);
|
|
@@ -3316,7 +3319,7 @@ Camera.prototype.completeFlight = function () {
|
|
|
3316
3319
|
* Flies the camera from its current position to a new position.
|
|
3317
3320
|
*
|
|
3318
3321
|
* @param {object} options Object with the following properties:
|
|
3319
|
-
* @param {Cartesian3|Rectangle} options.destination The final position of the camera in
|
|
3322
|
+
* @param {Cartesian3|Rectangle} options.destination The final position of the camera in world coordinates or a rectangle that would be visible from a top-down view.
|
|
3320
3323
|
* @param {object} [options.orientation] An object that contains either direction and up properties or heading, pitch and roll properties. By default, the direction will point
|
|
3321
3324
|
* towards the center of the frame in 3D and in the negative z direction in Columbus view. The up direction will point towards local north in 3D and in the positive
|
|
3322
3325
|
* y direction in Columbus view. Orientation is not used in 2D when in infinite scrolling mode.
|
|
@@ -3632,9 +3635,12 @@ Camera.prototype.flyToBoundingSphere = function (boundingSphere, options) {
|
|
|
3632
3635
|
);
|
|
3633
3636
|
}
|
|
3634
3637
|
|
|
3638
|
+
const scene = this._scene;
|
|
3639
|
+
const ellipsoid = defaultValue(scene.ellipsoid, Ellipsoid.default);
|
|
3640
|
+
|
|
3635
3641
|
const transform = Transforms.eastNorthUpToFixedFrame(
|
|
3636
3642
|
boundingSphere.center,
|
|
3637
|
-
|
|
3643
|
+
ellipsoid,
|
|
3638
3644
|
scratchflyToBoundingSphereTransform
|
|
3639
3645
|
);
|
|
3640
3646
|
Matrix4.multiplyByPoint(transform, position, position);
|
|
@@ -3814,13 +3820,13 @@ function addToResult(x, y, index, camera, ellipsoid, computedHorizonQuad) {
|
|
|
3814
3820
|
/**
|
|
3815
3821
|
* Computes the approximate visible rectangle on the ellipsoid.
|
|
3816
3822
|
*
|
|
3817
|
-
* @param {Ellipsoid} [ellipsoid=Ellipsoid.
|
|
3823
|
+
* @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid that you want to know the visible region.
|
|
3818
3824
|
* @param {Rectangle} [result] The rectangle in which to store the result
|
|
3819
3825
|
*
|
|
3820
3826
|
* @returns {Rectangle|undefined} The visible rectangle or undefined if the ellipsoid isn't visible at all.
|
|
3821
3827
|
*/
|
|
3822
3828
|
Camera.prototype.computeViewRectangle = function (ellipsoid, result) {
|
|
3823
|
-
ellipsoid = defaultValue(ellipsoid, Ellipsoid.
|
|
3829
|
+
ellipsoid = defaultValue(ellipsoid, Ellipsoid.default);
|
|
3824
3830
|
const cullingVolume = this.frustum.computeCullingVolume(
|
|
3825
3831
|
this.positionWC,
|
|
3826
3832
|
this.directionWC,
|
|
@@ -3568,7 +3568,7 @@ Cesium3DTileset.prototype.getHeight = function (cartographic, scene) {
|
|
|
3568
3568
|
Check.typeOf.object("scene", scene);
|
|
3569
3569
|
//>>includeEnd('debug');
|
|
3570
3570
|
|
|
3571
|
-
let ellipsoid = scene.
|
|
3571
|
+
let ellipsoid = scene.ellipsoid;
|
|
3572
3572
|
if (!defined(ellipsoid)) {
|
|
3573
3573
|
ellipsoid = Ellipsoid.WGS84;
|
|
3574
3574
|
}
|
|
@@ -15,7 +15,7 @@ import Rectangle from "../Core/Rectangle.js";
|
|
|
15
15
|
*
|
|
16
16
|
* @param {object} options Object with the following properties:
|
|
17
17
|
* @param {Cartesian3[]} options.positions A list of three or more Cartesian coordinates defining the outer ring of the clipping polygon.
|
|
18
|
-
* @param {Ellipsoid} [options.ellipsoid=Ellipsoid.
|
|
18
|
+
* @param {Ellipsoid} [options.ellipsoid=Ellipsoid.default]
|
|
19
19
|
*
|
|
20
20
|
* @example
|
|
21
21
|
* const positions = Cesium.Cartesian3.fromRadiansArray([
|
|
@@ -46,7 +46,7 @@ function ClippingPolygon(options) {
|
|
|
46
46
|
);
|
|
47
47
|
//>>includeEnd('debug');
|
|
48
48
|
|
|
49
|
-
this._ellipsoid = defaultValue(options.ellipsoid, Ellipsoid.
|
|
49
|
+
this._ellipsoid = defaultValue(options.ellipsoid, Ellipsoid.default);
|
|
50
50
|
this._positions = [...options.positions];
|
|
51
51
|
}
|
|
52
52
|
|
|
@@ -737,7 +737,7 @@ const scratchRectangleIntersection = new Rectangle();
|
|
|
737
737
|
* @private
|
|
738
738
|
*
|
|
739
739
|
* @param {object} tileBoundingVolume The volume to determine the intersection with the polygons.
|
|
740
|
-
* @param {Ellipsoid} [ellipsoid=
|
|
740
|
+
* @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid on which the bounding volumes are defined.
|
|
741
741
|
* @returns {Intersect} The intersection type: {@link Intersect.OUTSIDE} if the entire volume is not clipped, {@link Intersect.INSIDE}
|
|
742
742
|
* if the entire volume should be clipped, and {@link Intersect.INTERSECTING} if the volume intersects the polygons and will partially clipped.
|
|
743
743
|
*/
|
|
@@ -163,112 +163,102 @@ function styleLightboxContainer(that) {
|
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
|
|
166
|
-
function addStyle(selector, styles) {
|
|
167
|
-
let style = `${selector} {`;
|
|
168
|
-
for (const attribute in styles) {
|
|
169
|
-
if (styles.hasOwnProperty(attribute)) {
|
|
170
|
-
style += `${attribute}: ${styles[attribute]}; `;
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
style += " }\n";
|
|
174
|
-
return style;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
166
|
function appendCss(container) {
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
style += addStyle(".cesium-credit-lightbox", {
|
|
191
|
-
"background-color": "#303336",
|
|
192
|
-
color: textColor,
|
|
193
|
-
position: "relative",
|
|
194
|
-
"min-height": `${lightboxHeight}px`,
|
|
195
|
-
margin: "auto",
|
|
196
|
-
});
|
|
197
|
-
|
|
198
|
-
style += addStyle(
|
|
199
|
-
".cesium-credit-lightbox > ul > li a, .cesium-credit-lightbox > ul > li a:visited",
|
|
200
|
-
{
|
|
201
|
-
color: textColor,
|
|
202
|
-
}
|
|
203
|
-
);
|
|
204
|
-
|
|
205
|
-
style += addStyle(".cesium-credit-lightbox > ul > li a:hover", {
|
|
206
|
-
color: highlightColor,
|
|
207
|
-
});
|
|
208
|
-
|
|
209
|
-
style += addStyle(".cesium-credit-lightbox.cesium-credit-lightbox-expanded", {
|
|
210
|
-
border: "1px solid #444",
|
|
211
|
-
"border-radius": "5px",
|
|
212
|
-
"max-width": "370px",
|
|
213
|
-
});
|
|
214
|
-
|
|
215
|
-
style += addStyle(".cesium-credit-lightbox.cesium-credit-lightbox-mobile", {
|
|
216
|
-
height: "100%",
|
|
217
|
-
width: "100%",
|
|
218
|
-
});
|
|
219
|
-
|
|
220
|
-
style += addStyle(".cesium-credit-lightbox-title", {
|
|
221
|
-
padding: "20px 20px 0 20px",
|
|
222
|
-
});
|
|
223
|
-
|
|
224
|
-
style += addStyle(".cesium-credit-lightbox-close", {
|
|
225
|
-
"font-size": "18pt",
|
|
226
|
-
cursor: "pointer",
|
|
227
|
-
position: "absolute",
|
|
228
|
-
top: "0",
|
|
229
|
-
right: "6px",
|
|
230
|
-
color: textColor,
|
|
231
|
-
});
|
|
167
|
+
const style = /*css*/ `
|
|
168
|
+
.cesium-credit-lightbox-overlay {
|
|
169
|
+
display: none;
|
|
170
|
+
z-index: 1;
|
|
171
|
+
position: absolute;
|
|
172
|
+
top: 0;
|
|
173
|
+
left: 0;
|
|
174
|
+
width: 100%;
|
|
175
|
+
height: 100%;
|
|
176
|
+
background-color: rgba(80, 80, 80, 0.8);
|
|
177
|
+
}
|
|
232
178
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
}
|
|
179
|
+
.cesium-credit-lightbox {
|
|
180
|
+
background-color: #303336;
|
|
181
|
+
color: ${textColor};
|
|
182
|
+
position: relative;
|
|
183
|
+
min-height: ${lightboxHeight}px;
|
|
184
|
+
margin: auto;
|
|
185
|
+
}
|
|
186
|
+
.cesium-credit-lightbox > ul > li a,
|
|
187
|
+
.cesium-credit-lightbox > ul > li a:visited,
|
|
188
|
+
.cesium-credit-wrapper a,
|
|
189
|
+
.cesium-credit-wrapper a:visited {
|
|
190
|
+
color: ${textColor};
|
|
191
|
+
}
|
|
192
|
+
.cesium-credit-lightbox > ul > li a:hover {
|
|
193
|
+
color: ${highlightColor};
|
|
194
|
+
}
|
|
195
|
+
.cesium-credit-lightbox.cesium-credit-lightbox-expanded {
|
|
196
|
+
border: 1px solid #444;
|
|
197
|
+
border-radius: 5px;
|
|
198
|
+
max-width: 370px;
|
|
199
|
+
}
|
|
200
|
+
.cesium-credit-lightbox.cesium-credit-lightbox-mobile {
|
|
201
|
+
height: 100%;
|
|
202
|
+
width: 100%;
|
|
203
|
+
}
|
|
204
|
+
.cesium-credit-lightbox-title {
|
|
205
|
+
padding: 20px 20px 0 20px;
|
|
206
|
+
}
|
|
207
|
+
.cesium-credit-lightbox-close {
|
|
208
|
+
font-size: 18pt;
|
|
209
|
+
cursor: pointer;
|
|
210
|
+
position: absolute;
|
|
211
|
+
top: 0;
|
|
212
|
+
right: 6px;
|
|
213
|
+
color: ${textColor};
|
|
214
|
+
}
|
|
215
|
+
.cesium-credit-lightbox-close:hover {
|
|
216
|
+
color: ${highlightColor};
|
|
217
|
+
}
|
|
218
|
+
.cesium-credit-lightbox > ul {
|
|
219
|
+
margin: 0;
|
|
220
|
+
padding: 12px 20px 12px 40px;
|
|
221
|
+
font-size: 13px;
|
|
222
|
+
}
|
|
223
|
+
.cesium-credit-lightbox > ul > li {
|
|
224
|
+
padding-bottom: 6px;
|
|
225
|
+
}
|
|
226
|
+
.cesium-credit-lightbox > ul > li * {
|
|
227
|
+
padding: 0;
|
|
228
|
+
margin: 0;
|
|
229
|
+
}
|
|
236
230
|
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
}
|
|
231
|
+
.cesium-credit-expand-link {
|
|
232
|
+
padding-left: 5px;
|
|
233
|
+
cursor: pointer;
|
|
234
|
+
text-decoration: underline;
|
|
235
|
+
color: ${textColor};
|
|
236
|
+
}
|
|
237
|
+
.cesium-credit-expand-link:hover {
|
|
238
|
+
color: ${highlightColor};
|
|
239
|
+
}
|
|
242
240
|
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
241
|
+
.cesium-credit-text {
|
|
242
|
+
color: ${textColor};
|
|
243
|
+
}
|
|
246
244
|
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
});
|
|
245
|
+
.cesium-credit-delimiter {
|
|
246
|
+
padding: 0 5px;
|
|
247
|
+
}
|
|
251
248
|
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
color: textColor,
|
|
257
|
-
});
|
|
258
|
-
style += addStyle(".cesium-credit-expand-link:hover", {
|
|
259
|
-
color: highlightColor,
|
|
260
|
-
});
|
|
249
|
+
.cesium-credit-textContainer *,
|
|
250
|
+
.cesium-credit-logoContainer * {
|
|
251
|
+
display: inline;
|
|
252
|
+
}
|
|
261
253
|
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
254
|
+
.cesium-credit-textContainer a:hover {
|
|
255
|
+
color: ${highlightColor}
|
|
256
|
+
}
|
|
265
257
|
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
}
|
|
271
|
-
);
|
|
258
|
+
.cesium-credit-textContainer .cesium-credit-wrapper:first-of-type {
|
|
259
|
+
padding-left: 5px;
|
|
260
|
+
}
|
|
261
|
+
`;
|
|
272
262
|
|
|
273
263
|
function getShadowRoot(container) {
|
|
274
264
|
if (container.shadowRoot) {
|
|
@@ -287,16 +277,16 @@ function appendCss(container) {
|
|
|
287
277
|
getShadowRoot(container),
|
|
288
278
|
document.head
|
|
289
279
|
);
|
|
290
|
-
const
|
|
291
|
-
|
|
292
|
-
shadowRootOrDocumentHead.appendChild(
|
|
280
|
+
const styleElem = document.createElement("style");
|
|
281
|
+
styleElem.innerHTML = style;
|
|
282
|
+
shadowRootOrDocumentHead.appendChild(styleElem);
|
|
293
283
|
}
|
|
294
284
|
|
|
295
285
|
/**
|
|
296
286
|
* The credit display is responsible for displaying credits on screen.
|
|
297
287
|
*
|
|
298
288
|
* @param {HTMLElement} container The HTML element where credits will be displayed
|
|
299
|
-
* @param {string} [delimiter= '
|
|
289
|
+
* @param {string} [delimiter= '•'] The string to separate text credits
|
|
300
290
|
* @param {HTMLElement} [viewport=document.body] The HTML element that will contain the credits popup
|
|
301
291
|
*
|
|
302
292
|
* @alias CreditDisplay
|
|
@@ -369,7 +359,7 @@ function CreditDisplay(container, delimiter, viewport) {
|
|
|
369
359
|
appendCss(container);
|
|
370
360
|
const cesiumCredit = Credit.clone(CreditDisplay.cesiumCredit);
|
|
371
361
|
|
|
372
|
-
this._delimiter = defaultValue(delimiter, "
|
|
362
|
+
this._delimiter = defaultValue(delimiter, "•");
|
|
373
363
|
this._screenContainer = screenContainer;
|
|
374
364
|
this._cesiumCreditContainer = cesiumCreditContainer;
|
|
375
365
|
this._lastViewportHeight = undefined;
|
|
@@ -634,7 +624,7 @@ function getDefaultCredit() {
|
|
|
634
624
|
}
|
|
635
625
|
|
|
636
626
|
defaultCredit = new Credit(
|
|
637
|
-
`<a href="https://cesium.com/" target="_blank"><img src="${logo}" title="Cesium ion"/></a>`,
|
|
627
|
+
`<a href="https://cesium.com/" target="_blank"><img src="${logo}" style="vertical-align: -7px" title="Cesium ion"/></a>`,
|
|
638
628
|
true
|
|
639
629
|
);
|
|
640
630
|
}
|