@cesium/engine 3.0.2 → 5.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/ThirdParty/Workers/pako_deflate.min.js +605 -0
- package/Build/ThirdParty/Workers/pako_inflate.min.js +800 -0
- package/Build/ThirdParty/Workers/z-worker-pako.js +502 -0
- package/Build/Workers/chunk-2U6EBIRX.js +757 -0
- package/Build/Workers/chunk-2ZI7FZ3Q.js +58 -0
- package/Build/Workers/chunk-3TSHZWOZ.js +1860 -0
- package/Build/Workers/chunk-44B6FQSJ.js +684 -0
- package/Build/Workers/chunk-4AJR66C5.js +368 -0
- package/Build/Workers/chunk-4HN3N5SE.js +501 -0
- package/Build/Workers/chunk-4QGPYV3W.js +102 -0
- package/Build/Workers/chunk-4RKE4B3G.js +476 -0
- package/Build/Workers/chunk-5E3V7Y4R.js +196 -0
- package/Build/Workers/chunk-6EHT6GS3.js +163 -0
- package/Build/Workers/chunk-6I22NWKQ.js +171 -0
- package/Build/Workers/chunk-7N67FBLW.js +1054 -0
- package/Build/Workers/chunk-AQQGAFKX.js +124 -0
- package/Build/Workers/chunk-CROU4RHL.js +138 -0
- package/Build/Workers/chunk-CTJCECTX.js +258 -0
- package/Build/Workers/chunk-DWJZFZ67.js +781 -0
- package/Build/Workers/chunk-EHJQEARC.js +59 -0
- package/Build/Workers/chunk-EVLKHUAE.js +1477 -0
- package/Build/Workers/chunk-FOOYJER7.js +834 -0
- package/Build/Workers/chunk-GLCRFDOB.js +73 -0
- package/Build/Workers/chunk-GPO47TW4.js +39 -0
- package/Build/Workers/chunk-H5Q2JKIA.js +1075 -0
- package/Build/Workers/chunk-HIDSEUWS.js +2041 -0
- package/Build/Workers/chunk-HV67ARO7.js +302 -0
- package/Build/Workers/chunk-IC7G4BX2.js +421 -0
- package/Build/Workers/chunk-IQN2LMGD.js +55 -0
- package/Build/Workers/chunk-J2FHYK2Z.js +55 -0
- package/Build/Workers/chunk-K3VEWONC.js +289 -0
- package/Build/Workers/chunk-KZFXE35V.js +117 -0
- package/Build/Workers/chunk-MG2TXIO5.js +400 -0
- package/Build/Workers/chunk-MRCFDEKH.js +138 -0
- package/Build/Workers/chunk-MYDS6HBL.js +3273 -0
- package/Build/Workers/chunk-OCIX2CQ7.js +305 -0
- package/Build/Workers/chunk-P32XMW4I.js +2716 -0
- package/Build/Workers/chunk-PEVZYZBQ.js +157 -0
- package/Build/Workers/chunk-PMDLIBEQ.js +218 -0
- package/Build/Workers/chunk-QDUOGCCO.js +1009 -0
- package/Build/Workers/chunk-QUCJGBCK.js +430 -0
- package/Build/Workers/chunk-RCI7BSOM.js +452 -0
- package/Build/Workers/chunk-SVTSC7FX.js +390 -0
- package/Build/Workers/chunk-TXOGSFHZ.js +77 -0
- package/Build/Workers/chunk-TXYJOVQK.js +629 -0
- package/Build/Workers/chunk-UFIT5XDI.js +1258 -0
- package/Build/Workers/chunk-ULLMQNFQ.js +73 -0
- package/Build/Workers/chunk-UM7FIUQW.js +101 -0
- package/Build/Workers/{package.js → chunk-UMLTOPAE.js} +13 -2
- package/Build/Workers/chunk-V5S5N2IS.js +8644 -0
- package/Build/Workers/chunk-VN2IHJKM.js +513 -0
- package/Build/Workers/chunk-VWSD2XV5.js +669 -0
- package/Build/Workers/chunk-X2KIWBTW.js +100 -0
- package/Build/Workers/chunk-Y24CDOJC.js +353 -0
- package/Build/Workers/chunk-YLMDWSXO.js +44 -0
- package/Build/Workers/chunk-YNZ4DMR7.js +634 -0
- package/Build/Workers/chunk-Z2MP3UBE.js +236 -0
- package/Build/Workers/combineGeometry.js +65 -15
- package/Build/Workers/createBoxGeometry.js +55 -10
- package/Build/Workers/createBoxOutlineGeometry.js +231 -310
- package/Build/Workers/createCircleGeometry.js +185 -202
- package/Build/Workers/createCircleOutlineGeometry.js +141 -155
- package/Build/Workers/createCoplanarPolygonGeometry.js +477 -557
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +218 -230
- package/Build/Workers/createCorridorGeometry.js +1163 -1307
- package/Build/Workers/createCorridorOutlineGeometry.js +534 -569
- package/Build/Workers/createCylinderGeometry.js +57 -10
- package/Build/Workers/createCylinderOutlineGeometry.js +224 -258
- package/Build/Workers/createEllipseGeometry.js +68 -12
- package/Build/Workers/createEllipseOutlineGeometry.js +61 -12
- package/Build/Workers/createEllipsoidGeometry.js +56 -10
- package/Build/Workers/createEllipsoidOutlineGeometry.js +58 -13
- package/Build/Workers/createFrustumGeometry.js +55 -10
- package/Build/Workers/createFrustumOutlineGeometry.js +226 -243
- package/Build/Workers/createGeometry.js +143 -48
- package/Build/Workers/createGroundPolylineGeometry.js +1484 -2012
- package/Build/Workers/createPlaneGeometry.js +216 -243
- package/Build/Workers/createPlaneOutlineGeometry.js +121 -113
- package/Build/Workers/createPolygonGeometry.js +1437 -1314
- package/Build/Workers/createPolygonOutlineGeometry.js +516 -657
- package/Build/Workers/createPolylineGeometry.js +471 -547
- package/Build/Workers/createPolylineVolumeGeometry.js +354 -384
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +272 -295
- package/Build/Workers/createRectangleGeometry.js +1128 -1331
- package/Build/Workers/createRectangleOutlineGeometry.js +445 -500
- package/Build/Workers/createSimplePolylineGeometry.js +381 -440
- package/Build/Workers/createSphereGeometry.js +112 -118
- package/Build/Workers/createSphereOutlineGeometry.js +112 -121
- package/Build/Workers/createTaskProcessorWorker.js +32 -127
- package/Build/Workers/createVectorTileClampedPolylines.js +462 -505
- package/Build/Workers/createVectorTileGeometries.js +377 -436
- package/Build/Workers/createVectorTilePoints.js +110 -77
- package/Build/Workers/createVectorTilePolygons.js +369 -391
- package/Build/Workers/createVectorTilePolylines.js +252 -244
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +543 -615
- package/Build/Workers/createVerticesFromHeightmap.js +2244 -2677
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +682 -904
- package/Build/Workers/createWallGeometry.js +459 -593
- package/Build/Workers/createWallOutlineGeometry.js +324 -419
- package/Build/Workers/decodeDraco.js +327 -347
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +2530 -3567
- package/Build/Workers/decodeI3S.js +765 -970
- package/Build/Workers/transcodeKTX2.js +3351 -1473
- package/Build/Workers/transferTypedArrayTest.js +3 -4
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +748 -953
- package/LICENSE.md +0 -12
- package/Source/Core/CesiumTerrainProvider.js +1 -2
- package/Source/Core/Credit.js +7 -1
- package/Source/Core/FeatureDetection.js +9 -0
- package/Source/Core/GoogleMaps.js +1 -2
- package/Source/Core/Ion.js +1 -2
- package/Source/Core/KTX2Transcoder.js +7 -3
- package/Source/Core/PolygonGeometry.js +340 -27
- package/Source/Core/PolygonGeometryLibrary.js +302 -1
- package/Source/Core/Stereographic.js +247 -0
- package/Source/Core/TaskProcessor.js +185 -168
- package/Source/Core/Transforms.js +2 -2
- package/Source/Core/buildModuleUrl.js +6 -5
- package/Source/Core/sampleTerrain.js +43 -10
- package/Source/Core/sampleTerrainMostDetailed.js +27 -3
- package/Source/Scene/ArcGisMapService.js +1 -2
- package/Source/Scene/Billboard.js +7 -0
- package/Source/Scene/Cesium3DTilePass.js +1 -1
- package/Source/Scene/Cesium3DTileset.js +38 -81
- package/Source/Scene/CreditDisplay.js +2 -2
- package/Source/Scene/DracoLoader.js +26 -3
- package/Source/Scene/I3SDataProvider.js +0 -27
- package/Source/Scene/I3SDecoder.js +127 -0
- package/Source/Scene/I3SNode.js +32 -110
- package/Source/Scene/Implicit3DTileContent.js +13 -0
- package/Source/Scene/ImplicitTileset.js +5 -0
- package/Source/Scene/LabelCollection.js +3 -1
- package/Source/Scene/Model/I3dmLoader.js +5 -1
- package/Source/Scene/Model/Model.js +20 -23
- package/Source/Scene/OpenStreetMapImageryProvider.js +4 -1
- package/Source/Scene/PostProcessStageLibrary.js +3 -3
- package/Source/Scene/PrimitiveCollection.js +39 -0
- package/Source/Scene/Scene.js +3 -0
- package/Source/Scene/SingleTileImageryProvider.js +4 -2
- package/Source/ThirdParty/Workers/basis_transcoder.js +1 -1
- package/Source/Widget/CesiumWidget.js +2 -1
- package/Source/{WorkersES6 → Workers}/createGeometry.js +11 -12
- package/Source/{WorkersES6 → Workers}/createTaskProcessorWorker.js +43 -59
- package/Source/{WorkersES6 → Workers}/decodeDraco.js +19 -25
- package/Source/{WorkersES6 → Workers}/decodeI3S.js +18 -32
- package/Source/{WorkersES6 → Workers}/transcodeKTX2.js +19 -26
- package/Source/Workers/transferTypedArrayTest.js +0 -6
- package/index.d.ts +69 -35
- package/index.js +189 -187
- package/package.json +2 -1
- package/Build/Workers/ArcType-2d9abbbc.js +0 -37
- package/Build/Workers/AttributeCompression-f9f6c717.js +0 -716
- package/Build/Workers/AxisAlignedBoundingBox-a03420b1.js +0 -258
- package/Build/Workers/BoundingRectangle-32fa8a4a.js +0 -369
- package/Build/Workers/BoxGeometry-cd550612.js +0 -884
- package/Build/Workers/Check-6ede7e26.js +0 -290
- package/Build/Workers/Color-571a6085.js +0 -2262
- package/Build/Workers/ComponentDatatype-cf1fa08e.js +0 -341
- package/Build/Workers/CoplanarPolygonGeometryLibrary-488b1a9f.js +0 -132
- package/Build/Workers/CorridorGeometryLibrary-fc4ff147.js +0 -498
- package/Build/Workers/CylinderGeometry-bc26926d.js +0 -467
- package/Build/Workers/CylinderGeometryLibrary-7bf291b4.js +0 -63
- package/Build/Workers/EllipseGeometry-89533a10.js +0 -1304
- package/Build/Workers/EllipseGeometryLibrary-b0d7df17.js +0 -366
- package/Build/Workers/EllipseOutlineGeometry-63ff7a87.js +0 -443
- package/Build/Workers/EllipsoidGeodesic-5b3623dc.js +0 -520
- package/Build/Workers/EllipsoidGeometry-07e99d2d.js +0 -637
- package/Build/Workers/EllipsoidOutlineGeometry-ba5c7ee2.js +0 -454
- package/Build/Workers/EllipsoidRhumbLine-ef872433.js +0 -741
- package/Build/Workers/EllipsoidTangentPlane-65d41b3e.js +0 -373
- package/Build/Workers/EncodedCartesian3-57415c8a.js +0 -171
- package/Build/Workers/FrustumGeometry-4a7589ed.js +0 -2540
- package/Build/Workers/GeometryAttribute-a5b6275b.js +0 -619
- package/Build/Workers/GeometryAttributes-ad136444.js +0 -91
- package/Build/Workers/GeometryInstance-34d9e21e.js +0 -121
- package/Build/Workers/GeometryOffsetAttribute-9ad0019c.js +0 -16
- package/Build/Workers/GeometryPipeline-fa9e6ffc.js +0 -3690
- package/Build/Workers/IndexDatatype-2643aa47.js +0 -200
- package/Build/Workers/IntersectionTests-feace3da.js +0 -1836
- package/Build/Workers/Math-0a2ac845.js +0 -1340
- package/Build/Workers/Matrix2-e1298525.js +0 -7086
- package/Build/Workers/Matrix3-41c58dde.js +0 -4283
- package/Build/Workers/OrientedBoundingBox-6b94d955.js +0 -1259
- package/Build/Workers/Plane-4c3d403b.js +0 -309
- package/Build/Workers/PolygonGeometryLibrary-4ffc457d.js +0 -1074
- package/Build/Workers/PolygonPipeline-d5e66350.js +0 -1344
- package/Build/Workers/PolylinePipeline-83410f0c.js +0 -573
- package/Build/Workers/PolylineVolumeGeometryLibrary-290e7aec.js +0 -781
- package/Build/Workers/PrimitivePipeline-6081d138.js +0 -966
- package/Build/Workers/RectangleGeometryLibrary-986710d8.js +0 -280
- package/Build/Workers/RuntimeError-ef395448.js +0 -68
- package/Build/Workers/TerrainEncoding-528e1d68.js +0 -1227
- package/Build/Workers/Transforms-b527bb09.js +0 -14714
- package/Build/Workers/VertexFormat-030f11ff.js +0 -312
- package/Build/Workers/WallGeometryLibrary-faf583f8.js +0 -211
- package/Build/Workers/WebGLConstants-0b1ce7ba.js +0 -620
- package/Build/Workers/WebMercatorProjection-13ed1a6e.js +0 -151
- package/Build/Workers/arrayRemoveDuplicates-d2061e85.js +0 -129
- package/Build/Workers/cesiumWorkerBootstrapper.js +0 -1363
- package/Build/Workers/combine-d9581036.js +0 -82
- package/Build/Workers/defaultValue-fe22d8c0.js +0 -51
- package/Source/ThirdParty/Workers/draco_decoder_nodejs.js +0 -117
- package/Source/Workers/cesiumWorkerBootstrapper.js +0 -2290
- package/Source/Workers/package.json +0 -1
- /package/Source/{WorkersES6 → Workers}/combineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createBoxGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createBoxOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createCircleGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createCircleOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createCoplanarPolygonGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createCoplanarPolygonOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createCorridorGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createCorridorOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createCylinderGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createCylinderOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createEllipseGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createEllipseOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createEllipsoidGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createEllipsoidOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createFrustumGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createFrustumOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createGroundPolylineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createPlaneGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createPlaneOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createPolygonGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createPolygonOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createPolylineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createPolylineVolumeGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createPolylineVolumeOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createRectangleGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createRectangleOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createSimplePolylineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createSphereGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createSphereOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createVectorTileClampedPolylines.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createVectorTileGeometries.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createVectorTilePoints.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createVectorTilePolygons.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createVectorTilePolylines.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createVerticesFromGoogleEarthEnterpriseBuffer.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createVerticesFromHeightmap.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createVerticesFromQuantizedTerrainMesh.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createWallGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/createWallOutlineGeometry.js +0 -0
- /package/Source/{WorkersES6 → Workers}/decodeGoogleEarthEnterprisePacket.js +0 -0
- /package/Source/{WorkersES6 → Workers}/upsampleQuantizedTerrainMesh.js +0 -0
|
@@ -1,432 +1,337 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Cesium - https://github.com/CesiumGS/cesium
|
|
4
|
+
* Version 1.110
|
|
5
|
+
*
|
|
6
|
+
* Copyright 2011-2022 Cesium Contributors
|
|
7
|
+
*
|
|
8
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9
|
+
* you may not use this file except in compliance with the License.
|
|
10
|
+
* You may obtain a copy of the License at
|
|
11
|
+
*
|
|
12
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
13
|
+
*
|
|
14
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
15
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
16
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
17
|
+
* See the License for the specific language governing permissions and
|
|
18
|
+
* limitations under the License.
|
|
19
|
+
*
|
|
20
|
+
* Columbus View (Pat. Pend.)
|
|
21
|
+
*
|
|
22
|
+
* Portions licensed separately.
|
|
23
|
+
* See https://github.com/CesiumGS/cesium/blob/main/LICENSE.md for full licensing details.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
import {
|
|
27
|
+
WallGeometryLibrary_default
|
|
28
|
+
} from "./chunk-5E3V7Y4R.js";
|
|
29
|
+
import "./chunk-IC7G4BX2.js";
|
|
30
|
+
import "./chunk-Y24CDOJC.js";
|
|
31
|
+
import "./chunk-X2KIWBTW.js";
|
|
32
|
+
import "./chunk-RCI7BSOM.js";
|
|
33
|
+
import "./chunk-UFIT5XDI.js";
|
|
34
|
+
import "./chunk-6I22NWKQ.js";
|
|
35
|
+
import {
|
|
36
|
+
IndexDatatype_default
|
|
37
|
+
} from "./chunk-CROU4RHL.js";
|
|
38
|
+
import {
|
|
39
|
+
GeometryAttributes_default
|
|
40
|
+
} from "./chunk-YLMDWSXO.js";
|
|
41
|
+
import {
|
|
42
|
+
GeometryAttribute_default,
|
|
43
|
+
Geometry_default,
|
|
44
|
+
PrimitiveType_default
|
|
45
|
+
} from "./chunk-HV67ARO7.js";
|
|
46
|
+
import {
|
|
47
|
+
BoundingSphere_default
|
|
48
|
+
} from "./chunk-V5S5N2IS.js";
|
|
49
|
+
import "./chunk-ULLMQNFQ.js";
|
|
50
|
+
import "./chunk-MYDS6HBL.js";
|
|
51
|
+
import {
|
|
52
|
+
ComponentDatatype_default
|
|
53
|
+
} from "./chunk-CTJCECTX.js";
|
|
54
|
+
import {
|
|
55
|
+
Cartesian3_default,
|
|
56
|
+
Ellipsoid_default
|
|
57
|
+
} from "./chunk-HIDSEUWS.js";
|
|
58
|
+
import {
|
|
59
|
+
Math_default
|
|
60
|
+
} from "./chunk-4HN3N5SE.js";
|
|
61
|
+
import "./chunk-TXYJOVQK.js";
|
|
62
|
+
import "./chunk-2ZI7FZ3Q.js";
|
|
63
|
+
import {
|
|
64
|
+
defaultValue_default
|
|
65
|
+
} from "./chunk-GPO47TW4.js";
|
|
66
|
+
import {
|
|
67
|
+
DeveloperError_default
|
|
68
|
+
} from "./chunk-6EHT6GS3.js";
|
|
69
|
+
import {
|
|
70
|
+
defined_default
|
|
71
|
+
} from "./chunk-TXOGSFHZ.js";
|
|
72
|
+
|
|
73
|
+
// packages/engine/Source/Core/WallOutlineGeometry.js
|
|
74
|
+
var scratchCartesian3Position1 = new Cartesian3_default();
|
|
75
|
+
var scratchCartesian3Position2 = new Cartesian3_default();
|
|
76
|
+
function WallOutlineGeometry(options) {
|
|
77
|
+
options = defaultValue_default(options, defaultValue_default.EMPTY_OBJECT);
|
|
78
|
+
const wallPositions = options.positions;
|
|
79
|
+
const maximumHeights = options.maximumHeights;
|
|
80
|
+
const minimumHeights = options.minimumHeights;
|
|
81
|
+
if (!defined_default(wallPositions)) {
|
|
82
|
+
throw new DeveloperError_default("options.positions is required.");
|
|
83
|
+
}
|
|
84
|
+
if (defined_default(maximumHeights) && maximumHeights.length !== wallPositions.length) {
|
|
85
|
+
throw new DeveloperError_default(
|
|
86
|
+
"options.positions and options.maximumHeights must have the same length."
|
|
74
87
|
);
|
|
75
|
-
const ellipsoid = defaultValue.defaultValue(options.ellipsoid, Matrix3.Ellipsoid.WGS84);
|
|
76
|
-
|
|
77
|
-
this._positions = wallPositions;
|
|
78
|
-
this._minimumHeights = minimumHeights;
|
|
79
|
-
this._maximumHeights = maximumHeights;
|
|
80
|
-
this._granularity = granularity;
|
|
81
|
-
this._ellipsoid = Matrix3.Ellipsoid.clone(ellipsoid);
|
|
82
|
-
this._workerName = "createWallOutlineGeometry";
|
|
83
|
-
|
|
84
|
-
let numComponents = 1 + wallPositions.length * Matrix3.Cartesian3.packedLength + 2;
|
|
85
|
-
if (defaultValue.defined(minimumHeights)) {
|
|
86
|
-
numComponents += minimumHeights.length;
|
|
87
|
-
}
|
|
88
|
-
if (defaultValue.defined(maximumHeights)) {
|
|
89
|
-
numComponents += maximumHeights.length;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* The number of elements used to pack the object into an array.
|
|
94
|
-
* @type {number}
|
|
95
|
-
*/
|
|
96
|
-
this.packedLength = numComponents + Matrix3.Ellipsoid.packedLength + 1;
|
|
97
88
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
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
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
if (defaultValue.defined(maximumHeights)) {
|
|
145
|
-
for (i = 0; i < length; ++i) {
|
|
146
|
-
array[startingIndex++] = maximumHeights[i];
|
|
147
|
-
}
|
|
89
|
+
if (defined_default(minimumHeights) && minimumHeights.length !== wallPositions.length) {
|
|
90
|
+
throw new DeveloperError_default(
|
|
91
|
+
"options.positions and options.minimumHeights must have the same length."
|
|
92
|
+
);
|
|
93
|
+
}
|
|
94
|
+
const granularity = defaultValue_default(
|
|
95
|
+
options.granularity,
|
|
96
|
+
Math_default.RADIANS_PER_DEGREE
|
|
97
|
+
);
|
|
98
|
+
const ellipsoid = defaultValue_default(options.ellipsoid, Ellipsoid_default.WGS84);
|
|
99
|
+
this._positions = wallPositions;
|
|
100
|
+
this._minimumHeights = minimumHeights;
|
|
101
|
+
this._maximumHeights = maximumHeights;
|
|
102
|
+
this._granularity = granularity;
|
|
103
|
+
this._ellipsoid = Ellipsoid_default.clone(ellipsoid);
|
|
104
|
+
this._workerName = "createWallOutlineGeometry";
|
|
105
|
+
let numComponents = 1 + wallPositions.length * Cartesian3_default.packedLength + 2;
|
|
106
|
+
if (defined_default(minimumHeights)) {
|
|
107
|
+
numComponents += minimumHeights.length;
|
|
108
|
+
}
|
|
109
|
+
if (defined_default(maximumHeights)) {
|
|
110
|
+
numComponents += maximumHeights.length;
|
|
111
|
+
}
|
|
112
|
+
this.packedLength = numComponents + Ellipsoid_default.packedLength + 1;
|
|
113
|
+
}
|
|
114
|
+
WallOutlineGeometry.pack = function(value, array, startingIndex) {
|
|
115
|
+
if (!defined_default(value)) {
|
|
116
|
+
throw new DeveloperError_default("value is required");
|
|
117
|
+
}
|
|
118
|
+
if (!defined_default(array)) {
|
|
119
|
+
throw new DeveloperError_default("array is required");
|
|
120
|
+
}
|
|
121
|
+
startingIndex = defaultValue_default(startingIndex, 0);
|
|
122
|
+
let i;
|
|
123
|
+
const positions = value._positions;
|
|
124
|
+
let length = positions.length;
|
|
125
|
+
array[startingIndex++] = length;
|
|
126
|
+
for (i = 0; i < length; ++i, startingIndex += Cartesian3_default.packedLength) {
|
|
127
|
+
Cartesian3_default.pack(positions[i], array, startingIndex);
|
|
128
|
+
}
|
|
129
|
+
const minimumHeights = value._minimumHeights;
|
|
130
|
+
length = defined_default(minimumHeights) ? minimumHeights.length : 0;
|
|
131
|
+
array[startingIndex++] = length;
|
|
132
|
+
if (defined_default(minimumHeights)) {
|
|
133
|
+
for (i = 0; i < length; ++i) {
|
|
134
|
+
array[startingIndex++] = minimumHeights[i];
|
|
148
135
|
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
};
|
|
157
|
-
|
|
158
|
-
const scratchEllipsoid = Matrix3.Ellipsoid.clone(Matrix3.Ellipsoid.UNIT_SPHERE);
|
|
159
|
-
const scratchOptions = {
|
|
160
|
-
positions: undefined,
|
|
161
|
-
minimumHeights: undefined,
|
|
162
|
-
maximumHeights: undefined,
|
|
163
|
-
ellipsoid: scratchEllipsoid,
|
|
164
|
-
granularity: undefined,
|
|
165
|
-
};
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* Retrieves an instance from a packed array.
|
|
169
|
-
*
|
|
170
|
-
* @param {number[]} array The packed array.
|
|
171
|
-
* @param {number} [startingIndex=0] The starting index of the element to be unpacked.
|
|
172
|
-
* @param {WallOutlineGeometry} [result] The object into which to store the result.
|
|
173
|
-
* @returns {WallOutlineGeometry} The modified result parameter or a new WallOutlineGeometry instance if one was not provided.
|
|
174
|
-
*/
|
|
175
|
-
WallOutlineGeometry.unpack = function (array, startingIndex, result) {
|
|
176
|
-
//>>includeStart('debug', pragmas.debug);
|
|
177
|
-
if (!defaultValue.defined(array)) {
|
|
178
|
-
throw new Check.DeveloperError("array is required");
|
|
136
|
+
}
|
|
137
|
+
const maximumHeights = value._maximumHeights;
|
|
138
|
+
length = defined_default(maximumHeights) ? maximumHeights.length : 0;
|
|
139
|
+
array[startingIndex++] = length;
|
|
140
|
+
if (defined_default(maximumHeights)) {
|
|
141
|
+
for (i = 0; i < length; ++i) {
|
|
142
|
+
array[startingIndex++] = maximumHeights[i];
|
|
179
143
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
144
|
+
}
|
|
145
|
+
Ellipsoid_default.pack(value._ellipsoid, array, startingIndex);
|
|
146
|
+
startingIndex += Ellipsoid_default.packedLength;
|
|
147
|
+
array[startingIndex] = value._granularity;
|
|
148
|
+
return array;
|
|
149
|
+
};
|
|
150
|
+
var scratchEllipsoid = Ellipsoid_default.clone(Ellipsoid_default.UNIT_SPHERE);
|
|
151
|
+
var scratchOptions = {
|
|
152
|
+
positions: void 0,
|
|
153
|
+
minimumHeights: void 0,
|
|
154
|
+
maximumHeights: void 0,
|
|
155
|
+
ellipsoid: scratchEllipsoid,
|
|
156
|
+
granularity: void 0
|
|
157
|
+
};
|
|
158
|
+
WallOutlineGeometry.unpack = function(array, startingIndex, result) {
|
|
159
|
+
if (!defined_default(array)) {
|
|
160
|
+
throw new DeveloperError_default("array is required");
|
|
161
|
+
}
|
|
162
|
+
startingIndex = defaultValue_default(startingIndex, 0);
|
|
163
|
+
let i;
|
|
164
|
+
let length = array[startingIndex++];
|
|
165
|
+
const positions = new Array(length);
|
|
166
|
+
for (i = 0; i < length; ++i, startingIndex += Cartesian3_default.packedLength) {
|
|
167
|
+
positions[i] = Cartesian3_default.unpack(array, startingIndex);
|
|
168
|
+
}
|
|
169
|
+
length = array[startingIndex++];
|
|
170
|
+
let minimumHeights;
|
|
171
|
+
if (length > 0) {
|
|
172
|
+
minimumHeights = new Array(length);
|
|
173
|
+
for (i = 0; i < length; ++i) {
|
|
174
|
+
minimumHeights[i] = array[startingIndex++];
|
|
191
175
|
}
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
minimumHeights[i] = array[startingIndex++];
|
|
200
|
-
}
|
|
176
|
+
}
|
|
177
|
+
length = array[startingIndex++];
|
|
178
|
+
let maximumHeights;
|
|
179
|
+
if (length > 0) {
|
|
180
|
+
maximumHeights = new Array(length);
|
|
181
|
+
for (i = 0; i < length; ++i) {
|
|
182
|
+
maximumHeights[i] = array[startingIndex++];
|
|
201
183
|
}
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
184
|
+
}
|
|
185
|
+
const ellipsoid = Ellipsoid_default.unpack(array, startingIndex, scratchEllipsoid);
|
|
186
|
+
startingIndex += Ellipsoid_default.packedLength;
|
|
187
|
+
const granularity = array[startingIndex];
|
|
188
|
+
if (!defined_default(result)) {
|
|
189
|
+
scratchOptions.positions = positions;
|
|
190
|
+
scratchOptions.minimumHeights = minimumHeights;
|
|
191
|
+
scratchOptions.maximumHeights = maximumHeights;
|
|
192
|
+
scratchOptions.granularity = granularity;
|
|
193
|
+
return new WallOutlineGeometry(scratchOptions);
|
|
194
|
+
}
|
|
195
|
+
result._positions = positions;
|
|
196
|
+
result._minimumHeights = minimumHeights;
|
|
197
|
+
result._maximumHeights = maximumHeights;
|
|
198
|
+
result._ellipsoid = Ellipsoid_default.clone(ellipsoid, result._ellipsoid);
|
|
199
|
+
result._granularity = granularity;
|
|
200
|
+
return result;
|
|
201
|
+
};
|
|
202
|
+
WallOutlineGeometry.fromConstantHeights = function(options) {
|
|
203
|
+
options = defaultValue_default(options, defaultValue_default.EMPTY_OBJECT);
|
|
204
|
+
const positions = options.positions;
|
|
205
|
+
if (!defined_default(positions)) {
|
|
206
|
+
throw new DeveloperError_default("options.positions is required.");
|
|
207
|
+
}
|
|
208
|
+
let minHeights;
|
|
209
|
+
let maxHeights;
|
|
210
|
+
const min = options.minimumHeight;
|
|
211
|
+
const max = options.maximumHeight;
|
|
212
|
+
const doMin = defined_default(min);
|
|
213
|
+
const doMax = defined_default(max);
|
|
214
|
+
if (doMin || doMax) {
|
|
215
|
+
const length = positions.length;
|
|
216
|
+
minHeights = doMin ? new Array(length) : void 0;
|
|
217
|
+
maxHeights = doMax ? new Array(length) : void 0;
|
|
218
|
+
for (let i = 0; i < length; ++i) {
|
|
219
|
+
if (doMin) {
|
|
220
|
+
minHeights[i] = min;
|
|
210
221
|
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
const ellipsoid = Matrix3.Ellipsoid.unpack(array, startingIndex, scratchEllipsoid);
|
|
214
|
-
startingIndex += Matrix3.Ellipsoid.packedLength;
|
|
215
|
-
|
|
216
|
-
const granularity = array[startingIndex];
|
|
217
|
-
|
|
218
|
-
if (!defaultValue.defined(result)) {
|
|
219
|
-
scratchOptions.positions = positions;
|
|
220
|
-
scratchOptions.minimumHeights = minimumHeights;
|
|
221
|
-
scratchOptions.maximumHeights = maximumHeights;
|
|
222
|
-
scratchOptions.granularity = granularity;
|
|
223
|
-
return new WallOutlineGeometry(scratchOptions);
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
result._positions = positions;
|
|
227
|
-
result._minimumHeights = minimumHeights;
|
|
228
|
-
result._maximumHeights = maximumHeights;
|
|
229
|
-
result._ellipsoid = Matrix3.Ellipsoid.clone(ellipsoid, result._ellipsoid);
|
|
230
|
-
result._granularity = granularity;
|
|
231
|
-
|
|
232
|
-
return result;
|
|
233
|
-
};
|
|
234
|
-
|
|
235
|
-
/**
|
|
236
|
-
* A description of a walloutline. A wall is defined by a series of points,
|
|
237
|
-
* which extrude down to the ground. Optionally, they can extrude downwards to a specified height.
|
|
238
|
-
*
|
|
239
|
-
* @param {object} options Object with the following properties:
|
|
240
|
-
* @param {Cartesian3[]} options.positions An array of Cartesian objects, which are the points of the wall.
|
|
241
|
-
* @param {number} [options.maximumHeight] A constant that defines the maximum height of the
|
|
242
|
-
* wall at <code>positions</code>. If undefined, the height of each position in used.
|
|
243
|
-
* @param {number} [options.minimumHeight] A constant that defines the minimum height of the
|
|
244
|
-
* wall at <code>positions</code>. If undefined, the height at each position is 0.0.
|
|
245
|
-
* @param {Ellipsoid} [options.ellipsoid=Ellipsoid.WGS84] The ellipsoid for coordinate manipulation
|
|
246
|
-
* @returns {WallOutlineGeometry}
|
|
247
|
-
*
|
|
248
|
-
*
|
|
249
|
-
* @example
|
|
250
|
-
* // create a wall that spans from 10000 meters to 20000 meters
|
|
251
|
-
* const wall = Cesium.WallOutlineGeometry.fromConstantHeights({
|
|
252
|
-
* positions : Cesium.Cartesian3.fromDegreesArray([
|
|
253
|
-
* 19.0, 47.0,
|
|
254
|
-
* 19.0, 48.0,
|
|
255
|
-
* 20.0, 48.0,
|
|
256
|
-
* 20.0, 47.0,
|
|
257
|
-
* 19.0, 47.0,
|
|
258
|
-
* ]),
|
|
259
|
-
* minimumHeight : 20000.0,
|
|
260
|
-
* maximumHeight : 10000.0
|
|
261
|
-
* });
|
|
262
|
-
* const geometry = Cesium.WallOutlineGeometry.createGeometry(wall);
|
|
263
|
-
*
|
|
264
|
-
* @see WallOutlineGeometry#createGeometry
|
|
265
|
-
*/
|
|
266
|
-
WallOutlineGeometry.fromConstantHeights = function (options) {
|
|
267
|
-
options = defaultValue.defaultValue(options, defaultValue.defaultValue.EMPTY_OBJECT);
|
|
268
|
-
const positions = options.positions;
|
|
269
|
-
|
|
270
|
-
//>>includeStart('debug', pragmas.debug);
|
|
271
|
-
if (!defaultValue.defined(positions)) {
|
|
272
|
-
throw new Check.DeveloperError("options.positions is required.");
|
|
273
|
-
}
|
|
274
|
-
//>>includeEnd('debug');
|
|
275
|
-
|
|
276
|
-
let minHeights;
|
|
277
|
-
let maxHeights;
|
|
278
|
-
|
|
279
|
-
const min = options.minimumHeight;
|
|
280
|
-
const max = options.maximumHeight;
|
|
281
|
-
|
|
282
|
-
const doMin = defaultValue.defined(min);
|
|
283
|
-
const doMax = defaultValue.defined(max);
|
|
284
|
-
if (doMin || doMax) {
|
|
285
|
-
const length = positions.length;
|
|
286
|
-
minHeights = doMin ? new Array(length) : undefined;
|
|
287
|
-
maxHeights = doMax ? new Array(length) : undefined;
|
|
288
|
-
|
|
289
|
-
for (let i = 0; i < length; ++i) {
|
|
290
|
-
if (doMin) {
|
|
291
|
-
minHeights[i] = min;
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
if (doMax) {
|
|
295
|
-
maxHeights[i] = max;
|
|
296
|
-
}
|
|
222
|
+
if (doMax) {
|
|
223
|
+
maxHeights[i] = max;
|
|
297
224
|
}
|
|
298
225
|
}
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
};
|
|
306
|
-
return new WallOutlineGeometry(newOptions);
|
|
226
|
+
}
|
|
227
|
+
const newOptions = {
|
|
228
|
+
positions,
|
|
229
|
+
maximumHeights: maxHeights,
|
|
230
|
+
minimumHeights: minHeights,
|
|
231
|
+
ellipsoid: options.ellipsoid
|
|
307
232
|
};
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
233
|
+
return new WallOutlineGeometry(newOptions);
|
|
234
|
+
};
|
|
235
|
+
WallOutlineGeometry.createGeometry = function(wallGeometry) {
|
|
236
|
+
const wallPositions = wallGeometry._positions;
|
|
237
|
+
const minimumHeights = wallGeometry._minimumHeights;
|
|
238
|
+
const maximumHeights = wallGeometry._maximumHeights;
|
|
239
|
+
const granularity = wallGeometry._granularity;
|
|
240
|
+
const ellipsoid = wallGeometry._ellipsoid;
|
|
241
|
+
const pos = WallGeometryLibrary_default.computePositions(
|
|
242
|
+
ellipsoid,
|
|
243
|
+
wallPositions,
|
|
244
|
+
maximumHeights,
|
|
245
|
+
minimumHeights,
|
|
246
|
+
granularity,
|
|
247
|
+
false
|
|
248
|
+
);
|
|
249
|
+
if (!defined_default(pos)) {
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
const bottomPositions = pos.bottomPositions;
|
|
253
|
+
const topPositions = pos.topPositions;
|
|
254
|
+
let length = topPositions.length;
|
|
255
|
+
let size = length * 2;
|
|
256
|
+
const positions = new Float64Array(size);
|
|
257
|
+
let positionIndex = 0;
|
|
258
|
+
length /= 3;
|
|
259
|
+
let i;
|
|
260
|
+
for (i = 0; i < length; ++i) {
|
|
261
|
+
const i3 = i * 3;
|
|
262
|
+
const topPosition = Cartesian3_default.fromArray(
|
|
263
|
+
topPositions,
|
|
264
|
+
i3,
|
|
265
|
+
scratchCartesian3Position1
|
|
329
266
|
);
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
positions
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
positions[positionIndex++] = topPosition.z;
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
const attributes = new GeometryAttributes.GeometryAttributes({
|
|
372
|
-
position: new GeometryAttribute.GeometryAttribute({
|
|
373
|
-
componentDatatype: ComponentDatatype.ComponentDatatype.DOUBLE,
|
|
374
|
-
componentsPerAttribute: 3,
|
|
375
|
-
values: positions,
|
|
376
|
-
}),
|
|
377
|
-
});
|
|
378
|
-
|
|
379
|
-
const numVertices = size / 3;
|
|
380
|
-
size = 2 * numVertices - 4 + numVertices;
|
|
381
|
-
const indices = IndexDatatype.IndexDatatype.createTypedArray(numVertices, size);
|
|
382
|
-
|
|
383
|
-
let edgeIndex = 0;
|
|
384
|
-
for (i = 0; i < numVertices - 2; i += 2) {
|
|
385
|
-
const LL = i;
|
|
386
|
-
const LR = i + 2;
|
|
387
|
-
const pl = Matrix3.Cartesian3.fromArray(
|
|
388
|
-
positions,
|
|
389
|
-
LL * 3,
|
|
390
|
-
scratchCartesian3Position1
|
|
391
|
-
);
|
|
392
|
-
const pr = Matrix3.Cartesian3.fromArray(
|
|
393
|
-
positions,
|
|
394
|
-
LR * 3,
|
|
395
|
-
scratchCartesian3Position2
|
|
396
|
-
);
|
|
397
|
-
if (Matrix3.Cartesian3.equalsEpsilon(pl, pr, Math.CesiumMath.EPSILON10)) {
|
|
398
|
-
continue;
|
|
399
|
-
}
|
|
400
|
-
const UL = i + 1;
|
|
401
|
-
const UR = i + 3;
|
|
402
|
-
|
|
403
|
-
indices[edgeIndex++] = UL;
|
|
404
|
-
indices[edgeIndex++] = LL;
|
|
405
|
-
indices[edgeIndex++] = UL;
|
|
406
|
-
indices[edgeIndex++] = UR;
|
|
407
|
-
indices[edgeIndex++] = LL;
|
|
408
|
-
indices[edgeIndex++] = LR;
|
|
409
|
-
}
|
|
410
|
-
|
|
411
|
-
indices[edgeIndex++] = numVertices - 2;
|
|
412
|
-
indices[edgeIndex++] = numVertices - 1;
|
|
413
|
-
|
|
414
|
-
return new GeometryAttribute.Geometry({
|
|
415
|
-
attributes: attributes,
|
|
416
|
-
indices: indices,
|
|
417
|
-
primitiveType: GeometryAttribute.PrimitiveType.LINES,
|
|
418
|
-
boundingSphere: new Transforms.BoundingSphere.fromVertices(positions),
|
|
419
|
-
});
|
|
420
|
-
};
|
|
421
|
-
|
|
422
|
-
function createWallOutlineGeometry(wallGeometry, offset) {
|
|
423
|
-
if (defaultValue.defined(offset)) {
|
|
424
|
-
wallGeometry = WallOutlineGeometry.unpack(wallGeometry, offset);
|
|
267
|
+
const bottomPosition = Cartesian3_default.fromArray(
|
|
268
|
+
bottomPositions,
|
|
269
|
+
i3,
|
|
270
|
+
scratchCartesian3Position2
|
|
271
|
+
);
|
|
272
|
+
positions[positionIndex++] = bottomPosition.x;
|
|
273
|
+
positions[positionIndex++] = bottomPosition.y;
|
|
274
|
+
positions[positionIndex++] = bottomPosition.z;
|
|
275
|
+
positions[positionIndex++] = topPosition.x;
|
|
276
|
+
positions[positionIndex++] = topPosition.y;
|
|
277
|
+
positions[positionIndex++] = topPosition.z;
|
|
278
|
+
}
|
|
279
|
+
const attributes = new GeometryAttributes_default({
|
|
280
|
+
position: new GeometryAttribute_default({
|
|
281
|
+
componentDatatype: ComponentDatatype_default.DOUBLE,
|
|
282
|
+
componentsPerAttribute: 3,
|
|
283
|
+
values: positions
|
|
284
|
+
})
|
|
285
|
+
});
|
|
286
|
+
const numVertices = size / 3;
|
|
287
|
+
size = 2 * numVertices - 4 + numVertices;
|
|
288
|
+
const indices = IndexDatatype_default.createTypedArray(numVertices, size);
|
|
289
|
+
let edgeIndex = 0;
|
|
290
|
+
for (i = 0; i < numVertices - 2; i += 2) {
|
|
291
|
+
const LL = i;
|
|
292
|
+
const LR = i + 2;
|
|
293
|
+
const pl = Cartesian3_default.fromArray(
|
|
294
|
+
positions,
|
|
295
|
+
LL * 3,
|
|
296
|
+
scratchCartesian3Position1
|
|
297
|
+
);
|
|
298
|
+
const pr = Cartesian3_default.fromArray(
|
|
299
|
+
positions,
|
|
300
|
+
LR * 3,
|
|
301
|
+
scratchCartesian3Position2
|
|
302
|
+
);
|
|
303
|
+
if (Cartesian3_default.equalsEpsilon(pl, pr, Math_default.EPSILON10)) {
|
|
304
|
+
continue;
|
|
425
305
|
}
|
|
426
|
-
|
|
427
|
-
|
|
306
|
+
const UL = i + 1;
|
|
307
|
+
const UR = i + 3;
|
|
308
|
+
indices[edgeIndex++] = UL;
|
|
309
|
+
indices[edgeIndex++] = LL;
|
|
310
|
+
indices[edgeIndex++] = UL;
|
|
311
|
+
indices[edgeIndex++] = UR;
|
|
312
|
+
indices[edgeIndex++] = LL;
|
|
313
|
+
indices[edgeIndex++] = LR;
|
|
428
314
|
}
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
315
|
+
indices[edgeIndex++] = numVertices - 2;
|
|
316
|
+
indices[edgeIndex++] = numVertices - 1;
|
|
317
|
+
return new Geometry_default({
|
|
318
|
+
attributes,
|
|
319
|
+
indices,
|
|
320
|
+
primitiveType: PrimitiveType_default.LINES,
|
|
321
|
+
boundingSphere: new BoundingSphere_default.fromVertices(positions)
|
|
322
|
+
});
|
|
323
|
+
};
|
|
324
|
+
var WallOutlineGeometry_default = WallOutlineGeometry;
|
|
325
|
+
|
|
326
|
+
// packages/engine/Source/Workers/createWallOutlineGeometry.js
|
|
327
|
+
function createWallOutlineGeometry(wallGeometry, offset) {
|
|
328
|
+
if (defined_default(offset)) {
|
|
329
|
+
wallGeometry = WallOutlineGeometry_default.unpack(wallGeometry, offset);
|
|
330
|
+
}
|
|
331
|
+
wallGeometry._ellipsoid = Ellipsoid_default.clone(wallGeometry._ellipsoid);
|
|
332
|
+
return WallOutlineGeometry_default.createGeometry(wallGeometry);
|
|
333
|
+
}
|
|
334
|
+
var createWallOutlineGeometry_default = createWallOutlineGeometry;
|
|
335
|
+
export {
|
|
336
|
+
createWallOutlineGeometry_default as default
|
|
337
|
+
};
|