@vcmap/ui 5.0.0-rc.17 → 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 (386) 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 +752 -123
  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.41de56.js → cesium.adbd45.js} +112161 -108735
  109. package/dist/assets/cesium.js +1 -1
  110. package/dist/assets/{core.af84e3.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.5b773cad.js → index.884a53ef.js} +1 -1
  114. package/dist/assets/{ol.5c7490.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.dffe32.js → ui.bf504d.js} +6171 -6821
  119. package/dist/assets/ui.js +1 -1
  120. package/dist/assets/{vue.25da17.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.e4ece7.css → vuetify.0d7360.css} +0 -0
  124. package/dist/assets/{vuetify.e4ece7.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} +19 -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/@vcmap-show-case/window-tester/toolbox-data.js +211 -0
  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 +4 -4
  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/application/VcsNavbar.vue +1 -1
  193. package/src/components/buttons/VcsActionButtonList.vue +1 -0
  194. package/src/components/buttons/VcsButton.vue +14 -3
  195. package/src/components/form-inputs-controls/VcsCheckbox.vue +3 -1
  196. package/src/components/form-inputs-controls/VcsWizard.vue +17 -20
  197. package/src/components/form-inputs-controls/VcsWizardStep.vue +160 -0
  198. package/src/{icons → components/icons}/+all.js +0 -0
  199. package/src/{icons → components/icons}/2DAreaIcon.vue +0 -0
  200. package/src/{icons → components/icons}/2DDistanceIcon.vue +0 -0
  201. package/src/{icons → components/icons}/3DAreaIcon.vue +0 -0
  202. package/src/{icons → components/icons}/3DDistanceIcon.vue +0 -0
  203. package/src/{icons → components/icons}/3DHeightIcon.vue +0 -0
  204. package/src/{icons → components/icons}/AngleIcon.vue +0 -0
  205. package/src/{icons → components/icons}/AssociationsIcon.vue +0 -0
  206. package/src/{icons → components/icons}/AxisIcon.vue +0 -0
  207. package/src/{icons → components/icons}/BoundingBoxIcon.vue +0 -0
  208. package/src/{icons → components/icons}/CheckboxCheckedIcon.vue +0 -0
  209. package/src/{icons → components/icons}/CheckboxIcon.vue +0 -0
  210. package/src/{icons → components/icons}/CheckboxIndeterminateIcon.vue +0 -0
  211. package/src/{icons → components/icons}/CircleIcon.vue +0 -0
  212. package/src/{icons → components/icons}/ClippingHorizontalIcon.vue +0 -0
  213. package/src/{icons → components/icons}/ClippingIcon.vue +0 -0
  214. package/src/{icons → components/icons}/ClippingVerticalIcon.vue +0 -0
  215. package/src/{icons → components/icons}/ColorPickerIcon.vue +0 -0
  216. package/src/{icons → components/icons}/ColorSwatchIcon.vue +0 -0
  217. package/src/{icons → components/icons}/CommentIcon.vue +0 -0
  218. package/src/{icons → components/icons}/CompassIcon.vue +0 -0
  219. package/src/{icons → components/icons}/ComponentsIcon.vue +0 -0
  220. package/src/{icons → components/icons}/ConeIcon.vue +0 -0
  221. package/src/{icons → components/icons}/DimensionsHouseIcon.vue +0 -0
  222. package/src/{icons → components/icons}/EditIcon.vue +0 -0
  223. package/src/{icons → components/icons}/ElevationProfileIcon.vue +0 -0
  224. package/src/{icons → components/icons}/ExportAreaIcon.vue +0 -0
  225. package/src/{icons → components/icons}/ExportFlightIcon.vue +0 -0
  226. package/src/{icons → components/icons}/ExportIcon.vue +0 -0
  227. package/src/{icons → components/icons}/ExternalLinkIcon.vue +0 -0
  228. package/src/{icons → components/icons}/EyeIcon.vue +0 -0
  229. package/src/{icons → components/icons}/FastForwardIcon.vue +0 -0
  230. package/src/{icons → components/icons}/FilterIcon.vue +0 -0
  231. package/src/{icons → components/icons}/GlobalTerrainIcon.vue +0 -0
  232. package/src/{icons → components/icons}/GlobeNatureIcon.vue +0 -0
  233. package/src/{icons → components/icons}/GroundIcon.vue +0 -0
  234. package/src/{icons → components/icons}/HealthCareIndustriesIcon.vue +0 -0
  235. package/src/{icons → components/icons}/HelpIcon.vue +0 -0
  236. package/src/{icons → components/icons}/HideIcon.vue +0 -0
  237. package/src/{icons → components/icons}/HomePointIcon.vue +0 -0
  238. package/src/{icons → components/icons}/HospitalsIcon.vue +0 -0
  239. package/src/{icons → components/icons}/HouseIcon.vue +0 -0
  240. package/src/{icons → components/icons}/ImportIcon.vue +0 -0
  241. package/src/{icons → components/icons}/InfoIcon.vue +0 -0
  242. package/src/{icons → components/icons}/KebabIcon.vue +0 -0
  243. package/src/{icons → components/icons}/LabelIcon.vue +0 -0
  244. package/src/{icons → components/icons}/LayersIcon.vue +0 -0
  245. package/src/{icons → components/icons}/LegendIcon.vue +0 -0
  246. package/src/{icons → components/icons}/LineIcon.vue +0 -0
  247. package/src/{icons → components/icons}/LinkIcon.vue +0 -0
  248. package/src/{icons → components/icons}/LogoutIcon.vue +0 -0
  249. package/src/{icons → components/icons}/MapIcon.vue +0 -0
  250. package/src/{icons → components/icons}/MenuIcon.vue +0 -0
  251. package/src/{icons → components/icons}/MinusIcon.vue +0 -0
  252. package/src/{icons → components/icons}/ObjectAttributeIcon.vue +0 -0
  253. package/src/{icons → components/icons}/ObjectSelectIcon.vue +0 -0
  254. package/src/{icons → components/icons}/ObliqueViewIcon.vue +0 -0
  255. package/src/{icons → components/icons}/PdfIcon.vue +0 -0
  256. package/src/{icons → components/icons}/PedestrianIcon.vue +0 -0
  257. package/src/{icons → components/icons}/PenIcon.vue +0 -0
  258. package/src/{icons → components/icons}/PlayCircleIcon.vue +0 -0
  259. package/src/{icons → components/icons}/PlusIcon.vue +0 -0
  260. package/src/{icons → components/icons}/PoiIcon.vue +0 -0
  261. package/src/{icons → components/icons}/PointSelectIcon.vue +0 -0
  262. package/src/{icons → components/icons}/PolygonIcon.vue +0 -0
  263. package/src/{icons → components/icons}/PresentationModeIcon.vue +0 -0
  264. package/src/{icons → components/icons}/ProgressIcon.vue +0 -0
  265. package/src/{icons → components/icons}/QueryIcon.vue +0 -0
  266. package/src/{icons → components/icons}/RectangleIcon.vue +0 -0
  267. package/src/{icons → components/icons}/ReturnIcon.vue +0 -0
  268. package/src/{icons → components/icons}/RewindIcon.vue +0 -0
  269. package/src/{icons → components/icons}/RotateLeftIcon.vue +0 -0
  270. package/src/{icons → components/icons}/RotateRightIcon.vue +0 -0
  271. package/src/{icons → components/icons}/ScreenshotIcon.vue +0 -0
  272. package/src/{icons → components/icons}/SearchIcon.vue +0 -0
  273. package/src/{icons → components/icons}/ShadowIcon.vue +0 -0
  274. package/src/{icons → components/icons}/ShapesIcon.vue +0 -0
  275. package/src/{icons → components/icons}/ShareIcon.vue +0 -0
  276. package/src/{icons → components/icons}/SimpleCircleFilledIcon.vue +0 -0
  277. package/src/{icons → components/icons}/SimpleCircleHalfFilledIcon.vue +0 -0
  278. package/src/{icons → components/icons}/SimpleCircleOutlinedIcon.vue +0 -0
  279. package/src/{icons → components/icons}/SkipNextIcon.vue +0 -0
  280. package/src/{icons → components/icons}/SkipPreviousIcon.vue +0 -0
  281. package/src/{icons → components/icons}/SplitViewIcon.vue +0 -0
  282. package/src/{icons → components/icons}/TerrainBoxIcon.vue +0 -0
  283. package/src/{icons → components/icons}/TextStyleIcon.vue +0 -0
  284. package/src/{icons → components/icons}/ThreeDimensionsIcon.vue +0 -0
  285. package/src/{icons → components/icons}/ToolsIcon.vue +0 -0
  286. package/src/{icons → components/icons}/TouchIcon.vue +0 -0
  287. package/src/{icons → components/icons}/TrashCanIcon.vue +0 -0
  288. package/src/{icons → components/icons}/TriangleIcon.vue +0 -0
  289. package/src/{icons → components/icons}/TwoDimensionsIcon.vue +0 -0
  290. package/src/{icons → components/icons}/UploadIcon.vue +0 -0
  291. package/src/{icons → components/icons}/UserProfileIcon.vue +0 -0
  292. package/src/{icons → components/icons}/UserShareIcon.vue +0 -0
  293. package/src/{icons → components/icons}/VideoRecorderIcon.vue +0 -0
  294. package/src/{icons → components/icons}/ViewpointFlightIcon.vue +0 -0
  295. package/src/{icons → components/icons}/ViewpointIcon.vue +0 -0
  296. package/src/{icons → components/icons}/Viewshed360Icon.vue +0 -0
  297. package/src/{icons → components/icons}/ViewshedConeIcon.vue +0 -0
  298. package/src/{icons → components/icons}/ViewshedIcon.vue +0 -0
  299. package/src/{icons → components/icons}/WalkingIcon.vue +0 -0
  300. package/src/{icons → components/icons}/WallIcon.vue +0 -0
  301. package/src/{icons → components/icons}/WandIcon.vue +0 -0
  302. package/src/components/lists/VcsActionList.vue +2 -0
  303. package/src/components/lists/VcsList.vue +21 -12
  304. package/src/components/lists/VcsTreeviewLeaf.vue +14 -2
  305. package/src/components/notification/VcsTooltip.vue +1 -1
  306. package/src/contentTree/layerContentTreeItem.js +2 -2
  307. package/src/featureInfo/BalloonComponent.vue +2 -2
  308. package/src/featureInfo/abstractFeatureInfoView.js +1 -1
  309. package/src/featureInfo/addressBalloonFeatureInfoView.js +1 -1
  310. package/src/featureInfo/balloonFeatureInfoView.js +1 -1
  311. package/src/featureInfo/balloonHelper.js +6 -6
  312. package/src/featureInfo/featureInfo.js +2 -2
  313. package/src/i18n/de.js +8 -8
  314. package/src/i18n/en.js +6 -6
  315. package/src/legend/legendHelper.js +8 -8
  316. package/src/legend/vcsLegend.vue +33 -5
  317. package/src/manager/toolbox/ToolboxManager.vue +1 -0
  318. package/src/manager/window/WindowComponent.vue +42 -4
  319. package/src/manager/window/WindowComponentHeader.vue +1 -1
  320. package/src/manager/window/windowHelper.js +7 -11
  321. package/src/manager/window/windowManager.js +15 -11
  322. package/src/navigation/mapNavCompass.vue +13 -7
  323. package/src/navigation/mapNavigation.vue +66 -4
  324. package/src/navigation/orientationToolsButton.vue +1 -1
  325. package/src/navigation/overviewMap.js +26 -10
  326. package/src/navigation/vcsCompass.vue +4 -73
  327. package/src/setup.js +1 -1
  328. package/src/vuePlugins/vuetify.js +1 -1
  329. package/dist/assets/cesium/Workers/ArcType-c9b2b290.js +0 -25
  330. package/dist/assets/cesium/Workers/AttributeCompression-7b0f288d.js +0 -25
  331. package/dist/assets/cesium/Workers/AxisAlignedBoundingBox-d0c22774.js +0 -25
  332. package/dist/assets/cesium/Workers/BoundingRectangle-201b1a81.js +0 -25
  333. package/dist/assets/cesium/Workers/BoxGeometry-4985457c.js +0 -25
  334. package/dist/assets/cesium/Workers/Color-cc8c18b3.js +0 -25
  335. package/dist/assets/cesium/Workers/ComponentDatatype-0200bf8c.js +0 -25
  336. package/dist/assets/cesium/Workers/CoplanarPolygonGeometryLibrary-4345acdf.js +0 -25
  337. package/dist/assets/cesium/Workers/CorridorGeometryLibrary-850a6c35.js +0 -25
  338. package/dist/assets/cesium/Workers/CylinderGeometry-57a1051a.js +0 -25
  339. package/dist/assets/cesium/Workers/CylinderGeometryLibrary-62ce5a1f.js +0 -25
  340. package/dist/assets/cesium/Workers/EllipseGeometry-8627398f.js +0 -25
  341. package/dist/assets/cesium/Workers/EllipseGeometryLibrary-e5919563.js +0 -25
  342. package/dist/assets/cesium/Workers/EllipseOutlineGeometry-96fd4ae1.js +0 -25
  343. package/dist/assets/cesium/Workers/EllipsoidGeodesic-8bfefbff.js +0 -25
  344. package/dist/assets/cesium/Workers/EllipsoidGeometry-377329b9.js +0 -25
  345. package/dist/assets/cesium/Workers/EllipsoidOutlineGeometry-e6e16e49.js +0 -25
  346. package/dist/assets/cesium/Workers/EllipsoidRhumbLine-03528f73.js +0 -25
  347. package/dist/assets/cesium/Workers/EllipsoidTangentPlane-c080fd1b.js +0 -25
  348. package/dist/assets/cesium/Workers/EncodedCartesian3-ea0e408f.js +0 -25
  349. package/dist/assets/cesium/Workers/FrustumGeometry-a8b5d817.js +0 -25
  350. package/dist/assets/cesium/Workers/GeometryAttribute-8458a8fd.js +0 -25
  351. package/dist/assets/cesium/Workers/GeometryAttributes-ac0f8485.js +0 -25
  352. package/dist/assets/cesium/Workers/GeometryInstance-ee3aa3ba.js +0 -25
  353. package/dist/assets/cesium/Workers/GeometryOffsetAttribute-08ae0c50.js +0 -25
  354. package/dist/assets/cesium/Workers/GeometryPipeline-33ca229c.js +0 -25
  355. package/dist/assets/cesium/Workers/IndexDatatype-e713bfd2.js +0 -25
  356. package/dist/assets/cesium/Workers/IntersectionTests-eb4db8e0.js +0 -25
  357. package/dist/assets/cesium/Workers/Matrix2-eefef8eb.js +0 -25
  358. package/dist/assets/cesium/Workers/OrientedBoundingBox-5193f9a2.js +0 -25
  359. package/dist/assets/cesium/Workers/Plane-b0299683.js +0 -25
  360. package/dist/assets/cesium/Workers/PolygonGeometryLibrary-b61295f3.js +0 -25
  361. package/dist/assets/cesium/Workers/PolygonPipeline-eb527514.js +0 -25
  362. package/dist/assets/cesium/Workers/PolylinePipeline-0f23dd84.js +0 -25
  363. package/dist/assets/cesium/Workers/PolylineVolumeGeometryLibrary-2d903430.js +0 -25
  364. package/dist/assets/cesium/Workers/PrimitivePipeline-e2640413.js +0 -25
  365. package/dist/assets/cesium/Workers/RectangleGeometryLibrary-ae8bf8a5.js +0 -25
  366. package/dist/assets/cesium/Workers/RuntimeError-5baf5c66.js +0 -25
  367. package/dist/assets/cesium/Workers/TerrainEncoding-bc10ab54.js +0 -25
  368. package/dist/assets/cesium/Workers/Transforms-d2e5867e.js +0 -63
  369. package/dist/assets/cesium/Workers/VertexFormat-5ec0d9ff.js +0 -25
  370. package/dist/assets/cesium/Workers/WallGeometryLibrary-1a33e416.js +0 -25
  371. package/dist/assets/cesium/Workers/WebGLConstants-5b50ced1.js +0 -25
  372. package/dist/assets/cesium/Workers/WebMercatorProjection-cd2f30c2.js +0 -25
  373. package/dist/assets/cesium/Workers/_commonjsHelpers-bc29abbc.js +0 -25
  374. package/dist/assets/cesium/Workers/arrayRemoveDuplicates-f13aceb1.js +0 -25
  375. package/dist/assets/cesium/Workers/combine-7533016d.js +0 -25
  376. package/dist/assets/cesium/Workers/defaultValue-0c475b81.js +0 -25
  377. package/dist/assets/cesium/Workers/package.json +0 -1
  378. package/dist/assets/ui.dffe32.css +0 -1
  379. package/plugins/@vcmap/pluginExample/config.json +0 -6
  380. package/plugins/@vcmap/pluginExample/package.json +0 -7
  381. package/plugins/categoryTest/ItemEditor.vue +0 -13
  382. package/plugins/test/allIconsComponent.vue +0 -50
  383. package/plugins/test/index.js +0 -207
  384. package/plugins/test/toolbox-data.js +0 -154
  385. package/plugins/wizardExample/wizardExample.vue +0 -77
  386. package/src/components/form-inputs-controls/VcsColorPicker.vue +0 -85
