@vcmap/ui 5.0.0-rc.18 → 5.0.0-rc.20

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 (379) hide show
  1. package/README.md +6 -6
  2. package/build/build.js +2 -2
  3. package/build/buildCesium.js +3 -3
  4. package/build/buildHelpers.js +2 -1
  5. package/config/base.config.json +0 -4
  6. package/config/dev.config.json +35 -14
  7. package/config/www.config.json +4 -0
  8. package/dist/assets/cesium/Workers/ArcType-ce2e50ab.js +37 -0
  9. package/dist/assets/cesium/Workers/AttributeCompression-b646d393.js +716 -0
  10. package/dist/assets/cesium/Workers/AxisAlignedBoundingBox-ff186ccc.js +258 -0
  11. package/dist/assets/cesium/Workers/BoundingRectangle-be5924f4.js +369 -0
  12. package/dist/assets/cesium/Workers/BoxGeometry-12eeccaf.js +884 -0
  13. package/dist/assets/cesium/Workers/Check-666ab1a0.js +290 -0
  14. package/dist/assets/cesium/Workers/Color-a84038cb.js +2262 -0
  15. package/dist/assets/cesium/Workers/ComponentDatatype-f7b11d02.js +341 -0
  16. package/dist/assets/cesium/Workers/CoplanarPolygonGeometryLibrary-3272c1b3.js +132 -0
  17. package/dist/assets/cesium/Workers/CorridorGeometryLibrary-0170e093.js +498 -0
  18. package/dist/assets/cesium/Workers/CylinderGeometry-7c5da648.js +467 -0
  19. package/dist/assets/cesium/Workers/CylinderGeometryLibrary-372c07d8.js +63 -0
  20. package/dist/assets/cesium/Workers/EllipseGeometry-797d580e.js +1304 -0
  21. package/dist/assets/cesium/Workers/EllipseGeometryLibrary-2939e1dc.js +366 -0
  22. package/dist/assets/cesium/Workers/EllipseOutlineGeometry-8b50870f.js +443 -0
  23. package/dist/assets/cesium/Workers/EllipsoidGeodesic-98c62a56.js +520 -0
  24. package/dist/assets/cesium/Workers/EllipsoidGeometry-21c0e3a5.js +637 -0
  25. package/dist/assets/cesium/Workers/EllipsoidOutlineGeometry-eff247c8.js +454 -0
  26. package/dist/assets/cesium/Workers/EllipsoidRhumbLine-19756602.js +741 -0
  27. package/dist/assets/cesium/Workers/EllipsoidTangentPlane-214683dc.js +373 -0
  28. package/dist/assets/cesium/Workers/EncodedCartesian3-81f70735.js +171 -0
  29. package/dist/assets/cesium/Workers/FrustumGeometry-ac42a6d9.js +2512 -0
  30. package/dist/assets/cesium/Workers/GeometryAttribute-7d6f1732.js +619 -0
  31. package/dist/assets/cesium/Workers/GeometryAttributes-f06a2792.js +91 -0
  32. package/dist/assets/cesium/Workers/GeometryInstance-451dc1cd.js +121 -0
  33. package/dist/assets/cesium/Workers/GeometryOffsetAttribute-04332ce7.js +16 -0
  34. package/dist/assets/cesium/Workers/GeometryPipeline-ce4339ed.js +3690 -0
  35. package/dist/assets/cesium/Workers/IndexDatatype-a55ceaa1.js +200 -0
  36. package/dist/assets/cesium/Workers/IntersectionTests-f6e6bd8a.js +1836 -0
  37. package/dist/assets/cesium/Workers/Math-2dbd6b93.js +1330 -0
  38. package/dist/assets/cesium/Workers/Matrix2-13178034.js +7086 -0
  39. package/dist/assets/cesium/Workers/Matrix3-315394f6.js +4283 -0
  40. package/dist/assets/cesium/Workers/OrientedBoundingBox-04920dc7.js +1257 -0
  41. package/dist/assets/cesium/Workers/Plane-900aa728.js +309 -0
  42. package/dist/assets/cesium/Workers/PolygonGeometryLibrary-a8680d96.js +1074 -0
  43. package/dist/assets/cesium/Workers/PolygonPipeline-844aab0a.js +1345 -0
  44. package/dist/assets/cesium/Workers/PolylinePipeline-32f36d2a.js +573 -0
  45. package/dist/assets/cesium/Workers/PolylineVolumeGeometryLibrary-a510d657.js +781 -0
  46. package/dist/assets/cesium/Workers/PrimitivePipeline-ba38434a.js +966 -0
  47. package/dist/assets/cesium/Workers/RectangleGeometryLibrary-bdba697e.js +280 -0
  48. package/dist/assets/cesium/Workers/RuntimeError-06c93819.js +68 -0
  49. package/dist/assets/cesium/Workers/TerrainEncoding-833187da.js +1227 -0
  50. package/dist/assets/cesium/Workers/Transforms-40229881.js +14696 -0
  51. package/dist/assets/cesium/Workers/VertexFormat-6b480673.js +312 -0
  52. package/dist/assets/cesium/Workers/WallGeometryLibrary-919eed92.js +211 -0
  53. package/dist/assets/cesium/Workers/WebGLConstants-a8cc3e8c.js +620 -0
  54. package/dist/assets/cesium/Workers/WebMercatorProjection-13a90d41.js +151 -0
  55. package/dist/assets/cesium/Workers/arrayRemoveDuplicates-c2038105.js +129 -0
  56. package/dist/assets/cesium/Workers/cesiumWorkerBootstrapper.js +1336 -4
  57. package/dist/assets/cesium/Workers/combine-ca22a614.js +82 -0
  58. package/dist/assets/cesium/Workers/combineGeometry.js +17 -25
  59. package/dist/assets/cesium/Workers/createBoxGeometry.js +12 -25
  60. package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +313 -25
  61. package/dist/assets/cesium/Workers/createCircleGeometry.js +213 -25
  62. package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +160 -25
  63. package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +586 -25
  64. package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +236 -25
  65. package/dist/assets/cesium/Workers/createCorridorGeometry.js +1407 -25
  66. package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +603 -25
  67. package/dist/assets/cesium/Workers/createCylinderGeometry.js +12 -25
  68. package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +265 -25
  69. package/dist/assets/cesium/Workers/createEllipseGeometry.js +14 -25
  70. package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +14 -25
  71. package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +12 -25
  72. package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +15 -25
  73. package/dist/assets/cesium/Workers/createFrustumGeometry.js +12 -25
  74. package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +251 -25
  75. package/dist/assets/cesium/Workers/createGeometry.js +55 -25
  76. package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +2134 -25
  77. package/dist/assets/cesium/Workers/createPlaneGeometry.js +250 -25
  78. package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +115 -25
  79. package/dist/assets/cesium/Workers/createPolygonGeometry.js +1420 -25
  80. package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +683 -25
  81. package/dist/assets/cesium/Workers/createPolylineGeometry.js +571 -25
  82. package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +411 -25
  83. package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +301 -25
  84. package/dist/assets/cesium/Workers/createRectangleGeometry.js +1476 -25
  85. package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +535 -25
  86. package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +458 -25
  87. package/dist/assets/cesium/Workers/createSphereGeometry.js +123 -25
  88. package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +126 -25
  89. package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +127 -25
  90. package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +535 -25
  91. package/dist/assets/cesium/Workers/createVectorTileGeometries.js +445 -25
  92. package/dist/assets/cesium/Workers/createVectorTilePoints.js +79 -25
  93. package/dist/assets/cesium/Workers/createVectorTilePolygons.js +406 -25
  94. package/dist/assets/cesium/Workers/createVectorTilePolylines.js +254 -25
  95. package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +640 -25
  96. package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +2711 -27
  97. package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +994 -25
  98. package/dist/assets/cesium/Workers/createWallGeometry.js +623 -25
  99. package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +432 -25
  100. package/dist/assets/cesium/Workers/decodeDraco.js +381 -25
  101. package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +3687 -25
  102. package/dist/assets/cesium/Workers/decodeI3S.js +1040 -0
  103. package/dist/assets/cesium/Workers/defaultValue-0a909f67.js +51 -0
  104. package/dist/assets/cesium/Workers/package.js +2 -2
  105. package/dist/assets/cesium/Workers/transcodeKTX2.js +1516 -25
  106. package/dist/assets/cesium/Workers/transferTypedArrayTest.js +18 -2
  107. package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +1023 -25
  108. package/dist/assets/{cesium.2f992f.js → cesium.adbd45.js} +112161 -108735
  109. package/dist/assets/cesium.js +1 -1
  110. package/dist/assets/{core.cb0408.js → core.60e74d.js} +1616 -1629
  111. package/dist/assets/core.f198cf.js +15993 -0
  112. package/dist/assets/core.js +1 -1
  113. package/dist/assets/{index.bccdf969.js → index.884a53ef.js} +1 -1
  114. package/dist/assets/{ol.5e3fd0.js → ol.c6ff35.js} +6992 -6972
  115. package/dist/assets/ol.dbd604.js +44299 -0
  116. package/dist/assets/ol.js +1 -1
  117. package/dist/assets/ui.bf504d.css +1 -0
  118. package/dist/assets/{ui.08c48f.js → ui.bf504d.js} +6121 -6785
  119. package/dist/assets/ui.js +1 -1
  120. package/dist/assets/{vue.228ead.js → vue.75b819.js} +0 -0
  121. package/dist/assets/vue.a831f1.js +4675 -0
  122. package/dist/assets/vue.js +2 -2
  123. package/dist/assets/{vuetify.0b5039.css → vuetify.0d7360.css} +0 -0
  124. package/dist/assets/{vuetify.0b5039.js → vuetify.0d7360.js} +1 -1
  125. package/dist/assets/vuetify.js +2 -2
  126. package/dist/index.html +1 -1
  127. package/index.js +2 -1
  128. package/lib/cesium.js +1 -1
  129. package/package.json +3 -4
  130. package/plugins/{simple-graph → @vcmap/simple-graph}/README.md +1 -1
  131. package/plugins/{simple-graph → @vcmap/simple-graph}/SimpleGraphComponent.vue +0 -0
  132. package/plugins/{simple-graph → @vcmap/simple-graph}/index.js +0 -0
  133. package/plugins/{simple-graph → @vcmap/simple-graph}/package.json +0 -0
  134. package/plugins/{simple-graph → @vcmap/simple-graph}/simpleGraphView.js +0 -0
  135. package/plugins/@vcmap-show-case/README.md +20 -0
  136. package/plugins/{buttonExamples/ButtonExamples.vue → @vcmap-show-case/buttons-example/ButtonsExample.vue} +1 -1
  137. package/plugins/@vcmap-show-case/buttons-example/README.md +4 -0
  138. package/plugins/{buttonExamples → @vcmap-show-case/buttons-example}/index.js +16 -8
  139. package/plugins/@vcmap-show-case/buttons-example/package.json +5 -0
  140. package/plugins/{categoryTest → @vcmap-show-case/category-tester}/Categories.vue +7 -6
  141. package/plugins/{categoryTest → @vcmap-show-case/category-tester}/Category.vue +4 -3
  142. package/plugins/@vcmap-show-case/category-tester/README.md +3 -0
  143. package/plugins/{categoryTest → @vcmap-show-case/category-tester}/index.js +12 -4
  144. package/plugins/@vcmap-show-case/category-tester/package.json +5 -0
  145. package/plugins/@vcmap-show-case/config-editor/README.md +3 -0
  146. package/plugins/{test → @vcmap-show-case/config-editor}/editor.vue +0 -0
  147. package/plugins/@vcmap-show-case/config-editor/index.js +47 -0
  148. package/plugins/@vcmap-show-case/config-editor/package.json +5 -0
  149. package/plugins/@vcmap-show-case/context-menu-tester/README.md +3 -0
  150. package/plugins/@vcmap-show-case/context-menu-tester/index.js +33 -0
  151. package/plugins/@vcmap-show-case/context-menu-tester/package.json +5 -0
  152. package/plugins/{@vcmap/pluginExample/pluginExampleComponent.vue → @vcmap-show-case/form-inputs-example/FormInputsExample.vue} +14 -13
  153. package/plugins/@vcmap-show-case/form-inputs-example/README.md +4 -0
  154. package/plugins/@vcmap-show-case/form-inputs-example/config.json +5 -0
  155. package/plugins/{@vcmap/pluginExample → @vcmap-show-case/form-inputs-example}/exampleActions.js +1 -1
  156. package/plugins/{@vcmap/pluginExample → @vcmap-show-case/form-inputs-example}/index.js +23 -22
  157. package/plugins/@vcmap-show-case/form-inputs-example/package.json +5 -0
  158. package/plugins/{@vcmap/pluginExample → @vcmap-show-case/form-inputs-example}/validation.js +0 -0
  159. package/plugins/@vcmap-show-case/icons-example/README.md +5 -0
  160. package/plugins/@vcmap-show-case/icons-example/allIconsComponent.vue +51 -0
  161. package/plugins/@vcmap-show-case/icons-example/index.js +44 -0
  162. package/plugins/@vcmap-show-case/icons-example/package.json +5 -0
  163. package/plugins/{test/testList.vue → @vcmap-show-case/list-example/ListExample.vue} +1 -1
  164. package/plugins/@vcmap-show-case/list-example/README.md +3 -0
  165. package/plugins/@vcmap-show-case/list-example/index.js +44 -0
  166. package/plugins/@vcmap-show-case/list-example/package.json +5 -0
  167. package/plugins/@vcmap-show-case/notifier-tester/README.md +3 -0
  168. package/plugins/{notifier → @vcmap-show-case/notifier-tester}/index.js +11 -6
  169. package/plugins/{notifier → @vcmap-show-case/notifier-tester}/notifierTester.vue +0 -0
  170. package/plugins/@vcmap-show-case/notifier-tester/package.json +5 -0
  171. package/plugins/@vcmap-show-case/textfields-example/README.md +3 -0
  172. package/plugins/{example/mySuperComponent.vue → @vcmap-show-case/textfields-example/TextfieldsExample.vue} +1 -7
  173. package/plugins/{example → @vcmap-show-case/textfields-example}/index.js +58 -62
  174. package/plugins/@vcmap-show-case/textfields-example/package.json +5 -0
  175. package/plugins/@vcmap-show-case/window-tester/README.md +3 -0
  176. package/plugins/{test/windowManagerExample.vue → @vcmap-show-case/window-tester/WindowExample.vue} +36 -20
  177. package/plugins/{test → @vcmap-show-case/window-tester}/emptyComponent.vue +8 -3
  178. package/plugins/@vcmap-show-case/window-tester/index.js +62 -0
  179. package/plugins/{test → @vcmap-show-case/window-tester}/myCustomHeader.vue +0 -0
  180. package/plugins/@vcmap-show-case/window-tester/package.json +5 -0
  181. package/plugins/{test → @vcmap-show-case/window-tester}/toolbox-data.js +9 -9
  182. package/plugins/{test/vcsContent.vue → @vcmap-show-case/window-tester/windowExampleContent.vue} +1 -5
  183. package/plugins/@vcmap-show-case/wizard-example/README.md +3 -0
  184. package/plugins/{wizardExample → @vcmap-show-case/wizard-example}/index.js +12 -6
  185. package/plugins/@vcmap-show-case/wizard-example/package.json +5 -0
  186. package/plugins/@vcmap-show-case/wizard-example/wizardExample.vue +95 -0
  187. package/plugins/package.json +2 -1
  188. package/src/actions/actionHelper.js +1 -3
  189. package/src/actions/stateRefAction.js +0 -10
  190. package/src/application/VcsApp.vue +42 -23
  191. package/src/application/VcsMap.vue +9 -0
  192. package/src/components/buttons/VcsActionButtonList.vue +1 -0
  193. package/src/components/form-inputs-controls/VcsCheckbox.vue +3 -1
  194. package/src/components/form-inputs-controls/VcsWizard.vue +17 -20
  195. package/src/components/form-inputs-controls/VcsWizardStep.vue +160 -0
  196. package/src/{icons → components/icons}/+all.js +0 -0
  197. package/src/{icons → components/icons}/2DAreaIcon.vue +0 -0
  198. package/src/{icons → components/icons}/2DDistanceIcon.vue +0 -0
  199. package/src/{icons → components/icons}/3DAreaIcon.vue +0 -0
  200. package/src/{icons → components/icons}/3DDistanceIcon.vue +0 -0
  201. package/src/{icons → components/icons}/3DHeightIcon.vue +0 -0
  202. package/src/{icons → components/icons}/AngleIcon.vue +0 -0
  203. package/src/{icons → components/icons}/AssociationsIcon.vue +0 -0
  204. package/src/{icons → components/icons}/AxisIcon.vue +0 -0
  205. package/src/{icons → components/icons}/BoundingBoxIcon.vue +0 -0
  206. package/src/{icons → components/icons}/CheckboxCheckedIcon.vue +0 -0
  207. package/src/{icons → components/icons}/CheckboxIcon.vue +0 -0
  208. package/src/{icons → components/icons}/CheckboxIndeterminateIcon.vue +0 -0
  209. package/src/{icons → components/icons}/CircleIcon.vue +0 -0
  210. package/src/{icons → components/icons}/ClippingHorizontalIcon.vue +0 -0
  211. package/src/{icons → components/icons}/ClippingIcon.vue +0 -0
  212. package/src/{icons → components/icons}/ClippingVerticalIcon.vue +0 -0
  213. package/src/{icons → components/icons}/ColorPickerIcon.vue +0 -0
  214. package/src/{icons → components/icons}/ColorSwatchIcon.vue +0 -0
  215. package/src/{icons → components/icons}/CommentIcon.vue +0 -0
  216. package/src/{icons → components/icons}/CompassIcon.vue +0 -0
  217. package/src/{icons → components/icons}/ComponentsIcon.vue +0 -0
  218. package/src/{icons → components/icons}/ConeIcon.vue +0 -0
  219. package/src/{icons → components/icons}/DimensionsHouseIcon.vue +0 -0
  220. package/src/{icons → components/icons}/EditIcon.vue +0 -0
  221. package/src/{icons → components/icons}/ElevationProfileIcon.vue +0 -0
  222. package/src/{icons → components/icons}/ExportAreaIcon.vue +0 -0
  223. package/src/{icons → components/icons}/ExportFlightIcon.vue +0 -0
  224. package/src/{icons → components/icons}/ExportIcon.vue +0 -0
  225. package/src/{icons → components/icons}/ExternalLinkIcon.vue +0 -0
  226. package/src/{icons → components/icons}/EyeIcon.vue +0 -0
  227. package/src/{icons → components/icons}/FastForwardIcon.vue +0 -0
  228. package/src/{icons → components/icons}/FilterIcon.vue +0 -0
  229. package/src/{icons → components/icons}/GlobalTerrainIcon.vue +0 -0
  230. package/src/{icons → components/icons}/GlobeNatureIcon.vue +0 -0
  231. package/src/{icons → components/icons}/GroundIcon.vue +0 -0
  232. package/src/{icons → components/icons}/HealthCareIndustriesIcon.vue +0 -0
  233. package/src/{icons → components/icons}/HelpIcon.vue +0 -0
  234. package/src/{icons → components/icons}/HideIcon.vue +0 -0
  235. package/src/{icons → components/icons}/HomePointIcon.vue +0 -0
  236. package/src/{icons → components/icons}/HospitalsIcon.vue +0 -0
  237. package/src/{icons → components/icons}/HouseIcon.vue +0 -0
  238. package/src/{icons → components/icons}/ImportIcon.vue +0 -0
  239. package/src/{icons → components/icons}/InfoIcon.vue +0 -0
  240. package/src/{icons → components/icons}/KebabIcon.vue +0 -0
  241. package/src/{icons → components/icons}/LabelIcon.vue +0 -0
  242. package/src/{icons → components/icons}/LayersIcon.vue +0 -0
  243. package/src/{icons → components/icons}/LegendIcon.vue +0 -0
  244. package/src/{icons → components/icons}/LineIcon.vue +0 -0
  245. package/src/{icons → components/icons}/LinkIcon.vue +0 -0
  246. package/src/{icons → components/icons}/LogoutIcon.vue +0 -0
  247. package/src/{icons → components/icons}/MapIcon.vue +0 -0
  248. package/src/{icons → components/icons}/MenuIcon.vue +0 -0
  249. package/src/{icons → components/icons}/MinusIcon.vue +0 -0
  250. package/src/{icons → components/icons}/ObjectAttributeIcon.vue +0 -0
  251. package/src/{icons → components/icons}/ObjectSelectIcon.vue +0 -0
  252. package/src/{icons → components/icons}/ObliqueViewIcon.vue +0 -0
  253. package/src/{icons → components/icons}/PdfIcon.vue +0 -0
  254. package/src/{icons → components/icons}/PedestrianIcon.vue +0 -0
  255. package/src/{icons → components/icons}/PenIcon.vue +0 -0
  256. package/src/{icons → components/icons}/PlayCircleIcon.vue +0 -0
  257. package/src/{icons → components/icons}/PlusIcon.vue +0 -0
  258. package/src/{icons → components/icons}/PoiIcon.vue +0 -0
  259. package/src/{icons → components/icons}/PointSelectIcon.vue +0 -0
  260. package/src/{icons → components/icons}/PolygonIcon.vue +0 -0
  261. package/src/{icons → components/icons}/PresentationModeIcon.vue +0 -0
  262. package/src/{icons → components/icons}/ProgressIcon.vue +0 -0
  263. package/src/{icons → components/icons}/QueryIcon.vue +0 -0
  264. package/src/{icons → components/icons}/RectangleIcon.vue +0 -0
  265. package/src/{icons → components/icons}/ReturnIcon.vue +0 -0
  266. package/src/{icons → components/icons}/RewindIcon.vue +0 -0
  267. package/src/{icons → components/icons}/RotateLeftIcon.vue +0 -0
  268. package/src/{icons → components/icons}/RotateRightIcon.vue +0 -0
  269. package/src/{icons → components/icons}/ScreenshotIcon.vue +0 -0
  270. package/src/{icons → components/icons}/SearchIcon.vue +0 -0
  271. package/src/{icons → components/icons}/ShadowIcon.vue +0 -0
  272. package/src/{icons → components/icons}/ShapesIcon.vue +0 -0
  273. package/src/{icons → components/icons}/ShareIcon.vue +0 -0
  274. package/src/{icons → components/icons}/SimpleCircleFilledIcon.vue +0 -0
  275. package/src/{icons → components/icons}/SimpleCircleHalfFilledIcon.vue +0 -0
  276. package/src/{icons → components/icons}/SimpleCircleOutlinedIcon.vue +0 -0
  277. package/src/{icons → components/icons}/SkipNextIcon.vue +0 -0
  278. package/src/{icons → components/icons}/SkipPreviousIcon.vue +0 -0
  279. package/src/{icons → components/icons}/SplitViewIcon.vue +0 -0
  280. package/src/{icons → components/icons}/TerrainBoxIcon.vue +0 -0
  281. package/src/{icons → components/icons}/TextStyleIcon.vue +0 -0
  282. package/src/{icons → components/icons}/ThreeDimensionsIcon.vue +0 -0
  283. package/src/{icons → components/icons}/ToolsIcon.vue +0 -0
  284. package/src/{icons → components/icons}/TouchIcon.vue +0 -0
  285. package/src/{icons → components/icons}/TrashCanIcon.vue +0 -0
  286. package/src/{icons → components/icons}/TriangleIcon.vue +0 -0
  287. package/src/{icons → components/icons}/TwoDimensionsIcon.vue +0 -0
  288. package/src/{icons → components/icons}/UploadIcon.vue +0 -0
  289. package/src/{icons → components/icons}/UserProfileIcon.vue +0 -0
  290. package/src/{icons → components/icons}/UserShareIcon.vue +0 -0
  291. package/src/{icons → components/icons}/VideoRecorderIcon.vue +0 -0
  292. package/src/{icons → components/icons}/ViewpointFlightIcon.vue +0 -0
  293. package/src/{icons → components/icons}/ViewpointIcon.vue +0 -0
  294. package/src/{icons → components/icons}/Viewshed360Icon.vue +0 -0
  295. package/src/{icons → components/icons}/ViewshedConeIcon.vue +0 -0
  296. package/src/{icons → components/icons}/ViewshedIcon.vue +0 -0
  297. package/src/{icons → components/icons}/WalkingIcon.vue +0 -0
  298. package/src/{icons → components/icons}/WallIcon.vue +0 -0
  299. package/src/{icons → components/icons}/WandIcon.vue +0 -0
  300. package/src/components/lists/VcsList.vue +21 -12
  301. package/src/components/lists/VcsTreeviewLeaf.vue +14 -2
  302. package/src/components/notification/VcsTooltip.vue +1 -1
  303. package/src/featureInfo/abstractFeatureInfoView.js +1 -1
  304. package/src/featureInfo/addressBalloonFeatureInfoView.js +1 -1
  305. package/src/featureInfo/balloonFeatureInfoView.js +1 -1
  306. package/src/featureInfo/balloonHelper.js +6 -6
  307. package/src/featureInfo/featureInfo.js +2 -2
  308. package/src/i18n/de.js +2 -6
  309. package/src/i18n/en.js +2 -6
  310. package/src/legend/legendHelper.js +4 -3
  311. package/src/legend/vcsLegend.vue +21 -2
  312. package/src/manager/window/WindowComponent.vue +42 -4
  313. package/src/manager/window/WindowComponentHeader.vue +1 -1
  314. package/src/manager/window/windowHelper.js +7 -11
  315. package/src/manager/window/windowManager.js +15 -11
  316. package/src/navigation/mapNavCompass.vue +13 -7
  317. package/src/navigation/mapNavigation.vue +66 -4
  318. package/src/navigation/orientationToolsButton.vue +1 -1
  319. package/src/navigation/overviewMap.js +26 -10
  320. package/src/navigation/vcsCompass.vue +4 -73
  321. package/src/setup.js +1 -1
  322. package/src/vuePlugins/vuetify.js +1 -1
  323. package/dist/assets/cesium/Workers/ArcType-c9b2b290.js +0 -25
  324. package/dist/assets/cesium/Workers/AttributeCompression-7b0f288d.js +0 -25
  325. package/dist/assets/cesium/Workers/AxisAlignedBoundingBox-d0c22774.js +0 -25
  326. package/dist/assets/cesium/Workers/BoundingRectangle-201b1a81.js +0 -25
  327. package/dist/assets/cesium/Workers/BoxGeometry-4985457c.js +0 -25
  328. package/dist/assets/cesium/Workers/Color-cc8c18b3.js +0 -25
  329. package/dist/assets/cesium/Workers/ComponentDatatype-0200bf8c.js +0 -25
  330. package/dist/assets/cesium/Workers/CoplanarPolygonGeometryLibrary-4345acdf.js +0 -25
  331. package/dist/assets/cesium/Workers/CorridorGeometryLibrary-850a6c35.js +0 -25
  332. package/dist/assets/cesium/Workers/CylinderGeometry-57a1051a.js +0 -25
  333. package/dist/assets/cesium/Workers/CylinderGeometryLibrary-62ce5a1f.js +0 -25
  334. package/dist/assets/cesium/Workers/EllipseGeometry-8627398f.js +0 -25
  335. package/dist/assets/cesium/Workers/EllipseGeometryLibrary-e5919563.js +0 -25
  336. package/dist/assets/cesium/Workers/EllipseOutlineGeometry-96fd4ae1.js +0 -25
  337. package/dist/assets/cesium/Workers/EllipsoidGeodesic-8bfefbff.js +0 -25
  338. package/dist/assets/cesium/Workers/EllipsoidGeometry-377329b9.js +0 -25
  339. package/dist/assets/cesium/Workers/EllipsoidOutlineGeometry-e6e16e49.js +0 -25
  340. package/dist/assets/cesium/Workers/EllipsoidRhumbLine-03528f73.js +0 -25
  341. package/dist/assets/cesium/Workers/EllipsoidTangentPlane-c080fd1b.js +0 -25
  342. package/dist/assets/cesium/Workers/EncodedCartesian3-ea0e408f.js +0 -25
  343. package/dist/assets/cesium/Workers/FrustumGeometry-a8b5d817.js +0 -25
  344. package/dist/assets/cesium/Workers/GeometryAttribute-8458a8fd.js +0 -25
  345. package/dist/assets/cesium/Workers/GeometryAttributes-ac0f8485.js +0 -25
  346. package/dist/assets/cesium/Workers/GeometryInstance-ee3aa3ba.js +0 -25
  347. package/dist/assets/cesium/Workers/GeometryOffsetAttribute-08ae0c50.js +0 -25
  348. package/dist/assets/cesium/Workers/GeometryPipeline-33ca229c.js +0 -25
  349. package/dist/assets/cesium/Workers/IndexDatatype-e713bfd2.js +0 -25
  350. package/dist/assets/cesium/Workers/IntersectionTests-eb4db8e0.js +0 -25
  351. package/dist/assets/cesium/Workers/Matrix2-eefef8eb.js +0 -25
  352. package/dist/assets/cesium/Workers/OrientedBoundingBox-5193f9a2.js +0 -25
  353. package/dist/assets/cesium/Workers/Plane-b0299683.js +0 -25
  354. package/dist/assets/cesium/Workers/PolygonGeometryLibrary-b61295f3.js +0 -25
  355. package/dist/assets/cesium/Workers/PolygonPipeline-eb527514.js +0 -25
  356. package/dist/assets/cesium/Workers/PolylinePipeline-0f23dd84.js +0 -25
  357. package/dist/assets/cesium/Workers/PolylineVolumeGeometryLibrary-2d903430.js +0 -25
  358. package/dist/assets/cesium/Workers/PrimitivePipeline-e2640413.js +0 -25
  359. package/dist/assets/cesium/Workers/RectangleGeometryLibrary-ae8bf8a5.js +0 -25
  360. package/dist/assets/cesium/Workers/RuntimeError-5baf5c66.js +0 -25
  361. package/dist/assets/cesium/Workers/TerrainEncoding-bc10ab54.js +0 -25
  362. package/dist/assets/cesium/Workers/Transforms-d2e5867e.js +0 -63
  363. package/dist/assets/cesium/Workers/VertexFormat-5ec0d9ff.js +0 -25
  364. package/dist/assets/cesium/Workers/WallGeometryLibrary-1a33e416.js +0 -25
  365. package/dist/assets/cesium/Workers/WebGLConstants-5b50ced1.js +0 -25
  366. package/dist/assets/cesium/Workers/WebMercatorProjection-cd2f30c2.js +0 -25
  367. package/dist/assets/cesium/Workers/_commonjsHelpers-bc29abbc.js +0 -25
  368. package/dist/assets/cesium/Workers/arrayRemoveDuplicates-f13aceb1.js +0 -25
  369. package/dist/assets/cesium/Workers/combine-7533016d.js +0 -25
  370. package/dist/assets/cesium/Workers/defaultValue-0c475b81.js +0 -25
  371. package/dist/assets/cesium/Workers/package.json +0 -1
  372. package/dist/assets/ui.08c48f.css +0 -1
  373. package/plugins/@vcmap/pluginExample/config.json +0 -6
  374. package/plugins/@vcmap/pluginExample/package.json +0 -7
  375. package/plugins/categoryTest/ItemEditor.vue +0 -13
  376. package/plugins/test/allIconsComponent.vue +0 -50
  377. package/plugins/test/index.js +0 -209
  378. package/plugins/wizardExample/wizardExample.vue +0 -77
  379. package/src/components/form-inputs-controls/VcsColorPicker.vue +0 -85
