@vcmap/ui 5.0.0-rc.30 → 5.0.0-rc.31

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.
Files changed (323) hide show
  1. package/build/buildHelpers.js +4 -3
  2. package/config/base.config.json +5 -4
  3. package/config/dev.config.json +4 -0
  4. package/config/graphFeatureInfo.config.json +1 -1
  5. package/config/projects.config.json +2 -2
  6. package/dist/assets/cesium/ThirdParty/Workers/basis_transcoder.js +1 -1
  7. package/dist/assets/cesium/Workers/chunk-227AJNOA.js +59 -0
  8. package/dist/assets/cesium/Workers/chunk-2R5O53JW.js +157 -0
  9. package/dist/assets/cesium/Workers/chunk-34YUDLRP.js +781 -0
  10. package/dist/assets/cesium/Workers/chunk-3W63OHNJ.js +100 -0
  11. package/dist/assets/cesium/Workers/chunk-4MFFIWUA.js +163 -0
  12. package/dist/assets/cesium/Workers/chunk-66QLLS45.js +218 -0
  13. package/dist/assets/cesium/Workers/chunk-6BTKZDRG.js +77 -0
  14. package/dist/assets/cesium/Workers/chunk-A4JVFBQ3.js +101 -0
  15. package/dist/assets/cesium/Workers/chunk-ABADGKYE.js +58 -0
  16. package/dist/assets/cesium/Workers/chunk-AFFLIKOH.js +353 -0
  17. package/dist/assets/cesium/Workers/chunk-AHKEZ2OE.js +629 -0
  18. package/dist/assets/cesium/Workers/chunk-C3SXRKRW.js +476 -0
  19. package/dist/assets/cesium/Workers/chunk-CCFQRR6D.js +55 -0
  20. package/dist/assets/cesium/Workers/chunk-CHHNOC2C.js +1860 -0
  21. package/dist/assets/cesium/Workers/chunk-CTELOFLA.js +196 -0
  22. package/dist/assets/cesium/Workers/chunk-DUHWWBQQ.js +3273 -0
  23. package/dist/assets/cesium/Workers/chunk-EW2GWJYB.js +44 -0
  24. package/dist/assets/cesium/Workers/chunk-GLZBE3ML.js +421 -0
  25. package/dist/assets/cesium/Workers/chunk-HARLBUOL.js +236 -0
  26. package/dist/assets/cesium/Workers/chunk-HQF437NJ.js +117 -0
  27. package/dist/assets/cesium/Workers/chunk-IPA4EACJ.js +368 -0
  28. package/dist/assets/cesium/Workers/chunk-J3JY6I2C.js +1009 -0
  29. package/dist/assets/cesium/Workers/chunk-JB2LWGH4.js +390 -0
  30. package/dist/assets/cesium/Workers/chunk-JS3AW5BK.js +634 -0
  31. package/dist/assets/cesium/Workers/chunk-K36FEYS7.js +452 -0
  32. package/dist/assets/cesium/Workers/chunk-KD4Y7CZL.js +400 -0
  33. package/dist/assets/cesium/Workers/chunk-KTJSNCK4.js +842 -0
  34. package/dist/assets/cesium/Workers/chunk-LLUNNUJV.js +258 -0
  35. package/dist/assets/cesium/Workers/{package.js → chunk-MPAZH4BF.js} +13 -2
  36. package/dist/assets/cesium/Workers/chunk-MYZB7C4T.js +1258 -0
  37. package/dist/assets/cesium/Workers/chunk-N3JIFFX2.js +501 -0
  38. package/dist/assets/cesium/Workers/chunk-O5AMBQ36.js +430 -0
  39. package/dist/assets/cesium/Workers/chunk-OAVNIRB4.js +124 -0
  40. package/dist/assets/cesium/Workers/chunk-OYFCF4PL.js +171 -0
  41. package/dist/assets/cesium/Workers/chunk-OZJDGN5F.js +1477 -0
  42. package/dist/assets/cesium/Workers/chunk-PCJWUS4M.js +2041 -0
  43. package/dist/assets/cesium/Workers/chunk-PFQBCKBM.js +8644 -0
  44. package/dist/assets/cesium/Workers/chunk-QIKODV5G.js +305 -0
  45. package/dist/assets/cesium/Workers/chunk-QJ3DFBH3.js +73 -0
  46. package/dist/assets/cesium/Workers/chunk-QMEMZIJI.js +138 -0
  47. package/dist/assets/cesium/Workers/chunk-QT3MPEMI.js +102 -0
  48. package/dist/assets/cesium/Workers/chunk-RP2A7BR5.js +289 -0
  49. package/dist/assets/cesium/Workers/chunk-RW6LU2CJ.js +138 -0
  50. package/dist/assets/cesium/Workers/chunk-TFC6TZ3S.js +757 -0
  51. package/dist/assets/cesium/Workers/chunk-V3NGATMV.js +693 -0
  52. package/dist/assets/cesium/Workers/chunk-VLGOATD6.js +1075 -0
  53. package/dist/assets/cesium/Workers/chunk-WXTV4ATB.js +39 -0
  54. package/dist/assets/cesium/Workers/chunk-X4SU25DT.js +302 -0
  55. package/dist/assets/cesium/Workers/chunk-XTY7B2N6.js +2716 -0
  56. package/dist/assets/cesium/Workers/chunk-XY7MGBKC.js +513 -0
  57. package/dist/assets/cesium/Workers/chunk-Z24VKNDO.js +834 -0
  58. package/dist/assets/cesium/Workers/chunk-ZA25DG4Y.js +684 -0
  59. package/dist/assets/cesium/Workers/chunk-ZFOBYDGF.js +73 -0
  60. package/dist/assets/cesium/Workers/combineGeometry.js +65 -15
  61. package/dist/assets/cesium/Workers/createBoxGeometry.js +55 -10
  62. package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +231 -310
  63. package/dist/assets/cesium/Workers/createCircleGeometry.js +185 -202
  64. package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +141 -155
  65. package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +477 -557
  66. package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +218 -230
  67. package/dist/assets/cesium/Workers/createCorridorGeometry.js +1162 -1307
  68. package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +533 -569
  69. package/dist/assets/cesium/Workers/createCylinderGeometry.js +57 -10
  70. package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +224 -258
  71. package/dist/assets/cesium/Workers/createEllipseGeometry.js +68 -12
  72. package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +61 -12
  73. package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +56 -10
  74. package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +58 -13
  75. package/dist/assets/cesium/Workers/createFrustumGeometry.js +55 -10
  76. package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +226 -243
  77. package/dist/assets/cesium/Workers/createGeometry.js +143 -48
  78. package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +1484 -2011
  79. package/dist/assets/cesium/Workers/createPlaneGeometry.js +216 -243
  80. package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +121 -113
  81. package/dist/assets/cesium/Workers/createPolygonGeometry.js +1041 -1327
  82. package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +516 -657
  83. package/dist/assets/cesium/Workers/createPolylineGeometry.js +471 -547
  84. package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +352 -384
  85. package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +271 -295
  86. package/dist/assets/cesium/Workers/createRectangleGeometry.js +1128 -1331
  87. package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +445 -500
  88. package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +381 -440
  89. package/dist/assets/cesium/Workers/createSphereGeometry.js +112 -118
  90. package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +112 -121
  91. package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +32 -127
  92. package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +462 -505
  93. package/dist/assets/cesium/Workers/createVectorTileGeometries.js +377 -436
  94. package/dist/assets/cesium/Workers/createVectorTilePoints.js +110 -77
  95. package/dist/assets/cesium/Workers/createVectorTilePolygons.js +369 -391
  96. package/dist/assets/cesium/Workers/createVectorTilePolylines.js +252 -244
  97. package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +543 -615
  98. package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +2244 -2677
  99. package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +682 -926
  100. package/dist/assets/cesium/Workers/createWallGeometry.js +459 -593
  101. package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +324 -419
  102. package/dist/assets/cesium/Workers/decodeDraco.js +327 -347
  103. package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +2530 -3567
  104. package/dist/assets/cesium/Workers/decodeI3S.js +765 -970
  105. package/dist/assets/cesium/Workers/transcodeKTX2.js +3353 -1464
  106. package/dist/assets/cesium/Workers/transferTypedArrayTest.js +3 -4
  107. package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +748 -953
  108. package/dist/assets/{cesium.eaf7cc.js → cesium.77d0f7.js} +8915 -13165
  109. package/dist/assets/cesium.js +1 -1
  110. package/dist/assets/{core.b16511.js → core.720589.js} +3421 -3365
  111. package/dist/assets/core.js +1 -1
  112. package/dist/assets/index-dd539204.js +1 -0
  113. package/dist/assets/{ol.4bbf0f.js → ol.e48649.js} +4 -4
  114. package/dist/assets/ol.js +1 -1
  115. package/dist/assets/{ui.ab815e.css → ui.50452a.css} +1 -1
  116. package/dist/assets/{ui.ab815e.js → ui.50452a.js} +4270 -4355
  117. package/dist/assets/ui.js +1 -1
  118. package/dist/assets/vue.js +2 -2
  119. package/dist/assets/{vuetify.ea3fa8.js → vuetify.f0a769.js} +1 -1
  120. package/dist/assets/vuetify.js +2 -2
  121. package/dist/index.html +27 -23
  122. package/index.html +23 -22
  123. package/package.json +5 -5
  124. package/plugins/@vcmap-show-case/plugin-editors/PluginEditors.vue +119 -0
  125. package/plugins/@vcmap-show-case/plugin-editors/index.js +41 -0
  126. package/plugins/@vcmap-show-case/plugin-editors/package.json +5 -0
  127. package/plugins/{@vcmap → @vcmap-show-case}/project-selector/ProjectSelectorComponent.vue +1 -1
  128. package/plugins/{@vcmap → @vcmap-show-case}/project-selector/config.json +2 -2
  129. package/plugins/{@vcmap → @vcmap-show-case}/project-selector/package.json +1 -1
  130. package/plugins/{@vcmap → @vcmap-show-case}/simple-graph/package.json +1 -1
  131. package/plugins/@vcmap-show-case/table-example/DataTableExample.vue +1 -1
  132. package/plugins/{@vcmap → @vcmap-show-case}/theme-changer/ThemeChangerComponent.vue +1 -1
  133. package/plugins/{@vcmap → @vcmap-show-case}/theme-changer/config.json +2 -2
  134. package/plugins/{@vcmap → @vcmap-show-case}/theme-changer/package.json +1 -1
  135. package/plugins/@vcmap-show-case/vector-properties-example/vectorPropertiesExample.vue +20 -1
  136. package/plugins/package.json +6 -2
  137. package/src/application/VcsAttributions.vue +27 -20
  138. package/src/components/form-inputs-controls/VcsChipArrayInput.vue +22 -14
  139. package/src/components/form-inputs-controls/VcsSlider.vue +1 -0
  140. package/src/components/icons/2DAreaIcon.vue +2 -17
  141. package/src/components/icons/2DDistanceIcon.vue +0 -3
  142. package/src/components/icons/3DAreaIcon.vue +2 -17
  143. package/src/components/icons/3DDistanceIcon.vue +0 -3
  144. package/src/components/icons/3DHeightIcon.vue +0 -3
  145. package/src/components/icons/AngleIcon.vue +0 -1
  146. package/src/components/icons/AssociationsIcon.vue +1 -3
  147. package/src/components/icons/AxisIcon.vue +0 -4
  148. package/src/components/icons/BoundingBoxIcon.vue +1 -4
  149. package/src/components/icons/CheckboxIcon.vue +0 -2
  150. package/src/components/icons/CheckboxIndeterminateIcon.vue +1 -5
  151. package/src/components/icons/CircleIcon.vue +1 -6
  152. package/src/components/icons/ClippingHorizontalIcon.vue +0 -1
  153. package/src/components/icons/ClippingIcon.vue +0 -1
  154. package/src/components/icons/ClippingVerticalIcon.vue +0 -1
  155. package/src/components/icons/ColorPickerIcon.vue +0 -1
  156. package/src/components/icons/ColorSwatchIcon.vue +0 -2
  157. package/src/components/icons/CommentIcon.vue +0 -1
  158. package/src/components/icons/CompassIcon.vue +0 -2
  159. package/src/components/icons/ComponentsIcon.vue +0 -1
  160. package/src/components/icons/ConeIcon.vue +1 -4
  161. package/src/components/icons/DimensionsHouseIcon.vue +0 -2
  162. package/src/components/icons/EditIcon.vue +0 -1
  163. package/src/components/icons/EditVerticesIcon.vue +0 -4
  164. package/src/components/icons/ElevationProfileIcon.vue +1 -13
  165. package/src/components/icons/ExportAreaIcon.vue +0 -1
  166. package/src/components/icons/ExportFlightIcon.vue +0 -1
  167. package/src/components/icons/ExportIcon.vue +12 -8
  168. package/src/components/icons/ExternalLinkIcon.vue +0 -2
  169. package/src/components/icons/FastForwardIcon.vue +0 -1
  170. package/src/components/icons/FilterIcon.vue +0 -1
  171. package/src/components/icons/GlobeNatureIcon.vue +0 -3
  172. package/src/components/icons/GroundIcon.vue +0 -1
  173. package/src/components/icons/HealthCareIndustriesIcon.vue +1 -11
  174. package/src/components/icons/HideIcon.vue +0 -1
  175. package/src/components/icons/HomePointIcon.vue +0 -1
  176. package/src/components/icons/HospitalsIcon.vue +1 -20
  177. package/src/components/icons/HouseIcon.vue +3 -13
  178. package/src/components/icons/ImportIcon.vue +6 -14
  179. package/src/components/icons/InfoIcon.vue +0 -2
  180. package/src/components/icons/KebabIcon.vue +1 -9
  181. package/src/components/icons/LabelIcon.vue +0 -2
  182. package/src/components/icons/LayersIcon.vue +1 -9
  183. package/src/components/icons/LegendIcon.vue +0 -1
  184. package/src/components/icons/LineIcon.vue +0 -2
  185. package/src/components/icons/LinkIcon.vue +0 -1
  186. package/src/components/icons/LogoutIcon.vue +0 -1
  187. package/src/components/icons/MapIcon.vue +0 -2
  188. package/src/components/icons/MenuIcon.vue +1 -5
  189. package/src/components/icons/MinusIcon.vue +0 -2
  190. package/src/components/icons/ObjectSelectIcon.vue +0 -2
  191. package/src/components/icons/ObliqueViewIcon.vue +0 -1
  192. package/src/components/icons/PdfIcon.vue +0 -1
  193. package/src/components/icons/PedestrianIcon.vue +0 -1
  194. package/src/components/icons/PenIcon.vue +0 -1
  195. package/src/components/icons/PlayCircleIcon.vue +1 -8
  196. package/src/components/icons/PlusIcon.vue +0 -2
  197. package/src/components/icons/PoiIcon.vue +0 -1
  198. package/src/components/icons/PointIcon.vue +2 -6
  199. package/src/components/icons/PointSelectIcon.vue +0 -1
  200. package/src/components/icons/PresentationModeIcon.vue +0 -1
  201. package/src/components/icons/ProgressIcon.vue +1 -1
  202. package/src/components/icons/QueryIcon.vue +0 -1
  203. package/src/components/icons/RectangleIcon.vue +1 -6
  204. package/src/components/icons/ReturnIcon.vue +0 -1
  205. package/src/components/icons/RewindIcon.vue +0 -1
  206. package/src/components/icons/RotateLeftIcon.vue +0 -1
  207. package/src/components/icons/RotateRightIcon.vue +0 -1
  208. package/src/components/icons/ScreenshotIcon.vue +1 -6
  209. package/src/components/icons/SearchIcon.vue +0 -1
  210. package/src/components/icons/ShadowIcon.vue +0 -2
  211. package/src/components/icons/ShapesIcon.vue +1 -4
  212. package/src/components/icons/ShareIcon.vue +0 -1
  213. package/src/components/icons/SimpleCircleFilledIcon.vue +0 -1
  214. package/src/components/icons/SimpleCircleHalfFilledIcon.vue +0 -1
  215. package/src/components/icons/SimpleCircleOutlinedIcon.vue +1 -7
  216. package/src/components/icons/SkipPreviousIcon.vue +1 -6
  217. package/src/components/icons/SplitViewIcon.vue +0 -1
  218. package/src/components/icons/TextStyleIcon.vue +0 -3
  219. package/src/components/icons/ThreeDimensionsIcon.vue +0 -1
  220. package/src/components/icons/ToolsIcon.vue +0 -1
  221. package/src/components/icons/TouchIcon.vue +0 -1
  222. package/src/components/icons/TriangleIcon.vue +0 -3
  223. package/src/components/icons/TwoDimensionsIcon.vue +0 -2
  224. package/src/components/icons/UploadIcon.vue +0 -1
  225. package/src/components/icons/UserProfileIcon.vue +0 -1
  226. package/src/components/icons/UserShareIcon.vue +0 -1
  227. package/src/components/icons/ViewpointFlightIcon.vue +0 -1
  228. package/src/components/icons/ViewpointIcon.vue +0 -1
  229. package/src/components/icons/Viewshed360Icon.vue +0 -1
  230. package/src/components/icons/ViewshedConeIcon.vue +0 -1
  231. package/src/components/icons/ViewshedIcon.vue +0 -1
  232. package/src/components/icons/WalkingIcon.vue +0 -1
  233. package/src/components/icons/WallIcon.vue +1 -4
  234. package/src/components/icons/WandIcon.vue +22 -70
  235. package/src/components/lists/VcsList.vue +18 -12
  236. package/src/components/plugins/AbstractConfigEditor.vue +2 -2
  237. package/src/components/tables/VcsDataTable.vue +1 -1
  238. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +57 -14
  239. package/src/contentTree/contentTreeCollection.js +30 -9
  240. package/src/i18n/de.js +8 -5
  241. package/src/i18n/en.js +8 -5
  242. package/src/i18n/i18nCollection.js +19 -65
  243. package/src/manager/buttonManager.js +4 -0
  244. package/src/manager/contextMenu/contextMenuManager.js +2 -0
  245. package/src/pluginHelper.js +2 -2
  246. package/src/vcsUiApp.js +9 -4
  247. package/src/vuePlugins/i18n.js +0 -8
  248. package/dist/assets/cesium/ThirdParty/Workers/draco_decoder_nodejs.js +0 -117
  249. package/dist/assets/cesium/Workers/ArcType-2d9abbbc.js +0 -37
  250. package/dist/assets/cesium/Workers/AttributeCompression-f9f6c717.js +0 -716
  251. package/dist/assets/cesium/Workers/AxisAlignedBoundingBox-4140c51f.js +0 -258
  252. package/dist/assets/cesium/Workers/BoundingRectangle-c714b156.js +0 -369
  253. package/dist/assets/cesium/Workers/BoxGeometry-6f3da43d.js +0 -884
  254. package/dist/assets/cesium/Workers/Check-6ede7e26.js +0 -290
  255. package/dist/assets/cesium/Workers/Color-8a565ff2.js +0 -2262
  256. package/dist/assets/cesium/Workers/ComponentDatatype-cf1fa08e.js +0 -341
  257. package/dist/assets/cesium/Workers/CoplanarPolygonGeometryLibrary-4b4d4096.js +0 -132
  258. package/dist/assets/cesium/Workers/CorridorGeometryLibrary-7b94502b.js +0 -498
  259. package/dist/assets/cesium/Workers/CylinderGeometry-ca070b87.js +0 -467
  260. package/dist/assets/cesium/Workers/CylinderGeometryLibrary-7bf291b4.js +0 -63
  261. package/dist/assets/cesium/Workers/EllipseGeometry-122e51fa.js +0 -1304
  262. package/dist/assets/cesium/Workers/EllipseGeometryLibrary-4d326efc.js +0 -366
  263. package/dist/assets/cesium/Workers/EllipseOutlineGeometry-16cc2bd7.js +0 -443
  264. package/dist/assets/cesium/Workers/EllipsoidGeodesic-5b3623dc.js +0 -520
  265. package/dist/assets/cesium/Workers/EllipsoidGeometry-cb148ca2.js +0 -637
  266. package/dist/assets/cesium/Workers/EllipsoidOutlineGeometry-0fa10c79.js +0 -454
  267. package/dist/assets/cesium/Workers/EllipsoidRhumbLine-ef872433.js +0 -741
  268. package/dist/assets/cesium/Workers/EllipsoidTangentPlane-6dd1b7af.js +0 -373
  269. package/dist/assets/cesium/Workers/EncodedCartesian3-57415c8a.js +0 -171
  270. package/dist/assets/cesium/Workers/FrustumGeometry-ee73037c.js +0 -2540
  271. package/dist/assets/cesium/Workers/GeometryAttribute-ff5b4fb1.js +0 -619
  272. package/dist/assets/cesium/Workers/GeometryAttributes-ad136444.js +0 -91
  273. package/dist/assets/cesium/Workers/GeometryInstance-34d9e21e.js +0 -121
  274. package/dist/assets/cesium/Workers/GeometryOffsetAttribute-9ad0019c.js +0 -16
  275. package/dist/assets/cesium/Workers/GeometryPipeline-1f8fbf05.js +0 -3690
  276. package/dist/assets/cesium/Workers/IndexDatatype-2643aa47.js +0 -200
  277. package/dist/assets/cesium/Workers/IntersectionTests-70d39ba9.js +0 -1836
  278. package/dist/assets/cesium/Workers/Math-0a2ac845.js +0 -1340
  279. package/dist/assets/cesium/Workers/Matrix2-e1298525.js +0 -7086
  280. package/dist/assets/cesium/Workers/Matrix3-41c58dde.js +0 -4283
  281. package/dist/assets/cesium/Workers/OrientedBoundingBox-159cf1d6.js +0 -1259
  282. package/dist/assets/cesium/Workers/Plane-4c3d403b.js +0 -309
  283. package/dist/assets/cesium/Workers/PolygonGeometryLibrary-076a5d25.js +0 -1074
  284. package/dist/assets/cesium/Workers/PolygonPipeline-b9f2810a.js +0 -1344
  285. package/dist/assets/cesium/Workers/PolylinePipeline-639192e0.js +0 -573
  286. package/dist/assets/cesium/Workers/PolylineVolumeGeometryLibrary-b73549fb.js +0 -781
  287. package/dist/assets/cesium/Workers/PrimitivePipeline-10ede1b6.js +0 -966
  288. package/dist/assets/cesium/Workers/RectangleGeometryLibrary-c35a7356.js +0 -280
  289. package/dist/assets/cesium/Workers/RuntimeError-ef395448.js +0 -68
  290. package/dist/assets/cesium/Workers/TerrainEncoding-668d242f.js +0 -1227
  291. package/dist/assets/cesium/Workers/Transforms-a2a85221.js +0 -14712
  292. package/dist/assets/cesium/Workers/VertexFormat-030f11ff.js +0 -312
  293. package/dist/assets/cesium/Workers/WallGeometryLibrary-1938bf0d.js +0 -211
  294. package/dist/assets/cesium/Workers/WebGLConstants-0b1ce7ba.js +0 -620
  295. package/dist/assets/cesium/Workers/WebMercatorProjection-13ed1a6e.js +0 -151
  296. package/dist/assets/cesium/Workers/arrayRemoveDuplicates-d2061e85.js +0 -129
  297. package/dist/assets/cesium/Workers/cesiumWorkerBootstrapper.js +0 -1363
  298. package/dist/assets/cesium/Workers/combine-d9581036.js +0 -82
  299. package/dist/assets/cesium/Workers/defaultValue-fe22d8c0.js +0 -51
  300. package/dist/assets/index-c115e3a1.js +0 -1
  301. package/plugins/@vcmap/create-link/fallbackCreateLink.vue +0 -76
  302. package/plugins/@vcmap/create-link/index.js +0 -95
  303. package/plugins/@vcmap/create-link/package.json +0 -6
  304. package/plugins/@vcmap/search-nominatim/LICENSE.md +0 -13
  305. package/plugins/@vcmap/search-nominatim/README.md +0 -3
  306. package/plugins/@vcmap/search-nominatim/SearchNominatimEditor.vue +0 -90
  307. package/plugins/@vcmap/search-nominatim/config.json +0 -3
  308. package/plugins/@vcmap/search-nominatim/index.js +0 -66
  309. package/plugins/@vcmap/search-nominatim/nominatim.js +0 -175
  310. package/plugins/@vcmap/search-nominatim/package.json +0 -9
  311. /package/dist/assets/{vue.67e80f.js → vue.5d696e.js} +0 -0
  312. /package/dist/assets/{vuetify.ea3fa8.css → vuetify.f0a769.css} +0 -0
  313. /package/plugins/{@vcmap → @vcmap-show-case}/project-selector/ModulesListComponent.vue +0 -0
  314. /package/plugins/{@vcmap → @vcmap-show-case}/project-selector/README.md +0 -0
  315. /package/plugins/{@vcmap → @vcmap-show-case}/project-selector/de.json +0 -0
  316. /package/plugins/{@vcmap → @vcmap-show-case}/project-selector/en.json +0 -0
  317. /package/plugins/{@vcmap → @vcmap-show-case}/project-selector/index.js +0 -0
  318. /package/plugins/{@vcmap → @vcmap-show-case}/simple-graph/README.md +0 -0
  319. /package/plugins/{@vcmap → @vcmap-show-case}/simple-graph/SimpleGraphComponent.vue +0 -0
  320. /package/plugins/{@vcmap → @vcmap-show-case}/simple-graph/index.js +0 -0
  321. /package/plugins/{@vcmap → @vcmap-show-case}/simple-graph/simpleGraphView.js +0 -0
  322. /package/plugins/{@vcmap → @vcmap-show-case}/theme-changer/README.md +0 -0
  323. /package/plugins/{@vcmap → @vcmap-show-case}/theme-changer/index.js +0 -0