@@ -1,25 +1,586 @@
1
- /**
2
- * @license
3
- * Cesium - https://github.com/CesiumGS/cesium
4
- * Version 1.97.1
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
- define(["./arrayRemoveDuplicates-f13aceb1","./BoundingRectangle-201b1a81","./Transforms-d2e5867e","./Matrix2-eefef8eb","./ComponentDatatype-0200bf8c","./CoplanarPolygonGeometryLibrary-4345acdf","./defaultValue-0c475b81","./GeometryAttribute-8458a8fd","./GeometryAttributes-ac0f8485","./GeometryInstance-ee3aa3ba","./GeometryPipeline-33ca229c","./IndexDatatype-e713bfd2","./PolygonGeometryLibrary-b61295f3","./PolygonPipeline-eb527514","./VertexFormat-5ec0d9ff","./_commonjsHelpers-bc29abbc","./combine-7533016d","./RuntimeError-5baf5c66","./WebGLConstants-5b50ced1","./OrientedBoundingBox-5193f9a2","./EllipsoidTangentPlane-c080fd1b","./AxisAlignedBoundingBox-d0c22774","./IntersectionTests-eb4db8e0","./Plane-b0299683","./AttributeCompression-7b0f288d","./EncodedCartesian3-ea0e408f","./ArcType-c9b2b290","./EllipsoidRhumbLine-03528f73"],(function(e,t,n,o,a,r,i,s,l,c,y,p,u,d,m,g,b,f,C,h,x,P,A,L,w,G,F,v){"use strict";const E=new o.Cartesian3,_=new t.BoundingRectangle,T=new o.Cartesian2,k=new o.Cartesian2,D=new o.Cartesian3,V=new o.Cartesian3,R=new o.Cartesian3,H=new o.Cartesian3,I=new o.Cartesian3,M=new o.Cartesian3,B=new n.Quaternion,O=new o.Matrix3,z=new o.Matrix3,S=new o.Cartesian3;function N(e,t,r,c,y,u,m,g,b){const f=e.positions;let C=d.PolygonPipeline.triangulate(e.positions2D,e.holes);C.length<3&&(C=[0,1,2]);const h=p.IndexDatatype.createTypedArray(f.length,C.length);h.set(C);let x=O;if(0!==c){let e=n.Quaternion.fromAxisAngle(m,c,B);if(x=o.Matrix3.fromQuaternion(e,x),t.tangent||t.bitangent){e=n.Quaternion.fromAxisAngle(m,-c,B);const a=o.Matrix3.fromQuaternion(e,z);g=o.Cartesian3.normalize(o.Matrix3.multiplyByVector(a,g,g),g),t.bitangent&&(b=o.Cartesian3.normalize(o.Cartesian3.cross(m,g,b),b))}}else x=o.Matrix3.clone(o.Matrix3.IDENTITY,x);const P=k;t.st&&(P.x=r.x,P.y=r.y);const A=f.length,L=3*A,w=new Float64Array(L),G=t.normal?new Float32Array(L):void 0,F=t.tangent?new Float32Array(L):void 0,v=t.bitangent?new Float32Array(L):void 0,_=t.st?new Float32Array(2*A):void 0;let D=0,V=0,R=0,H=0,I=0;for(let e=0;e<A;e++){const n=f[e];if(w[D++]=n.x,w[D++]=n.y,w[D++]=n.z,t.st)if(i.defined(y)&&y.positions.length===A)_[I++]=y.positions[e].x,_[I++]=y.positions[e].y;else{const e=u(o.Matrix3.multiplyByVector(x,n,E),T);o.Cartesian2.subtract(e,P,e);const t=a.CesiumMath.clamp(e.x/r.width,0,1),i=a.CesiumMath.clamp(e.y/r.height,0,1);_[I++]=t,_[I++]=i}t.normal&&(G[V++]=m.x,G[V++]=m.y,G[V++]=m.z),t.tangent&&(F[H++]=g.x,F[H++]=g.y,F[H++]=g.z),t.bitangent&&(v[R++]=b.x,v[R++]=b.y,v[R++]=b.z)}const M=new l.GeometryAttributes;return t.position&&(M.position=new s.GeometryAttribute({componentDatatype:a.ComponentDatatype.DOUBLE,componentsPerAttribute:3,values:w})),t.normal&&(M.normal=new s.GeometryAttribute({componentDatatype:a.ComponentDatatype.FLOAT,componentsPerAttribute:3,values:G})),t.tangent&&(M.tangent=new s.GeometryAttribute({componentDatatype:a.ComponentDatatype.FLOAT,componentsPerAttribute:3,values:F})),t.bitangent&&(M.bitangent=new s.GeometryAttribute({componentDatatype:a.ComponentDatatype.FLOAT,componentsPerAttribute:3,values:v})),t.st&&(M.st=new s.GeometryAttribute({componentDatatype:a.ComponentDatatype.FLOAT,componentsPerAttribute:2,values:_})),new s.Geometry({attributes:M,indices:h,primitiveType:s.PrimitiveType.TRIANGLES})}function Q(e){const t=(e=i.defaultValue(e,i.defaultValue.EMPTY_OBJECT)).polygonHierarchy,n=e.textureCoordinates,a=i.defaultValue(e.vertexFormat,m.VertexFormat.DEFAULT);this._vertexFormat=m.VertexFormat.clone(a),this._polygonHierarchy=t,this._stRotation=i.defaultValue(e.stRotation,0),this._ellipsoid=o.Ellipsoid.clone(i.defaultValue(e.ellipsoid,o.Ellipsoid.WGS84)),this._workerName="createCoplanarPolygonGeometry",this._textureCoordinates=n,this.packedLength=u.PolygonGeometryLibrary.computeHierarchyPackedLength(t,o.Cartesian3)+m.VertexFormat.packedLength+o.Ellipsoid.packedLength+(i.defined(n)?u.PolygonGeometryLibrary.computeHierarchyPackedLength(n,o.Cartesian2):1)+2}Q.fromPositions=function(e){return new Q({polygonHierarchy:{positions:(e=i.defaultValue(e,i.defaultValue.EMPTY_OBJECT)).positions},vertexFormat:e.vertexFormat,stRotation:e.stRotation,ellipsoid:e.ellipsoid,textureCoordinates:e.textureCoordinates})},Q.pack=function(e,t,n){return n=i.defaultValue(n,0),n=u.PolygonGeometryLibrary.packPolygonHierarchy(e._polygonHierarchy,t,n,o.Cartesian3),o.Ellipsoid.pack(e._ellipsoid,t,n),n+=o.Ellipsoid.packedLength,m.VertexFormat.pack(e._vertexFormat,t,n),n+=m.VertexFormat.packedLength,t[n++]=e._stRotation,i.defined(e._textureCoordinates)?n=u.PolygonGeometryLibrary.packPolygonHierarchy(e._textureCoordinates,t,n,o.Cartesian2):t[n++]=-1,t[n++]=e.packedLength,t};const j=o.Ellipsoid.clone(o.Ellipsoid.UNIT_SPHERE),U=new m.VertexFormat,Y={polygonHierarchy:{}};return Q.unpack=function(e,t,n){t=i.defaultValue(t,0);const a=u.PolygonGeometryLibrary.unpackPolygonHierarchy(e,t,o.Cartesian3);t=a.startingIndex,delete a.startingIndex;const r=o.Ellipsoid.unpack(e,t,j);t+=o.Ellipsoid.packedLength;const s=m.VertexFormat.unpack(e,t,U);t+=m.VertexFormat.packedLength;const l=e[t++],c=-1===e[t]?void 0:u.PolygonGeometryLibrary.unpackPolygonHierarchy(e,t,o.Cartesian2);i.defined(c)?(t=c.startingIndex,delete c.startingIndex):t++;const y=e[t++];return i.defined(n)||(n=new Q(Y)),n._polygonHierarchy=a,n._ellipsoid=o.Ellipsoid.clone(r,n._ellipsoid),n._vertexFormat=m.VertexFormat.clone(s,n._vertexFormat),n._stRotation=l,n._textureCoordinates=c,n.packedLength=y,n},Q.createGeometry=function(t){const l=t._vertexFormat,d=t._polygonHierarchy,m=t._stRotation,g=t._textureCoordinates,b=i.defined(g);let f=d.positions;if(f=e.arrayRemoveDuplicates(f,o.Cartesian3.equalsEpsilon,!0),f.length<3)return;let C=D,h=V,x=R,P=I;const A=M;if(!r.CoplanarPolygonGeometryLibrary.computeProjectTo2DArguments(f,H,P,A))return;if(C=o.Cartesian3.cross(P,A,C),C=o.Cartesian3.normalize(C,C),!o.Cartesian3.equalsEpsilon(H,o.Cartesian3.ZERO,a.CesiumMath.EPSILON6)){const e=t._ellipsoid.geodeticSurfaceNormal(H,S);o.Cartesian3.dot(C,e)<0&&(C=o.Cartesian3.negate(C,C),P=o.Cartesian3.negate(P,P))}const L=r.CoplanarPolygonGeometryLibrary.createProjectPointsTo2DFunction(H,P,A),w=r.CoplanarPolygonGeometryLibrary.createProjectPointTo2DFunction(H,P,A);l.tangent&&(h=o.Cartesian3.clone(P,h)),l.bitangent&&(x=o.Cartesian3.clone(A,x));const G=u.PolygonGeometryLibrary.polygonsFromHierarchy(d,b,L,!1),F=G.hierarchy,v=G.polygons,E=b?u.PolygonGeometryLibrary.polygonsFromHierarchy(g,!0,(function(e){return e}),!1).polygons:void 0;if(0===F.length)return;f=F[0].outerRing;const T=n.BoundingSphere.fromPoints(f),k=u.PolygonGeometryLibrary.computeBoundingRectangle(C,w,f,m,_),B=[];for(let e=0;e<v.length;e++){const t=new c.GeometryInstance({geometry:N(v[e],l,k,m,b?E[e]:void 0,w,C,h,x)});B.push(t)}const O=y.GeometryPipeline.combineInstances(B)[0];O.attributes.position.values=new Float64Array(O.attributes.position.values),O.indices=p.IndexDatatype.createTypedArray(O.attributes.position.values.length/3,O.indices);const z=O.attributes;return l.position||delete z.position,new s.Geometry({attributes:z,indices:O.indices,primitiveType:O.primitiveType,boundingSphere:T})},function(e,t){return i.defined(t)&&(e=Q.unpack(e,t)),Q.createGeometry(e)}}));
1
+ define(['./arrayRemoveDuplicates-c2038105', './BoundingRectangle-be5924f4', './Transforms-40229881', './Matrix2-13178034', './Matrix3-315394f6', './Check-666ab1a0', './ComponentDatatype-f7b11d02', './CoplanarPolygonGeometryLibrary-3272c1b3', './defaultValue-0a909f67', './GeometryAttribute-7d6f1732', './GeometryAttributes-f06a2792', './GeometryInstance-451dc1cd', './GeometryPipeline-ce4339ed', './IndexDatatype-a55ceaa1', './Math-2dbd6b93', './PolygonGeometryLibrary-a8680d96', './PolygonPipeline-844aab0a', './VertexFormat-6b480673', './combine-ca22a614', './RuntimeError-06c93819', './WebGLConstants-a8cc3e8c', './OrientedBoundingBox-04920dc7', './EllipsoidTangentPlane-214683dc', './AxisAlignedBoundingBox-ff186ccc', './IntersectionTests-f6e6bd8a', './Plane-900aa728', './AttributeCompression-b646d393', './EncodedCartesian3-81f70735', './ArcType-ce2e50ab', './EllipsoidRhumbLine-19756602'], (function (arrayRemoveDuplicates, BoundingRectangle, Transforms, Matrix2, Matrix3, Check, ComponentDatatype, CoplanarPolygonGeometryLibrary, defaultValue, GeometryAttribute, GeometryAttributes, GeometryInstance, GeometryPipeline, IndexDatatype, Math, PolygonGeometryLibrary, PolygonPipeline, VertexFormat, combine, RuntimeError, WebGLConstants, OrientedBoundingBox, EllipsoidTangentPlane, AxisAlignedBoundingBox, IntersectionTests, Plane, AttributeCompression, EncodedCartesian3, ArcType, EllipsoidRhumbLine) { 'use strict';
2
+
3
+ const scratchPosition = new Matrix3.Cartesian3();
4
+ const scratchBR = new BoundingRectangle.BoundingRectangle();
5
+ const stScratch = new Matrix2.Cartesian2();
6
+ const textureCoordinatesOrigin = new Matrix2.Cartesian2();
7
+ const scratchNormal = new Matrix3.Cartesian3();
8
+ const scratchTangent = new Matrix3.Cartesian3();
9
+ const scratchBitangent = new Matrix3.Cartesian3();
10
+ const centerScratch = new Matrix3.Cartesian3();
11
+ const axis1Scratch = new Matrix3.Cartesian3();
12
+ const axis2Scratch = new Matrix3.Cartesian3();
13
+ const quaternionScratch = new Transforms.Quaternion();
14
+ const textureMatrixScratch = new Matrix3.Matrix3();
15
+ const tangentRotationScratch = new Matrix3.Matrix3();
16
+ const surfaceNormalScratch = new Matrix3.Cartesian3();
17
+
18
+ function createGeometryFromPolygon(
19
+ polygon,
20
+ vertexFormat,
21
+ boundingRectangle,
22
+ stRotation,
23
+ hardcodedTextureCoordinates,
24
+ projectPointTo2D,
25
+ normal,
26
+ tangent,
27
+ bitangent
28
+ ) {
29
+ const positions = polygon.positions;
30
+ let indices = PolygonPipeline.PolygonPipeline.triangulate(polygon.positions2D, polygon.holes);
31
+
32
+ /* If polygon is completely unrenderable, just use the first three vertices */
33
+ if (indices.length < 3) {
34
+ indices = [0, 1, 2];
35
+ }
36
+
37
+ const newIndices = IndexDatatype.IndexDatatype.createTypedArray(
38
+ positions.length,
39
+ indices.length
40
+ );
41
+ newIndices.set(indices);
42
+
43
+ let textureMatrix = textureMatrixScratch;
44
+ if (stRotation !== 0.0) {
45
+ let rotation = Transforms.Quaternion.fromAxisAngle(
46
+ normal,
47
+ stRotation,
48
+ quaternionScratch
49
+ );
50
+ textureMatrix = Matrix3.Matrix3.fromQuaternion(rotation, textureMatrix);
51
+
52
+ if (vertexFormat.tangent || vertexFormat.bitangent) {
53
+ rotation = Transforms.Quaternion.fromAxisAngle(
54
+ normal,
55
+ -stRotation,
56
+ quaternionScratch
57
+ );
58
+ const tangentRotation = Matrix3.Matrix3.fromQuaternion(
59
+ rotation,
60
+ tangentRotationScratch
61
+ );
62
+
63
+ tangent = Matrix3.Cartesian3.normalize(
64
+ Matrix3.Matrix3.multiplyByVector(tangentRotation, tangent, tangent),
65
+ tangent
66
+ );
67
+ if (vertexFormat.bitangent) {
68
+ bitangent = Matrix3.Cartesian3.normalize(
69
+ Matrix3.Cartesian3.cross(normal, tangent, bitangent),
70
+ bitangent
71
+ );
72
+ }
73
+ }
74
+ } else {
75
+ textureMatrix = Matrix3.Matrix3.clone(Matrix3.Matrix3.IDENTITY, textureMatrix);
76
+ }
77
+
78
+ const stOrigin = textureCoordinatesOrigin;
79
+ if (vertexFormat.st) {
80
+ stOrigin.x = boundingRectangle.x;
81
+ stOrigin.y = boundingRectangle.y;
82
+ }
83
+
84
+ const length = positions.length;
85
+ const size = length * 3;
86
+ const flatPositions = new Float64Array(size);
87
+ const normals = vertexFormat.normal ? new Float32Array(size) : undefined;
88
+ const tangents = vertexFormat.tangent ? new Float32Array(size) : undefined;
89
+ const bitangents = vertexFormat.bitangent
90
+ ? new Float32Array(size)
91
+ : undefined;
92
+ const textureCoordinates = vertexFormat.st
93
+ ? new Float32Array(length * 2)
94
+ : undefined;
95
+
96
+ let positionIndex = 0;
97
+ let normalIndex = 0;
98
+ let bitangentIndex = 0;
99
+ let tangentIndex = 0;
100
+ let stIndex = 0;
101
+
102
+ for (let i = 0; i < length; i++) {
103
+ const position = positions[i];
104
+ flatPositions[positionIndex++] = position.x;
105
+ flatPositions[positionIndex++] = position.y;
106
+ flatPositions[positionIndex++] = position.z;
107
+
108
+ if (vertexFormat.st) {
109
+ if (
110
+ defaultValue.defined(hardcodedTextureCoordinates) &&
111
+ hardcodedTextureCoordinates.positions.length === length
112
+ ) {
113
+ textureCoordinates[stIndex++] =
114
+ hardcodedTextureCoordinates.positions[i].x;
115
+ textureCoordinates[stIndex++] =
116
+ hardcodedTextureCoordinates.positions[i].y;
117
+ } else {
118
+ const p = Matrix3.Matrix3.multiplyByVector(
119
+ textureMatrix,
120
+ position,
121
+ scratchPosition
122
+ );
123
+ const st = projectPointTo2D(p, stScratch);
124
+ Matrix2.Cartesian2.subtract(st, stOrigin, st);
125
+
126
+ const stx = Math.CesiumMath.clamp(st.x / boundingRectangle.width, 0, 1);
127
+ const sty = Math.CesiumMath.clamp(st.y / boundingRectangle.height, 0, 1);
128
+ textureCoordinates[stIndex++] = stx;
129
+ textureCoordinates[stIndex++] = sty;
130
+ }
131
+ }
132
+
133
+ if (vertexFormat.normal) {
134
+ normals[normalIndex++] = normal.x;
135
+ normals[normalIndex++] = normal.y;
136
+ normals[normalIndex++] = normal.z;
137
+ }
138
+
139
+ if (vertexFormat.tangent) {
140
+ tangents[tangentIndex++] = tangent.x;
141
+ tangents[tangentIndex++] = tangent.y;
142
+ tangents[tangentIndex++] = tangent.z;
143
+ }
144
+
145
+ if (vertexFormat.bitangent) {
146
+ bitangents[bitangentIndex++] = bitangent.x;
147
+ bitangents[bitangentIndex++] = bitangent.y;
148
+ bitangents[bitangentIndex++] = bitangent.z;
149
+ }
150
+ }
151
+
152
+ const attributes = new GeometryAttributes.GeometryAttributes();
153
+
154
+ if (vertexFormat.position) {
155
+ attributes.position = new GeometryAttribute.GeometryAttribute({
156
+ componentDatatype: ComponentDatatype.ComponentDatatype.DOUBLE,
157
+ componentsPerAttribute: 3,
158
+ values: flatPositions,
159
+ });
160
+ }
161
+
162
+ if (vertexFormat.normal) {
163
+ attributes.normal = new GeometryAttribute.GeometryAttribute({
164
+ componentDatatype: ComponentDatatype.ComponentDatatype.FLOAT,
165
+ componentsPerAttribute: 3,
166
+ values: normals,
167
+ });
168
+ }
169
+
170
+ if (vertexFormat.tangent) {
171
+ attributes.tangent = new GeometryAttribute.GeometryAttribute({
172
+ componentDatatype: ComponentDatatype.ComponentDatatype.FLOAT,
173
+ componentsPerAttribute: 3,
174
+ values: tangents,
175
+ });
176
+ }
177
+
178
+ if (vertexFormat.bitangent) {
179
+ attributes.bitangent = new GeometryAttribute.GeometryAttribute({
180
+ componentDatatype: ComponentDatatype.ComponentDatatype.FLOAT,
181
+ componentsPerAttribute: 3,
182
+ values: bitangents,
183
+ });
184
+ }
185
+
186
+ if (vertexFormat.st) {
187
+ attributes.st = new GeometryAttribute.GeometryAttribute({
188
+ componentDatatype: ComponentDatatype.ComponentDatatype.FLOAT,
189
+ componentsPerAttribute: 2,
190
+ values: textureCoordinates,
191
+ });
192
+ }
193
+
194
+ return new GeometryAttribute.Geometry({
195
+ attributes: attributes,
196
+ indices: newIndices,
197
+ primitiveType: GeometryAttribute.PrimitiveType.TRIANGLES,
198
+ });
199
+ }
200
+
201
+ /**
202
+ * A description of a polygon composed of arbitrary coplanar positions.
203
+ *
204
+ * @alias CoplanarPolygonGeometry
205
+ * @constructor
206
+ *
207
+ * @param {Object} options Object with the following properties:
208
+ * @param {PolygonHierarchy} options.polygonHierarchy A polygon hierarchy that can include holes.
209
+ * @param {Number} [options.stRotation=0.0] The rotation of the texture coordinates, in radians. A positive rotation is counter-clockwise.
210
+ * @param {VertexFormat} [options.vertexFormat=VertexFormat.DEFAULT] The vertex attributes to be computed.
211
+ * @param {Ellipsoid} [options.ellipsoid=Ellipsoid.WGS84] The ellipsoid to be used as a reference.
212
+ * @param {PolygonHierarchy} [options.textureCoordinates] Texture coordinates as a {@link PolygonHierarchy} of {@link Cartesian2} points.
213
+ *
214
+ * @example
215
+ * const polygonGeometry = new Cesium.CoplanarPolygonGeometry({
216
+ * polygonHierarchy: new Cesium.PolygonHierarchy(
217
+ * Cesium.Cartesian3.fromDegreesArrayHeights([
218
+ * -90.0, 30.0, 0.0,
219
+ * -90.0, 30.0, 300000.0,
220
+ * -80.0, 30.0, 300000.0,
221
+ * -80.0, 30.0, 0.0
222
+ * ]))
223
+ * });
224
+ *
225
+ */
226
+ function CoplanarPolygonGeometry(options) {
227
+ options = defaultValue.defaultValue(options, defaultValue.defaultValue.EMPTY_OBJECT);
228
+ const polygonHierarchy = options.polygonHierarchy;
229
+ const textureCoordinates = options.textureCoordinates;
230
+ //>>includeStart('debug', pragmas.debug);
231
+ Check.Check.defined("options.polygonHierarchy", polygonHierarchy);
232
+ //>>includeEnd('debug');
233
+
234
+ const vertexFormat = defaultValue.defaultValue(options.vertexFormat, VertexFormat.VertexFormat.DEFAULT);
235
+ this._vertexFormat = VertexFormat.VertexFormat.clone(vertexFormat);
236
+ this._polygonHierarchy = polygonHierarchy;
237
+ this._stRotation = defaultValue.defaultValue(options.stRotation, 0.0);
238
+ this._ellipsoid = Matrix3.Ellipsoid.clone(
239
+ defaultValue.defaultValue(options.ellipsoid, Matrix3.Ellipsoid.WGS84)
240
+ );
241
+ this._workerName = "createCoplanarPolygonGeometry";
242
+ this._textureCoordinates = textureCoordinates;
243
+
244
+ /**
245
+ * The number of elements used to pack the object into an array.
246
+ * @type {Number}
247
+ */
248
+ this.packedLength =
249
+ PolygonGeometryLibrary.PolygonGeometryLibrary.computeHierarchyPackedLength(
250
+ polygonHierarchy,
251
+ Matrix3.Cartesian3
252
+ ) +
253
+ VertexFormat.VertexFormat.packedLength +
254
+ Matrix3.Ellipsoid.packedLength +
255
+ (defaultValue.defined(textureCoordinates)
256
+ ? PolygonGeometryLibrary.PolygonGeometryLibrary.computeHierarchyPackedLength(
257
+ textureCoordinates,
258
+ Matrix2.Cartesian2
259
+ )
260
+ : 1) +
261
+ 2;
262
+ }
263
+
264
+ /**
265
+ * A description of a coplanar polygon from an array of positions.
266
+ *
267
+ * @param {Object} options Object with the following properties:
268
+ * @param {Cartesian3[]} options.positions An array of positions that defined the corner points of the polygon.
269
+ * @param {VertexFormat} [options.vertexFormat=VertexFormat.DEFAULT] The vertex attributes to be computed.
270
+ * @param {Number} [options.stRotation=0.0] The rotation of the texture coordinates, in radians. A positive rotation is counter-clockwise.
271
+ * @param {Ellipsoid} [options.ellipsoid=Ellipsoid.WGS84] The ellipsoid to be used as a reference.
272
+ * @param {PolygonHierarchy} [options.textureCoordinates] Texture coordinates as a {@link PolygonHierarchy} of {@link Cartesian2} points.
273
+ * @returns {CoplanarPolygonGeometry}
274
+ *
275
+ * @example
276
+ * // create a polygon from points
277
+ * const polygon = Cesium.CoplanarPolygonGeometry.fromPositions({
278
+ * positions : Cesium.Cartesian3.fromDegreesArray([
279
+ * -72.0, 40.0,
280
+ * -70.0, 35.0,
281
+ * -75.0, 30.0,
282
+ * -70.0, 30.0,
283
+ * -68.0, 40.0
284
+ * ])
285
+ * });
286
+ * const geometry = Cesium.PolygonGeometry.createGeometry(polygon);
287
+ *
288
+ * @see PolygonGeometry#createGeometry
289
+ */
290
+ CoplanarPolygonGeometry.fromPositions = function (options) {
291
+ options = defaultValue.defaultValue(options, defaultValue.defaultValue.EMPTY_OBJECT);
292
+
293
+ //>>includeStart('debug', pragmas.debug);
294
+ Check.Check.defined("options.positions", options.positions);
295
+ //>>includeEnd('debug');
296
+
297
+ const newOptions = {
298
+ polygonHierarchy: {
299
+ positions: options.positions,
300
+ },
301
+ vertexFormat: options.vertexFormat,
302
+ stRotation: options.stRotation,
303
+ ellipsoid: options.ellipsoid,
304
+ textureCoordinates: options.textureCoordinates,
305
+ };
306
+ return new CoplanarPolygonGeometry(newOptions);
307
+ };
308
+
309
+ /**
310
+ * Stores the provided instance into the provided array.
311
+ *
312
+ * @param {CoplanarPolygonGeometry} value The value to pack.
313
+ * @param {Number[]} array The array to pack into.
314
+ * @param {Number} [startingIndex=0] The index into the array at which to start packing the elements.
315
+ *
316
+ * @returns {Number[]} The array that was packed into
317
+ */
318
+ CoplanarPolygonGeometry.pack = function (value, array, startingIndex) {
319
+ //>>includeStart('debug', pragmas.debug);
320
+ Check.Check.typeOf.object("value", value);
321
+ Check.Check.defined("array", array);
322
+ //>>includeEnd('debug');
323
+
324
+ startingIndex = defaultValue.defaultValue(startingIndex, 0);
325
+
326
+ startingIndex = PolygonGeometryLibrary.PolygonGeometryLibrary.packPolygonHierarchy(
327
+ value._polygonHierarchy,
328
+ array,
329
+ startingIndex,
330
+ Matrix3.Cartesian3
331
+ );
332
+
333
+ Matrix3.Ellipsoid.pack(value._ellipsoid, array, startingIndex);
334
+ startingIndex += Matrix3.Ellipsoid.packedLength;
335
+
336
+ VertexFormat.VertexFormat.pack(value._vertexFormat, array, startingIndex);
337
+ startingIndex += VertexFormat.VertexFormat.packedLength;
338
+
339
+ array[startingIndex++] = value._stRotation;
340
+ if (defaultValue.defined(value._textureCoordinates)) {
341
+ startingIndex = PolygonGeometryLibrary.PolygonGeometryLibrary.packPolygonHierarchy(
342
+ value._textureCoordinates,
343
+ array,
344
+ startingIndex,
345
+ Matrix2.Cartesian2
346
+ );
347
+ } else {
348
+ array[startingIndex++] = -1.0;
349
+ }
350
+ array[startingIndex++] = value.packedLength;
351
+
352
+ return array;
353
+ };
354
+
355
+ const scratchEllipsoid = Matrix3.Ellipsoid.clone(Matrix3.Ellipsoid.UNIT_SPHERE);
356
+ const scratchVertexFormat = new VertexFormat.VertexFormat();
357
+ const scratchOptions = {
358
+ polygonHierarchy: {},
359
+ };
360
+ /**
361
+ * Retrieves an instance from a packed array.
362
+ *
363
+ * @param {Number[]} array The packed array.
364
+ * @param {Number} [startingIndex=0] The starting index of the element to be unpacked.
365
+ * @param {CoplanarPolygonGeometry} [result] The object into which to store the result.
366
+ * @returns {CoplanarPolygonGeometry} The modified result parameter or a new CoplanarPolygonGeometry instance if one was not provided.
367
+ */
368
+ CoplanarPolygonGeometry.unpack = function (array, startingIndex, result) {
369
+ //>>includeStart('debug', pragmas.debug);
370
+ Check.Check.defined("array", array);
371
+ //>>includeEnd('debug');
372
+
373
+ startingIndex = defaultValue.defaultValue(startingIndex, 0);
374
+
375
+ const polygonHierarchy = PolygonGeometryLibrary.PolygonGeometryLibrary.unpackPolygonHierarchy(
376
+ array,
377
+ startingIndex,
378
+ Matrix3.Cartesian3
379
+ );
380
+ startingIndex = polygonHierarchy.startingIndex;
381
+ delete polygonHierarchy.startingIndex;
382
+
383
+ const ellipsoid = Matrix3.Ellipsoid.unpack(array, startingIndex, scratchEllipsoid);
384
+ startingIndex += Matrix3.Ellipsoid.packedLength;
385
+
386
+ const vertexFormat = VertexFormat.VertexFormat.unpack(
387
+ array,
388
+ startingIndex,
389
+ scratchVertexFormat
390
+ );
391
+ startingIndex += VertexFormat.VertexFormat.packedLength;
392
+
393
+ const stRotation = array[startingIndex++];
394
+ const textureCoordinates =
395
+ array[startingIndex] === -1.0
396
+ ? undefined
397
+ : PolygonGeometryLibrary.PolygonGeometryLibrary.unpackPolygonHierarchy(
398
+ array,
399
+ startingIndex,
400
+ Matrix2.Cartesian2
401
+ );
402
+ if (defaultValue.defined(textureCoordinates)) {
403
+ startingIndex = textureCoordinates.startingIndex;
404
+ delete textureCoordinates.startingIndex;
405
+ } else {
406
+ startingIndex++;
407
+ }
408
+ const packedLength = array[startingIndex++];
409
+
410
+ if (!defaultValue.defined(result)) {
411
+ result = new CoplanarPolygonGeometry(scratchOptions);
412
+ }
413
+
414
+ result._polygonHierarchy = polygonHierarchy;
415
+ result._ellipsoid = Matrix3.Ellipsoid.clone(ellipsoid, result._ellipsoid);
416
+ result._vertexFormat = VertexFormat.VertexFormat.clone(vertexFormat, result._vertexFormat);
417
+ result._stRotation = stRotation;
418
+ result._textureCoordinates = textureCoordinates;
419
+ result.packedLength = packedLength;
420
+
421
+ return result;
422
+ };
423
+
424
+ /**
425
+ * Computes the geometric representation of an arbitrary coplanar polygon, including its vertices, indices, and a bounding sphere.
426
+ *
427
+ * @param {CoplanarPolygonGeometry} polygonGeometry A description of the polygon.
428
+ * @returns {Geometry|undefined} The computed vertices and indices.
429
+ */
430
+ CoplanarPolygonGeometry.createGeometry = function (polygonGeometry) {
431
+ const vertexFormat = polygonGeometry._vertexFormat;
432
+ const polygonHierarchy = polygonGeometry._polygonHierarchy;
433
+ const stRotation = polygonGeometry._stRotation;
434
+ const textureCoordinates = polygonGeometry._textureCoordinates;
435
+ const hasTextureCoordinates = defaultValue.defined(textureCoordinates);
436
+
437
+ let outerPositions = polygonHierarchy.positions;
438
+ outerPositions = arrayRemoveDuplicates.arrayRemoveDuplicates(
439
+ outerPositions,
440
+ Matrix3.Cartesian3.equalsEpsilon,
441
+ true
442
+ );
443
+ if (outerPositions.length < 3) {
444
+ return;
445
+ }
446
+
447
+ let normal = scratchNormal;
448
+ let tangent = scratchTangent;
449
+ let bitangent = scratchBitangent;
450
+ let axis1 = axis1Scratch;
451
+ const axis2 = axis2Scratch;
452
+
453
+ const validGeometry = CoplanarPolygonGeometryLibrary.CoplanarPolygonGeometryLibrary.computeProjectTo2DArguments(
454
+ outerPositions,
455
+ centerScratch,
456
+ axis1,
457
+ axis2
458
+ );
459
+ if (!validGeometry) {
460
+ return undefined;
461
+ }
462
+
463
+ normal = Matrix3.Cartesian3.cross(axis1, axis2, normal);
464
+ normal = Matrix3.Cartesian3.normalize(normal, normal);
465
+
466
+ if (
467
+ !Matrix3.Cartesian3.equalsEpsilon(
468
+ centerScratch,
469
+ Matrix3.Cartesian3.ZERO,
470
+ Math.CesiumMath.EPSILON6
471
+ )
472
+ ) {
473
+ const surfaceNormal = polygonGeometry._ellipsoid.geodeticSurfaceNormal(
474
+ centerScratch,
475
+ surfaceNormalScratch
476
+ );
477
+ if (Matrix3.Cartesian3.dot(normal, surfaceNormal) < 0) {
478
+ normal = Matrix3.Cartesian3.negate(normal, normal);
479
+ axis1 = Matrix3.Cartesian3.negate(axis1, axis1);
480
+ }
481
+ }
482
+
483
+ const projectPoints = CoplanarPolygonGeometryLibrary.CoplanarPolygonGeometryLibrary.createProjectPointsTo2DFunction(
484
+ centerScratch,
485
+ axis1,
486
+ axis2
487
+ );
488
+ const projectPoint = CoplanarPolygonGeometryLibrary.CoplanarPolygonGeometryLibrary.createProjectPointTo2DFunction(
489
+ centerScratch,
490
+ axis1,
491
+ axis2
492
+ );
493
+
494
+ if (vertexFormat.tangent) {
495
+ tangent = Matrix3.Cartesian3.clone(axis1, tangent);
496
+ }
497
+ if (vertexFormat.bitangent) {
498
+ bitangent = Matrix3.Cartesian3.clone(axis2, bitangent);
499
+ }
500
+
501
+ const results = PolygonGeometryLibrary.PolygonGeometryLibrary.polygonsFromHierarchy(
502
+ polygonHierarchy,
503
+ hasTextureCoordinates,
504
+ projectPoints,
505
+ false
506
+ );
507
+ const hierarchy = results.hierarchy;
508
+ const polygons = results.polygons;
509
+
510
+ const dummyFunction = function (identity) {
511
+ return identity;
512
+ };
513
+
514
+ const textureCoordinatePolygons = hasTextureCoordinates
515
+ ? PolygonGeometryLibrary.PolygonGeometryLibrary.polygonsFromHierarchy(
516
+ textureCoordinates,
517
+ true,
518
+ dummyFunction,
519
+ false
520
+ ).polygons
521
+ : undefined;
522
+
523
+ if (hierarchy.length === 0) {
524
+ return;
525
+ }
526
+ outerPositions = hierarchy[0].outerRing;
527
+
528
+ const boundingSphere = Transforms.BoundingSphere.fromPoints(outerPositions);
529
+ const boundingRectangle = PolygonGeometryLibrary.PolygonGeometryLibrary.computeBoundingRectangle(
530
+ normal,
531
+ projectPoint,
532
+ outerPositions,
533
+ stRotation,
534
+ scratchBR
535
+ );
536
+
537
+ const geometries = [];
538
+ for (let i = 0; i < polygons.length; i++) {
539
+ const geometryInstance = new GeometryInstance.GeometryInstance({
540
+ geometry: createGeometryFromPolygon(
541
+ polygons[i],
542
+ vertexFormat,
543
+ boundingRectangle,
544
+ stRotation,
545
+ hasTextureCoordinates ? textureCoordinatePolygons[i] : undefined,
546
+ projectPoint,
547
+ normal,
548
+ tangent,
549
+ bitangent
550
+ ),
551
+ });
552
+
553
+ geometries.push(geometryInstance);
554
+ }
555
+
556
+ const geometry = GeometryPipeline.GeometryPipeline.combineInstances(geometries)[0];
557
+ geometry.attributes.position.values = new Float64Array(
558
+ geometry.attributes.position.values
559
+ );
560
+ geometry.indices = IndexDatatype.IndexDatatype.createTypedArray(
561
+ geometry.attributes.position.values.length / 3,
562
+ geometry.indices
563
+ );
564
+
565
+ const attributes = geometry.attributes;
566
+ if (!vertexFormat.position) {
567
+ delete attributes.position;
568
+ }
569
+ return new GeometryAttribute.Geometry({
570
+ attributes: attributes,
571
+ indices: geometry.indices,
572
+ primitiveType: geometry.primitiveType,
573
+ boundingSphere: boundingSphere,
574
+ });
575
+ };
576
+
577
+ function createCoplanarPolygonGeometry(polygonGeometry, offset) {
578
+ if (defaultValue.defined(offset)) {
579
+ polygonGeometry = CoplanarPolygonGeometry.unpack(polygonGeometry, offset);
580
+ }
581
+ return CoplanarPolygonGeometry.createGeometry(polygonGeometry);
582
+ }
583
+
584
+ return createCoplanarPolygonGeometry;
585
+
586
+ }));