@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,619 @@
1
+ define(['exports', './Matrix2-13178034', './Matrix3-315394f6', './Check-666ab1a0', './defaultValue-0a909f67', './WebGLConstants-a8cc3e8c', './Transforms-40229881'], (function (exports, Matrix2, Matrix3, Check, defaultValue, WebGLConstants, Transforms) { 'use strict';
2
+
3
+ /**
4
+ * @private
5
+ */
6
+ const GeometryType = {
7
+ NONE: 0,
8
+ TRIANGLES: 1,
9
+ LINES: 2,
10
+ POLYLINES: 3,
11
+ };
12
+ var GeometryType$1 = Object.freeze(GeometryType);
13
+
14
+ /**
15
+ * The type of a geometric primitive, i.e., points, lines, and triangles.
16
+ *
17
+ * @enum {Number}
18
+ */
19
+ const PrimitiveType = {
20
+ /**
21
+ * Points primitive where each vertex (or index) is a separate point.
22
+ *
23
+ * @type {Number}
24
+ * @constant
25
+ */
26
+ POINTS: WebGLConstants.WebGLConstants.POINTS,
27
+
28
+ /**
29
+ * Lines primitive where each two vertices (or indices) is a line segment. Line segments are not necessarily connected.
30
+ *
31
+ * @type {Number}
32
+ * @constant
33
+ */
34
+ LINES: WebGLConstants.WebGLConstants.LINES,
35
+
36
+ /**
37
+ * Line loop primitive where each vertex (or index) after the first connects a line to
38
+ * the previous vertex, and the last vertex implicitly connects to the first.
39
+ *
40
+ * @type {Number}
41
+ * @constant
42
+ */
43
+ LINE_LOOP: WebGLConstants.WebGLConstants.LINE_LOOP,
44
+
45
+ /**
46
+ * Line strip primitive where each vertex (or index) after the first connects a line to the previous vertex.
47
+ *
48
+ * @type {Number}
49
+ * @constant
50
+ */
51
+ LINE_STRIP: WebGLConstants.WebGLConstants.LINE_STRIP,
52
+
53
+ /**
54
+ * Triangles primitive where each three vertices (or indices) is a triangle. Triangles do not necessarily share edges.
55
+ *
56
+ * @type {Number}
57
+ * @constant
58
+ */
59
+ TRIANGLES: WebGLConstants.WebGLConstants.TRIANGLES,
60
+
61
+ /**
62
+ * Triangle strip primitive where each vertex (or index) after the first two connect to
63
+ * the previous two vertices forming a triangle. For example, this can be used to model a wall.
64
+ *
65
+ * @type {Number}
66
+ * @constant
67
+ */
68
+ TRIANGLE_STRIP: WebGLConstants.WebGLConstants.TRIANGLE_STRIP,
69
+
70
+ /**
71
+ * Triangle fan primitive where each vertex (or index) after the first two connect to
72
+ * the previous vertex and the first vertex forming a triangle. For example, this can be used
73
+ * to model a cone or circle.
74
+ *
75
+ * @type {Number}
76
+ * @constant
77
+ */
78
+ TRIANGLE_FAN: WebGLConstants.WebGLConstants.TRIANGLE_FAN,
79
+ };
80
+
81
+ /**
82
+ * @private
83
+ */
84
+ PrimitiveType.isLines = function (primitiveType) {
85
+ return (
86
+ primitiveType === PrimitiveType.LINES ||
87
+ primitiveType === PrimitiveType.LINE_LOOP ||
88
+ primitiveType === PrimitiveType.LINE_STRIP
89
+ );
90
+ };
91
+
92
+ /**
93
+ * @private
94
+ */
95
+ PrimitiveType.isTriangles = function (primitiveType) {
96
+ return (
97
+ primitiveType === PrimitiveType.TRIANGLES ||
98
+ primitiveType === PrimitiveType.TRIANGLE_STRIP ||
99
+ primitiveType === PrimitiveType.TRIANGLE_FAN
100
+ );
101
+ };
102
+
103
+ /**
104
+ * @private
105
+ */
106
+ PrimitiveType.validate = function (primitiveType) {
107
+ return (
108
+ primitiveType === PrimitiveType.POINTS ||
109
+ primitiveType === PrimitiveType.LINES ||
110
+ primitiveType === PrimitiveType.LINE_LOOP ||
111
+ primitiveType === PrimitiveType.LINE_STRIP ||
112
+ primitiveType === PrimitiveType.TRIANGLES ||
113
+ primitiveType === PrimitiveType.TRIANGLE_STRIP ||
114
+ primitiveType === PrimitiveType.TRIANGLE_FAN
115
+ );
116
+ };
117
+
118
+ var PrimitiveType$1 = Object.freeze(PrimitiveType);
119
+
120
+ /**
121
+ * A geometry representation with attributes forming vertices and optional index data
122
+ * defining primitives. Geometries and an {@link Appearance}, which describes the shading,
123
+ * can be assigned to a {@link Primitive} for visualization. A <code>Primitive</code> can
124
+ * be created from many heterogeneous - in many cases - geometries for performance.
125
+ * <p>
126
+ * Geometries can be transformed and optimized using functions in {@link GeometryPipeline}.
127
+ * </p>
128
+ *
129
+ * @alias Geometry
130
+ * @constructor
131
+ *
132
+ * @param {Object} options Object with the following properties:
133
+ * @param {GeometryAttributes} options.attributes Attributes, which make up the geometry's vertices.
134
+ * @param {PrimitiveType} [options.primitiveType=PrimitiveType.TRIANGLES] The type of primitives in the geometry.
135
+ * @param {Uint16Array|Uint32Array} [options.indices] Optional index data that determines the primitives in the geometry.
136
+ * @param {BoundingSphere} [options.boundingSphere] An optional bounding sphere that fully enclosed the geometry.
137
+ *
138
+ * @see PolygonGeometry
139
+ * @see RectangleGeometry
140
+ * @see EllipseGeometry
141
+ * @see CircleGeometry
142
+ * @see WallGeometry
143
+ * @see SimplePolylineGeometry
144
+ * @see BoxGeometry
145
+ * @see EllipsoidGeometry
146
+ *
147
+ * @demo {@link https://sandcastle.cesium.com/index.html?src=Geometry%20and%20Appearances.html|Geometry and Appearances Demo}
148
+ *
149
+ * @example
150
+ * // Create geometry with a position attribute and indexed lines.
151
+ * const positions = new Float64Array([
152
+ * 0.0, 0.0, 0.0,
153
+ * 7500000.0, 0.0, 0.0,
154
+ * 0.0, 7500000.0, 0.0
155
+ * ]);
156
+ *
157
+ * const geometry = new Cesium.Geometry({
158
+ * attributes : {
159
+ * position : new Cesium.GeometryAttribute({
160
+ * componentDatatype : Cesium.ComponentDatatype.DOUBLE,
161
+ * componentsPerAttribute : 3,
162
+ * values : positions
163
+ * })
164
+ * },
165
+ * indices : new Uint16Array([0, 1, 1, 2, 2, 0]),
166
+ * primitiveType : Cesium.PrimitiveType.LINES,
167
+ * boundingSphere : Cesium.BoundingSphere.fromVertices(positions)
168
+ * });
169
+ */
170
+ function Geometry(options) {
171
+ options = defaultValue.defaultValue(options, defaultValue.defaultValue.EMPTY_OBJECT);
172
+
173
+ //>>includeStart('debug', pragmas.debug);
174
+ Check.Check.typeOf.object("options.attributes", options.attributes);
175
+ //>>includeEnd('debug');
176
+
177
+ /**
178
+ * Attributes, which make up the geometry's vertices. Each property in this object corresponds to a
179
+ * {@link GeometryAttribute} containing the attribute's data.
180
+ * <p>
181
+ * Attributes are always stored non-interleaved in a Geometry.
182
+ * </p>
183
+ * <p>
184
+ * There are reserved attribute names with well-known semantics. The following attributes
185
+ * are created by a Geometry (depending on the provided {@link VertexFormat}.
186
+ * <ul>
187
+ * <li><code>position</code> - 3D vertex position. 64-bit floating-point (for precision). 3 components per attribute. See {@link VertexFormat#position}.</li>
188
+ * <li><code>normal</code> - Normal (normalized), commonly used for lighting. 32-bit floating-point. 3 components per attribute. See {@link VertexFormat#normal}.</li>
189
+ * <li><code>st</code> - 2D texture coordinate. 32-bit floating-point. 2 components per attribute. See {@link VertexFormat#st}.</li>
190
+ * <li><code>bitangent</code> - Bitangent (normalized), used for tangent-space effects like bump mapping. 32-bit floating-point. 3 components per attribute. See {@link VertexFormat#bitangent}.</li>
191
+ * <li><code>tangent</code> - Tangent (normalized), used for tangent-space effects like bump mapping. 32-bit floating-point. 3 components per attribute. See {@link VertexFormat#tangent}.</li>
192
+ * </ul>
193
+ * </p>
194
+ * <p>
195
+ * The following attribute names are generally not created by a Geometry, but are added
196
+ * to a Geometry by a {@link Primitive} or {@link GeometryPipeline} functions to prepare
197
+ * the geometry for rendering.
198
+ * <ul>
199
+ * <li><code>position3DHigh</code> - High 32 bits for encoded 64-bit position computed with {@link GeometryPipeline.encodeAttribute}. 32-bit floating-point. 4 components per attribute.</li>
200
+ * <li><code>position3DLow</code> - Low 32 bits for encoded 64-bit position computed with {@link GeometryPipeline.encodeAttribute}. 32-bit floating-point. 4 components per attribute.</li>
201
+ * <li><code>position3DHigh</code> - High 32 bits for encoded 64-bit 2D (Columbus view) position computed with {@link GeometryPipeline.encodeAttribute}. 32-bit floating-point. 4 components per attribute.</li>
202
+ * <li><code>position2DLow</code> - Low 32 bits for encoded 64-bit 2D (Columbus view) position computed with {@link GeometryPipeline.encodeAttribute}. 32-bit floating-point. 4 components per attribute.</li>
203
+ * <li><code>color</code> - RGBA color (normalized) usually from {@link GeometryInstance#color}. 32-bit floating-point. 4 components per attribute.</li>
204
+ * <li><code>pickColor</code> - RGBA color used for picking. 32-bit floating-point. 4 components per attribute.</li>
205
+ * </ul>
206
+ * </p>
207
+ *
208
+ * @type GeometryAttributes
209
+ *
210
+ * @default undefined
211
+ *
212
+ *
213
+ * @example
214
+ * geometry.attributes.position = new Cesium.GeometryAttribute({
215
+ * componentDatatype : Cesium.ComponentDatatype.FLOAT,
216
+ * componentsPerAttribute : 3,
217
+ * values : new Float32Array(0)
218
+ * });
219
+ *
220
+ * @see GeometryAttribute
221
+ * @see VertexFormat
222
+ */
223
+ this.attributes = options.attributes;
224
+
225
+ /**
226
+ * Optional index data that - along with {@link Geometry#primitiveType} -
227
+ * determines the primitives in the geometry.
228
+ *
229
+ * @type Array
230
+ *
231
+ * @default undefined
232
+ */
233
+ this.indices = options.indices;
234
+
235
+ /**
236
+ * The type of primitives in the geometry. This is most often {@link PrimitiveType.TRIANGLES},
237
+ * but can varying based on the specific geometry.
238
+ *
239
+ * @type PrimitiveType
240
+ *
241
+ * @default undefined
242
+ */
243
+ this.primitiveType = defaultValue.defaultValue(
244
+ options.primitiveType,
245
+ PrimitiveType$1.TRIANGLES
246
+ );
247
+
248
+ /**
249
+ * An optional bounding sphere that fully encloses the geometry. This is
250
+ * commonly used for culling.
251
+ *
252
+ * @type BoundingSphere
253
+ *
254
+ * @default undefined
255
+ */
256
+ this.boundingSphere = options.boundingSphere;
257
+
258
+ /**
259
+ * @private
260
+ */
261
+ this.geometryType = defaultValue.defaultValue(options.geometryType, GeometryType$1.NONE);
262
+
263
+ /**
264
+ * @private
265
+ */
266
+ this.boundingSphereCV = options.boundingSphereCV;
267
+
268
+ /**
269
+ * Used for computing the bounding sphere for geometry using the applyOffset vertex attribute
270
+ * @private
271
+ */
272
+ this.offsetAttribute = options.offsetAttribute;
273
+ }
274
+
275
+ /**
276
+ * Computes the number of vertices in a geometry. The runtime is linear with
277
+ * respect to the number of attributes in a vertex, not the number of vertices.
278
+ *
279
+ * @param {Geometry} geometry The geometry.
280
+ * @returns {Number} The number of vertices in the geometry.
281
+ *
282
+ * @example
283
+ * const numVertices = Cesium.Geometry.computeNumberOfVertices(geometry);
284
+ */
285
+ Geometry.computeNumberOfVertices = function (geometry) {
286
+ //>>includeStart('debug', pragmas.debug);
287
+ Check.Check.typeOf.object("geometry", geometry);
288
+ //>>includeEnd('debug');
289
+
290
+ let numberOfVertices = -1;
291
+ for (const property in geometry.attributes) {
292
+ if (
293
+ geometry.attributes.hasOwnProperty(property) &&
294
+ defaultValue.defined(geometry.attributes[property]) &&
295
+ defaultValue.defined(geometry.attributes[property].values)
296
+ ) {
297
+ const attribute = geometry.attributes[property];
298
+ const num = attribute.values.length / attribute.componentsPerAttribute;
299
+ //>>includeStart('debug', pragmas.debug);
300
+ if (numberOfVertices !== num && numberOfVertices !== -1) {
301
+ throw new Check.DeveloperError(
302
+ "All attribute lists must have the same number of attributes."
303
+ );
304
+ }
305
+ //>>includeEnd('debug');
306
+ numberOfVertices = num;
307
+ }
308
+ }
309
+
310
+ return numberOfVertices;
311
+ };
312
+
313
+ const rectangleCenterScratch = new Matrix3.Cartographic();
314
+ const enuCenterScratch = new Matrix3.Cartesian3();
315
+ const fixedFrameToEnuScratch = new Matrix2.Matrix4();
316
+ const boundingRectanglePointsCartographicScratch = [
317
+ new Matrix3.Cartographic(),
318
+ new Matrix3.Cartographic(),
319
+ new Matrix3.Cartographic(),
320
+ ];
321
+ const boundingRectanglePointsEnuScratch = [
322
+ new Matrix2.Cartesian2(),
323
+ new Matrix2.Cartesian2(),
324
+ new Matrix2.Cartesian2(),
325
+ ];
326
+ const points2DScratch = [new Matrix2.Cartesian2(), new Matrix2.Cartesian2(), new Matrix2.Cartesian2()];
327
+ const pointEnuScratch = new Matrix3.Cartesian3();
328
+ const enuRotationScratch = new Transforms.Quaternion();
329
+ const enuRotationMatrixScratch = new Matrix2.Matrix4();
330
+ const rotation2DScratch = new Matrix2.Matrix2();
331
+
332
+ /**
333
+ * For remapping texture coordinates when rendering GroundPrimitives with materials.
334
+ * GroundPrimitive texture coordinates are computed to align with the cartographic coordinate system on the globe.
335
+ * However, EllipseGeometry, RectangleGeometry, and PolygonGeometry all bake rotations to per-vertex texture coordinates
336
+ * using different strategies.
337
+ *
338
+ * This method is used by EllipseGeometry and PolygonGeometry to approximate the same visual effect.
339
+ * We encapsulate rotation and scale by computing a "transformed" texture coordinate system and computing
340
+ * a set of reference points from which "cartographic" texture coordinates can be remapped to the "transformed"
341
+ * system using distances to lines in 2D.
342
+ *
343
+ * This approximation becomes less accurate as the covered area increases, especially for GroundPrimitives near the poles,
344
+ * but is generally reasonable for polygons and ellipses around the size of USA states.
345
+ *
346
+ * RectangleGeometry has its own version of this method that computes remapping coordinates using cartographic space
347
+ * as an intermediary instead of local ENU, which is more accurate for large-area rectangles.
348
+ *
349
+ * @param {Cartesian3[]} positions Array of positions outlining the geometry
350
+ * @param {Number} stRotation Texture coordinate rotation.
351
+ * @param {Ellipsoid} ellipsoid Ellipsoid for projecting and generating local vectors.
352
+ * @param {Rectangle} boundingRectangle Bounding rectangle around the positions.
353
+ * @returns {Number[]} An array of 6 numbers specifying [minimum point, u extent, v extent] as points in the "cartographic" system.
354
+ * @private
355
+ */
356
+ Geometry._textureCoordinateRotationPoints = function (
357
+ positions,
358
+ stRotation,
359
+ ellipsoid,
360
+ boundingRectangle
361
+ ) {
362
+ let i;
363
+
364
+ // Create a local east-north-up coordinate system centered on the polygon's bounding rectangle.
365
+ // Project the southwest, northwest, and southeast corners of the bounding rectangle into the plane of ENU as 2D points.
366
+ // These are the equivalents of (0,0), (0,1), and (1,0) in the texture coordiante system computed in ShadowVolumeAppearanceFS,
367
+ // aka "ENU texture space."
368
+ const rectangleCenter = Matrix2.Rectangle.center(
369
+ boundingRectangle,
370
+ rectangleCenterScratch
371
+ );
372
+ const enuCenter = Matrix3.Cartographic.toCartesian(
373
+ rectangleCenter,
374
+ ellipsoid,
375
+ enuCenterScratch
376
+ );
377
+ const enuToFixedFrame = Transforms.Transforms.eastNorthUpToFixedFrame(
378
+ enuCenter,
379
+ ellipsoid,
380
+ fixedFrameToEnuScratch
381
+ );
382
+ const fixedFrameToEnu = Matrix2.Matrix4.inverse(
383
+ enuToFixedFrame,
384
+ fixedFrameToEnuScratch
385
+ );
386
+
387
+ const boundingPointsEnu = boundingRectanglePointsEnuScratch;
388
+ const boundingPointsCarto = boundingRectanglePointsCartographicScratch;
389
+
390
+ boundingPointsCarto[0].longitude = boundingRectangle.west;
391
+ boundingPointsCarto[0].latitude = boundingRectangle.south;
392
+
393
+ boundingPointsCarto[1].longitude = boundingRectangle.west;
394
+ boundingPointsCarto[1].latitude = boundingRectangle.north;
395
+
396
+ boundingPointsCarto[2].longitude = boundingRectangle.east;
397
+ boundingPointsCarto[2].latitude = boundingRectangle.south;
398
+
399
+ let posEnu = pointEnuScratch;
400
+
401
+ for (i = 0; i < 3; i++) {
402
+ Matrix3.Cartographic.toCartesian(boundingPointsCarto[i], ellipsoid, posEnu);
403
+ posEnu = Matrix2.Matrix4.multiplyByPointAsVector(fixedFrameToEnu, posEnu, posEnu);
404
+ boundingPointsEnu[i].x = posEnu.x;
405
+ boundingPointsEnu[i].y = posEnu.y;
406
+ }
407
+
408
+ // Rotate each point in the polygon around the up vector in the ENU by -stRotation and project into ENU as 2D.
409
+ // Compute the bounding box of these rotated points in the 2D ENU plane.
410
+ // Rotate the corners back by stRotation, then compute their equivalents in the ENU texture space using the corners computed earlier.
411
+ const rotation = Transforms.Quaternion.fromAxisAngle(
412
+ Matrix3.Cartesian3.UNIT_Z,
413
+ -stRotation,
414
+ enuRotationScratch
415
+ );
416
+ const textureMatrix = Matrix3.Matrix3.fromQuaternion(
417
+ rotation,
418
+ enuRotationMatrixScratch
419
+ );
420
+
421
+ const positionsLength = positions.length;
422
+ let enuMinX = Number.POSITIVE_INFINITY;
423
+ let enuMinY = Number.POSITIVE_INFINITY;
424
+ let enuMaxX = Number.NEGATIVE_INFINITY;
425
+ let enuMaxY = Number.NEGATIVE_INFINITY;
426
+ for (i = 0; i < positionsLength; i++) {
427
+ posEnu = Matrix2.Matrix4.multiplyByPointAsVector(
428
+ fixedFrameToEnu,
429
+ positions[i],
430
+ posEnu
431
+ );
432
+ posEnu = Matrix3.Matrix3.multiplyByVector(textureMatrix, posEnu, posEnu);
433
+
434
+ enuMinX = Math.min(enuMinX, posEnu.x);
435
+ enuMinY = Math.min(enuMinY, posEnu.y);
436
+ enuMaxX = Math.max(enuMaxX, posEnu.x);
437
+ enuMaxY = Math.max(enuMaxY, posEnu.y);
438
+ }
439
+
440
+ const toDesiredInComputed = Matrix2.Matrix2.fromRotation(
441
+ stRotation,
442
+ rotation2DScratch
443
+ );
444
+
445
+ const points2D = points2DScratch;
446
+ points2D[0].x = enuMinX;
447
+ points2D[0].y = enuMinY;
448
+
449
+ points2D[1].x = enuMinX;
450
+ points2D[1].y = enuMaxY;
451
+
452
+ points2D[2].x = enuMaxX;
453
+ points2D[2].y = enuMinY;
454
+
455
+ const boundingEnuMin = boundingPointsEnu[0];
456
+ const boundingPointsWidth = boundingPointsEnu[2].x - boundingEnuMin.x;
457
+ const boundingPointsHeight = boundingPointsEnu[1].y - boundingEnuMin.y;
458
+
459
+ for (i = 0; i < 3; i++) {
460
+ const point2D = points2D[i];
461
+ // rotate back
462
+ Matrix2.Matrix2.multiplyByVector(toDesiredInComputed, point2D, point2D);
463
+
464
+ // Convert point into east-north texture coordinate space
465
+ point2D.x = (point2D.x - boundingEnuMin.x) / boundingPointsWidth;
466
+ point2D.y = (point2D.y - boundingEnuMin.y) / boundingPointsHeight;
467
+ }
468
+
469
+ const minXYCorner = points2D[0];
470
+ const maxYCorner = points2D[1];
471
+ const maxXCorner = points2D[2];
472
+ const result = new Array(6);
473
+ Matrix2.Cartesian2.pack(minXYCorner, result);
474
+ Matrix2.Cartesian2.pack(maxYCorner, result, 2);
475
+ Matrix2.Cartesian2.pack(maxXCorner, result, 4);
476
+
477
+ return result;
478
+ };
479
+
480
+ /**
481
+ * Values and type information for geometry attributes. A {@link Geometry}
482
+ * generally contains one or more attributes. All attributes together form
483
+ * the geometry's vertices.
484
+ *
485
+ * @alias GeometryAttribute
486
+ * @constructor
487
+ *
488
+ * @param {Object} [options] Object with the following properties:
489
+ * @param {ComponentDatatype} [options.componentDatatype] The datatype of each component in the attribute, e.g., individual elements in values.
490
+ * @param {Number} [options.componentsPerAttribute] A number between 1 and 4 that defines the number of components in an attributes.
491
+ * @param {Boolean} [options.normalize=false] When <code>true</code> and <code>componentDatatype</code> is an integer format, indicate that the components should be mapped to the range [0, 1] (unsigned) or [-1, 1] (signed) when they are accessed as floating-point for rendering.
492
+ * @param {number[]|Int8Array|Uint8Array|Int16Array|Uint16Array|Int32Array|Uint32Array|Float32Array|Float64Array} [options.values] The values for the attributes stored in a typed array.
493
+ *
494
+ * @exception {DeveloperError} options.componentsPerAttribute must be between 1 and 4.
495
+ *
496
+ *
497
+ * @example
498
+ * const geometry = new Cesium.Geometry({
499
+ * attributes : {
500
+ * position : new Cesium.GeometryAttribute({
501
+ * componentDatatype : Cesium.ComponentDatatype.FLOAT,
502
+ * componentsPerAttribute : 3,
503
+ * values : new Float32Array([
504
+ * 0.0, 0.0, 0.0,
505
+ * 7500000.0, 0.0, 0.0,
506
+ * 0.0, 7500000.0, 0.0
507
+ * ])
508
+ * })
509
+ * },
510
+ * primitiveType : Cesium.PrimitiveType.LINE_LOOP
511
+ * });
512
+ *
513
+ * @see Geometry
514
+ */
515
+ function GeometryAttribute(options) {
516
+ options = defaultValue.defaultValue(options, defaultValue.defaultValue.EMPTY_OBJECT);
517
+
518
+ //>>includeStart('debug', pragmas.debug);
519
+ if (!defaultValue.defined(options.componentDatatype)) {
520
+ throw new Check.DeveloperError("options.componentDatatype is required.");
521
+ }
522
+ if (!defaultValue.defined(options.componentsPerAttribute)) {
523
+ throw new Check.DeveloperError("options.componentsPerAttribute is required.");
524
+ }
525
+ if (
526
+ options.componentsPerAttribute < 1 ||
527
+ options.componentsPerAttribute > 4
528
+ ) {
529
+ throw new Check.DeveloperError(
530
+ "options.componentsPerAttribute must be between 1 and 4."
531
+ );
532
+ }
533
+ if (!defaultValue.defined(options.values)) {
534
+ throw new Check.DeveloperError("options.values is required.");
535
+ }
536
+ //>>includeEnd('debug');
537
+
538
+ /**
539
+ * The datatype of each component in the attribute, e.g., individual elements in
540
+ * {@link GeometryAttribute#values}.
541
+ *
542
+ * @type ComponentDatatype
543
+ *
544
+ * @default undefined
545
+ */
546
+ this.componentDatatype = options.componentDatatype;
547
+
548
+ /**
549
+ * A number between 1 and 4 that defines the number of components in an attributes.
550
+ * For example, a position attribute with x, y, and z components would have 3 as
551
+ * shown in the code example.
552
+ *
553
+ * @type Number
554
+ *
555
+ * @default undefined
556
+ *
557
+ * @example
558
+ * attribute.componentDatatype = Cesium.ComponentDatatype.FLOAT;
559
+ * attribute.componentsPerAttribute = 3;
560
+ * attribute.values = new Float32Array([
561
+ * 0.0, 0.0, 0.0,
562
+ * 7500000.0, 0.0, 0.0,
563
+ * 0.0, 7500000.0, 0.0
564
+ * ]);
565
+ */
566
+ this.componentsPerAttribute = options.componentsPerAttribute;
567
+
568
+ /**
569
+ * When <code>true</code> and <code>componentDatatype</code> is an integer format,
570
+ * indicate that the components should be mapped to the range [0, 1] (unsigned)
571
+ * or [-1, 1] (signed) when they are accessed as floating-point for rendering.
572
+ * <p>
573
+ * This is commonly used when storing colors using {@link ComponentDatatype.UNSIGNED_BYTE}.
574
+ * </p>
575
+ *
576
+ * @type Boolean
577
+ *
578
+ * @default false
579
+ *
580
+ * @example
581
+ * attribute.componentDatatype = Cesium.ComponentDatatype.UNSIGNED_BYTE;
582
+ * attribute.componentsPerAttribute = 4;
583
+ * attribute.normalize = true;
584
+ * attribute.values = new Uint8Array([
585
+ * Cesium.Color.floatToByte(color.red),
586
+ * Cesium.Color.floatToByte(color.green),
587
+ * Cesium.Color.floatToByte(color.blue),
588
+ * Cesium.Color.floatToByte(color.alpha)
589
+ * ]);
590
+ */
591
+ this.normalize = defaultValue.defaultValue(options.normalize, false);
592
+
593
+ /**
594
+ * The values for the attributes stored in a typed array. In the code example,
595
+ * every three elements in <code>values</code> defines one attributes since
596
+ * <code>componentsPerAttribute</code> is 3.
597
+ *
598
+ * @type {number[]|Int8Array|Uint8Array|Int16Array|Uint16Array|Int32Array|Uint32Array|Float32Array|Float64Array}
599
+ *
600
+ * @default undefined
601
+ *
602
+ * @example
603
+ * attribute.componentDatatype = Cesium.ComponentDatatype.FLOAT;
604
+ * attribute.componentsPerAttribute = 3;
605
+ * attribute.values = new Float32Array([
606
+ * 0.0, 0.0, 0.0,
607
+ * 7500000.0, 0.0, 0.0,
608
+ * 0.0, 7500000.0, 0.0
609
+ * ]);
610
+ */
611
+ this.values = options.values;
612
+ }
613
+
614
+ exports.Geometry = Geometry;
615
+ exports.GeometryAttribute = GeometryAttribute;
616
+ exports.GeometryType = GeometryType$1;
617
+ exports.PrimitiveType = PrimitiveType$1;
618
+
619
+ }));