@cesium/engine 24.0.0 → 25.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Build/Workers/{chunk-NKT5K3K3.js → chunk-35H3UBIO.js} +13 -12
- package/Build/Workers/{chunk-5A2SW66E.js → chunk-3LSD7OOA.js} +16 -16
- package/Build/Workers/{chunk-HXJMS2ZI.js → chunk-3RFFPH4M.js} +1 -1
- package/Build/Workers/{chunk-EDXL4W76.js → chunk-3TKLDHV3.js} +2 -2
- package/Build/Workers/{chunk-GQUNK2XC.js → chunk-3VDDRF2E.js} +14 -14
- package/Build/Workers/{chunk-Q3C6VQH6.js → chunk-3XY3MVPG.js} +4 -4
- package/Build/Workers/{chunk-A47HVBC5.js → chunk-4GF4MVPY.js} +7 -7
- package/Build/Workers/{chunk-YQFTYQMZ.js → chunk-4MTRQFJP.js} +3 -2
- package/Build/Workers/{chunk-N65BAKSH.js → chunk-4QQXGTCE.js} +8 -8
- package/Build/Workers/{chunk-EV3VGO6Y.js → chunk-4XXHJI6Y.js} +17 -17
- package/Build/Workers/{chunk-DHKPFLSJ.js → chunk-5T6QQAJW.js} +3 -2
- package/Build/Workers/{chunk-UIGVOKKI.js → chunk-6SDGQI27.js} +3 -2
- package/Build/Workers/{chunk-ILMFADZA.js → chunk-77RL3MBD.js} +6 -5
- package/Build/Workers/{chunk-2N4KDHS3.js → chunk-7LSFAEWF.js} +12 -11
- package/Build/Workers/{chunk-44EMEGKW.js → chunk-A7A433MD.js} +5 -5
- package/Build/Workers/{chunk-J6AW5YHS.js → chunk-A7ZBMVFS.js} +14 -14
- package/Build/Workers/{chunk-XJRBB253.js → chunk-ACFFCHHZ.js} +11 -11
- package/Build/Workers/{chunk-MKM27KGV.js → chunk-AEAVLYPS.js} +2 -2
- package/Build/Workers/{chunk-7MDYBRYJ.js → chunk-AWFZHD2B.js} +4 -4
- package/Build/Workers/{chunk-UQU4RXLT.js → chunk-BTX2NL3P.js} +50 -45
- package/Build/Workers/{chunk-4TIG36AW.js → chunk-BVAIWR7O.js} +12 -12
- package/Build/Workers/chunk-CKQP3DSS.js +973 -0
- package/Build/Workers/{chunk-VLDEUTOP.js → chunk-CZ23Y3RM.js} +2 -2
- package/Build/Workers/{chunk-NPF7SSHZ.js → chunk-DFEI5MAV.js} +7 -7
- package/Build/Workers/{chunk-AJLTU6PF.js → chunk-DH26SNAB.js} +4 -1
- package/Build/Workers/{chunk-5GXYJQ2K.js → chunk-DYT5NR6P.js} +3 -3
- package/Build/Workers/{chunk-63SIWPLS.js → chunk-EZARA5FJ.js} +13 -13
- package/Build/Workers/{chunk-AMIHNSST.js → chunk-FIBS5S7R.js} +2 -2
- package/Build/Workers/{chunk-Y7HNNPNK.js → chunk-FVLVVOBQ.js} +10 -10
- package/Build/Workers/{chunk-XY6HMDGI.js → chunk-GL7DNVUS.js} +5 -5
- package/Build/Workers/{chunk-6WLHJFD3.js → chunk-GPIGURCG.js} +59 -32
- package/Build/Workers/{chunk-B6SCUUFP.js → chunk-H2A4USJR.js} +10 -10
- package/Build/Workers/chunk-HSVQATK2.js +147 -0
- package/Build/Workers/{chunk-72VYSVEW.js → chunk-HVMG6AG4.js} +11 -10
- package/Build/Workers/{chunk-LXMCPFFS.js → chunk-I3A6DXYZ.js} +4 -4
- package/Build/Workers/{chunk-7QRFIKWQ.js → chunk-ITD2IN7N.js} +2 -2
- package/Build/Workers/{chunk-RQNJD3O4.js → chunk-J3OFS2RD.js} +12 -12
- package/Build/Workers/{chunk-C6P4IG5P.js → chunk-J647NNZW.js} +6 -6
- package/Build/Workers/{chunk-7X322WP2.js → chunk-J7KQEKPK.js} +13 -13
- package/Build/Workers/{chunk-7O5XJTVE.js → chunk-K6NFIRFB.js} +5 -5
- package/Build/Workers/{chunk-AF3MU2RL.js → chunk-LH5SF3XV.js} +7 -6
- package/Build/Workers/{chunk-GOQBUCXH.js → chunk-ND3NTTOF.js} +708 -430
- package/Build/Workers/chunk-QO2CGXMP.js +2342 -0
- package/Build/Workers/chunk-QSDY4NS7.js +1287 -0
- package/Build/Workers/chunk-QXNQQYPV.js +3201 -0
- package/Build/Workers/{chunk-YAOZMOFL.js → chunk-ST2UWDUU.js} +5 -5
- package/Build/Workers/{chunk-PVV64VFW.js → chunk-TA777BGS.js} +3 -2
- package/Build/Workers/{chunk-ISY4EZCA.js → chunk-TAI4HLII.js} +4 -4
- package/Build/Workers/{chunk-JCI63T3K.js → chunk-URUCCIPS.js} +6 -6
- package/Build/Workers/{chunk-VMVOUQ5J.js → chunk-VQKLRBIK.js} +7 -7
- package/Build/Workers/{chunk-6MPGQEHA.js → chunk-WC57YYBN.js} +2 -2
- package/Build/Workers/{chunk-BJD6QGXZ.js → chunk-WN6P5UDH.js} +12 -12
- package/Build/Workers/{chunk-LIB2H534.js → chunk-WNN5D4W3.js} +12 -11
- package/Build/Workers/{chunk-D4EJ2NXG.js → chunk-WTQGE7Q6.js} +17 -17
- package/Build/Workers/{chunk-YJZGW74L.js → chunk-WUBKZFF6.js} +2213 -1349
- package/Build/Workers/{chunk-7TYLCBGK.js → chunk-ZAPOS52G.js} +12 -10
- package/Build/Workers/{chunk-6RMS4S72.js → chunk-ZCCIIBZT.js} +6 -6
- package/Build/Workers/combineGeometry.js +24 -24
- package/Build/Workers/createBoxGeometry.js +18 -18
- package/Build/Workers/createBoxOutlineGeometry.js +16 -16
- package/Build/Workers/createCircleGeometry.js +26 -26
- package/Build/Workers/createCircleOutlineGeometry.js +19 -19
- package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createCorridorGeometry.js +29 -29
- package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
- package/Build/Workers/createCylinderGeometry.js +20 -20
- package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
- package/Build/Workers/createEllipseGeometry.js +26 -26
- package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
- package/Build/Workers/createEllipsoidGeometry.js +19 -19
- package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
- package/Build/Workers/createFrustumGeometry.js +18 -18
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
- package/Build/Workers/createGeometry.js +24 -24
- package/Build/Workers/createGroundPolylineGeometry.js +175 -118
- package/Build/Workers/createPlaneGeometry.js +16 -16
- package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
- package/Build/Workers/createPolygonGeometry.js +32 -32
- package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
- package/Build/Workers/createPolylineGeometry.js +25 -25
- package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
- package/Build/Workers/createRectangleGeometry.js +27 -27
- package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
- package/Build/Workers/createSimplePolylineGeometry.js +23 -23
- package/Build/Workers/createSphereGeometry.js +19 -19
- package/Build/Workers/createSphereOutlineGeometry.js +18 -18
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
- package/Build/Workers/createVectorTileGeometries.js +24 -24
- package/Build/Workers/createVectorTilePoints.js +13 -13
- package/Build/Workers/createVectorTilePolygons.js +22 -22
- package/Build/Workers/createVectorTilePolylines.js +14 -14
- package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
- package/Build/Workers/createVerticesFromHeightmap.js +24 -23
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +20 -20
- package/Build/Workers/createWallGeometry.js +24 -24
- package/Build/Workers/createWallOutlineGeometry.js +23 -23
- package/Build/Workers/decodeDraco.js +10 -10
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -10
- package/Build/Workers/gaussianSplatSorter.js +4 -4
- package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
- package/Build/Workers/incrementallyBuildTerrainPicker.js +10 -10
- package/Build/Workers/transcodeKTX2.js +12 -9
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
- package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Source/Core/ArcType.js +6 -1
- package/Source/Core/ArticulationStageType.js +5 -1
- package/Source/Core/AssociativeArray.js +100 -94
- package/Source/Core/BoundingSphere.js +1296 -1300
- package/Source/Core/Cartesian3.js +1 -2
- package/Source/Core/Cartographic.js +257 -249
- package/Source/Core/ClockRange.js +6 -1
- package/Source/Core/ClockStep.js +6 -1
- package/Source/Core/Color.js +844 -835
- package/Source/Core/ComponentDatatype.js +4 -1
- package/Source/Core/CornerType.js +6 -1
- package/Source/Core/Credit.js +121 -124
- package/Source/Core/Ellipsoid.js +637 -660
- package/Source/Core/ExtrapolationType.js +6 -1
- package/Source/Core/GeocodeType.js +6 -1
- package/Source/Core/GeographicProjection.js +74 -74
- package/Source/Core/GeographicTilingScheme.js +179 -198
- package/Source/Core/GeometryOffsetAttribute.js +7 -1
- package/Source/Core/GeometryType.js +7 -1
- package/Source/Core/HeightmapEncoding.js +6 -1
- package/Source/Core/Iau2006XysData.js +24 -13
- package/Source/Core/IndexDatatype.js +3 -1
- package/Source/Core/InterpolationType.js +5 -1
- package/Source/Core/Intersect.js +6 -1
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/IonGeocodeProviderType.js +5 -1
- package/Source/Core/JulianDate.js +850 -848
- package/Source/Core/KeyboardEventModifier.js +6 -1
- package/Source/Core/MapProjection.js +39 -44
- package/Source/Core/Matrix2.js +906 -893
- package/Source/Core/Matrix3.js +1643 -1575
- package/Source/Core/Matrix4.js +2903 -2872
- package/Source/Core/PixelFormat.js +3 -1
- package/Source/Core/PrimitiveType.js +11 -1
- package/Source/Core/Ray.js +62 -60
- package/Source/Core/Rectangle.js +913 -904
- package/Source/Core/ReferenceFrame.js +6 -1
- package/Source/Core/RequestScheduler.js +8 -3
- package/Source/Core/RequestState.js +6 -1
- package/Source/Core/RequestType.js +6 -1
- package/Source/Core/ScreenSpaceEventType.js +6 -1
- package/Source/Core/TerrainQuantization.js +6 -1
- package/Source/Core/TilingScheme.js +100 -98
- package/Source/Core/TimeConstants.js +6 -1
- package/Source/Core/TimeStandard.js +6 -1
- package/Source/Core/TrackingReferenceFrame.js +6 -1
- package/Source/Core/Visibility.js +6 -1
- package/Source/Core/VulkanConstants.js +6 -1
- package/Source/Core/WebGLConstants.js +6 -1
- package/Source/Core/WebMercatorProjection.js +108 -109
- package/Source/Core/WebMercatorTilingScheme.js +246 -242
- package/Source/Core/WindingOrder.js +3 -1
- package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +1 -0
- package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +1 -0
- package/Source/DataSources/StripeOrientation.js +6 -1
- package/Source/Renderer/BufferUsage.js +20 -9
- package/Source/Renderer/Context.js +2 -29
- package/Source/Renderer/DrawCommand.js +435 -403
- package/Source/Renderer/MipmapHint.js +5 -1
- package/Source/Renderer/Pass.js +7 -1
- package/Source/Renderer/PickId.js +44 -0
- package/Source/Renderer/PixelDatatype.js +3 -1
- package/Source/Renderer/RenderbufferFormat.js +5 -1
- package/Source/Renderer/ShaderDestination.js +4 -1
- package/Source/Renderer/TextureMagnificationFilter.js +3 -1
- package/Source/Renderer/TextureMinificationFilter.js +3 -1
- package/Source/Renderer/TextureWrap.js +5 -1
- package/Source/Scene/AlphaMode.js +5 -1
- package/Source/Scene/ArcGisBaseMapType.js +6 -1
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/AttributeType.js +3 -1
- package/Source/Scene/Axis.js +3 -1
- package/Source/Scene/BingMapsStyle.js +6 -1
- package/Source/Scene/BlendEquation.js +6 -1
- package/Source/Scene/BlendFunction.js +6 -1
- package/Source/Scene/BlendOption.js +6 -1
- package/Source/Scene/BlendingState.js +6 -1
- package/Source/Scene/BufferLoader.js +0 -2
- package/Source/Scene/BufferPointCollection.js +4 -1
- package/Source/Scene/BufferPolygonCollection.js +3 -1
- package/Source/Scene/BufferPolylineCollection.js +3 -1
- package/Source/Scene/BufferPrimitiveCollection.js +140 -24
- package/Source/Scene/CameraEventType.js +6 -1
- package/Source/Scene/Cesium3DTileColorBlendMode.js +6 -1
- package/Source/Scene/Cesium3DTileContentState.js +6 -1
- package/Source/Scene/Cesium3DTileContentType.js +3 -1
- package/Source/Scene/Cesium3DTileFeature.js +289 -306
- package/Source/Scene/Cesium3DTileOptimizationHint.js +6 -1
- package/Source/Scene/Cesium3DTilePass.js +5 -1
- package/Source/Scene/Cesium3DTilePointFeature.js +433 -511
- package/Source/Scene/Cesium3DTileRefine.js +6 -1
- package/Source/Scene/Cesium3DTileVectorFeature.js +586 -0
- package/Source/Scene/Cesium3DTileset.js +1 -1
- package/Source/Scene/ClassificationType.js +3 -1
- package/Source/Scene/CloudType.js +3 -1
- package/Source/Scene/ColorBlendMode.js +4 -1
- package/Source/Scene/CullFace.js +6 -1
- package/Source/Scene/DepthFunction.js +6 -1
- package/Source/Scene/DynamicAtmosphereLightingType.js +3 -1
- package/Source/Scene/EquirectangularPanorama.js +1 -0
- package/Source/Scene/ExpressionNodeType.js +6 -1
- package/Source/Scene/GltfBufferViewLoader.js +0 -2
- package/Source/Scene/GltfDracoLoader.js +0 -2
- package/Source/Scene/GltfImageLoader.js +0 -3
- package/Source/Scene/GltfIndexBufferLoader.js +0 -4
- package/Source/Scene/GltfJsonLoader.js +0 -2
- package/Source/Scene/GltfLoader.js +0 -5
- package/Source/Scene/GltfLoaderUtil.js +14 -0
- package/Source/Scene/GltfSpzLoader.js +0 -2
- package/Source/Scene/GltfStructuralMetadataLoader.js +0 -2
- package/Source/Scene/GltfTextureLoader.js +0 -2
- package/Source/Scene/GltfVertexBufferLoader.js +0 -4
- package/Source/Scene/HeightReference.js +5 -1
- package/Source/Scene/HorizontalOrigin.js +6 -1
- package/Source/Scene/ImageryProvider.js +1 -1
- package/Source/Scene/ImageryState.js +6 -1
- package/Source/Scene/ImplicitSubdivisionScheme.js +3 -1
- package/Source/Scene/InstanceAttributeSemantic.js +3 -1
- package/Source/Scene/IonWorldImageryStyle.js +6 -1
- package/Source/Scene/JobType.js +6 -1
- package/Source/Scene/LabelStyle.js +6 -1
- package/Source/Scene/MapMode2D.js +6 -1
- package/Source/Scene/MetadataComponentType.js +3 -1
- package/Source/Scene/MetadataSchemaLoader.js +0 -2
- package/Source/Scene/MetadataSemantic.js +6 -2
- package/Source/Scene/MetadataType.js +3 -1
- package/Source/Scene/Model/B3dmLoader.js +0 -3
- package/Source/Scene/Model/CustomShaderMode.js +3 -1
- package/Source/Scene/Model/CustomShaderTranslucencyMode.js +5 -1
- package/Source/Scene/Model/EdgeVisibilityPipelineStage.js +44 -71
- package/Source/Scene/Model/Extensions/Gpm/PpeSource.js +5 -1
- package/Source/Scene/Model/Extensions/Gpm/StorageType.js +5 -1
- package/Source/Scene/Model/GeoJsonLoader.js +0 -2
- package/Source/Scene/Model/I3dmLoader.js +0 -3
- package/Source/Scene/Model/InstancingPipelineStage.js +1 -1
- package/Source/Scene/Model/LightingModel.js +5 -1
- package/Source/Scene/Model/MaterialPipelineStage.js +184 -3
- package/Source/Scene/Model/ModelReader.js +474 -3
- package/Source/Scene/Model/ModelRuntimePrimitive.js +2 -1
- package/Source/Scene/Model/ModelType.js +3 -1
- package/Source/Scene/Model/PntsLoader.js +4 -3
- package/Source/Scene/Model/StyleCommandsNeeded.js +3 -1
- package/Source/Scene/Model/UniformType.js +5 -1
- package/Source/Scene/Model/VaryingType.js +5 -1
- package/Source/Scene/Model/createVectorTileBuffersFromModelComponents.js +73 -28
- package/Source/Scene/Model/pickModel.js +94 -299
- package/Source/Scene/ModelAnimationLoop.js +6 -1
- package/Source/Scene/ModelAnimationState.js +6 -1
- package/Source/Scene/ModelComponents.js +8 -1
- package/Source/Scene/PrimitiveState.js +7 -1
- package/Source/Scene/QuadtreeOccluders.js +20 -15
- package/Source/Scene/QuadtreeTile.js +547 -541
- package/Source/Scene/QuadtreeTileLoadState.js +6 -1
- package/Source/Scene/QuadtreeTileProvider.js +159 -175
- package/Source/Scene/ResourceLoader.js +0 -1
- package/Source/Scene/ResourceLoaderState.js +7 -1
- package/Source/Scene/SceneMode.js +4 -1
- package/Source/Scene/ShadowMode.js +3 -1
- package/Source/Scene/SkyBox.js +1 -1
- package/Source/Scene/SplitDirection.js +6 -1
- package/Source/Scene/StencilFunction.js +6 -1
- package/Source/Scene/StencilOperation.js +6 -1
- package/Source/Scene/TerrainState.js +7 -1
- package/Source/Scene/TileState.js +7 -1
- package/Source/Scene/Tonemapper.js +5 -1
- package/Source/Scene/VectorGltf3DTileContent.js +72 -51
- package/Source/Scene/VertexAttributeSemantic.js +3 -1
- package/Source/Scene/VerticalOrigin.js +6 -1
- package/Source/Scene/VoxelBoxShape.js +12 -6
- package/Source/Scene/VoxelContent.js +2 -0
- package/Source/Scene/VoxelCylinderShape.js +39 -38
- package/Source/Scene/VoxelEllipsoidShape.js +46 -96
- package/Source/Scene/VoxelMetadataOrder.js +6 -1
- package/Source/Scene/VoxelProvider.js +1 -0
- package/Source/Scene/VoxelShapeType.js +3 -1
- package/Source/Scene/renderBufferPointCollection.js +17 -66
- package/Source/Scene/renderBufferPolygonCollection.js +21 -68
- package/Source/Scene/renderBufferPolylineCollection.js +22 -73
- package/Source/Shaders/Builtin/CzmBuiltins.js +2 -0
- package/Source/Shaders/Builtin/Functions/computeTextureTransform.glsl +24 -0
- package/Source/Shaders/Builtin/Functions/computeTextureTransform.js +25 -0
- package/Source/Shaders/Model/ConstantLodStageFS.glsl +60 -0
- package/Source/Shaders/Model/ConstantLodStageFS.js +62 -0
- package/Source/Shaders/Model/ConstantLodStageVS.glsl +12 -0
- package/Source/Shaders/Model/ConstantLodStageVS.js +13 -0
- package/Source/Shaders/Model/MaterialStageFS.glsl +46 -20
- package/Source/Shaders/Model/MaterialStageFS.js +46 -20
- package/Source/Shaders/Voxels/convertLocalToBoxUv.glsl +0 -1
- package/Source/Shaders/Voxels/convertLocalToBoxUv.js +0 -1
- package/Source/Shaders/Voxels/convertLocalToCylinderUv.glsl +7 -9
- package/Source/Shaders/Voxels/convertLocalToCylinderUv.js +7 -9
- package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.glsl +7 -17
- package/Source/Shaders/Voxels/convertLocalToEllipsoidUv.js +7 -17
- package/Source/Widget/CesiumWidget.js +11 -4
- package/index.d.ts +343 -309
- package/index.js +443 -438
- package/package.json +2 -2
- package/Build/Workers/chunk-DVB56LG7.js +0 -114
- package/Build/Workers/chunk-HKUES6UG.js +0 -2357
- package/Build/Workers/chunk-HRHRYFHS.js +0 -940
- package/Build/Workers/chunk-KLPGTXS3.js +0 -642
- package/Build/Workers/chunk-ZBZRTRJB.js +0 -1829
|
@@ -876,8 +876,7 @@ class Cartesian3 {
|
|
|
876
876
|
|
|
877
877
|
const radiiSquared = !defined(ellipsoid)
|
|
878
878
|
? Cartesian3._ellipsoidRadiiSquared
|
|
879
|
-
:
|
|
880
|
-
ellipsoid.radiiSquared;
|
|
879
|
+
: ellipsoid.radiiSquared;
|
|
881
880
|
|
|
882
881
|
const cosLatitude = Math.cos(latitude);
|
|
883
882
|
scratchN.x = cosLatitude * Math.cos(longitude);
|
|
@@ -1,255 +1,301 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
|
|
1
3
|
import Cartesian3 from "./Cartesian3.js";
|
|
2
4
|
import Check from "./Check.js";
|
|
3
5
|
import defined from "./defined.js";
|
|
4
6
|
import CesiumMath from "./Math.js";
|
|
5
7
|
import scaleToGeodeticSurface from "./scaleToGeodeticSurface.js";
|
|
6
8
|
|
|
9
|
+
/** @import Ellipsoid from "./Ellipsoid.js"; */
|
|
10
|
+
|
|
7
11
|
/**
|
|
8
12
|
* A position defined by longitude, latitude, and height.
|
|
9
|
-
* @alias Cartographic
|
|
10
|
-
* @constructor
|
|
11
|
-
*
|
|
12
|
-
* @param {number} [longitude=0.0] The longitude, in radians.
|
|
13
|
-
* @param {number} [latitude=0.0] The latitude, in radians.
|
|
14
|
-
* @param {number} [height=0.0] The height, in meters, above the ellipsoid.
|
|
15
13
|
*
|
|
16
14
|
* @see Ellipsoid
|
|
17
15
|
*/
|
|
18
|
-
|
|
16
|
+
class Cartographic {
|
|
19
17
|
/**
|
|
20
|
-
* The longitude, in radians.
|
|
21
|
-
* @
|
|
22
|
-
* @
|
|
18
|
+
* @param {number} [longitude=0.0] The longitude, in radians.
|
|
19
|
+
* @param {number} [latitude=0.0] The latitude, in radians.
|
|
20
|
+
* @param {number} [height=0.0] The height, in meters, above the ellipsoid.
|
|
23
21
|
*/
|
|
24
|
-
|
|
22
|
+
constructor(longitude, latitude, height) {
|
|
23
|
+
/**
|
|
24
|
+
* The longitude, in radians.
|
|
25
|
+
* @type {number}
|
|
26
|
+
* @default 0.0
|
|
27
|
+
*/
|
|
28
|
+
this.longitude = longitude ?? 0.0;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* The latitude, in radians.
|
|
32
|
+
* @type {number}
|
|
33
|
+
* @default 0.0
|
|
34
|
+
*/
|
|
35
|
+
this.latitude = latitude ?? 0.0;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* The height, in meters, above the ellipsoid.
|
|
39
|
+
* @type {number}
|
|
40
|
+
* @default 0.0
|
|
41
|
+
*/
|
|
42
|
+
this.height = height ?? 0.0;
|
|
43
|
+
}
|
|
25
44
|
|
|
26
45
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
46
|
+
* Creates a new Cartographic instance from longitude and latitude
|
|
47
|
+
* specified in radians.
|
|
48
|
+
*
|
|
49
|
+
* @param {number} longitude The longitude, in radians.
|
|
50
|
+
* @param {number} latitude The latitude, in radians.
|
|
51
|
+
* @param {number} [height=0.0] The height, in meters, above the ellipsoid.
|
|
52
|
+
* @param {Cartographic} [result] The object onto which to store the result.
|
|
53
|
+
* @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
|
|
30
54
|
*/
|
|
31
|
-
|
|
55
|
+
static fromRadians(longitude, latitude, height, result) {
|
|
56
|
+
//>>includeStart('debug', pragmas.debug);
|
|
57
|
+
Check.typeOf.number("longitude", longitude);
|
|
58
|
+
Check.typeOf.number("latitude", latitude);
|
|
59
|
+
//>>includeEnd('debug');
|
|
60
|
+
|
|
61
|
+
height = height ?? 0.0;
|
|
62
|
+
|
|
63
|
+
if (!defined(result)) {
|
|
64
|
+
return new Cartographic(longitude, latitude, height);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
result.longitude = longitude;
|
|
68
|
+
result.latitude = latitude;
|
|
69
|
+
result.height = height;
|
|
70
|
+
return result;
|
|
71
|
+
}
|
|
32
72
|
|
|
33
73
|
/**
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
74
|
+
* Creates a new Cartographic instance from longitude and latitude
|
|
75
|
+
* specified in degrees. The values in the resulting object will
|
|
76
|
+
* be in radians.
|
|
77
|
+
*
|
|
78
|
+
* @param {number} longitude The longitude, in degrees.
|
|
79
|
+
* @param {number} latitude The latitude, in degrees.
|
|
80
|
+
* @param {number} [height=0.0] The height, in meters, above the ellipsoid.
|
|
81
|
+
* @param {Cartographic} [result] The object onto which to store the result.
|
|
82
|
+
* @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
|
|
37
83
|
*/
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
* specified in radians.
|
|
44
|
-
*
|
|
45
|
-
* @param {number} longitude The longitude, in radians.
|
|
46
|
-
* @param {number} latitude The latitude, in radians.
|
|
47
|
-
* @param {number} [height=0.0] The height, in meters, above the ellipsoid.
|
|
48
|
-
* @param {Cartographic} [result] The object onto which to store the result.
|
|
49
|
-
* @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
|
|
50
|
-
*/
|
|
51
|
-
Cartographic.fromRadians = function (longitude, latitude, height, result) {
|
|
52
|
-
//>>includeStart('debug', pragmas.debug);
|
|
53
|
-
Check.typeOf.number("longitude", longitude);
|
|
54
|
-
Check.typeOf.number("latitude", latitude);
|
|
55
|
-
//>>includeEnd('debug');
|
|
84
|
+
static fromDegrees(longitude, latitude, height, result) {
|
|
85
|
+
//>>includeStart('debug', pragmas.debug);
|
|
86
|
+
Check.typeOf.number("longitude", longitude);
|
|
87
|
+
Check.typeOf.number("latitude", latitude);
|
|
88
|
+
//>>includeEnd('debug');
|
|
56
89
|
|
|
57
|
-
|
|
90
|
+
longitude = CesiumMath.toRadians(longitude);
|
|
91
|
+
latitude = CesiumMath.toRadians(latitude);
|
|
58
92
|
|
|
59
|
-
|
|
60
|
-
return new Cartographic(longitude, latitude, height);
|
|
93
|
+
return Cartographic.fromRadians(longitude, latitude, height, result);
|
|
61
94
|
}
|
|
62
95
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
}
|
|
96
|
+
/**
|
|
97
|
+
* Creates a new Cartographic instance from a Cartesian position. The values in the
|
|
98
|
+
* resulting object will be in radians.
|
|
99
|
+
*
|
|
100
|
+
* @param {Cartesian3} cartesian The Cartesian position to convert to cartographic representation.
|
|
101
|
+
* @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid on which the position lies.
|
|
102
|
+
* @param {Cartographic} [result] The object onto which to store the result.
|
|
103
|
+
* @returns {Cartographic} The modified result parameter, new Cartographic instance if none was provided, or undefined if the cartesian is at the center of the ellipsoid.
|
|
104
|
+
*/
|
|
105
|
+
static fromCartesian(cartesian, ellipsoid, result) {
|
|
106
|
+
const oneOverRadii = defined(ellipsoid)
|
|
107
|
+
? ellipsoid.oneOverRadii
|
|
108
|
+
: Cartographic._ellipsoidOneOverRadii;
|
|
109
|
+
const oneOverRadiiSquared = defined(ellipsoid)
|
|
110
|
+
? ellipsoid.oneOverRadiiSquared
|
|
111
|
+
: Cartographic._ellipsoidOneOverRadiiSquared;
|
|
112
|
+
const centerToleranceSquared = defined(ellipsoid)
|
|
113
|
+
? ellipsoid._centerToleranceSquared
|
|
114
|
+
: Cartographic._ellipsoidCenterToleranceSquared;
|
|
68
115
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
* @param {Cartographic} [result] The object onto which to store the result.
|
|
78
|
-
* @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
|
|
79
|
-
*/
|
|
80
|
-
Cartographic.fromDegrees = function (longitude, latitude, height, result) {
|
|
81
|
-
//>>includeStart('debug', pragmas.debug);
|
|
82
|
-
Check.typeOf.number("longitude", longitude);
|
|
83
|
-
Check.typeOf.number("latitude", latitude);
|
|
84
|
-
//>>includeEnd('debug');
|
|
116
|
+
//`cartesian is required.` is thrown from scaleToGeodeticSurface
|
|
117
|
+
const p = scaleToGeodeticSurface(
|
|
118
|
+
cartesian,
|
|
119
|
+
oneOverRadii,
|
|
120
|
+
oneOverRadiiSquared,
|
|
121
|
+
centerToleranceSquared,
|
|
122
|
+
cartesianToCartographicP,
|
|
123
|
+
);
|
|
85
124
|
|
|
86
|
-
|
|
87
|
-
|
|
125
|
+
if (!defined(p)) {
|
|
126
|
+
return undefined;
|
|
127
|
+
}
|
|
88
128
|
|
|
89
|
-
|
|
90
|
-
|
|
129
|
+
let n = Cartesian3.multiplyComponents(
|
|
130
|
+
p,
|
|
131
|
+
oneOverRadiiSquared,
|
|
132
|
+
cartesianToCartographicN,
|
|
133
|
+
);
|
|
134
|
+
n = Cartesian3.normalize(n, n);
|
|
91
135
|
|
|
92
|
-
const
|
|
93
|
-
const cartesianToCartographicP = new Cartesian3();
|
|
94
|
-
const cartesianToCartographicH = new Cartesian3();
|
|
136
|
+
const h = Cartesian3.subtract(cartesian, p, cartesianToCartographicH);
|
|
95
137
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
1.0 / 6356752.3142451793,
|
|
101
|
-
);
|
|
102
|
-
Cartographic._ellipsoidOneOverRadiiSquared = new Cartesian3(
|
|
103
|
-
1.0 / (6378137.0 * 6378137.0),
|
|
104
|
-
1.0 / (6378137.0 * 6378137.0),
|
|
105
|
-
1.0 / (6356752.3142451793 * 6356752.3142451793),
|
|
106
|
-
);
|
|
107
|
-
Cartographic._ellipsoidCenterToleranceSquared = CesiumMath.EPSILON1;
|
|
138
|
+
const longitude = Math.atan2(n.y, n.x);
|
|
139
|
+
const latitude = Math.asin(n.z);
|
|
140
|
+
const height =
|
|
141
|
+
CesiumMath.sign(Cartesian3.dot(h, cartesian)) * Cartesian3.magnitude(h);
|
|
108
142
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
143
|
+
if (!defined(result)) {
|
|
144
|
+
return new Cartographic(longitude, latitude, height);
|
|
145
|
+
}
|
|
146
|
+
result.longitude = longitude;
|
|
147
|
+
result.latitude = latitude;
|
|
148
|
+
result.height = height;
|
|
149
|
+
return result;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Creates a new Cartesian3 instance from a Cartographic input. The values in the inputted
|
|
154
|
+
* object should be in radians.
|
|
155
|
+
*
|
|
156
|
+
* @param {Cartographic} cartographic Input to be converted into a Cartesian3 output.
|
|
157
|
+
* @param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid on which the position lies.
|
|
158
|
+
* @param {Cartesian3} [result] The object onto which to store the result.
|
|
159
|
+
* @returns {Cartesian3} The position
|
|
160
|
+
*/
|
|
161
|
+
static toCartesian(cartographic, ellipsoid, result) {
|
|
162
|
+
//>>includeStart('debug', pragmas.debug);
|
|
163
|
+
Check.defined("cartographic", cartographic);
|
|
164
|
+
//>>includeEnd('debug');
|
|
165
|
+
|
|
166
|
+
return Cartesian3.fromRadians(
|
|
167
|
+
cartographic.longitude,
|
|
168
|
+
cartographic.latitude,
|
|
169
|
+
cartographic.height,
|
|
170
|
+
ellipsoid,
|
|
171
|
+
result,
|
|
172
|
+
);
|
|
173
|
+
}
|
|
137
174
|
|
|
138
|
-
|
|
139
|
-
|
|
175
|
+
/**
|
|
176
|
+
* Duplicates a Cartographic instance.
|
|
177
|
+
*
|
|
178
|
+
* @param {Cartographic} cartographic The cartographic to duplicate.
|
|
179
|
+
* @param {Cartographic} [result] The object onto which to store the result.
|
|
180
|
+
* @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided. (Returns undefined if cartographic is undefined)
|
|
181
|
+
*/
|
|
182
|
+
static clone(cartographic, result) {
|
|
183
|
+
if (!defined(cartographic)) {
|
|
184
|
+
return undefined;
|
|
185
|
+
}
|
|
186
|
+
if (!defined(result)) {
|
|
187
|
+
return new Cartographic(
|
|
188
|
+
cartographic.longitude,
|
|
189
|
+
cartographic.latitude,
|
|
190
|
+
cartographic.height,
|
|
191
|
+
);
|
|
192
|
+
}
|
|
193
|
+
result.longitude = cartographic.longitude;
|
|
194
|
+
result.latitude = cartographic.latitude;
|
|
195
|
+
result.height = cartographic.height;
|
|
196
|
+
return result;
|
|
140
197
|
}
|
|
141
198
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
199
|
+
/**
|
|
200
|
+
* Compares the provided cartographics componentwise and returns
|
|
201
|
+
* <code>true</code> if they are equal, <code>false</code> otherwise.
|
|
202
|
+
*
|
|
203
|
+
* @param {Cartographic} [left] The first cartographic.
|
|
204
|
+
* @param {Cartographic} [right] The second cartographic.
|
|
205
|
+
* @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
|
|
206
|
+
*/
|
|
207
|
+
static equals(left, right) {
|
|
208
|
+
return (
|
|
209
|
+
left === right ||
|
|
210
|
+
(defined(left) &&
|
|
211
|
+
defined(right) &&
|
|
212
|
+
left.longitude === right.longitude &&
|
|
213
|
+
left.latitude === right.latitude &&
|
|
214
|
+
left.height === right.height)
|
|
215
|
+
);
|
|
216
|
+
}
|
|
148
217
|
|
|
149
|
-
|
|
218
|
+
/**
|
|
219
|
+
* Compares the provided cartographics componentwise and returns
|
|
220
|
+
* <code>true</code> if they are within the provided epsilon,
|
|
221
|
+
* <code>false</code> otherwise.
|
|
222
|
+
*
|
|
223
|
+
* @param {Cartographic} [left] The first cartographic.
|
|
224
|
+
* @param {Cartographic} [right] The second cartographic.
|
|
225
|
+
* @param {number} [epsilon=0] The epsilon to use for equality testing.
|
|
226
|
+
* @returns {boolean} <code>true</code> if left and right are within the provided epsilon, <code>false</code> otherwise.
|
|
227
|
+
*/
|
|
228
|
+
static equalsEpsilon(left, right, epsilon) {
|
|
229
|
+
epsilon = epsilon ?? 0;
|
|
150
230
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
231
|
+
return (
|
|
232
|
+
left === right ||
|
|
233
|
+
(defined(left) &&
|
|
234
|
+
defined(right) &&
|
|
235
|
+
Math.abs(left.longitude - right.longitude) <= epsilon &&
|
|
236
|
+
Math.abs(left.latitude - right.latitude) <= epsilon &&
|
|
237
|
+
Math.abs(left.height - right.height) <= epsilon)
|
|
238
|
+
);
|
|
239
|
+
}
|
|
155
240
|
|
|
156
|
-
|
|
157
|
-
|
|
241
|
+
/**
|
|
242
|
+
* Duplicates this instance.
|
|
243
|
+
*
|
|
244
|
+
* @param {Cartographic} [result] The object onto which to store the result.
|
|
245
|
+
* @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
|
|
246
|
+
*/
|
|
247
|
+
clone(result) {
|
|
248
|
+
return Cartographic.clone(this, result);
|
|
158
249
|
}
|
|
159
|
-
result.longitude = longitude;
|
|
160
|
-
result.latitude = latitude;
|
|
161
|
-
result.height = height;
|
|
162
|
-
return result;
|
|
163
|
-
};
|
|
164
250
|
|
|
165
|
-
/**
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
//>>includeStart('debug', pragmas.debug);
|
|
176
|
-
Check.defined("cartographic", cartographic);
|
|
177
|
-
//>>includeEnd('debug');
|
|
178
|
-
|
|
179
|
-
return Cartesian3.fromRadians(
|
|
180
|
-
cartographic.longitude,
|
|
181
|
-
cartographic.latitude,
|
|
182
|
-
cartographic.height,
|
|
183
|
-
ellipsoid,
|
|
184
|
-
result,
|
|
185
|
-
);
|
|
186
|
-
};
|
|
251
|
+
/**
|
|
252
|
+
* Compares the provided against this cartographic componentwise and returns
|
|
253
|
+
* <code>true</code> if they are equal, <code>false</code> otherwise.
|
|
254
|
+
*
|
|
255
|
+
* @param {Cartographic} [right] The second cartographic.
|
|
256
|
+
* @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
|
|
257
|
+
*/
|
|
258
|
+
equals(right) {
|
|
259
|
+
return Cartographic.equals(this, right);
|
|
260
|
+
}
|
|
187
261
|
|
|
188
|
-
/**
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
262
|
+
/**
|
|
263
|
+
* Compares the provided against this cartographic componentwise and returns
|
|
264
|
+
* <code>true</code> if they are within the provided epsilon,
|
|
265
|
+
* <code>false</code> otherwise.
|
|
266
|
+
*
|
|
267
|
+
* @param {Cartographic} [right] The second cartographic.
|
|
268
|
+
* @param {number} [epsilon=0] The epsilon to use for equality testing.
|
|
269
|
+
* @returns {boolean} <code>true</code> if left and right are within the provided epsilon, <code>false</code> otherwise.
|
|
270
|
+
*/
|
|
271
|
+
equalsEpsilon(right, epsilon) {
|
|
272
|
+
return Cartographic.equalsEpsilon(this, right, epsilon);
|
|
198
273
|
}
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
274
|
+
|
|
275
|
+
/**
|
|
276
|
+
* Creates a string representing this cartographic in the format '(longitude, latitude, height)'.
|
|
277
|
+
*
|
|
278
|
+
* @returns {string} A string representing the provided cartographic in the format '(longitude, latitude, height)'.
|
|
279
|
+
*/
|
|
280
|
+
toString() {
|
|
281
|
+
return `(${this.longitude}, ${this.latitude}, ${this.height})`;
|
|
205
282
|
}
|
|
206
|
-
result.longitude = cartographic.longitude;
|
|
207
|
-
result.latitude = cartographic.latitude;
|
|
208
|
-
result.height = cartographic.height;
|
|
209
|
-
return result;
|
|
210
|
-
};
|
|
211
283
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
* @param {Cartographic} [right] The second cartographic.
|
|
218
|
-
* @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
|
|
219
|
-
*/
|
|
220
|
-
Cartographic.equals = function (left, right) {
|
|
221
|
-
return (
|
|
222
|
-
left === right ||
|
|
223
|
-
(defined(left) &&
|
|
224
|
-
defined(right) &&
|
|
225
|
-
left.longitude === right.longitude &&
|
|
226
|
-
left.latitude === right.latitude &&
|
|
227
|
-
left.height === right.height)
|
|
284
|
+
// To avoid circular dependencies, these are set by Ellipsoid when Ellipsoid.default is set.
|
|
285
|
+
static _ellipsoidOneOverRadii = new Cartesian3(
|
|
286
|
+
1.0 / 6378137.0,
|
|
287
|
+
1.0 / 6378137.0,
|
|
288
|
+
1.0 / 6356752.3142451793,
|
|
228
289
|
);
|
|
229
|
-
};
|
|
230
290
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
*
|
|
235
|
-
*
|
|
236
|
-
* @param {Cartographic} [left] The first cartographic.
|
|
237
|
-
* @param {Cartographic} [right] The second cartographic.
|
|
238
|
-
* @param {number} [epsilon=0] The epsilon to use for equality testing.
|
|
239
|
-
* @returns {boolean} <code>true</code> if left and right are within the provided epsilon, <code>false</code> otherwise.
|
|
240
|
-
*/
|
|
241
|
-
Cartographic.equalsEpsilon = function (left, right, epsilon) {
|
|
242
|
-
epsilon = epsilon ?? 0;
|
|
243
|
-
|
|
244
|
-
return (
|
|
245
|
-
left === right ||
|
|
246
|
-
(defined(left) &&
|
|
247
|
-
defined(right) &&
|
|
248
|
-
Math.abs(left.longitude - right.longitude) <= epsilon &&
|
|
249
|
-
Math.abs(left.latitude - right.latitude) <= epsilon &&
|
|
250
|
-
Math.abs(left.height - right.height) <= epsilon)
|
|
291
|
+
static _ellipsoidOneOverRadiiSquared = new Cartesian3(
|
|
292
|
+
1.0 / (6378137.0 * 6378137.0),
|
|
293
|
+
1.0 / (6378137.0 * 6378137.0),
|
|
294
|
+
1.0 / (6356752.3142451793 * 6356752.3142451793),
|
|
251
295
|
);
|
|
252
|
-
|
|
296
|
+
|
|
297
|
+
static _ellipsoidCenterToleranceSquared = CesiumMath.EPSILON1;
|
|
298
|
+
}
|
|
253
299
|
|
|
254
300
|
/**
|
|
255
301
|
* An immutable Cartographic instance initialized to (0.0, 0.0, 0.0).
|
|
@@ -259,46 +305,8 @@ Cartographic.equalsEpsilon = function (left, right, epsilon) {
|
|
|
259
305
|
*/
|
|
260
306
|
Cartographic.ZERO = Object.freeze(new Cartographic(0.0, 0.0, 0.0));
|
|
261
307
|
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
* @param {Cartographic} [result] The object onto which to store the result.
|
|
266
|
-
* @returns {Cartographic} The modified result parameter or a new Cartographic instance if one was not provided.
|
|
267
|
-
*/
|
|
268
|
-
Cartographic.prototype.clone = function (result) {
|
|
269
|
-
return Cartographic.clone(this, result);
|
|
270
|
-
};
|
|
271
|
-
|
|
272
|
-
/**
|
|
273
|
-
* Compares the provided against this cartographic componentwise and returns
|
|
274
|
-
* <code>true</code> if they are equal, <code>false</code> otherwise.
|
|
275
|
-
*
|
|
276
|
-
* @param {Cartographic} [right] The second cartographic.
|
|
277
|
-
* @returns {boolean} <code>true</code> if left and right are equal, <code>false</code> otherwise.
|
|
278
|
-
*/
|
|
279
|
-
Cartographic.prototype.equals = function (right) {
|
|
280
|
-
return Cartographic.equals(this, right);
|
|
281
|
-
};
|
|
282
|
-
|
|
283
|
-
/**
|
|
284
|
-
* Compares the provided against this cartographic componentwise and returns
|
|
285
|
-
* <code>true</code> if they are within the provided epsilon,
|
|
286
|
-
* <code>false</code> otherwise.
|
|
287
|
-
*
|
|
288
|
-
* @param {Cartographic} [right] The second cartographic.
|
|
289
|
-
* @param {number} [epsilon=0] The epsilon to use for equality testing.
|
|
290
|
-
* @returns {boolean} <code>true</code> if left and right are within the provided epsilon, <code>false</code> otherwise.
|
|
291
|
-
*/
|
|
292
|
-
Cartographic.prototype.equalsEpsilon = function (right, epsilon) {
|
|
293
|
-
return Cartographic.equalsEpsilon(this, right, epsilon);
|
|
294
|
-
};
|
|
308
|
+
const cartesianToCartographicN = new Cartesian3();
|
|
309
|
+
const cartesianToCartographicP = new Cartesian3();
|
|
310
|
+
const cartesianToCartographicH = new Cartesian3();
|
|
295
311
|
|
|
296
|
-
/**
|
|
297
|
-
* Creates a string representing this cartographic in the format '(longitude, latitude, height)'.
|
|
298
|
-
*
|
|
299
|
-
* @returns {string} A string representing the provided cartographic in the format '(longitude, latitude, height)'.
|
|
300
|
-
*/
|
|
301
|
-
Cartographic.prototype.toString = function () {
|
|
302
|
-
return `(${this.longitude}, ${this.latitude}, ${this.height})`;
|
|
303
|
-
};
|
|
304
312
|
export default Cartographic;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* Constants used by {@link Clock#tick} to determine behavior
|
|
3
5
|
* when {@link Clock#startTime} or {@link Clock#stopTime} is reached.
|
|
@@ -36,4 +38,7 @@ const ClockRange = {
|
|
|
36
38
|
*/
|
|
37
39
|
LOOP_STOP: 2,
|
|
38
40
|
};
|
|
39
|
-
|
|
41
|
+
|
|
42
|
+
Object.freeze(ClockRange);
|
|
43
|
+
|
|
44
|
+
export default ClockRange;
|
package/Source/Core/ClockStep.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// @ts-check
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* Constants to determine how much time advances with each call
|
|
3
5
|
* to {@link Clock#tick}.
|
|
@@ -35,4 +37,7 @@ const ClockStep = {
|
|
|
35
37
|
*/
|
|
36
38
|
SYSTEM_CLOCK: 2,
|
|
37
39
|
};
|
|
38
|
-
|
|
40
|
+
|
|
41
|
+
Object.freeze(ClockStep);
|
|
42
|
+
|
|
43
|
+
export default ClockStep;
|