@@ -0,0 +1,637 @@
1
+ define(['exports', './Transforms-40229881', './Matrix2-13178034', './Matrix3-315394f6', './ComponentDatatype-f7b11d02', './defaultValue-0a909f67', './Check-666ab1a0', './GeometryAttribute-7d6f1732', './GeometryAttributes-f06a2792', './GeometryOffsetAttribute-04332ce7', './IndexDatatype-a55ceaa1', './Math-2dbd6b93', './VertexFormat-6b480673'], (function (exports, Transforms, Matrix2, Matrix3, ComponentDatatype, defaultValue, Check, GeometryAttribute, GeometryAttributes, GeometryOffsetAttribute, IndexDatatype, Math$1, VertexFormat) { 'use strict';
2
+
3
+ const scratchPosition = new Matrix3.Cartesian3();
4
+ const scratchNormal = new Matrix3.Cartesian3();
5
+ const scratchTangent = new Matrix3.Cartesian3();
6
+ const scratchBitangent = new Matrix3.Cartesian3();
7
+ const scratchNormalST = new Matrix3.Cartesian3();
8
+ const defaultRadii = new Matrix3.Cartesian3(1.0, 1.0, 1.0);
9
+
10
+ const cos = Math.cos;
11
+ const sin = Math.sin;
12
+
13
+ /**
14
+ * A description of an ellipsoid centered at the origin.
15
+ *
16
+ * @alias EllipsoidGeometry
17
+ * @constructor
18
+ *
19
+ * @param {Object} [options] Object with the following properties:
20
+ * @param {Cartesian3} [options.radii=Cartesian3(1.0, 1.0, 1.0)] The radii of the ellipsoid in the x, y, and z directions.
21
+ * @param {Cartesian3} [options.innerRadii=options.radii] The inner radii of the ellipsoid in the x, y, and z directions.
22
+ * @param {Number} [options.minimumClock=0.0] The minimum angle lying in the xy-plane measured from the positive x-axis and toward the positive y-axis.
23
+ * @param {Number} [options.maximumClock=2*PI] The maximum angle lying in the xy-plane measured from the positive x-axis and toward the positive y-axis.
24
+ * @param {Number} [options.minimumCone=0.0] The minimum angle measured from the positive z-axis and toward the negative z-axis.
25
+ * @param {Number} [options.maximumCone=PI] The maximum angle measured from the positive z-axis and toward the negative z-axis.
26
+ * @param {Number} [options.stackPartitions=64] The number of times to partition the ellipsoid into stacks.
27
+ * @param {Number} [options.slicePartitions=64] The number of times to partition the ellipsoid into radial slices.
28
+ * @param {VertexFormat} [options.vertexFormat=VertexFormat.DEFAULT] The vertex attributes to be computed.
29
+ *
30
+ * @exception {DeveloperError} options.slicePartitions cannot be less than three.
31
+ * @exception {DeveloperError} options.stackPartitions cannot be less than three.
32
+ *
33
+ * @see EllipsoidGeometry#createGeometry
34
+ *
35
+ * @example
36
+ * const ellipsoid = new Cesium.EllipsoidGeometry({
37
+ * vertexFormat : Cesium.VertexFormat.POSITION_ONLY,
38
+ * radii : new Cesium.Cartesian3(1000000.0, 500000.0, 500000.0)
39
+ * });
40
+ * const geometry = Cesium.EllipsoidGeometry.createGeometry(ellipsoid);
41
+ */
42
+ function EllipsoidGeometry(options) {
43
+ options = defaultValue.defaultValue(options, defaultValue.defaultValue.EMPTY_OBJECT);
44
+
45
+ const radii = defaultValue.defaultValue(options.radii, defaultRadii);
46
+ const innerRadii = defaultValue.defaultValue(options.innerRadii, radii);
47
+ const minimumClock = defaultValue.defaultValue(options.minimumClock, 0.0);
48
+ const maximumClock = defaultValue.defaultValue(options.maximumClock, Math$1.CesiumMath.TWO_PI);
49
+ const minimumCone = defaultValue.defaultValue(options.minimumCone, 0.0);
50
+ const maximumCone = defaultValue.defaultValue(options.maximumCone, Math$1.CesiumMath.PI);
51
+ const stackPartitions = Math.round(defaultValue.defaultValue(options.stackPartitions, 64));
52
+ const slicePartitions = Math.round(defaultValue.defaultValue(options.slicePartitions, 64));
53
+ const vertexFormat = defaultValue.defaultValue(options.vertexFormat, VertexFormat.VertexFormat.DEFAULT);
54
+
55
+ //>>includeStart('debug', pragmas.debug);
56
+ if (slicePartitions < 3) {
57
+ throw new Check.DeveloperError(
58
+ "options.slicePartitions cannot be less than three."
59
+ );
60
+ }
61
+ if (stackPartitions < 3) {
62
+ throw new Check.DeveloperError(
63
+ "options.stackPartitions cannot be less than three."
64
+ );
65
+ }
66
+ //>>includeEnd('debug');
67
+
68
+ this._radii = Matrix3.Cartesian3.clone(radii);
69
+ this._innerRadii = Matrix3.Cartesian3.clone(innerRadii);
70
+ this._minimumClock = minimumClock;
71
+ this._maximumClock = maximumClock;
72
+ this._minimumCone = minimumCone;
73
+ this._maximumCone = maximumCone;
74
+ this._stackPartitions = stackPartitions;
75
+ this._slicePartitions = slicePartitions;
76
+ this._vertexFormat = VertexFormat.VertexFormat.clone(vertexFormat);
77
+ this._offsetAttribute = options.offsetAttribute;
78
+ this._workerName = "createEllipsoidGeometry";
79
+ }
80
+
81
+ /**
82
+ * The number of elements used to pack the object into an array.
83
+ * @type {Number}
84
+ */
85
+ EllipsoidGeometry.packedLength =
86
+ 2 * Matrix3.Cartesian3.packedLength + VertexFormat.VertexFormat.packedLength + 7;
87
+
88
+ /**
89
+ * Stores the provided instance into the provided array.
90
+ *
91
+ * @param {EllipsoidGeometry} value The value to pack.
92
+ * @param {Number[]} array The array to pack into.
93
+ * @param {Number} [startingIndex=0] The index into the array at which to start packing the elements.
94
+ *
95
+ * @returns {Number[]} The array that was packed into
96
+ */
97
+ EllipsoidGeometry.pack = function (value, array, startingIndex) {
98
+ //>>includeStart('debug', pragmas.debug);
99
+ if (!defaultValue.defined(value)) {
100
+ throw new Check.DeveloperError("value is required");
101
+ }
102
+ if (!defaultValue.defined(array)) {
103
+ throw new Check.DeveloperError("array is required");
104
+ }
105
+ //>>includeEnd('debug');
106
+
107
+ startingIndex = defaultValue.defaultValue(startingIndex, 0);
108
+
109
+ Matrix3.Cartesian3.pack(value._radii, array, startingIndex);
110
+ startingIndex += Matrix3.Cartesian3.packedLength;
111
+
112
+ Matrix3.Cartesian3.pack(value._innerRadii, array, startingIndex);
113
+ startingIndex += Matrix3.Cartesian3.packedLength;
114
+
115
+ VertexFormat.VertexFormat.pack(value._vertexFormat, array, startingIndex);
116
+ startingIndex += VertexFormat.VertexFormat.packedLength;
117
+
118
+ array[startingIndex++] = value._minimumClock;
119
+ array[startingIndex++] = value._maximumClock;
120
+ array[startingIndex++] = value._minimumCone;
121
+ array[startingIndex++] = value._maximumCone;
122
+ array[startingIndex++] = value._stackPartitions;
123
+ array[startingIndex++] = value._slicePartitions;
124
+ array[startingIndex] = defaultValue.defaultValue(value._offsetAttribute, -1);
125
+
126
+ return array;
127
+ };
128
+
129
+ const scratchRadii = new Matrix3.Cartesian3();
130
+ const scratchInnerRadii = new Matrix3.Cartesian3();
131
+ const scratchVertexFormat = new VertexFormat.VertexFormat();
132
+ const scratchOptions = {
133
+ radii: scratchRadii,
134
+ innerRadii: scratchInnerRadii,
135
+ vertexFormat: scratchVertexFormat,
136
+ minimumClock: undefined,
137
+ maximumClock: undefined,
138
+ minimumCone: undefined,
139
+ maximumCone: undefined,
140
+ stackPartitions: undefined,
141
+ slicePartitions: undefined,
142
+ offsetAttribute: undefined,
143
+ };
144
+
145
+ /**
146
+ * Retrieves an instance from a packed array.
147
+ *
148
+ * @param {Number[]} array The packed array.
149
+ * @param {Number} [startingIndex=0] The starting index of the element to be unpacked.
150
+ * @param {EllipsoidGeometry} [result] The object into which to store the result.
151
+ * @returns {EllipsoidGeometry} The modified result parameter or a new EllipsoidGeometry instance if one was not provided.
152
+ */
153
+ EllipsoidGeometry.unpack = function (array, startingIndex, result) {
154
+ //>>includeStart('debug', pragmas.debug);
155
+ if (!defaultValue.defined(array)) {
156
+ throw new Check.DeveloperError("array is required");
157
+ }
158
+ //>>includeEnd('debug');
159
+
160
+ startingIndex = defaultValue.defaultValue(startingIndex, 0);
161
+
162
+ const radii = Matrix3.Cartesian3.unpack(array, startingIndex, scratchRadii);
163
+ startingIndex += Matrix3.Cartesian3.packedLength;
164
+
165
+ const innerRadii = Matrix3.Cartesian3.unpack(array, startingIndex, scratchInnerRadii);
166
+ startingIndex += Matrix3.Cartesian3.packedLength;
167
+
168
+ const vertexFormat = VertexFormat.VertexFormat.unpack(
169
+ array,
170
+ startingIndex,
171
+ scratchVertexFormat
172
+ );
173
+ startingIndex += VertexFormat.VertexFormat.packedLength;
174
+
175
+ const minimumClock = array[startingIndex++];
176
+ const maximumClock = array[startingIndex++];
177
+ const minimumCone = array[startingIndex++];
178
+ const maximumCone = array[startingIndex++];
179
+ const stackPartitions = array[startingIndex++];
180
+ const slicePartitions = array[startingIndex++];
181
+ const offsetAttribute = array[startingIndex];
182
+
183
+ if (!defaultValue.defined(result)) {
184
+ scratchOptions.minimumClock = minimumClock;
185
+ scratchOptions.maximumClock = maximumClock;
186
+ scratchOptions.minimumCone = minimumCone;
187
+ scratchOptions.maximumCone = maximumCone;
188
+ scratchOptions.stackPartitions = stackPartitions;
189
+ scratchOptions.slicePartitions = slicePartitions;
190
+ scratchOptions.offsetAttribute =
191
+ offsetAttribute === -1 ? undefined : offsetAttribute;
192
+ return new EllipsoidGeometry(scratchOptions);
193
+ }
194
+
195
+ result._radii = Matrix3.Cartesian3.clone(radii, result._radii);
196
+ result._innerRadii = Matrix3.Cartesian3.clone(innerRadii, result._innerRadii);
197
+ result._vertexFormat = VertexFormat.VertexFormat.clone(vertexFormat, result._vertexFormat);
198
+ result._minimumClock = minimumClock;
199
+ result._maximumClock = maximumClock;
200
+ result._minimumCone = minimumCone;
201
+ result._maximumCone = maximumCone;
202
+ result._stackPartitions = stackPartitions;
203
+ result._slicePartitions = slicePartitions;
204
+ result._offsetAttribute =
205
+ offsetAttribute === -1 ? undefined : offsetAttribute;
206
+
207
+ return result;
208
+ };
209
+
210
+ /**
211
+ * Computes the geometric representation of an ellipsoid, including its vertices, indices, and a bounding sphere.
212
+ *
213
+ * @param {EllipsoidGeometry} ellipsoidGeometry A description of the ellipsoid.
214
+ * @returns {Geometry|undefined} The computed vertices and indices.
215
+ */
216
+ EllipsoidGeometry.createGeometry = function (ellipsoidGeometry) {
217
+ const radii = ellipsoidGeometry._radii;
218
+ if (radii.x <= 0 || radii.y <= 0 || radii.z <= 0) {
219
+ return;
220
+ }
221
+
222
+ const innerRadii = ellipsoidGeometry._innerRadii;
223
+ if (innerRadii.x <= 0 || innerRadii.y <= 0 || innerRadii.z <= 0) {
224
+ return;
225
+ }
226
+
227
+ const minimumClock = ellipsoidGeometry._minimumClock;
228
+ const maximumClock = ellipsoidGeometry._maximumClock;
229
+ const minimumCone = ellipsoidGeometry._minimumCone;
230
+ const maximumCone = ellipsoidGeometry._maximumCone;
231
+ const vertexFormat = ellipsoidGeometry._vertexFormat;
232
+
233
+ // Add an extra slice and stack so that the number of partitions is the
234
+ // number of surfaces rather than the number of joints
235
+ let slicePartitions = ellipsoidGeometry._slicePartitions + 1;
236
+ let stackPartitions = ellipsoidGeometry._stackPartitions + 1;
237
+
238
+ slicePartitions = Math.round(
239
+ (slicePartitions * Math.abs(maximumClock - minimumClock)) /
240
+ Math$1.CesiumMath.TWO_PI
241
+ );
242
+ stackPartitions = Math.round(
243
+ (stackPartitions * Math.abs(maximumCone - minimumCone)) / Math$1.CesiumMath.PI
244
+ );
245
+
246
+ if (slicePartitions < 2) {
247
+ slicePartitions = 2;
248
+ }
249
+ if (stackPartitions < 2) {
250
+ stackPartitions = 2;
251
+ }
252
+
253
+ let i;
254
+ let j;
255
+ let index = 0;
256
+
257
+ // Create arrays for theta and phi. Duplicate first and last angle to
258
+ // allow different normals at the intersections.
259
+ const phis = [minimumCone];
260
+ const thetas = [minimumClock];
261
+ for (i = 0; i < stackPartitions; i++) {
262
+ phis.push(
263
+ minimumCone + (i * (maximumCone - minimumCone)) / (stackPartitions - 1)
264
+ );
265
+ }
266
+ phis.push(maximumCone);
267
+ for (j = 0; j < slicePartitions; j++) {
268
+ thetas.push(
269
+ minimumClock + (j * (maximumClock - minimumClock)) / (slicePartitions - 1)
270
+ );
271
+ }
272
+ thetas.push(maximumClock);
273
+ const numPhis = phis.length;
274
+ const numThetas = thetas.length;
275
+
276
+ // Allow for extra indices if there is an inner surface and if we need
277
+ // to close the sides if the clock range is not a full circle
278
+ let extraIndices = 0;
279
+ let vertexMultiplier = 1.0;
280
+ const hasInnerSurface =
281
+ innerRadii.x !== radii.x ||
282
+ innerRadii.y !== radii.y ||
283
+ innerRadii.z !== radii.z;
284
+ let isTopOpen = false;
285
+ let isBotOpen = false;
286
+ let isClockOpen = false;
287
+ if (hasInnerSurface) {
288
+ vertexMultiplier = 2.0;
289
+ if (minimumCone > 0.0) {
290
+ isTopOpen = true;
291
+ extraIndices += slicePartitions - 1;
292
+ }
293
+ if (maximumCone < Math.PI) {
294
+ isBotOpen = true;
295
+ extraIndices += slicePartitions - 1;
296
+ }
297
+ if ((maximumClock - minimumClock) % Math$1.CesiumMath.TWO_PI) {
298
+ isClockOpen = true;
299
+ extraIndices += (stackPartitions - 1) * 2 + 1;
300
+ } else {
301
+ extraIndices += 1;
302
+ }
303
+ }
304
+
305
+ const vertexCount = numThetas * numPhis * vertexMultiplier;
306
+ const positions = new Float64Array(vertexCount * 3);
307
+ const isInner = new Array(vertexCount).fill(false);
308
+ const negateNormal = new Array(vertexCount).fill(false);
309
+
310
+ // Multiply by 6 because there are two triangles per sector
311
+ const indexCount = slicePartitions * stackPartitions * vertexMultiplier;
312
+ const numIndices =
313
+ 6 *
314
+ (indexCount +
315
+ extraIndices +
316
+ 1 -
317
+ (slicePartitions + stackPartitions) * vertexMultiplier);
318
+ const indices = IndexDatatype.IndexDatatype.createTypedArray(indexCount, numIndices);
319
+
320
+ const normals = vertexFormat.normal
321
+ ? new Float32Array(vertexCount * 3)
322
+ : undefined;
323
+ const tangents = vertexFormat.tangent
324
+ ? new Float32Array(vertexCount * 3)
325
+ : undefined;
326
+ const bitangents = vertexFormat.bitangent
327
+ ? new Float32Array(vertexCount * 3)
328
+ : undefined;
329
+ const st = vertexFormat.st ? new Float32Array(vertexCount * 2) : undefined;
330
+
331
+ // Calculate sin/cos phi
332
+ const sinPhi = new Array(numPhis);
333
+ const cosPhi = new Array(numPhis);
334
+ for (i = 0; i < numPhis; i++) {
335
+ sinPhi[i] = sin(phis[i]);
336
+ cosPhi[i] = cos(phis[i]);
337
+ }
338
+
339
+ // Calculate sin/cos theta
340
+ const sinTheta = new Array(numThetas);
341
+ const cosTheta = new Array(numThetas);
342
+ for (j = 0; j < numThetas; j++) {
343
+ cosTheta[j] = cos(thetas[j]);
344
+ sinTheta[j] = sin(thetas[j]);
345
+ }
346
+
347
+ // Create outer surface
348
+ for (i = 0; i < numPhis; i++) {
349
+ for (j = 0; j < numThetas; j++) {
350
+ positions[index++] = radii.x * sinPhi[i] * cosTheta[j];
351
+ positions[index++] = radii.y * sinPhi[i] * sinTheta[j];
352
+ positions[index++] = radii.z * cosPhi[i];
353
+ }
354
+ }
355
+
356
+ // Create inner surface
357
+ let vertexIndex = vertexCount / 2.0;
358
+ if (hasInnerSurface) {
359
+ for (i = 0; i < numPhis; i++) {
360
+ for (j = 0; j < numThetas; j++) {
361
+ positions[index++] = innerRadii.x * sinPhi[i] * cosTheta[j];
362
+ positions[index++] = innerRadii.y * sinPhi[i] * sinTheta[j];
363
+ positions[index++] = innerRadii.z * cosPhi[i];
364
+
365
+ // Keep track of which vertices are the inner and which ones
366
+ // need the normal to be negated
367
+ isInner[vertexIndex] = true;
368
+ if (i > 0 && i !== numPhis - 1 && j !== 0 && j !== numThetas - 1) {
369
+ negateNormal[vertexIndex] = true;
370
+ }
371
+ vertexIndex++;
372
+ }
373
+ }
374
+ }
375
+
376
+ // Create indices for outer surface
377
+ index = 0;
378
+ let topOffset;
379
+ let bottomOffset;
380
+ for (i = 1; i < numPhis - 2; i++) {
381
+ topOffset = i * numThetas;
382
+ bottomOffset = (i + 1) * numThetas;
383
+
384
+ for (j = 1; j < numThetas - 2; j++) {
385
+ indices[index++] = bottomOffset + j;
386
+ indices[index++] = bottomOffset + j + 1;
387
+ indices[index++] = topOffset + j + 1;
388
+
389
+ indices[index++] = bottomOffset + j;
390
+ indices[index++] = topOffset + j + 1;
391
+ indices[index++] = topOffset + j;
392
+ }
393
+ }
394
+
395
+ // Create indices for inner surface
396
+ if (hasInnerSurface) {
397
+ const offset = numPhis * numThetas;
398
+ for (i = 1; i < numPhis - 2; i++) {
399
+ topOffset = offset + i * numThetas;
400
+ bottomOffset = offset + (i + 1) * numThetas;
401
+
402
+ for (j = 1; j < numThetas - 2; j++) {
403
+ indices[index++] = bottomOffset + j;
404
+ indices[index++] = topOffset + j;
405
+ indices[index++] = topOffset + j + 1;
406
+
407
+ indices[index++] = bottomOffset + j;
408
+ indices[index++] = topOffset + j + 1;
409
+ indices[index++] = bottomOffset + j + 1;
410
+ }
411
+ }
412
+ }
413
+
414
+ let outerOffset;
415
+ let innerOffset;
416
+ if (hasInnerSurface) {
417
+ if (isTopOpen) {
418
+ // Connect the top of the inner surface to the top of the outer surface
419
+ innerOffset = numPhis * numThetas;
420
+ for (i = 1; i < numThetas - 2; i++) {
421
+ indices[index++] = i;
422
+ indices[index++] = i + 1;
423
+ indices[index++] = innerOffset + i + 1;
424
+
425
+ indices[index++] = i;
426
+ indices[index++] = innerOffset + i + 1;
427
+ indices[index++] = innerOffset + i;
428
+ }
429
+ }
430
+
431
+ if (isBotOpen) {
432
+ // Connect the bottom of the inner surface to the bottom of the outer surface
433
+ outerOffset = numPhis * numThetas - numThetas;
434
+ innerOffset = numPhis * numThetas * vertexMultiplier - numThetas;
435
+ for (i = 1; i < numThetas - 2; i++) {
436
+ indices[index++] = outerOffset + i + 1;
437
+ indices[index++] = outerOffset + i;
438
+ indices[index++] = innerOffset + i;
439
+
440
+ indices[index++] = outerOffset + i + 1;
441
+ indices[index++] = innerOffset + i;
442
+ indices[index++] = innerOffset + i + 1;
443
+ }
444
+ }
445
+ }
446
+
447
+ // Connect the edges if clock is not closed
448
+ if (isClockOpen) {
449
+ for (i = 1; i < numPhis - 2; i++) {
450
+ innerOffset = numThetas * numPhis + numThetas * i;
451
+ outerOffset = numThetas * i;
452
+ indices[index++] = innerOffset;
453
+ indices[index++] = outerOffset + numThetas;
454
+ indices[index++] = outerOffset;
455
+
456
+ indices[index++] = innerOffset;
457
+ indices[index++] = innerOffset + numThetas;
458
+ indices[index++] = outerOffset + numThetas;
459
+ }
460
+
461
+ for (i = 1; i < numPhis - 2; i++) {
462
+ innerOffset = numThetas * numPhis + numThetas * (i + 1) - 1;
463
+ outerOffset = numThetas * (i + 1) - 1;
464
+ indices[index++] = outerOffset + numThetas;
465
+ indices[index++] = innerOffset;
466
+ indices[index++] = outerOffset;
467
+
468
+ indices[index++] = outerOffset + numThetas;
469
+ indices[index++] = innerOffset + numThetas;
470
+ indices[index++] = innerOffset;
471
+ }
472
+ }
473
+
474
+ const attributes = new GeometryAttributes.GeometryAttributes();
475
+
476
+ if (vertexFormat.position) {
477
+ attributes.position = new GeometryAttribute.GeometryAttribute({
478
+ componentDatatype: ComponentDatatype.ComponentDatatype.DOUBLE,
479
+ componentsPerAttribute: 3,
480
+ values: positions,
481
+ });
482
+ }
483
+
484
+ let stIndex = 0;
485
+ let normalIndex = 0;
486
+ let tangentIndex = 0;
487
+ let bitangentIndex = 0;
488
+ const vertexCountHalf = vertexCount / 2.0;
489
+
490
+ let ellipsoid;
491
+ const ellipsoidOuter = Matrix3.Ellipsoid.fromCartesian3(radii);
492
+ const ellipsoidInner = Matrix3.Ellipsoid.fromCartesian3(innerRadii);
493
+
494
+ if (
495
+ vertexFormat.st ||
496
+ vertexFormat.normal ||
497
+ vertexFormat.tangent ||
498
+ vertexFormat.bitangent
499
+ ) {
500
+ for (i = 0; i < vertexCount; i++) {
501
+ ellipsoid = isInner[i] ? ellipsoidInner : ellipsoidOuter;
502
+ const position = Matrix3.Cartesian3.fromArray(positions, i * 3, scratchPosition);
503
+ const normal = ellipsoid.geodeticSurfaceNormal(position, scratchNormal);
504
+ if (negateNormal[i]) {
505
+ Matrix3.Cartesian3.negate(normal, normal);
506
+ }
507
+
508
+ if (vertexFormat.st) {
509
+ const normalST = Matrix2.Cartesian2.negate(normal, scratchNormalST);
510
+ st[stIndex++] =
511
+ Math.atan2(normalST.y, normalST.x) / Math$1.CesiumMath.TWO_PI + 0.5;
512
+ st[stIndex++] = Math.asin(normal.z) / Math.PI + 0.5;
513
+ }
514
+
515
+ if (vertexFormat.normal) {
516
+ normals[normalIndex++] = normal.x;
517
+ normals[normalIndex++] = normal.y;
518
+ normals[normalIndex++] = normal.z;
519
+ }
520
+
521
+ if (vertexFormat.tangent || vertexFormat.bitangent) {
522
+ const tangent = scratchTangent;
523
+
524
+ // Use UNIT_X for the poles
525
+ let tangetOffset = 0;
526
+ let unit;
527
+ if (isInner[i]) {
528
+ tangetOffset = vertexCountHalf;
529
+ }
530
+ if (
531
+ !isTopOpen &&
532
+ i >= tangetOffset &&
533
+ i < tangetOffset + numThetas * 2
534
+ ) {
535
+ unit = Matrix3.Cartesian3.UNIT_X;
536
+ } else {
537
+ unit = Matrix3.Cartesian3.UNIT_Z;
538
+ }
539
+ Matrix3.Cartesian3.cross(unit, normal, tangent);
540
+ Matrix3.Cartesian3.normalize(tangent, tangent);
541
+
542
+ if (vertexFormat.tangent) {
543
+ tangents[tangentIndex++] = tangent.x;
544
+ tangents[tangentIndex++] = tangent.y;
545
+ tangents[tangentIndex++] = tangent.z;
546
+ }
547
+
548
+ if (vertexFormat.bitangent) {
549
+ const bitangent = Matrix3.Cartesian3.cross(normal, tangent, scratchBitangent);
550
+ Matrix3.Cartesian3.normalize(bitangent, bitangent);
551
+
552
+ bitangents[bitangentIndex++] = bitangent.x;
553
+ bitangents[bitangentIndex++] = bitangent.y;
554
+ bitangents[bitangentIndex++] = bitangent.z;
555
+ }
556
+ }
557
+ }
558
+
559
+ if (vertexFormat.st) {
560
+ attributes.st = new GeometryAttribute.GeometryAttribute({
561
+ componentDatatype: ComponentDatatype.ComponentDatatype.FLOAT,
562
+ componentsPerAttribute: 2,
563
+ values: st,
564
+ });
565
+ }
566
+
567
+ if (vertexFormat.normal) {
568
+ attributes.normal = new GeometryAttribute.GeometryAttribute({
569
+ componentDatatype: ComponentDatatype.ComponentDatatype.FLOAT,
570
+ componentsPerAttribute: 3,
571
+ values: normals,
572
+ });
573
+ }
574
+
575
+ if (vertexFormat.tangent) {
576
+ attributes.tangent = new GeometryAttribute.GeometryAttribute({
577
+ componentDatatype: ComponentDatatype.ComponentDatatype.FLOAT,
578
+ componentsPerAttribute: 3,
579
+ values: tangents,
580
+ });
581
+ }
582
+
583
+ if (vertexFormat.bitangent) {
584
+ attributes.bitangent = new GeometryAttribute.GeometryAttribute({
585
+ componentDatatype: ComponentDatatype.ComponentDatatype.FLOAT,
586
+ componentsPerAttribute: 3,
587
+ values: bitangents,
588
+ });
589
+ }
590
+ }
591
+
592
+ if (defaultValue.defined(ellipsoidGeometry._offsetAttribute)) {
593
+ const length = positions.length;
594
+ const offsetValue =
595
+ ellipsoidGeometry._offsetAttribute === GeometryOffsetAttribute.GeometryOffsetAttribute.NONE
596
+ ? 0
597
+ : 1;
598
+ const applyOffset = new Uint8Array(length / 3).fill(offsetValue);
599
+ attributes.applyOffset = new GeometryAttribute.GeometryAttribute({
600
+ componentDatatype: ComponentDatatype.ComponentDatatype.UNSIGNED_BYTE,
601
+ componentsPerAttribute: 1,
602
+ values: applyOffset,
603
+ });
604
+ }
605
+
606
+ return new GeometryAttribute.Geometry({
607
+ attributes: attributes,
608
+ indices: indices,
609
+ primitiveType: GeometryAttribute.PrimitiveType.TRIANGLES,
610
+ boundingSphere: Transforms.BoundingSphere.fromEllipsoid(ellipsoidOuter),
611
+ offsetAttribute: ellipsoidGeometry._offsetAttribute,
612
+ });
613
+ };
614
+
615
+ let unitEllipsoidGeometry;
616
+
617
+ /**
618
+ * Returns the geometric representation of a unit ellipsoid, including its vertices, indices, and a bounding sphere.
619
+ * @returns {Geometry} The computed vertices and indices.
620
+ *
621
+ * @private
622
+ */
623
+ EllipsoidGeometry.getUnitEllipsoid = function () {
624
+ if (!defaultValue.defined(unitEllipsoidGeometry)) {
625
+ unitEllipsoidGeometry = EllipsoidGeometry.createGeometry(
626
+ new EllipsoidGeometry({
627
+ radii: new Matrix3.Cartesian3(1.0, 1.0, 1.0),
628
+ vertexFormat: VertexFormat.VertexFormat.POSITION_ONLY,
629
+ })
630
+ );
631
+ }
632
+ return unitEllipsoidGeometry;
633
+ };
634
+
635
+ exports.EllipsoidGeometry = EllipsoidGeometry;
636
+
637
+ }));