@@ -0,0 +1,1075 @@
1
+ /**
2
+ * @license
3
+ * Cesium - https://github.com/CesiumGS/cesium
4
+ * Version 1.109.3
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
+ EllipseGeometryLibrary_default
28
+ } from "./chunk-QIKODV5G.js";
29
+ import {
30
+ GeometryInstance_default
31
+ } from "./chunk-227AJNOA.js";
32
+ import {
33
+ GeometryPipeline_default
34
+ } from "./chunk-XTY7B2N6.js";
35
+ import {
36
+ GeometryOffsetAttribute_default
37
+ } from "./chunk-MPAZH4BF.js";
38
+ import {
39
+ VertexFormat_default
40
+ } from "./chunk-QMEMZIJI.js";
41
+ import {
42
+ IndexDatatype_default
43
+ } from "./chunk-RW6LU2CJ.js";
44
+ import {
45
+ GeometryAttributes_default
46
+ } from "./chunk-EW2GWJYB.js";
47
+ import {
48
+ GeometryAttribute_default,
49
+ Geometry_default,
50
+ PrimitiveType_default
51
+ } from "./chunk-X4SU25DT.js";
52
+ import {
53
+ BoundingSphere_default,
54
+ GeographicProjection_default,
55
+ Quaternion_default
56
+ } from "./chunk-PFQBCKBM.js";
57
+ import {
58
+ Cartesian2_default,
59
+ Rectangle_default
60
+ } from "./chunk-DUHWWBQQ.js";
61
+ import {
62
+ ComponentDatatype_default
63
+ } from "./chunk-LLUNNUJV.js";
64
+ import {
65
+ Cartesian3_default,
66
+ Cartographic_default,
67
+ Ellipsoid_default,
68
+ Matrix3_default
69
+ } from "./chunk-PCJWUS4M.js";
70
+ import {
71
+ Math_default
72
+ } from "./chunk-N3JIFFX2.js";
73
+ import {
74
+ defaultValue_default
75
+ } from "./chunk-WXTV4ATB.js";
76
+ import {
77
+ Check_default,
78
+ DeveloperError_default
79
+ } from "./chunk-4MFFIWUA.js";
80
+ import {
81
+ defined_default
82
+ } from "./chunk-6BTKZDRG.js";
83
+
84
+ // packages/engine/Source/Core/EllipseGeometry.js
85
+ var scratchCartesian1 = new Cartesian3_default();
86
+ var scratchCartesian2 = new Cartesian3_default();
87
+ var scratchCartesian3 = new Cartesian3_default();
88
+ var scratchCartesian4 = new Cartesian3_default();
89
+ var texCoordScratch = new Cartesian2_default();
90
+ var textureMatrixScratch = new Matrix3_default();
91
+ var tangentMatrixScratch = new Matrix3_default();
92
+ var quaternionScratch = new Quaternion_default();
93
+ var scratchNormal = new Cartesian3_default();
94
+ var scratchTangent = new Cartesian3_default();
95
+ var scratchBitangent = new Cartesian3_default();
96
+ var scratchCartographic = new Cartographic_default();
97
+ var projectedCenterScratch = new Cartesian3_default();
98
+ var scratchMinTexCoord = new Cartesian2_default();
99
+ var scratchMaxTexCoord = new Cartesian2_default();
100
+ function computeTopBottomAttributes(positions, options, extrude) {
101
+ const vertexFormat = options.vertexFormat;
102
+ const center = options.center;
103
+ const semiMajorAxis = options.semiMajorAxis;
104
+ const semiMinorAxis = options.semiMinorAxis;
105
+ const ellipsoid = options.ellipsoid;
106
+ const stRotation = options.stRotation;
107
+ const size = extrude ? positions.length / 3 * 2 : positions.length / 3;
108
+ const shadowVolume = options.shadowVolume;
109
+ const textureCoordinates = vertexFormat.st ? new Float32Array(size * 2) : void 0;
110
+ const normals = vertexFormat.normal ? new Float32Array(size * 3) : void 0;
111
+ const tangents = vertexFormat.tangent ? new Float32Array(size * 3) : void 0;
112
+ const bitangents = vertexFormat.bitangent ? new Float32Array(size * 3) : void 0;
113
+ const extrudeNormals = shadowVolume ? new Float32Array(size * 3) : void 0;
114
+ let textureCoordIndex = 0;
115
+ let normal = scratchNormal;
116
+ let tangent = scratchTangent;
117
+ let bitangent = scratchBitangent;
118
+ const projection = new GeographicProjection_default(ellipsoid);
119
+ const projectedCenter = projection.project(
120
+ ellipsoid.cartesianToCartographic(center, scratchCartographic),
121
+ projectedCenterScratch
122
+ );
123
+ const geodeticNormal = ellipsoid.scaleToGeodeticSurface(
124
+ center,
125
+ scratchCartesian1
126
+ );
127
+ ellipsoid.geodeticSurfaceNormal(geodeticNormal, geodeticNormal);
128
+ let textureMatrix = textureMatrixScratch;
129
+ let tangentMatrix = tangentMatrixScratch;
130
+ if (stRotation !== 0) {
131
+ let rotation = Quaternion_default.fromAxisAngle(
132
+ geodeticNormal,
133
+ stRotation,
134
+ quaternionScratch
135
+ );
136
+ textureMatrix = Matrix3_default.fromQuaternion(rotation, textureMatrix);
137
+ rotation = Quaternion_default.fromAxisAngle(
138
+ geodeticNormal,
139
+ -stRotation,
140
+ quaternionScratch
141
+ );
142
+ tangentMatrix = Matrix3_default.fromQuaternion(rotation, tangentMatrix);
143
+ } else {
144
+ textureMatrix = Matrix3_default.clone(Matrix3_default.IDENTITY, textureMatrix);
145
+ tangentMatrix = Matrix3_default.clone(Matrix3_default.IDENTITY, tangentMatrix);
146
+ }
147
+ const minTexCoord = Cartesian2_default.fromElements(
148
+ Number.POSITIVE_INFINITY,
149
+ Number.POSITIVE_INFINITY,
150
+ scratchMinTexCoord
151
+ );
152
+ const maxTexCoord = Cartesian2_default.fromElements(
153
+ Number.NEGATIVE_INFINITY,
154
+ Number.NEGATIVE_INFINITY,
155
+ scratchMaxTexCoord
156
+ );
157
+ let length = positions.length;
158
+ const bottomOffset = extrude ? length : 0;
159
+ const stOffset = bottomOffset / 3 * 2;
160
+ for (let i = 0; i < length; i += 3) {
161
+ const i1 = i + 1;
162
+ const i2 = i + 2;
163
+ const position = Cartesian3_default.fromArray(positions, i, scratchCartesian1);
164
+ if (vertexFormat.st) {
165
+ const rotatedPoint = Matrix3_default.multiplyByVector(
166
+ textureMatrix,
167
+ position,
168
+ scratchCartesian2
169
+ );
170
+ const projectedPoint = projection.project(
171
+ ellipsoid.cartesianToCartographic(rotatedPoint, scratchCartographic),
172
+ scratchCartesian3
173
+ );
174
+ Cartesian3_default.subtract(projectedPoint, projectedCenter, projectedPoint);
175
+ texCoordScratch.x = (projectedPoint.x + semiMajorAxis) / (2 * semiMajorAxis);
176
+ texCoordScratch.y = (projectedPoint.y + semiMinorAxis) / (2 * semiMinorAxis);
177
+ minTexCoord.x = Math.min(texCoordScratch.x, minTexCoord.x);
178
+ minTexCoord.y = Math.min(texCoordScratch.y, minTexCoord.y);
179
+ maxTexCoord.x = Math.max(texCoordScratch.x, maxTexCoord.x);
180
+ maxTexCoord.y = Math.max(texCoordScratch.y, maxTexCoord.y);
181
+ if (extrude) {
182
+ textureCoordinates[textureCoordIndex + stOffset] = texCoordScratch.x;
183
+ textureCoordinates[textureCoordIndex + 1 + stOffset] = texCoordScratch.y;
184
+ }
185
+ textureCoordinates[textureCoordIndex++] = texCoordScratch.x;
186
+ textureCoordinates[textureCoordIndex++] = texCoordScratch.y;
187
+ }
188
+ if (vertexFormat.normal || vertexFormat.tangent || vertexFormat.bitangent || shadowVolume) {
189
+ normal = ellipsoid.geodeticSurfaceNormal(position, normal);
190
+ if (shadowVolume) {
191
+ extrudeNormals[i + bottomOffset] = -normal.x;
192
+ extrudeNormals[i1 + bottomOffset] = -normal.y;
193
+ extrudeNormals[i2 + bottomOffset] = -normal.z;
194
+ }
195
+ if (vertexFormat.normal || vertexFormat.tangent || vertexFormat.bitangent) {
196
+ if (vertexFormat.tangent || vertexFormat.bitangent) {
197
+ tangent = Cartesian3_default.normalize(
198
+ Cartesian3_default.cross(Cartesian3_default.UNIT_Z, normal, tangent),
199
+ tangent
200
+ );
201
+ Matrix3_default.multiplyByVector(tangentMatrix, tangent, tangent);
202
+ }
203
+ if (vertexFormat.normal) {
204
+ normals[i] = normal.x;
205
+ normals[i1] = normal.y;
206
+ normals[i2] = normal.z;
207
+ if (extrude) {
208
+ normals[i + bottomOffset] = -normal.x;
209
+ normals[i1 + bottomOffset] = -normal.y;
210
+ normals[i2 + bottomOffset] = -normal.z;
211
+ }
212
+ }
213
+ if (vertexFormat.tangent) {
214
+ tangents[i] = tangent.x;
215
+ tangents[i1] = tangent.y;
216
+ tangents[i2] = tangent.z;
217
+ if (extrude) {
218
+ tangents[i + bottomOffset] = -tangent.x;
219
+ tangents[i1 + bottomOffset] = -tangent.y;
220
+ tangents[i2 + bottomOffset] = -tangent.z;
221
+ }
222
+ }
223
+ if (vertexFormat.bitangent) {
224
+ bitangent = Cartesian3_default.normalize(
225
+ Cartesian3_default.cross(normal, tangent, bitangent),
226
+ bitangent
227
+ );
228
+ bitangents[i] = bitangent.x;
229
+ bitangents[i1] = bitangent.y;
230
+ bitangents[i2] = bitangent.z;
231
+ if (extrude) {
232
+ bitangents[i + bottomOffset] = bitangent.x;
233
+ bitangents[i1 + bottomOffset] = bitangent.y;
234
+ bitangents[i2 + bottomOffset] = bitangent.z;
235
+ }
236
+ }
237
+ }
238
+ }
239
+ }
240
+ if (vertexFormat.st) {
241
+ length = textureCoordinates.length;
242
+ for (let k = 0; k < length; k += 2) {
243
+ textureCoordinates[k] = (textureCoordinates[k] - minTexCoord.x) / (maxTexCoord.x - minTexCoord.x);
244
+ textureCoordinates[k + 1] = (textureCoordinates[k + 1] - minTexCoord.y) / (maxTexCoord.y - minTexCoord.y);
245
+ }
246
+ }
247
+ const attributes = new GeometryAttributes_default();
248
+ if (vertexFormat.position) {
249
+ const finalPositions = EllipseGeometryLibrary_default.raisePositionsToHeight(
250
+ positions,
251
+ options,
252
+ extrude
253
+ );
254
+ attributes.position = new GeometryAttribute_default({
255
+ componentDatatype: ComponentDatatype_default.DOUBLE,
256
+ componentsPerAttribute: 3,
257
+ values: finalPositions
258
+ });
259
+ }
260
+ if (vertexFormat.st) {
261
+ attributes.st = new GeometryAttribute_default({
262
+ componentDatatype: ComponentDatatype_default.FLOAT,
263
+ componentsPerAttribute: 2,
264
+ values: textureCoordinates
265
+ });
266
+ }
267
+ if (vertexFormat.normal) {
268
+ attributes.normal = new GeometryAttribute_default({
269
+ componentDatatype: ComponentDatatype_default.FLOAT,
270
+ componentsPerAttribute: 3,
271
+ values: normals
272
+ });
273
+ }
274
+ if (vertexFormat.tangent) {
275
+ attributes.tangent = new GeometryAttribute_default({
276
+ componentDatatype: ComponentDatatype_default.FLOAT,
277
+ componentsPerAttribute: 3,
278
+ values: tangents
279
+ });
280
+ }
281
+ if (vertexFormat.bitangent) {
282
+ attributes.bitangent = new GeometryAttribute_default({
283
+ componentDatatype: ComponentDatatype_default.FLOAT,
284
+ componentsPerAttribute: 3,
285
+ values: bitangents
286
+ });
287
+ }
288
+ if (shadowVolume) {
289
+ attributes.extrudeDirection = new GeometryAttribute_default({
290
+ componentDatatype: ComponentDatatype_default.FLOAT,
291
+ componentsPerAttribute: 3,
292
+ values: extrudeNormals
293
+ });
294
+ }
295
+ if (extrude && defined_default(options.offsetAttribute)) {
296
+ let offsetAttribute = new Uint8Array(size);
297
+ if (options.offsetAttribute === GeometryOffsetAttribute_default.TOP) {
298
+ offsetAttribute = offsetAttribute.fill(1, 0, size / 2);
299
+ } else {
300
+ const offsetValue = options.offsetAttribute === GeometryOffsetAttribute_default.NONE ? 0 : 1;
301
+ offsetAttribute = offsetAttribute.fill(offsetValue);
302
+ }
303
+ attributes.applyOffset = new GeometryAttribute_default({
304
+ componentDatatype: ComponentDatatype_default.UNSIGNED_BYTE,
305
+ componentsPerAttribute: 1,
306
+ values: offsetAttribute
307
+ });
308
+ }
309
+ return attributes;
310
+ }
311
+ function topIndices(numPts) {
312
+ const indices = new Array(12 * (numPts * (numPts + 1)) - 6);
313
+ let indicesIndex = 0;
314
+ let prevIndex;
315
+ let numInterior;
316
+ let positionIndex;
317
+ let i;
318
+ let j;
319
+ prevIndex = 0;
320
+ positionIndex = 1;
321
+ for (i = 0; i < 3; i++) {
322
+ indices[indicesIndex++] = positionIndex++;
323
+ indices[indicesIndex++] = prevIndex;
324
+ indices[indicesIndex++] = positionIndex;
325
+ }
326
+ for (i = 2; i < numPts + 1; ++i) {
327
+ positionIndex = i * (i + 1) - 1;
328
+ prevIndex = (i - 1) * i - 1;
329
+ indices[indicesIndex++] = positionIndex++;
330
+ indices[indicesIndex++] = prevIndex;
331
+ indices[indicesIndex++] = positionIndex;
332
+ numInterior = 2 * i;
333
+ for (j = 0; j < numInterior - 1; ++j) {
334
+ indices[indicesIndex++] = positionIndex;
335
+ indices[indicesIndex++] = prevIndex++;
336
+ indices[indicesIndex++] = prevIndex;
337
+ indices[indicesIndex++] = positionIndex++;
338
+ indices[indicesIndex++] = prevIndex;
339
+ indices[indicesIndex++] = positionIndex;
340
+ }
341
+ indices[indicesIndex++] = positionIndex++;
342
+ indices[indicesIndex++] = prevIndex;
343
+ indices[indicesIndex++] = positionIndex;
344
+ }
345
+ numInterior = numPts * 2;
346
+ ++positionIndex;
347
+ ++prevIndex;
348
+ for (i = 0; i < numInterior - 1; ++i) {
349
+ indices[indicesIndex++] = positionIndex;
350
+ indices[indicesIndex++] = prevIndex++;
351
+ indices[indicesIndex++] = prevIndex;
352
+ indices[indicesIndex++] = positionIndex++;
353
+ indices[indicesIndex++] = prevIndex;
354
+ indices[indicesIndex++] = positionIndex;
355
+ }
356
+ indices[indicesIndex++] = positionIndex;
357
+ indices[indicesIndex++] = prevIndex++;
358
+ indices[indicesIndex++] = prevIndex;
359
+ indices[indicesIndex++] = positionIndex++;
360
+ indices[indicesIndex++] = prevIndex++;
361
+ indices[indicesIndex++] = prevIndex;
362
+ ++prevIndex;
363
+ for (i = numPts - 1; i > 1; --i) {
364
+ indices[indicesIndex++] = prevIndex++;
365
+ indices[indicesIndex++] = prevIndex;
366
+ indices[indicesIndex++] = positionIndex;
367
+ numInterior = 2 * i;
368
+ for (j = 0; j < numInterior - 1; ++j) {
369
+ indices[indicesIndex++] = positionIndex;
370
+ indices[indicesIndex++] = prevIndex++;
371
+ indices[indicesIndex++] = prevIndex;
372
+ indices[indicesIndex++] = positionIndex++;
373
+ indices[indicesIndex++] = prevIndex;
374
+ indices[indicesIndex++] = positionIndex;
375
+ }
376
+ indices[indicesIndex++] = prevIndex++;
377
+ indices[indicesIndex++] = prevIndex++;
378
+ indices[indicesIndex++] = positionIndex++;
379
+ }
380
+ for (i = 0; i < 3; i++) {
381
+ indices[indicesIndex++] = prevIndex++;
382
+ indices[indicesIndex++] = prevIndex;
383
+ indices[indicesIndex++] = positionIndex;
384
+ }
385
+ return indices;
386
+ }
387
+ var boundingSphereCenter = new Cartesian3_default();
388
+ function computeEllipse(options) {
389
+ const center = options.center;
390
+ boundingSphereCenter = Cartesian3_default.multiplyByScalar(
391
+ options.ellipsoid.geodeticSurfaceNormal(center, boundingSphereCenter),
392
+ options.height,
393
+ boundingSphereCenter
394
+ );
395
+ boundingSphereCenter = Cartesian3_default.add(
396
+ center,
397
+ boundingSphereCenter,
398
+ boundingSphereCenter
399
+ );
400
+ const boundingSphere = new BoundingSphere_default(
401
+ boundingSphereCenter,
402
+ options.semiMajorAxis
403
+ );
404
+ const cep = EllipseGeometryLibrary_default.computeEllipsePositions(
405
+ options,
406
+ true,
407
+ false
408
+ );
409
+ const positions = cep.positions;
410
+ const numPts = cep.numPts;
411
+ const attributes = computeTopBottomAttributes(positions, options, false);
412
+ let indices = topIndices(numPts);
413
+ indices = IndexDatatype_default.createTypedArray(positions.length / 3, indices);
414
+ return {
415
+ boundingSphere,
416
+ attributes,
417
+ indices
418
+ };
419
+ }
420
+ function computeWallAttributes(positions, options) {
421
+ const vertexFormat = options.vertexFormat;
422
+ const center = options.center;
423
+ const semiMajorAxis = options.semiMajorAxis;
424
+ const semiMinorAxis = options.semiMinorAxis;
425
+ const ellipsoid = options.ellipsoid;
426
+ const height = options.height;
427
+ const extrudedHeight = options.extrudedHeight;
428
+ const stRotation = options.stRotation;
429
+ const size = positions.length / 3 * 2;
430
+ const finalPositions = new Float64Array(size * 3);
431
+ const textureCoordinates = vertexFormat.st ? new Float32Array(size * 2) : void 0;
432
+ const normals = vertexFormat.normal ? new Float32Array(size * 3) : void 0;
433
+ const tangents = vertexFormat.tangent ? new Float32Array(size * 3) : void 0;
434
+ const bitangents = vertexFormat.bitangent ? new Float32Array(size * 3) : void 0;
435
+ const shadowVolume = options.shadowVolume;
436
+ const extrudeNormals = shadowVolume ? new Float32Array(size * 3) : void 0;
437
+ let textureCoordIndex = 0;
438
+ let normal = scratchNormal;
439
+ let tangent = scratchTangent;
440
+ let bitangent = scratchBitangent;
441
+ const projection = new GeographicProjection_default(ellipsoid);
442
+ const projectedCenter = projection.project(
443
+ ellipsoid.cartesianToCartographic(center, scratchCartographic),
444
+ projectedCenterScratch
445
+ );
446
+ const geodeticNormal = ellipsoid.scaleToGeodeticSurface(
447
+ center,
448
+ scratchCartesian1
449
+ );
450
+ ellipsoid.geodeticSurfaceNormal(geodeticNormal, geodeticNormal);
451
+ const rotation = Quaternion_default.fromAxisAngle(
452
+ geodeticNormal,
453
+ stRotation,
454
+ quaternionScratch
455
+ );
456
+ const textureMatrix = Matrix3_default.fromQuaternion(rotation, textureMatrixScratch);
457
+ const minTexCoord = Cartesian2_default.fromElements(
458
+ Number.POSITIVE_INFINITY,
459
+ Number.POSITIVE_INFINITY,
460
+ scratchMinTexCoord
461
+ );
462
+ const maxTexCoord = Cartesian2_default.fromElements(
463
+ Number.NEGATIVE_INFINITY,
464
+ Number.NEGATIVE_INFINITY,
465
+ scratchMaxTexCoord
466
+ );
467
+ let length = positions.length;
468
+ const stOffset = length / 3 * 2;
469
+ for (let i = 0; i < length; i += 3) {
470
+ const i1 = i + 1;
471
+ const i2 = i + 2;
472
+ let position = Cartesian3_default.fromArray(positions, i, scratchCartesian1);
473
+ let extrudedPosition;
474
+ if (vertexFormat.st) {
475
+ const rotatedPoint = Matrix3_default.multiplyByVector(
476
+ textureMatrix,
477
+ position,
478
+ scratchCartesian2
479
+ );
480
+ const projectedPoint = projection.project(
481
+ ellipsoid.cartesianToCartographic(rotatedPoint, scratchCartographic),
482
+ scratchCartesian3
483
+ );
484
+ Cartesian3_default.subtract(projectedPoint, projectedCenter, projectedPoint);
485
+ texCoordScratch.x = (projectedPoint.x + semiMajorAxis) / (2 * semiMajorAxis);
486
+ texCoordScratch.y = (projectedPoint.y + semiMinorAxis) / (2 * semiMinorAxis);
487
+ minTexCoord.x = Math.min(texCoordScratch.x, minTexCoord.x);
488
+ minTexCoord.y = Math.min(texCoordScratch.y, minTexCoord.y);
489
+ maxTexCoord.x = Math.max(texCoordScratch.x, maxTexCoord.x);
490
+ maxTexCoord.y = Math.max(texCoordScratch.y, maxTexCoord.y);
491
+ textureCoordinates[textureCoordIndex + stOffset] = texCoordScratch.x;
492
+ textureCoordinates[textureCoordIndex + 1 + stOffset] = texCoordScratch.y;
493
+ textureCoordinates[textureCoordIndex++] = texCoordScratch.x;
494
+ textureCoordinates[textureCoordIndex++] = texCoordScratch.y;
495
+ }
496
+ position = ellipsoid.scaleToGeodeticSurface(position, position);
497
+ extrudedPosition = Cartesian3_default.clone(position, scratchCartesian2);
498
+ normal = ellipsoid.geodeticSurfaceNormal(position, normal);
499
+ if (shadowVolume) {
500
+ extrudeNormals[i + length] = -normal.x;
501
+ extrudeNormals[i1 + length] = -normal.y;
502
+ extrudeNormals[i2 + length] = -normal.z;
503
+ }
504
+ let scaledNormal = Cartesian3_default.multiplyByScalar(
505
+ normal,
506
+ height,
507
+ scratchCartesian4
508
+ );
509
+ position = Cartesian3_default.add(position, scaledNormal, position);
510
+ scaledNormal = Cartesian3_default.multiplyByScalar(
511
+ normal,
512
+ extrudedHeight,
513
+ scaledNormal
514
+ );
515
+ extrudedPosition = Cartesian3_default.add(
516
+ extrudedPosition,
517
+ scaledNormal,
518
+ extrudedPosition
519
+ );
520
+ if (vertexFormat.position) {
521
+ finalPositions[i + length] = extrudedPosition.x;
522
+ finalPositions[i1 + length] = extrudedPosition.y;
523
+ finalPositions[i2 + length] = extrudedPosition.z;
524
+ finalPositions[i] = position.x;
525
+ finalPositions[i1] = position.y;
526
+ finalPositions[i2] = position.z;
527
+ }
528
+ if (vertexFormat.normal || vertexFormat.tangent || vertexFormat.bitangent) {
529
+ bitangent = Cartesian3_default.clone(normal, bitangent);
530
+ const next = Cartesian3_default.fromArray(
531
+ positions,
532
+ (i + 3) % length,
533
+ scratchCartesian4
534
+ );
535
+ Cartesian3_default.subtract(next, position, next);
536
+ const bottom = Cartesian3_default.subtract(
537
+ extrudedPosition,
538
+ position,
539
+ scratchCartesian3
540
+ );
541
+ normal = Cartesian3_default.normalize(
542
+ Cartesian3_default.cross(bottom, next, normal),
543
+ normal
544
+ );
545
+ if (vertexFormat.normal) {
546
+ normals[i] = normal.x;
547
+ normals[i1] = normal.y;
548
+ normals[i2] = normal.z;
549
+ normals[i + length] = normal.x;
550
+ normals[i1 + length] = normal.y;
551
+ normals[i2 + length] = normal.z;
552
+ }
553
+ if (vertexFormat.tangent) {
554
+ tangent = Cartesian3_default.normalize(
555
+ Cartesian3_default.cross(bitangent, normal, tangent),
556
+ tangent
557
+ );
558
+ tangents[i] = tangent.x;
559
+ tangents[i1] = tangent.y;
560
+ tangents[i2] = tangent.z;
561
+ tangents[i + length] = tangent.x;
562
+ tangents[i + 1 + length] = tangent.y;
563
+ tangents[i + 2 + length] = tangent.z;
564
+ }
565
+ if (vertexFormat.bitangent) {
566
+ bitangents[i] = bitangent.x;
567
+ bitangents[i1] = bitangent.y;
568
+ bitangents[i2] = bitangent.z;
569
+ bitangents[i + length] = bitangent.x;
570
+ bitangents[i1 + length] = bitangent.y;
571
+ bitangents[i2 + length] = bitangent.z;
572
+ }
573
+ }
574
+ }
575
+ if (vertexFormat.st) {
576
+ length = textureCoordinates.length;
577
+ for (let k = 0; k < length; k += 2) {
578
+ textureCoordinates[k] = (textureCoordinates[k] - minTexCoord.x) / (maxTexCoord.x - minTexCoord.x);
579
+ textureCoordinates[k + 1] = (textureCoordinates[k + 1] - minTexCoord.y) / (maxTexCoord.y - minTexCoord.y);
580
+ }
581
+ }
582
+ const attributes = new GeometryAttributes_default();
583
+ if (vertexFormat.position) {
584
+ attributes.position = new GeometryAttribute_default({
585
+ componentDatatype: ComponentDatatype_default.DOUBLE,
586
+ componentsPerAttribute: 3,
587
+ values: finalPositions
588
+ });
589
+ }
590
+ if (vertexFormat.st) {
591
+ attributes.st = new GeometryAttribute_default({
592
+ componentDatatype: ComponentDatatype_default.FLOAT,
593
+ componentsPerAttribute: 2,
594
+ values: textureCoordinates
595
+ });
596
+ }
597
+ if (vertexFormat.normal) {
598
+ attributes.normal = new GeometryAttribute_default({
599
+ componentDatatype: ComponentDatatype_default.FLOAT,
600
+ componentsPerAttribute: 3,
601
+ values: normals
602
+ });
603
+ }
604
+ if (vertexFormat.tangent) {
605
+ attributes.tangent = new GeometryAttribute_default({
606
+ componentDatatype: ComponentDatatype_default.FLOAT,
607
+ componentsPerAttribute: 3,
608
+ values: tangents
609
+ });
610
+ }
611
+ if (vertexFormat.bitangent) {
612
+ attributes.bitangent = new GeometryAttribute_default({
613
+ componentDatatype: ComponentDatatype_default.FLOAT,
614
+ componentsPerAttribute: 3,
615
+ values: bitangents
616
+ });
617
+ }
618
+ if (shadowVolume) {
619
+ attributes.extrudeDirection = new GeometryAttribute_default({
620
+ componentDatatype: ComponentDatatype_default.FLOAT,
621
+ componentsPerAttribute: 3,
622
+ values: extrudeNormals
623
+ });
624
+ }
625
+ if (defined_default(options.offsetAttribute)) {
626
+ let offsetAttribute = new Uint8Array(size);
627
+ if (options.offsetAttribute === GeometryOffsetAttribute_default.TOP) {
628
+ offsetAttribute = offsetAttribute.fill(1, 0, size / 2);
629
+ } else {
630
+ const offsetValue = options.offsetAttribute === GeometryOffsetAttribute_default.NONE ? 0 : 1;
631
+ offsetAttribute = offsetAttribute.fill(offsetValue);
632
+ }
633
+ attributes.applyOffset = new GeometryAttribute_default({
634
+ componentDatatype: ComponentDatatype_default.UNSIGNED_BYTE,
635
+ componentsPerAttribute: 1,
636
+ values: offsetAttribute
637
+ });
638
+ }
639
+ return attributes;
640
+ }
641
+ function computeWallIndices(positions) {
642
+ const length = positions.length / 3;
643
+ const indices = IndexDatatype_default.createTypedArray(length, length * 6);
644
+ let index = 0;
645
+ for (let i = 0; i < length; i++) {
646
+ const UL = i;
647
+ const LL = i + length;
648
+ const UR = (UL + 1) % length;
649
+ const LR = UR + length;
650
+ indices[index++] = UL;
651
+ indices[index++] = LL;
652
+ indices[index++] = UR;
653
+ indices[index++] = UR;
654
+ indices[index++] = LL;
655
+ indices[index++] = LR;
656
+ }
657
+ return indices;
658
+ }
659
+ var topBoundingSphere = new BoundingSphere_default();
660
+ var bottomBoundingSphere = new BoundingSphere_default();
661
+ function computeExtrudedEllipse(options) {
662
+ const center = options.center;
663
+ const ellipsoid = options.ellipsoid;
664
+ const semiMajorAxis = options.semiMajorAxis;
665
+ let scaledNormal = Cartesian3_default.multiplyByScalar(
666
+ ellipsoid.geodeticSurfaceNormal(center, scratchCartesian1),
667
+ options.height,
668
+ scratchCartesian1
669
+ );
670
+ topBoundingSphere.center = Cartesian3_default.add(
671
+ center,
672
+ scaledNormal,
673
+ topBoundingSphere.center
674
+ );
675
+ topBoundingSphere.radius = semiMajorAxis;
676
+ scaledNormal = Cartesian3_default.multiplyByScalar(
677
+ ellipsoid.geodeticSurfaceNormal(center, scaledNormal),
678
+ options.extrudedHeight,
679
+ scaledNormal
680
+ );
681
+ bottomBoundingSphere.center = Cartesian3_default.add(
682
+ center,
683
+ scaledNormal,
684
+ bottomBoundingSphere.center
685
+ );
686
+ bottomBoundingSphere.radius = semiMajorAxis;
687
+ const cep = EllipseGeometryLibrary_default.computeEllipsePositions(
688
+ options,
689
+ true,
690
+ true
691
+ );
692
+ const positions = cep.positions;
693
+ const numPts = cep.numPts;
694
+ const outerPositions = cep.outerPositions;
695
+ const boundingSphere = BoundingSphere_default.union(
696
+ topBoundingSphere,
697
+ bottomBoundingSphere
698
+ );
699
+ const topBottomAttributes = computeTopBottomAttributes(
700
+ positions,
701
+ options,
702
+ true
703
+ );
704
+ let indices = topIndices(numPts);
705
+ const length = indices.length;
706
+ indices.length = length * 2;
707
+ const posLength = positions.length / 3;
708
+ for (let i = 0; i < length; i += 3) {
709
+ indices[i + length] = indices[i + 2] + posLength;
710
+ indices[i + 1 + length] = indices[i + 1] + posLength;
711
+ indices[i + 2 + length] = indices[i] + posLength;
712
+ }
713
+ const topBottomIndices = IndexDatatype_default.createTypedArray(
714
+ posLength * 2 / 3,
715
+ indices
716
+ );
717
+ const topBottomGeo = new Geometry_default({
718
+ attributes: topBottomAttributes,
719
+ indices: topBottomIndices,
720
+ primitiveType: PrimitiveType_default.TRIANGLES
721
+ });
722
+ const wallAttributes = computeWallAttributes(outerPositions, options);
723
+ indices = computeWallIndices(outerPositions);
724
+ const wallIndices = IndexDatatype_default.createTypedArray(
725
+ outerPositions.length * 2 / 3,
726
+ indices
727
+ );
728
+ const wallGeo = new Geometry_default({
729
+ attributes: wallAttributes,
730
+ indices: wallIndices,
731
+ primitiveType: PrimitiveType_default.TRIANGLES
732
+ });
733
+ const geo = GeometryPipeline_default.combineInstances([
734
+ new GeometryInstance_default({
735
+ geometry: topBottomGeo
736
+ }),
737
+ new GeometryInstance_default({
738
+ geometry: wallGeo
739
+ })
740
+ ]);
741
+ return {
742
+ boundingSphere,
743
+ attributes: geo[0].attributes,
744
+ indices: geo[0].indices
745
+ };
746
+ }
747
+ function computeRectangle(center, semiMajorAxis, semiMinorAxis, rotation, granularity, ellipsoid, result) {
748
+ const cep = EllipseGeometryLibrary_default.computeEllipsePositions(
749
+ {
750
+ center,
751
+ semiMajorAxis,
752
+ semiMinorAxis,
753
+ rotation,
754
+ granularity
755
+ },
756
+ false,
757
+ true
758
+ );
759
+ const positionsFlat = cep.outerPositions;
760
+ const positionsCount = positionsFlat.length / 3;
761
+ const positions = new Array(positionsCount);
762
+ for (let i = 0; i < positionsCount; ++i) {
763
+ positions[i] = Cartesian3_default.fromArray(positionsFlat, i * 3);
764
+ }
765
+ const rectangle = Rectangle_default.fromCartesianArray(positions, ellipsoid, result);
766
+ if (rectangle.width > Math_default.PI) {
767
+ rectangle.north = rectangle.north > 0 ? Math_default.PI_OVER_TWO - Math_default.EPSILON7 : rectangle.north;
768
+ rectangle.south = rectangle.south < 0 ? Math_default.EPSILON7 - Math_default.PI_OVER_TWO : rectangle.south;
769
+ rectangle.east = Math_default.PI;
770
+ rectangle.west = -Math_default.PI;
771
+ }
772
+ return rectangle;
773
+ }
774
+ function EllipseGeometry(options) {
775
+ options = defaultValue_default(options, defaultValue_default.EMPTY_OBJECT);
776
+ const center = options.center;
777
+ const ellipsoid = defaultValue_default(options.ellipsoid, Ellipsoid_default.WGS84);
778
+ const semiMajorAxis = options.semiMajorAxis;
779
+ const semiMinorAxis = options.semiMinorAxis;
780
+ const granularity = defaultValue_default(
781
+ options.granularity,
782
+ Math_default.RADIANS_PER_DEGREE
783
+ );
784
+ const vertexFormat = defaultValue_default(options.vertexFormat, VertexFormat_default.DEFAULT);
785
+ Check_default.defined("options.center", center);
786
+ Check_default.typeOf.number("options.semiMajorAxis", semiMajorAxis);
787
+ Check_default.typeOf.number("options.semiMinorAxis", semiMinorAxis);
788
+ if (semiMajorAxis < semiMinorAxis) {
789
+ throw new DeveloperError_default(
790
+ "semiMajorAxis must be greater than or equal to the semiMinorAxis."
791
+ );
792
+ }
793
+ if (granularity <= 0) {
794
+ throw new DeveloperError_default("granularity must be greater than zero.");
795
+ }
796
+ const height = defaultValue_default(options.height, 0);
797
+ const extrudedHeight = defaultValue_default(options.extrudedHeight, height);
798
+ this._center = Cartesian3_default.clone(center);
799
+ this._semiMajorAxis = semiMajorAxis;
800
+ this._semiMinorAxis = semiMinorAxis;
801
+ this._ellipsoid = Ellipsoid_default.clone(ellipsoid);
802
+ this._rotation = defaultValue_default(options.rotation, 0);
803
+ this._stRotation = defaultValue_default(options.stRotation, 0);
804
+ this._height = Math.max(extrudedHeight, height);
805
+ this._granularity = granularity;
806
+ this._vertexFormat = VertexFormat_default.clone(vertexFormat);
807
+ this._extrudedHeight = Math.min(extrudedHeight, height);
808
+ this._shadowVolume = defaultValue_default(options.shadowVolume, false);
809
+ this._workerName = "createEllipseGeometry";
810
+ this._offsetAttribute = options.offsetAttribute;
811
+ this._rectangle = void 0;
812
+ this._textureCoordinateRotationPoints = void 0;
813
+ }
814
+ EllipseGeometry.packedLength = Cartesian3_default.packedLength + Ellipsoid_default.packedLength + VertexFormat_default.packedLength + 9;
815
+ EllipseGeometry.pack = function(value, array, startingIndex) {
816
+ Check_default.defined("value", value);
817
+ Check_default.defined("array", array);
818
+ startingIndex = defaultValue_default(startingIndex, 0);
819
+ Cartesian3_default.pack(value._center, array, startingIndex);
820
+ startingIndex += Cartesian3_default.packedLength;
821
+ Ellipsoid_default.pack(value._ellipsoid, array, startingIndex);
822
+ startingIndex += Ellipsoid_default.packedLength;
823
+ VertexFormat_default.pack(value._vertexFormat, array, startingIndex);
824
+ startingIndex += VertexFormat_default.packedLength;
825
+ array[startingIndex++] = value._semiMajorAxis;
826
+ array[startingIndex++] = value._semiMinorAxis;
827
+ array[startingIndex++] = value._rotation;
828
+ array[startingIndex++] = value._stRotation;
829
+ array[startingIndex++] = value._height;
830
+ array[startingIndex++] = value._granularity;
831
+ array[startingIndex++] = value._extrudedHeight;
832
+ array[startingIndex++] = value._shadowVolume ? 1 : 0;
833
+ array[startingIndex] = defaultValue_default(value._offsetAttribute, -1);
834
+ return array;
835
+ };
836
+ var scratchCenter = new Cartesian3_default();
837
+ var scratchEllipsoid = new Ellipsoid_default();
838
+ var scratchVertexFormat = new VertexFormat_default();
839
+ var scratchOptions = {
840
+ center: scratchCenter,
841
+ ellipsoid: scratchEllipsoid,
842
+ vertexFormat: scratchVertexFormat,
843
+ semiMajorAxis: void 0,
844
+ semiMinorAxis: void 0,
845
+ rotation: void 0,
846
+ stRotation: void 0,
847
+ height: void 0,
848
+ granularity: void 0,
849
+ extrudedHeight: void 0,
850
+ shadowVolume: void 0,
851
+ offsetAttribute: void 0
852
+ };
853
+ EllipseGeometry.unpack = function(array, startingIndex, result) {
854
+ Check_default.defined("array", array);
855
+ startingIndex = defaultValue_default(startingIndex, 0);
856
+ const center = Cartesian3_default.unpack(array, startingIndex, scratchCenter);
857
+ startingIndex += Cartesian3_default.packedLength;
858
+ const ellipsoid = Ellipsoid_default.unpack(array, startingIndex, scratchEllipsoid);
859
+ startingIndex += Ellipsoid_default.packedLength;
860
+ const vertexFormat = VertexFormat_default.unpack(
861
+ array,
862
+ startingIndex,
863
+ scratchVertexFormat
864
+ );
865
+ startingIndex += VertexFormat_default.packedLength;
866
+ const semiMajorAxis = array[startingIndex++];
867
+ const semiMinorAxis = array[startingIndex++];
868
+ const rotation = array[startingIndex++];
869
+ const stRotation = array[startingIndex++];
870
+ const height = array[startingIndex++];
871
+ const granularity = array[startingIndex++];
872
+ const extrudedHeight = array[startingIndex++];
873
+ const shadowVolume = array[startingIndex++] === 1;
874
+ const offsetAttribute = array[startingIndex];
875
+ if (!defined_default(result)) {
876
+ scratchOptions.height = height;
877
+ scratchOptions.extrudedHeight = extrudedHeight;
878
+ scratchOptions.granularity = granularity;
879
+ scratchOptions.stRotation = stRotation;
880
+ scratchOptions.rotation = rotation;
881
+ scratchOptions.semiMajorAxis = semiMajorAxis;
882
+ scratchOptions.semiMinorAxis = semiMinorAxis;
883
+ scratchOptions.shadowVolume = shadowVolume;
884
+ scratchOptions.offsetAttribute = offsetAttribute === -1 ? void 0 : offsetAttribute;
885
+ return new EllipseGeometry(scratchOptions);
886
+ }
887
+ result._center = Cartesian3_default.clone(center, result._center);
888
+ result._ellipsoid = Ellipsoid_default.clone(ellipsoid, result._ellipsoid);
889
+ result._vertexFormat = VertexFormat_default.clone(vertexFormat, result._vertexFormat);
890
+ result._semiMajorAxis = semiMajorAxis;
891
+ result._semiMinorAxis = semiMinorAxis;
892
+ result._rotation = rotation;
893
+ result._stRotation = stRotation;
894
+ result._height = height;
895
+ result._granularity = granularity;
896
+ result._extrudedHeight = extrudedHeight;
897
+ result._shadowVolume = shadowVolume;
898
+ result._offsetAttribute = offsetAttribute === -1 ? void 0 : offsetAttribute;
899
+ return result;
900
+ };
901
+ EllipseGeometry.computeRectangle = function(options, result) {
902
+ options = defaultValue_default(options, defaultValue_default.EMPTY_OBJECT);
903
+ const center = options.center;
904
+ const ellipsoid = defaultValue_default(options.ellipsoid, Ellipsoid_default.WGS84);
905
+ const semiMajorAxis = options.semiMajorAxis;
906
+ const semiMinorAxis = options.semiMinorAxis;
907
+ const granularity = defaultValue_default(
908
+ options.granularity,
909
+ Math_default.RADIANS_PER_DEGREE
910
+ );
911
+ const rotation = defaultValue_default(options.rotation, 0);
912
+ Check_default.defined("options.center", center);
913
+ Check_default.typeOf.number("options.semiMajorAxis", semiMajorAxis);
914
+ Check_default.typeOf.number("options.semiMinorAxis", semiMinorAxis);
915
+ if (semiMajorAxis < semiMinorAxis) {
916
+ throw new DeveloperError_default(
917
+ "semiMajorAxis must be greater than or equal to the semiMinorAxis."
918
+ );
919
+ }
920
+ if (granularity <= 0) {
921
+ throw new DeveloperError_default("granularity must be greater than zero.");
922
+ }
923
+ return computeRectangle(
924
+ center,
925
+ semiMajorAxis,
926
+ semiMinorAxis,
927
+ rotation,
928
+ granularity,
929
+ ellipsoid,
930
+ result
931
+ );
932
+ };
933
+ EllipseGeometry.createGeometry = function(ellipseGeometry) {
934
+ if (ellipseGeometry._semiMajorAxis <= 0 || ellipseGeometry._semiMinorAxis <= 0) {
935
+ return;
936
+ }
937
+ const height = ellipseGeometry._height;
938
+ const extrudedHeight = ellipseGeometry._extrudedHeight;
939
+ const extrude = !Math_default.equalsEpsilon(
940
+ height,
941
+ extrudedHeight,
942
+ 0,
943
+ Math_default.EPSILON2
944
+ );
945
+ ellipseGeometry._center = ellipseGeometry._ellipsoid.scaleToGeodeticSurface(
946
+ ellipseGeometry._center,
947
+ ellipseGeometry._center
948
+ );
949
+ const options = {
950
+ center: ellipseGeometry._center,
951
+ semiMajorAxis: ellipseGeometry._semiMajorAxis,
952
+ semiMinorAxis: ellipseGeometry._semiMinorAxis,
953
+ ellipsoid: ellipseGeometry._ellipsoid,
954
+ rotation: ellipseGeometry._rotation,
955
+ height,
956
+ granularity: ellipseGeometry._granularity,
957
+ vertexFormat: ellipseGeometry._vertexFormat,
958
+ stRotation: ellipseGeometry._stRotation
959
+ };
960
+ let geometry;
961
+ if (extrude) {
962
+ options.extrudedHeight = extrudedHeight;
963
+ options.shadowVolume = ellipseGeometry._shadowVolume;
964
+ options.offsetAttribute = ellipseGeometry._offsetAttribute;
965
+ geometry = computeExtrudedEllipse(options);
966
+ } else {
967
+ geometry = computeEllipse(options);
968
+ if (defined_default(ellipseGeometry._offsetAttribute)) {
969
+ const length = geometry.attributes.position.values.length;
970
+ const offsetValue = ellipseGeometry._offsetAttribute === GeometryOffsetAttribute_default.NONE ? 0 : 1;
971
+ const applyOffset = new Uint8Array(length / 3).fill(offsetValue);
972
+ geometry.attributes.applyOffset = new GeometryAttribute_default({
973
+ componentDatatype: ComponentDatatype_default.UNSIGNED_BYTE,
974
+ componentsPerAttribute: 1,
975
+ values: applyOffset
976
+ });
977
+ }
978
+ }
979
+ return new Geometry_default({
980
+ attributes: geometry.attributes,
981
+ indices: geometry.indices,
982
+ primitiveType: PrimitiveType_default.TRIANGLES,
983
+ boundingSphere: geometry.boundingSphere,
984
+ offsetAttribute: ellipseGeometry._offsetAttribute
985
+ });
986
+ };
987
+ EllipseGeometry.createShadowVolume = function(ellipseGeometry, minHeightFunc, maxHeightFunc) {
988
+ const granularity = ellipseGeometry._granularity;
989
+ const ellipsoid = ellipseGeometry._ellipsoid;
990
+ const minHeight = minHeightFunc(granularity, ellipsoid);
991
+ const maxHeight = maxHeightFunc(granularity, ellipsoid);
992
+ return new EllipseGeometry({
993
+ center: ellipseGeometry._center,
994
+ semiMajorAxis: ellipseGeometry._semiMajorAxis,
995
+ semiMinorAxis: ellipseGeometry._semiMinorAxis,
996
+ ellipsoid,
997
+ rotation: ellipseGeometry._rotation,
998
+ stRotation: ellipseGeometry._stRotation,
999
+ granularity,
1000
+ extrudedHeight: minHeight,
1001
+ height: maxHeight,
1002
+ vertexFormat: VertexFormat_default.POSITION_ONLY,
1003
+ shadowVolume: true
1004
+ });
1005
+ };
1006
+ function textureCoordinateRotationPoints(ellipseGeometry) {
1007
+ const stRotation = -ellipseGeometry._stRotation;
1008
+ if (stRotation === 0) {
1009
+ return [0, 0, 0, 1, 1, 0];
1010
+ }
1011
+ const cep = EllipseGeometryLibrary_default.computeEllipsePositions(
1012
+ {
1013
+ center: ellipseGeometry._center,
1014
+ semiMajorAxis: ellipseGeometry._semiMajorAxis,
1015
+ semiMinorAxis: ellipseGeometry._semiMinorAxis,
1016
+ rotation: ellipseGeometry._rotation,
1017
+ granularity: ellipseGeometry._granularity
1018
+ },
1019
+ false,
1020
+ true
1021
+ );
1022
+ const positionsFlat = cep.outerPositions;
1023
+ const positionsCount = positionsFlat.length / 3;
1024
+ const positions = new Array(positionsCount);
1025
+ for (let i = 0; i < positionsCount; ++i) {
1026
+ positions[i] = Cartesian3_default.fromArray(positionsFlat, i * 3);
1027
+ }
1028
+ const ellipsoid = ellipseGeometry._ellipsoid;
1029
+ const boundingRectangle = ellipseGeometry.rectangle;
1030
+ return Geometry_default._textureCoordinateRotationPoints(
1031
+ positions,
1032
+ stRotation,
1033
+ ellipsoid,
1034
+ boundingRectangle
1035
+ );
1036
+ }
1037
+ Object.defineProperties(EllipseGeometry.prototype, {
1038
+ /**
1039
+ * @private
1040
+ */
1041
+ rectangle: {
1042
+ get: function() {
1043
+ if (!defined_default(this._rectangle)) {
1044
+ this._rectangle = computeRectangle(
1045
+ this._center,
1046
+ this._semiMajorAxis,
1047
+ this._semiMinorAxis,
1048
+ this._rotation,
1049
+ this._granularity,
1050
+ this._ellipsoid
1051
+ );
1052
+ }
1053
+ return this._rectangle;
1054
+ }
1055
+ },
1056
+ /**
1057
+ * For remapping texture coordinates when rendering EllipseGeometries as GroundPrimitives.
1058
+ * @private
1059
+ */
1060
+ textureCoordinateRotationPoints: {
1061
+ get: function() {
1062
+ if (!defined_default(this._textureCoordinateRotationPoints)) {
1063
+ this._textureCoordinateRotationPoints = textureCoordinateRotationPoints(
1064
+ this
1065
+ );
1066
+ }
1067
+ return this._textureCoordinateRotationPoints;
1068
+ }
1069
+ }
1070
+ });
1071
+ var EllipseGeometry_default = EllipseGeometry;
1072
+
1073
+ export {
1074
+ EllipseGeometry_default
1075
+ };