@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.
- package/README.md +6 -6
- package/build/build.js +2 -2
- package/build/buildCesium.js +3 -3
- package/build/buildHelpers.js +2 -1
- package/config/base.config.json +0 -4
- package/config/dev.config.json +35 -14
- package/config/www.config.json +4 -0
- package/dist/assets/cesium/Workers/ArcType-ce2e50ab.js +37 -0
- package/dist/assets/cesium/Workers/AttributeCompression-b646d393.js +716 -0
- package/dist/assets/cesium/Workers/AxisAlignedBoundingBox-ff186ccc.js +258 -0
- package/dist/assets/cesium/Workers/BoundingRectangle-be5924f4.js +369 -0
- package/dist/assets/cesium/Workers/BoxGeometry-12eeccaf.js +884 -0
- package/dist/assets/cesium/Workers/Check-666ab1a0.js +290 -0
- package/dist/assets/cesium/Workers/Color-a84038cb.js +2262 -0
- package/dist/assets/cesium/Workers/ComponentDatatype-f7b11d02.js +341 -0
- package/dist/assets/cesium/Workers/CoplanarPolygonGeometryLibrary-3272c1b3.js +132 -0
- package/dist/assets/cesium/Workers/CorridorGeometryLibrary-0170e093.js +498 -0
- package/dist/assets/cesium/Workers/CylinderGeometry-7c5da648.js +467 -0
- package/dist/assets/cesium/Workers/CylinderGeometryLibrary-372c07d8.js +63 -0
- package/dist/assets/cesium/Workers/EllipseGeometry-797d580e.js +1304 -0
- package/dist/assets/cesium/Workers/EllipseGeometryLibrary-2939e1dc.js +366 -0
- package/dist/assets/cesium/Workers/EllipseOutlineGeometry-8b50870f.js +443 -0
- package/dist/assets/cesium/Workers/EllipsoidGeodesic-98c62a56.js +520 -0
- package/dist/assets/cesium/Workers/EllipsoidGeometry-21c0e3a5.js +637 -0
- package/dist/assets/cesium/Workers/EllipsoidOutlineGeometry-eff247c8.js +454 -0
- package/dist/assets/cesium/Workers/EllipsoidRhumbLine-19756602.js +741 -0
- package/dist/assets/cesium/Workers/EllipsoidTangentPlane-214683dc.js +373 -0
- package/dist/assets/cesium/Workers/EncodedCartesian3-81f70735.js +171 -0
- package/dist/assets/cesium/Workers/FrustumGeometry-ac42a6d9.js +2512 -0
- package/dist/assets/cesium/Workers/GeometryAttribute-7d6f1732.js +619 -0
- package/dist/assets/cesium/Workers/GeometryAttributes-f06a2792.js +91 -0
- package/dist/assets/cesium/Workers/GeometryInstance-451dc1cd.js +121 -0
- package/dist/assets/cesium/Workers/GeometryOffsetAttribute-04332ce7.js +16 -0
- package/dist/assets/cesium/Workers/GeometryPipeline-ce4339ed.js +3690 -0
- package/dist/assets/cesium/Workers/IndexDatatype-a55ceaa1.js +200 -0
- package/dist/assets/cesium/Workers/IntersectionTests-f6e6bd8a.js +1836 -0
- package/dist/assets/cesium/Workers/Math-2dbd6b93.js +1330 -0
- package/dist/assets/cesium/Workers/Matrix2-13178034.js +7086 -0
- package/dist/assets/cesium/Workers/Matrix3-315394f6.js +4283 -0
- package/dist/assets/cesium/Workers/OrientedBoundingBox-04920dc7.js +1257 -0
- package/dist/assets/cesium/Workers/Plane-900aa728.js +309 -0
- package/dist/assets/cesium/Workers/PolygonGeometryLibrary-a8680d96.js +1074 -0
- package/dist/assets/cesium/Workers/PolygonPipeline-844aab0a.js +1345 -0
- package/dist/assets/cesium/Workers/PolylinePipeline-32f36d2a.js +573 -0
- package/dist/assets/cesium/Workers/PolylineVolumeGeometryLibrary-a510d657.js +781 -0
- package/dist/assets/cesium/Workers/PrimitivePipeline-ba38434a.js +966 -0
- package/dist/assets/cesium/Workers/RectangleGeometryLibrary-bdba697e.js +280 -0
- package/dist/assets/cesium/Workers/RuntimeError-06c93819.js +68 -0
- package/dist/assets/cesium/Workers/TerrainEncoding-833187da.js +1227 -0
- package/dist/assets/cesium/Workers/Transforms-40229881.js +14696 -0
- package/dist/assets/cesium/Workers/VertexFormat-6b480673.js +312 -0
- package/dist/assets/cesium/Workers/WallGeometryLibrary-919eed92.js +211 -0
- package/dist/assets/cesium/Workers/WebGLConstants-a8cc3e8c.js +620 -0
- package/dist/assets/cesium/Workers/WebMercatorProjection-13a90d41.js +151 -0
- package/dist/assets/cesium/Workers/arrayRemoveDuplicates-c2038105.js +129 -0
- package/dist/assets/cesium/Workers/cesiumWorkerBootstrapper.js +1336 -4
- package/dist/assets/cesium/Workers/combine-ca22a614.js +82 -0
- package/dist/assets/cesium/Workers/combineGeometry.js +17 -25
- package/dist/assets/cesium/Workers/createBoxGeometry.js +12 -25
- package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +313 -25
- package/dist/assets/cesium/Workers/createCircleGeometry.js +213 -25
- package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +160 -25
- package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +586 -25
- package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +236 -25
- package/dist/assets/cesium/Workers/createCorridorGeometry.js +1407 -25
- package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +603 -25
- package/dist/assets/cesium/Workers/createCylinderGeometry.js +12 -25
- package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +265 -25
- package/dist/assets/cesium/Workers/createEllipseGeometry.js +14 -25
- package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +14 -25
- package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +12 -25
- package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +15 -25
- package/dist/assets/cesium/Workers/createFrustumGeometry.js +12 -25
- package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +251 -25
- package/dist/assets/cesium/Workers/createGeometry.js +55 -25
- package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +2134 -25
- package/dist/assets/cesium/Workers/createPlaneGeometry.js +250 -25
- package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +115 -25
- package/dist/assets/cesium/Workers/createPolygonGeometry.js +1420 -25
- package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +683 -25
- package/dist/assets/cesium/Workers/createPolylineGeometry.js +571 -25
- package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +411 -25
- package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +301 -25
- package/dist/assets/cesium/Workers/createRectangleGeometry.js +1476 -25
- package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +535 -25
- package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +458 -25
- package/dist/assets/cesium/Workers/createSphereGeometry.js +123 -25
- package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +126 -25
- package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +127 -25
- package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +535 -25
- package/dist/assets/cesium/Workers/createVectorTileGeometries.js +445 -25
- package/dist/assets/cesium/Workers/createVectorTilePoints.js +79 -25
- package/dist/assets/cesium/Workers/createVectorTilePolygons.js +406 -25
- package/dist/assets/cesium/Workers/createVectorTilePolylines.js +254 -25
- package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +640 -25
- package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +2711 -27
- package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +994 -25
- package/dist/assets/cesium/Workers/createWallGeometry.js +623 -25
- package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +432 -25
- package/dist/assets/cesium/Workers/decodeDraco.js +381 -25
- package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +3687 -25
- package/dist/assets/cesium/Workers/decodeI3S.js +1040 -0
- package/dist/assets/cesium/Workers/defaultValue-0a909f67.js +51 -0
- package/dist/assets/cesium/Workers/package.js +2 -2
- package/dist/assets/cesium/Workers/transcodeKTX2.js +1516 -25
- package/dist/assets/cesium/Workers/transferTypedArrayTest.js +18 -2
- package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +1023 -25
- package/dist/assets/{cesium.2f992f.js → cesium.adbd45.js} +112161 -108735
- package/dist/assets/cesium.js +1 -1
- package/dist/assets/{core.cb0408.js → core.60e74d.js} +1616 -1629
- package/dist/assets/core.f198cf.js +15993 -0
- package/dist/assets/core.js +1 -1
- package/dist/assets/{index.bccdf969.js → index.884a53ef.js} +1 -1
- package/dist/assets/{ol.5e3fd0.js → ol.c6ff35.js} +6992 -6972
- package/dist/assets/ol.dbd604.js +44299 -0
- package/dist/assets/ol.js +1 -1
- package/dist/assets/ui.bf504d.css +1 -0
- package/dist/assets/{ui.08c48f.js → ui.bf504d.js} +6121 -6785
- package/dist/assets/ui.js +1 -1
- package/dist/assets/{vue.228ead.js → vue.75b819.js} +0 -0
- package/dist/assets/vue.a831f1.js +4675 -0
- package/dist/assets/vue.js +2 -2
- package/dist/assets/{vuetify.0b5039.css → vuetify.0d7360.css} +0 -0
- package/dist/assets/{vuetify.0b5039.js → vuetify.0d7360.js} +1 -1
- package/dist/assets/vuetify.js +2 -2
- package/dist/index.html +1 -1
- package/index.js +2 -1
- package/lib/cesium.js +1 -1
- package/package.json +3 -4
- package/plugins/{simple-graph → @vcmap/simple-graph}/README.md +1 -1
- package/plugins/{simple-graph → @vcmap/simple-graph}/SimpleGraphComponent.vue +0 -0
- package/plugins/{simple-graph → @vcmap/simple-graph}/index.js +0 -0
- package/plugins/{simple-graph → @vcmap/simple-graph}/package.json +0 -0
- package/plugins/{simple-graph → @vcmap/simple-graph}/simpleGraphView.js +0 -0
- package/plugins/@vcmap-show-case/README.md +20 -0
- package/plugins/{buttonExamples/ButtonExamples.vue → @vcmap-show-case/buttons-example/ButtonsExample.vue} +1 -1
- package/plugins/@vcmap-show-case/buttons-example/README.md +4 -0
- package/plugins/{buttonExamples → @vcmap-show-case/buttons-example}/index.js +16 -8
- package/plugins/@vcmap-show-case/buttons-example/package.json +5 -0
- package/plugins/{categoryTest → @vcmap-show-case/category-tester}/Categories.vue +7 -6
- package/plugins/{categoryTest → @vcmap-show-case/category-tester}/Category.vue +4 -3
- package/plugins/@vcmap-show-case/category-tester/README.md +3 -0
- package/plugins/{categoryTest → @vcmap-show-case/category-tester}/index.js +12 -4
- package/plugins/@vcmap-show-case/category-tester/package.json +5 -0
- package/plugins/@vcmap-show-case/config-editor/README.md +3 -0
- package/plugins/{test → @vcmap-show-case/config-editor}/editor.vue +0 -0
- package/plugins/@vcmap-show-case/config-editor/index.js +47 -0
- package/plugins/@vcmap-show-case/config-editor/package.json +5 -0
- package/plugins/@vcmap-show-case/context-menu-tester/README.md +3 -0
- package/plugins/@vcmap-show-case/context-menu-tester/index.js +33 -0
- package/plugins/@vcmap-show-case/context-menu-tester/package.json +5 -0
- package/plugins/{@vcmap/pluginExample/pluginExampleComponent.vue → @vcmap-show-case/form-inputs-example/FormInputsExample.vue} +14 -13
- package/plugins/@vcmap-show-case/form-inputs-example/README.md +4 -0
- package/plugins/@vcmap-show-case/form-inputs-example/config.json +5 -0
- package/plugins/{@vcmap/pluginExample → @vcmap-show-case/form-inputs-example}/exampleActions.js +1 -1
- package/plugins/{@vcmap/pluginExample → @vcmap-show-case/form-inputs-example}/index.js +23 -22
- package/plugins/@vcmap-show-case/form-inputs-example/package.json +5 -0
- package/plugins/{@vcmap/pluginExample → @vcmap-show-case/form-inputs-example}/validation.js +0 -0
- package/plugins/@vcmap-show-case/icons-example/README.md +5 -0
- package/plugins/@vcmap-show-case/icons-example/allIconsComponent.vue +51 -0
- package/plugins/@vcmap-show-case/icons-example/index.js +44 -0
- package/plugins/@vcmap-show-case/icons-example/package.json +5 -0
- package/plugins/{test/testList.vue → @vcmap-show-case/list-example/ListExample.vue} +1 -1
- package/plugins/@vcmap-show-case/list-example/README.md +3 -0
- package/plugins/@vcmap-show-case/list-example/index.js +44 -0
- package/plugins/@vcmap-show-case/list-example/package.json +5 -0
- package/plugins/@vcmap-show-case/notifier-tester/README.md +3 -0
- package/plugins/{notifier → @vcmap-show-case/notifier-tester}/index.js +11 -6
- package/plugins/{notifier → @vcmap-show-case/notifier-tester}/notifierTester.vue +0 -0
- package/plugins/@vcmap-show-case/notifier-tester/package.json +5 -0
- package/plugins/@vcmap-show-case/textfields-example/README.md +3 -0
- package/plugins/{example/mySuperComponent.vue → @vcmap-show-case/textfields-example/TextfieldsExample.vue} +1 -7
- package/plugins/{example → @vcmap-show-case/textfields-example}/index.js +58 -62
- package/plugins/@vcmap-show-case/textfields-example/package.json +5 -0
- package/plugins/@vcmap-show-case/window-tester/README.md +3 -0
- package/plugins/{test/windowManagerExample.vue → @vcmap-show-case/window-tester/WindowExample.vue} +36 -20
- package/plugins/{test → @vcmap-show-case/window-tester}/emptyComponent.vue +8 -3
- package/plugins/@vcmap-show-case/window-tester/index.js +62 -0
- package/plugins/{test → @vcmap-show-case/window-tester}/myCustomHeader.vue +0 -0
- package/plugins/@vcmap-show-case/window-tester/package.json +5 -0
- package/plugins/{test → @vcmap-show-case/window-tester}/toolbox-data.js +9 -9
- package/plugins/{test/vcsContent.vue → @vcmap-show-case/window-tester/windowExampleContent.vue} +1 -5
- package/plugins/@vcmap-show-case/wizard-example/README.md +3 -0
- package/plugins/{wizardExample → @vcmap-show-case/wizard-example}/index.js +12 -6
- package/plugins/@vcmap-show-case/wizard-example/package.json +5 -0
- package/plugins/@vcmap-show-case/wizard-example/wizardExample.vue +95 -0
- package/plugins/package.json +2 -1
- package/src/actions/actionHelper.js +1 -3
- package/src/actions/stateRefAction.js +0 -10
- package/src/application/VcsApp.vue +42 -23
- package/src/application/VcsMap.vue +9 -0
- package/src/components/buttons/VcsActionButtonList.vue +1 -0
- package/src/components/form-inputs-controls/VcsCheckbox.vue +3 -1
- package/src/components/form-inputs-controls/VcsWizard.vue +17 -20
- package/src/components/form-inputs-controls/VcsWizardStep.vue +160 -0
- package/src/{icons → components/icons}/+all.js +0 -0
- package/src/{icons → components/icons}/2DAreaIcon.vue +0 -0
- package/src/{icons → components/icons}/2DDistanceIcon.vue +0 -0
- package/src/{icons → components/icons}/3DAreaIcon.vue +0 -0
- package/src/{icons → components/icons}/3DDistanceIcon.vue +0 -0
- package/src/{icons → components/icons}/3DHeightIcon.vue +0 -0
- package/src/{icons → components/icons}/AngleIcon.vue +0 -0
- package/src/{icons → components/icons}/AssociationsIcon.vue +0 -0
- package/src/{icons → components/icons}/AxisIcon.vue +0 -0
- package/src/{icons → components/icons}/BoundingBoxIcon.vue +0 -0
- package/src/{icons → components/icons}/CheckboxCheckedIcon.vue +0 -0
- package/src/{icons → components/icons}/CheckboxIcon.vue +0 -0
- package/src/{icons → components/icons}/CheckboxIndeterminateIcon.vue +0 -0
- package/src/{icons → components/icons}/CircleIcon.vue +0 -0
- package/src/{icons → components/icons}/ClippingHorizontalIcon.vue +0 -0
- package/src/{icons → components/icons}/ClippingIcon.vue +0 -0
- package/src/{icons → components/icons}/ClippingVerticalIcon.vue +0 -0
- package/src/{icons → components/icons}/ColorPickerIcon.vue +0 -0
- package/src/{icons → components/icons}/ColorSwatchIcon.vue +0 -0
- package/src/{icons → components/icons}/CommentIcon.vue +0 -0
- package/src/{icons → components/icons}/CompassIcon.vue +0 -0
- package/src/{icons → components/icons}/ComponentsIcon.vue +0 -0
- package/src/{icons → components/icons}/ConeIcon.vue +0 -0
- package/src/{icons → components/icons}/DimensionsHouseIcon.vue +0 -0
- package/src/{icons → components/icons}/EditIcon.vue +0 -0
- package/src/{icons → components/icons}/ElevationProfileIcon.vue +0 -0
- package/src/{icons → components/icons}/ExportAreaIcon.vue +0 -0
- package/src/{icons → components/icons}/ExportFlightIcon.vue +0 -0
- package/src/{icons → components/icons}/ExportIcon.vue +0 -0
- package/src/{icons → components/icons}/ExternalLinkIcon.vue +0 -0
- package/src/{icons → components/icons}/EyeIcon.vue +0 -0
- package/src/{icons → components/icons}/FastForwardIcon.vue +0 -0
- package/src/{icons → components/icons}/FilterIcon.vue +0 -0
- package/src/{icons → components/icons}/GlobalTerrainIcon.vue +0 -0
- package/src/{icons → components/icons}/GlobeNatureIcon.vue +0 -0
- package/src/{icons → components/icons}/GroundIcon.vue +0 -0
- package/src/{icons → components/icons}/HealthCareIndustriesIcon.vue +0 -0
- package/src/{icons → components/icons}/HelpIcon.vue +0 -0
- package/src/{icons → components/icons}/HideIcon.vue +0 -0
- package/src/{icons → components/icons}/HomePointIcon.vue +0 -0
- package/src/{icons → components/icons}/HospitalsIcon.vue +0 -0
- package/src/{icons → components/icons}/HouseIcon.vue +0 -0
- package/src/{icons → components/icons}/ImportIcon.vue +0 -0
- package/src/{icons → components/icons}/InfoIcon.vue +0 -0
- package/src/{icons → components/icons}/KebabIcon.vue +0 -0
- package/src/{icons → components/icons}/LabelIcon.vue +0 -0
- package/src/{icons → components/icons}/LayersIcon.vue +0 -0
- package/src/{icons → components/icons}/LegendIcon.vue +0 -0
- package/src/{icons → components/icons}/LineIcon.vue +0 -0
- package/src/{icons → components/icons}/LinkIcon.vue +0 -0
- package/src/{icons → components/icons}/LogoutIcon.vue +0 -0
- package/src/{icons → components/icons}/MapIcon.vue +0 -0
- package/src/{icons → components/icons}/MenuIcon.vue +0 -0
- package/src/{icons → components/icons}/MinusIcon.vue +0 -0
- package/src/{icons → components/icons}/ObjectAttributeIcon.vue +0 -0
- package/src/{icons → components/icons}/ObjectSelectIcon.vue +0 -0
- package/src/{icons → components/icons}/ObliqueViewIcon.vue +0 -0
- package/src/{icons → components/icons}/PdfIcon.vue +0 -0
- package/src/{icons → components/icons}/PedestrianIcon.vue +0 -0
- package/src/{icons → components/icons}/PenIcon.vue +0 -0
- package/src/{icons → components/icons}/PlayCircleIcon.vue +0 -0
- package/src/{icons → components/icons}/PlusIcon.vue +0 -0
- package/src/{icons → components/icons}/PoiIcon.vue +0 -0
- package/src/{icons → components/icons}/PointSelectIcon.vue +0 -0
- package/src/{icons → components/icons}/PolygonIcon.vue +0 -0
- package/src/{icons → components/icons}/PresentationModeIcon.vue +0 -0
- package/src/{icons → components/icons}/ProgressIcon.vue +0 -0
- package/src/{icons → components/icons}/QueryIcon.vue +0 -0
- package/src/{icons → components/icons}/RectangleIcon.vue +0 -0
- package/src/{icons → components/icons}/ReturnIcon.vue +0 -0
- package/src/{icons → components/icons}/RewindIcon.vue +0 -0
- package/src/{icons → components/icons}/RotateLeftIcon.vue +0 -0
- package/src/{icons → components/icons}/RotateRightIcon.vue +0 -0
- package/src/{icons → components/icons}/ScreenshotIcon.vue +0 -0
- package/src/{icons → components/icons}/SearchIcon.vue +0 -0
- package/src/{icons → components/icons}/ShadowIcon.vue +0 -0
- package/src/{icons → components/icons}/ShapesIcon.vue +0 -0
- package/src/{icons → components/icons}/ShareIcon.vue +0 -0
- package/src/{icons → components/icons}/SimpleCircleFilledIcon.vue +0 -0
- package/src/{icons → components/icons}/SimpleCircleHalfFilledIcon.vue +0 -0
- package/src/{icons → components/icons}/SimpleCircleOutlinedIcon.vue +0 -0
- package/src/{icons → components/icons}/SkipNextIcon.vue +0 -0
- package/src/{icons → components/icons}/SkipPreviousIcon.vue +0 -0
- package/src/{icons → components/icons}/SplitViewIcon.vue +0 -0
- package/src/{icons → components/icons}/TerrainBoxIcon.vue +0 -0
- package/src/{icons → components/icons}/TextStyleIcon.vue +0 -0
- package/src/{icons → components/icons}/ThreeDimensionsIcon.vue +0 -0
- package/src/{icons → components/icons}/ToolsIcon.vue +0 -0
- package/src/{icons → components/icons}/TouchIcon.vue +0 -0
- package/src/{icons → components/icons}/TrashCanIcon.vue +0 -0
- package/src/{icons → components/icons}/TriangleIcon.vue +0 -0
- package/src/{icons → components/icons}/TwoDimensionsIcon.vue +0 -0
- package/src/{icons → components/icons}/UploadIcon.vue +0 -0
- package/src/{icons → components/icons}/UserProfileIcon.vue +0 -0
- package/src/{icons → components/icons}/UserShareIcon.vue +0 -0
- package/src/{icons → components/icons}/VideoRecorderIcon.vue +0 -0
- package/src/{icons → components/icons}/ViewpointFlightIcon.vue +0 -0
- package/src/{icons → components/icons}/ViewpointIcon.vue +0 -0
- package/src/{icons → components/icons}/Viewshed360Icon.vue +0 -0
- package/src/{icons → components/icons}/ViewshedConeIcon.vue +0 -0
- package/src/{icons → components/icons}/ViewshedIcon.vue +0 -0
- package/src/{icons → components/icons}/WalkingIcon.vue +0 -0
- package/src/{icons → components/icons}/WallIcon.vue +0 -0
- package/src/{icons → components/icons}/WandIcon.vue +0 -0
- package/src/components/lists/VcsList.vue +21 -12
- package/src/components/lists/VcsTreeviewLeaf.vue +14 -2
- package/src/components/notification/VcsTooltip.vue +1 -1
- package/src/featureInfo/abstractFeatureInfoView.js +1 -1
- package/src/featureInfo/addressBalloonFeatureInfoView.js +1 -1
- package/src/featureInfo/balloonFeatureInfoView.js +1 -1
- package/src/featureInfo/balloonHelper.js +6 -6
- package/src/featureInfo/featureInfo.js +2 -2
- package/src/i18n/de.js +2 -6
- package/src/i18n/en.js +2 -6
- package/src/legend/legendHelper.js +4 -3
- package/src/legend/vcsLegend.vue +21 -2
- package/src/manager/window/WindowComponent.vue +42 -4
- package/src/manager/window/WindowComponentHeader.vue +1 -1
- package/src/manager/window/windowHelper.js +7 -11
- package/src/manager/window/windowManager.js +15 -11
- package/src/navigation/mapNavCompass.vue +13 -7
- package/src/navigation/mapNavigation.vue +66 -4
- package/src/navigation/orientationToolsButton.vue +1 -1
- package/src/navigation/overviewMap.js +26 -10
- package/src/navigation/vcsCompass.vue +4 -73
- package/src/setup.js +1 -1
- package/src/vuePlugins/vuetify.js +1 -1
- package/dist/assets/cesium/Workers/ArcType-c9b2b290.js +0 -25
- package/dist/assets/cesium/Workers/AttributeCompression-7b0f288d.js +0 -25
- package/dist/assets/cesium/Workers/AxisAlignedBoundingBox-d0c22774.js +0 -25
- package/dist/assets/cesium/Workers/BoundingRectangle-201b1a81.js +0 -25
- package/dist/assets/cesium/Workers/BoxGeometry-4985457c.js +0 -25
- package/dist/assets/cesium/Workers/Color-cc8c18b3.js +0 -25
- package/dist/assets/cesium/Workers/ComponentDatatype-0200bf8c.js +0 -25
- package/dist/assets/cesium/Workers/CoplanarPolygonGeometryLibrary-4345acdf.js +0 -25
- package/dist/assets/cesium/Workers/CorridorGeometryLibrary-850a6c35.js +0 -25
- package/dist/assets/cesium/Workers/CylinderGeometry-57a1051a.js +0 -25
- package/dist/assets/cesium/Workers/CylinderGeometryLibrary-62ce5a1f.js +0 -25
- package/dist/assets/cesium/Workers/EllipseGeometry-8627398f.js +0 -25
- package/dist/assets/cesium/Workers/EllipseGeometryLibrary-e5919563.js +0 -25
- package/dist/assets/cesium/Workers/EllipseOutlineGeometry-96fd4ae1.js +0 -25
- package/dist/assets/cesium/Workers/EllipsoidGeodesic-8bfefbff.js +0 -25
- package/dist/assets/cesium/Workers/EllipsoidGeometry-377329b9.js +0 -25
- package/dist/assets/cesium/Workers/EllipsoidOutlineGeometry-e6e16e49.js +0 -25
- package/dist/assets/cesium/Workers/EllipsoidRhumbLine-03528f73.js +0 -25
- package/dist/assets/cesium/Workers/EllipsoidTangentPlane-c080fd1b.js +0 -25
- package/dist/assets/cesium/Workers/EncodedCartesian3-ea0e408f.js +0 -25
- package/dist/assets/cesium/Workers/FrustumGeometry-a8b5d817.js +0 -25
- package/dist/assets/cesium/Workers/GeometryAttribute-8458a8fd.js +0 -25
- package/dist/assets/cesium/Workers/GeometryAttributes-ac0f8485.js +0 -25
- package/dist/assets/cesium/Workers/GeometryInstance-ee3aa3ba.js +0 -25
- package/dist/assets/cesium/Workers/GeometryOffsetAttribute-08ae0c50.js +0 -25
- package/dist/assets/cesium/Workers/GeometryPipeline-33ca229c.js +0 -25
- package/dist/assets/cesium/Workers/IndexDatatype-e713bfd2.js +0 -25
- package/dist/assets/cesium/Workers/IntersectionTests-eb4db8e0.js +0 -25
- package/dist/assets/cesium/Workers/Matrix2-eefef8eb.js +0 -25
- package/dist/assets/cesium/Workers/OrientedBoundingBox-5193f9a2.js +0 -25
- package/dist/assets/cesium/Workers/Plane-b0299683.js +0 -25
- package/dist/assets/cesium/Workers/PolygonGeometryLibrary-b61295f3.js +0 -25
- package/dist/assets/cesium/Workers/PolygonPipeline-eb527514.js +0 -25
- package/dist/assets/cesium/Workers/PolylinePipeline-0f23dd84.js +0 -25
- package/dist/assets/cesium/Workers/PolylineVolumeGeometryLibrary-2d903430.js +0 -25
- package/dist/assets/cesium/Workers/PrimitivePipeline-e2640413.js +0 -25
- package/dist/assets/cesium/Workers/RectangleGeometryLibrary-ae8bf8a5.js +0 -25
- package/dist/assets/cesium/Workers/RuntimeError-5baf5c66.js +0 -25
- package/dist/assets/cesium/Workers/TerrainEncoding-bc10ab54.js +0 -25
- package/dist/assets/cesium/Workers/Transforms-d2e5867e.js +0 -63
- package/dist/assets/cesium/Workers/VertexFormat-5ec0d9ff.js +0 -25
- package/dist/assets/cesium/Workers/WallGeometryLibrary-1a33e416.js +0 -25
- package/dist/assets/cesium/Workers/WebGLConstants-5b50ced1.js +0 -25
- package/dist/assets/cesium/Workers/WebMercatorProjection-cd2f30c2.js +0 -25
- package/dist/assets/cesium/Workers/_commonjsHelpers-bc29abbc.js +0 -25
- package/dist/assets/cesium/Workers/arrayRemoveDuplicates-f13aceb1.js +0 -25
- package/dist/assets/cesium/Workers/combine-7533016d.js +0 -25
- package/dist/assets/cesium/Workers/defaultValue-0c475b81.js +0 -25
- package/dist/assets/cesium/Workers/package.json +0 -1
- package/dist/assets/ui.08c48f.css +0 -1
- package/plugins/@vcmap/pluginExample/config.json +0 -6
- package/plugins/@vcmap/pluginExample/package.json +0 -7
- package/plugins/categoryTest/ItemEditor.vue +0 -13
- package/plugins/test/allIconsComponent.vue +0 -50
- package/plugins/test/index.js +0 -209
- package/plugins/wizardExample/wizardExample.vue +0 -77
- package/src/components/form-inputs-controls/VcsColorPicker.vue +0 -85
@@ -0,0 +1,716 @@
|
|
1
|
+
define(['exports', './Matrix2-13178034', './Matrix3-315394f6', './ComponentDatatype-f7b11d02', './Check-666ab1a0', './defaultValue-0a909f67', './Math-2dbd6b93'], (function (exports, Matrix2, Matrix3, ComponentDatatype, Check, defaultValue, Math$1) { 'use strict';
|
2
|
+
|
3
|
+
/**
|
4
|
+
* An enum describing the attribute type for glTF and 3D Tiles.
|
5
|
+
*
|
6
|
+
* @enum {String}
|
7
|
+
*
|
8
|
+
* @private
|
9
|
+
*/
|
10
|
+
const AttributeType = {
|
11
|
+
/**
|
12
|
+
* The attribute is a single component.
|
13
|
+
*
|
14
|
+
* @type {String}
|
15
|
+
* @constant
|
16
|
+
*/
|
17
|
+
SCALAR: "SCALAR",
|
18
|
+
|
19
|
+
/**
|
20
|
+
* The attribute is a two-component vector.
|
21
|
+
*
|
22
|
+
* @type {String}
|
23
|
+
* @constant
|
24
|
+
*/
|
25
|
+
VEC2: "VEC2",
|
26
|
+
|
27
|
+
/**
|
28
|
+
* The attribute is a three-component vector.
|
29
|
+
*
|
30
|
+
* @type {String}
|
31
|
+
* @constant
|
32
|
+
*/
|
33
|
+
VEC3: "VEC3",
|
34
|
+
|
35
|
+
/**
|
36
|
+
* The attribute is a four-component vector.
|
37
|
+
*
|
38
|
+
* @type {String}
|
39
|
+
* @constant
|
40
|
+
*/
|
41
|
+
VEC4: "VEC4",
|
42
|
+
|
43
|
+
/**
|
44
|
+
* The attribute is a 2x2 matrix.
|
45
|
+
*
|
46
|
+
* @type {String}
|
47
|
+
* @constant
|
48
|
+
*/
|
49
|
+
MAT2: "MAT2",
|
50
|
+
|
51
|
+
/**
|
52
|
+
* The attribute is a 3x3 matrix.
|
53
|
+
*
|
54
|
+
* @type {String}
|
55
|
+
* @constant
|
56
|
+
*/
|
57
|
+
MAT3: "MAT3",
|
58
|
+
|
59
|
+
/**
|
60
|
+
* The attribute is a 4x4 matrix.
|
61
|
+
*
|
62
|
+
* @type {String}
|
63
|
+
* @constant
|
64
|
+
*/
|
65
|
+
MAT4: "MAT4",
|
66
|
+
};
|
67
|
+
|
68
|
+
/**
|
69
|
+
* Gets the scalar, vector, or matrix type for the attribute type.
|
70
|
+
*
|
71
|
+
* @param {AttributeType} attributeType The attribute type.
|
72
|
+
* @returns {*} The math type.
|
73
|
+
*
|
74
|
+
* @private
|
75
|
+
*/
|
76
|
+
AttributeType.getMathType = function (attributeType) {
|
77
|
+
switch (attributeType) {
|
78
|
+
case AttributeType.SCALAR:
|
79
|
+
return Number;
|
80
|
+
case AttributeType.VEC2:
|
81
|
+
return Matrix2.Cartesian2;
|
82
|
+
case AttributeType.VEC3:
|
83
|
+
return Matrix3.Cartesian3;
|
84
|
+
case AttributeType.VEC4:
|
85
|
+
return Matrix2.Cartesian4;
|
86
|
+
case AttributeType.MAT2:
|
87
|
+
return Matrix2.Matrix2;
|
88
|
+
case AttributeType.MAT3:
|
89
|
+
return Matrix3.Matrix3;
|
90
|
+
case AttributeType.MAT4:
|
91
|
+
return Matrix2.Matrix4;
|
92
|
+
//>>includeStart('debug', pragmas.debug);
|
93
|
+
default:
|
94
|
+
throw new Check.DeveloperError("attributeType is not a valid value.");
|
95
|
+
//>>includeEnd('debug');
|
96
|
+
}
|
97
|
+
};
|
98
|
+
|
99
|
+
/**
|
100
|
+
* Gets the number of components per attribute.
|
101
|
+
*
|
102
|
+
* @param {AttributeType} attributeType The attribute type.
|
103
|
+
* @returns {Number} The number of components.
|
104
|
+
*
|
105
|
+
* @private
|
106
|
+
*/
|
107
|
+
AttributeType.getNumberOfComponents = function (attributeType) {
|
108
|
+
switch (attributeType) {
|
109
|
+
case AttributeType.SCALAR:
|
110
|
+
return 1;
|
111
|
+
case AttributeType.VEC2:
|
112
|
+
return 2;
|
113
|
+
case AttributeType.VEC3:
|
114
|
+
return 3;
|
115
|
+
case AttributeType.VEC4:
|
116
|
+
case AttributeType.MAT2:
|
117
|
+
return 4;
|
118
|
+
case AttributeType.MAT3:
|
119
|
+
return 9;
|
120
|
+
case AttributeType.MAT4:
|
121
|
+
return 16;
|
122
|
+
//>>includeStart('debug', pragmas.debug);
|
123
|
+
default:
|
124
|
+
throw new Check.DeveloperError("attributeType is not a valid value.");
|
125
|
+
//>>includeEnd('debug');
|
126
|
+
}
|
127
|
+
};
|
128
|
+
|
129
|
+
/**
|
130
|
+
* Get the number of attribute locations needed to fit this attribute. Most
|
131
|
+
* types require one, but matrices require multiple attribute locations.
|
132
|
+
*
|
133
|
+
* @param {AttributeType} attributeType The attribute type.
|
134
|
+
* @returns {Number} The number of attribute locations needed in the shader
|
135
|
+
*
|
136
|
+
* @private
|
137
|
+
*/
|
138
|
+
AttributeType.getAttributeLocationCount = function (attributeType) {
|
139
|
+
switch (attributeType) {
|
140
|
+
case AttributeType.SCALAR:
|
141
|
+
case AttributeType.VEC2:
|
142
|
+
case AttributeType.VEC3:
|
143
|
+
case AttributeType.VEC4:
|
144
|
+
return 1;
|
145
|
+
case AttributeType.MAT2:
|
146
|
+
return 2;
|
147
|
+
case AttributeType.MAT3:
|
148
|
+
return 3;
|
149
|
+
case AttributeType.MAT4:
|
150
|
+
return 4;
|
151
|
+
//>>includeStart('debug', pragmas.debug);
|
152
|
+
default:
|
153
|
+
throw new Check.DeveloperError("attributeType is not a valid value.");
|
154
|
+
//>>includeEnd('debug');
|
155
|
+
}
|
156
|
+
};
|
157
|
+
|
158
|
+
/**
|
159
|
+
* Gets the GLSL type for the attribute type.
|
160
|
+
*
|
161
|
+
* @param {AttributeType} attributeType The attribute type.
|
162
|
+
* @returns {String} The GLSL type for the attribute type.
|
163
|
+
*
|
164
|
+
* @private
|
165
|
+
*/
|
166
|
+
AttributeType.getGlslType = function (attributeType) {
|
167
|
+
//>>includeStart('debug', pragmas.debug);
|
168
|
+
Check.Check.typeOf.string("attributeType", attributeType);
|
169
|
+
//>>includeEnd('debug');
|
170
|
+
|
171
|
+
switch (attributeType) {
|
172
|
+
case AttributeType.SCALAR:
|
173
|
+
return "float";
|
174
|
+
case AttributeType.VEC2:
|
175
|
+
return "vec2";
|
176
|
+
case AttributeType.VEC3:
|
177
|
+
return "vec3";
|
178
|
+
case AttributeType.VEC4:
|
179
|
+
return "vec4";
|
180
|
+
case AttributeType.MAT2:
|
181
|
+
return "mat2";
|
182
|
+
case AttributeType.MAT3:
|
183
|
+
return "mat3";
|
184
|
+
case AttributeType.MAT4:
|
185
|
+
return "mat4";
|
186
|
+
//>>includeStart('debug', pragmas.debug);
|
187
|
+
default:
|
188
|
+
throw new Check.DeveloperError("attributeType is not a valid value.");
|
189
|
+
//>>includeEnd('debug');
|
190
|
+
}
|
191
|
+
};
|
192
|
+
|
193
|
+
var AttributeType$1 = Object.freeze(AttributeType);
|
194
|
+
|
195
|
+
const RIGHT_SHIFT = 1.0 / 256.0;
|
196
|
+
const LEFT_SHIFT = 256.0;
|
197
|
+
|
198
|
+
/**
|
199
|
+
* Attribute compression and decompression functions.
|
200
|
+
*
|
201
|
+
* @namespace AttributeCompression
|
202
|
+
*
|
203
|
+
* @private
|
204
|
+
*/
|
205
|
+
const AttributeCompression = {};
|
206
|
+
|
207
|
+
/**
|
208
|
+
* Encodes a normalized vector into 2 SNORM values in the range of [0-rangeMax] following the 'oct' encoding.
|
209
|
+
*
|
210
|
+
* Oct encoding is a compact representation of unit length vectors.
|
211
|
+
* The 'oct' encoding is described in "A Survey of Efficient Representations of Independent Unit Vectors",
|
212
|
+
* Cigolle et al 2014: {@link http://jcgt.org/published/0003/02/01/}
|
213
|
+
*
|
214
|
+
* @param {Cartesian3} vector The normalized vector to be compressed into 2 component 'oct' encoding.
|
215
|
+
* @param {Cartesian2} result The 2 component oct-encoded unit length vector.
|
216
|
+
* @param {Number} rangeMax The maximum value of the SNORM range. The encoded vector is stored in log2(rangeMax+1) bits.
|
217
|
+
* @returns {Cartesian2} The 2 component oct-encoded unit length vector.
|
218
|
+
*
|
219
|
+
* @exception {DeveloperError} vector must be normalized.
|
220
|
+
*
|
221
|
+
* @see AttributeCompression.octDecodeInRange
|
222
|
+
*/
|
223
|
+
AttributeCompression.octEncodeInRange = function (vector, rangeMax, result) {
|
224
|
+
//>>includeStart('debug', pragmas.debug);
|
225
|
+
Check.Check.defined("vector", vector);
|
226
|
+
Check.Check.defined("result", result);
|
227
|
+
const magSquared = Matrix3.Cartesian3.magnitudeSquared(vector);
|
228
|
+
if (Math.abs(magSquared - 1.0) > Math$1.CesiumMath.EPSILON6) {
|
229
|
+
throw new Check.DeveloperError("vector must be normalized.");
|
230
|
+
}
|
231
|
+
//>>includeEnd('debug');
|
232
|
+
|
233
|
+
result.x =
|
234
|
+
vector.x / (Math.abs(vector.x) + Math.abs(vector.y) + Math.abs(vector.z));
|
235
|
+
result.y =
|
236
|
+
vector.y / (Math.abs(vector.x) + Math.abs(vector.y) + Math.abs(vector.z));
|
237
|
+
if (vector.z < 0) {
|
238
|
+
const x = result.x;
|
239
|
+
const y = result.y;
|
240
|
+
result.x = (1.0 - Math.abs(y)) * Math$1.CesiumMath.signNotZero(x);
|
241
|
+
result.y = (1.0 - Math.abs(x)) * Math$1.CesiumMath.signNotZero(y);
|
242
|
+
}
|
243
|
+
|
244
|
+
result.x = Math$1.CesiumMath.toSNorm(result.x, rangeMax);
|
245
|
+
result.y = Math$1.CesiumMath.toSNorm(result.y, rangeMax);
|
246
|
+
|
247
|
+
return result;
|
248
|
+
};
|
249
|
+
|
250
|
+
/**
|
251
|
+
* Encodes a normalized vector into 2 SNORM values in the range of [0-255] following the 'oct' encoding.
|
252
|
+
*
|
253
|
+
* @param {Cartesian3} vector The normalized vector to be compressed into 2 byte 'oct' encoding.
|
254
|
+
* @param {Cartesian2} result The 2 byte oct-encoded unit length vector.
|
255
|
+
* @returns {Cartesian2} The 2 byte oct-encoded unit length vector.
|
256
|
+
*
|
257
|
+
* @exception {DeveloperError} vector must be normalized.
|
258
|
+
*
|
259
|
+
* @see AttributeCompression.octEncodeInRange
|
260
|
+
* @see AttributeCompression.octDecode
|
261
|
+
*/
|
262
|
+
AttributeCompression.octEncode = function (vector, result) {
|
263
|
+
return AttributeCompression.octEncodeInRange(vector, 255, result);
|
264
|
+
};
|
265
|
+
|
266
|
+
const octEncodeScratch = new Matrix2.Cartesian2();
|
267
|
+
const uint8ForceArray = new Uint8Array(1);
|
268
|
+
function forceUint8(value) {
|
269
|
+
uint8ForceArray[0] = value;
|
270
|
+
return uint8ForceArray[0];
|
271
|
+
}
|
272
|
+
/**
|
273
|
+
* @param {Cartesian3} vector The normalized vector to be compressed into 4 byte 'oct' encoding.
|
274
|
+
* @param {Cartesian4} result The 4 byte oct-encoded unit length vector.
|
275
|
+
* @returns {Cartesian4} The 4 byte oct-encoded unit length vector.
|
276
|
+
*
|
277
|
+
* @exception {DeveloperError} vector must be normalized.
|
278
|
+
*
|
279
|
+
* @see AttributeCompression.octEncodeInRange
|
280
|
+
* @see AttributeCompression.octDecodeFromCartesian4
|
281
|
+
*/
|
282
|
+
AttributeCompression.octEncodeToCartesian4 = function (vector, result) {
|
283
|
+
AttributeCompression.octEncodeInRange(vector, 65535, octEncodeScratch);
|
284
|
+
result.x = forceUint8(octEncodeScratch.x * RIGHT_SHIFT);
|
285
|
+
result.y = forceUint8(octEncodeScratch.x);
|
286
|
+
result.z = forceUint8(octEncodeScratch.y * RIGHT_SHIFT);
|
287
|
+
result.w = forceUint8(octEncodeScratch.y);
|
288
|
+
return result;
|
289
|
+
};
|
290
|
+
|
291
|
+
/**
|
292
|
+
* Decodes a unit-length vector in 'oct' encoding to a normalized 3-component vector.
|
293
|
+
*
|
294
|
+
* @param {Number} x The x component of the oct-encoded unit length vector.
|
295
|
+
* @param {Number} y The y component of the oct-encoded unit length vector.
|
296
|
+
* @param {Number} rangeMax The maximum value of the SNORM range. The encoded vector is stored in log2(rangeMax+1) bits.
|
297
|
+
* @param {Cartesian3} result The decoded and normalized vector
|
298
|
+
* @returns {Cartesian3} The decoded and normalized vector.
|
299
|
+
*
|
300
|
+
* @exception {DeveloperError} x and y must be unsigned normalized integers between 0 and rangeMax.
|
301
|
+
*
|
302
|
+
* @see AttributeCompression.octEncodeInRange
|
303
|
+
*/
|
304
|
+
AttributeCompression.octDecodeInRange = function (x, y, rangeMax, result) {
|
305
|
+
//>>includeStart('debug', pragmas.debug);
|
306
|
+
Check.Check.defined("result", result);
|
307
|
+
if (x < 0 || x > rangeMax || y < 0 || y > rangeMax) {
|
308
|
+
throw new Check.DeveloperError(
|
309
|
+
`x and y must be unsigned normalized integers between 0 and ${rangeMax}`
|
310
|
+
);
|
311
|
+
}
|
312
|
+
//>>includeEnd('debug');
|
313
|
+
|
314
|
+
result.x = Math$1.CesiumMath.fromSNorm(x, rangeMax);
|
315
|
+
result.y = Math$1.CesiumMath.fromSNorm(y, rangeMax);
|
316
|
+
result.z = 1.0 - (Math.abs(result.x) + Math.abs(result.y));
|
317
|
+
|
318
|
+
if (result.z < 0.0) {
|
319
|
+
const oldVX = result.x;
|
320
|
+
result.x = (1.0 - Math.abs(result.y)) * Math$1.CesiumMath.signNotZero(oldVX);
|
321
|
+
result.y = (1.0 - Math.abs(oldVX)) * Math$1.CesiumMath.signNotZero(result.y);
|
322
|
+
}
|
323
|
+
|
324
|
+
return Matrix3.Cartesian3.normalize(result, result);
|
325
|
+
};
|
326
|
+
|
327
|
+
/**
|
328
|
+
* Decodes a unit-length vector in 2 byte 'oct' encoding to a normalized 3-component vector.
|
329
|
+
*
|
330
|
+
* @param {Number} x The x component of the oct-encoded unit length vector.
|
331
|
+
* @param {Number} y The y component of the oct-encoded unit length vector.
|
332
|
+
* @param {Cartesian3} result The decoded and normalized vector.
|
333
|
+
* @returns {Cartesian3} The decoded and normalized vector.
|
334
|
+
*
|
335
|
+
* @exception {DeveloperError} x and y must be an unsigned normalized integer between 0 and 255.
|
336
|
+
*
|
337
|
+
* @see AttributeCompression.octDecodeInRange
|
338
|
+
*/
|
339
|
+
AttributeCompression.octDecode = function (x, y, result) {
|
340
|
+
return AttributeCompression.octDecodeInRange(x, y, 255, result);
|
341
|
+
};
|
342
|
+
|
343
|
+
/**
|
344
|
+
* Decodes a unit-length vector in 4 byte 'oct' encoding to a normalized 3-component vector.
|
345
|
+
*
|
346
|
+
* @param {Cartesian4} encoded The oct-encoded unit length vector.
|
347
|
+
* @param {Cartesian3} result The decoded and normalized vector.
|
348
|
+
* @returns {Cartesian3} The decoded and normalized vector.
|
349
|
+
*
|
350
|
+
* @exception {DeveloperError} x, y, z, and w must be unsigned normalized integers between 0 and 255.
|
351
|
+
*
|
352
|
+
* @see AttributeCompression.octDecodeInRange
|
353
|
+
* @see AttributeCompression.octEncodeToCartesian4
|
354
|
+
*/
|
355
|
+
AttributeCompression.octDecodeFromCartesian4 = function (encoded, result) {
|
356
|
+
//>>includeStart('debug', pragmas.debug);
|
357
|
+
Check.Check.typeOf.object("encoded", encoded);
|
358
|
+
Check.Check.typeOf.object("result", result);
|
359
|
+
//>>includeEnd('debug');
|
360
|
+
const x = encoded.x;
|
361
|
+
const y = encoded.y;
|
362
|
+
const z = encoded.z;
|
363
|
+
const w = encoded.w;
|
364
|
+
//>>includeStart('debug', pragmas.debug);
|
365
|
+
if (
|
366
|
+
x < 0 ||
|
367
|
+
x > 255 ||
|
368
|
+
y < 0 ||
|
369
|
+
y > 255 ||
|
370
|
+
z < 0 ||
|
371
|
+
z > 255 ||
|
372
|
+
w < 0 ||
|
373
|
+
w > 255
|
374
|
+
) {
|
375
|
+
throw new Check.DeveloperError(
|
376
|
+
"x, y, z, and w must be unsigned normalized integers between 0 and 255"
|
377
|
+
);
|
378
|
+
}
|
379
|
+
//>>includeEnd('debug');
|
380
|
+
|
381
|
+
const xOct16 = x * LEFT_SHIFT + y;
|
382
|
+
const yOct16 = z * LEFT_SHIFT + w;
|
383
|
+
return AttributeCompression.octDecodeInRange(xOct16, yOct16, 65535, result);
|
384
|
+
};
|
385
|
+
|
386
|
+
/**
|
387
|
+
* Packs an oct encoded vector into a single floating-point number.
|
388
|
+
*
|
389
|
+
* @param {Cartesian2} encoded The oct encoded vector.
|
390
|
+
* @returns {Number} The oct encoded vector packed into a single float.
|
391
|
+
*
|
392
|
+
*/
|
393
|
+
AttributeCompression.octPackFloat = function (encoded) {
|
394
|
+
//>>includeStart('debug', pragmas.debug);
|
395
|
+
Check.Check.defined("encoded", encoded);
|
396
|
+
//>>includeEnd('debug');
|
397
|
+
return 256.0 * encoded.x + encoded.y;
|
398
|
+
};
|
399
|
+
|
400
|
+
const scratchEncodeCart2 = new Matrix2.Cartesian2();
|
401
|
+
|
402
|
+
/**
|
403
|
+
* Encodes a normalized vector into 2 SNORM values in the range of [0-255] following the 'oct' encoding and
|
404
|
+
* stores those values in a single float-point number.
|
405
|
+
*
|
406
|
+
* @param {Cartesian3} vector The normalized vector to be compressed into 2 byte 'oct' encoding.
|
407
|
+
* @returns {Number} The 2 byte oct-encoded unit length vector.
|
408
|
+
*
|
409
|
+
* @exception {DeveloperError} vector must be normalized.
|
410
|
+
*/
|
411
|
+
AttributeCompression.octEncodeFloat = function (vector) {
|
412
|
+
AttributeCompression.octEncode(vector, scratchEncodeCart2);
|
413
|
+
return AttributeCompression.octPackFloat(scratchEncodeCart2);
|
414
|
+
};
|
415
|
+
|
416
|
+
/**
|
417
|
+
* Decodes a unit-length vector in 'oct' encoding packed in a floating-point number to a normalized 3-component vector.
|
418
|
+
*
|
419
|
+
* @param {Number} value The oct-encoded unit length vector stored as a single floating-point number.
|
420
|
+
* @param {Cartesian3} result The decoded and normalized vector
|
421
|
+
* @returns {Cartesian3} The decoded and normalized vector.
|
422
|
+
*
|
423
|
+
*/
|
424
|
+
AttributeCompression.octDecodeFloat = function (value, result) {
|
425
|
+
//>>includeStart('debug', pragmas.debug);
|
426
|
+
Check.Check.defined("value", value);
|
427
|
+
//>>includeEnd('debug');
|
428
|
+
|
429
|
+
const temp = value / 256.0;
|
430
|
+
const x = Math.floor(temp);
|
431
|
+
const y = (temp - x) * 256.0;
|
432
|
+
|
433
|
+
return AttributeCompression.octDecode(x, y, result);
|
434
|
+
};
|
435
|
+
|
436
|
+
/**
|
437
|
+
* Encodes three normalized vectors into 6 SNORM values in the range of [0-255] following the 'oct' encoding and
|
438
|
+
* packs those into two floating-point numbers.
|
439
|
+
*
|
440
|
+
* @param {Cartesian3} v1 A normalized vector to be compressed.
|
441
|
+
* @param {Cartesian3} v2 A normalized vector to be compressed.
|
442
|
+
* @param {Cartesian3} v3 A normalized vector to be compressed.
|
443
|
+
* @param {Cartesian2} result The 'oct' encoded vectors packed into two floating-point numbers.
|
444
|
+
* @returns {Cartesian2} The 'oct' encoded vectors packed into two floating-point numbers.
|
445
|
+
*
|
446
|
+
*/
|
447
|
+
AttributeCompression.octPack = function (v1, v2, v3, result) {
|
448
|
+
//>>includeStart('debug', pragmas.debug);
|
449
|
+
Check.Check.defined("v1", v1);
|
450
|
+
Check.Check.defined("v2", v2);
|
451
|
+
Check.Check.defined("v3", v3);
|
452
|
+
Check.Check.defined("result", result);
|
453
|
+
//>>includeEnd('debug');
|
454
|
+
|
455
|
+
const encoded1 = AttributeCompression.octEncodeFloat(v1);
|
456
|
+
const encoded2 = AttributeCompression.octEncodeFloat(v2);
|
457
|
+
|
458
|
+
const encoded3 = AttributeCompression.octEncode(v3, scratchEncodeCart2);
|
459
|
+
result.x = 65536.0 * encoded3.x + encoded1;
|
460
|
+
result.y = 65536.0 * encoded3.y + encoded2;
|
461
|
+
return result;
|
462
|
+
};
|
463
|
+
|
464
|
+
/**
|
465
|
+
* Decodes three unit-length vectors in 'oct' encoding packed into a floating-point number to a normalized 3-component vector.
|
466
|
+
*
|
467
|
+
* @param {Cartesian2} packed The three oct-encoded unit length vectors stored as two floating-point number.
|
468
|
+
* @param {Cartesian3} v1 One decoded and normalized vector.
|
469
|
+
* @param {Cartesian3} v2 One decoded and normalized vector.
|
470
|
+
* @param {Cartesian3} v3 One decoded and normalized vector.
|
471
|
+
*/
|
472
|
+
AttributeCompression.octUnpack = function (packed, v1, v2, v3) {
|
473
|
+
//>>includeStart('debug', pragmas.debug);
|
474
|
+
Check.Check.defined("packed", packed);
|
475
|
+
Check.Check.defined("v1", v1);
|
476
|
+
Check.Check.defined("v2", v2);
|
477
|
+
Check.Check.defined("v3", v3);
|
478
|
+
//>>includeEnd('debug');
|
479
|
+
|
480
|
+
let temp = packed.x / 65536.0;
|
481
|
+
const x = Math.floor(temp);
|
482
|
+
const encodedFloat1 = (temp - x) * 65536.0;
|
483
|
+
|
484
|
+
temp = packed.y / 65536.0;
|
485
|
+
const y = Math.floor(temp);
|
486
|
+
const encodedFloat2 = (temp - y) * 65536.0;
|
487
|
+
|
488
|
+
AttributeCompression.octDecodeFloat(encodedFloat1, v1);
|
489
|
+
AttributeCompression.octDecodeFloat(encodedFloat2, v2);
|
490
|
+
AttributeCompression.octDecode(x, y, v3);
|
491
|
+
};
|
492
|
+
|
493
|
+
/**
|
494
|
+
* Pack texture coordinates into a single float. The texture coordinates will only preserve 12 bits of precision.
|
495
|
+
*
|
496
|
+
* @param {Cartesian2} textureCoordinates The texture coordinates to compress. Both coordinates must be in the range 0.0-1.0.
|
497
|
+
* @returns {Number} The packed texture coordinates.
|
498
|
+
*
|
499
|
+
*/
|
500
|
+
AttributeCompression.compressTextureCoordinates = function (
|
501
|
+
textureCoordinates
|
502
|
+
) {
|
503
|
+
//>>includeStart('debug', pragmas.debug);
|
504
|
+
Check.Check.defined("textureCoordinates", textureCoordinates);
|
505
|
+
//>>includeEnd('debug');
|
506
|
+
|
507
|
+
// Move x and y to the range 0-4095;
|
508
|
+
const x = (textureCoordinates.x * 4095.0) | 0;
|
509
|
+
const y = (textureCoordinates.y * 4095.0) | 0;
|
510
|
+
return 4096.0 * x + y;
|
511
|
+
};
|
512
|
+
|
513
|
+
/**
|
514
|
+
* Decompresses texture coordinates that were packed into a single float.
|
515
|
+
*
|
516
|
+
* @param {Number} compressed The compressed texture coordinates.
|
517
|
+
* @param {Cartesian2} result The decompressed texture coordinates.
|
518
|
+
* @returns {Cartesian2} The modified result parameter.
|
519
|
+
*
|
520
|
+
*/
|
521
|
+
AttributeCompression.decompressTextureCoordinates = function (
|
522
|
+
compressed,
|
523
|
+
result
|
524
|
+
) {
|
525
|
+
//>>includeStart('debug', pragmas.debug);
|
526
|
+
Check.Check.defined("compressed", compressed);
|
527
|
+
Check.Check.defined("result", result);
|
528
|
+
//>>includeEnd('debug');
|
529
|
+
|
530
|
+
const temp = compressed / 4096.0;
|
531
|
+
const xZeroTo4095 = Math.floor(temp);
|
532
|
+
result.x = xZeroTo4095 / 4095.0;
|
533
|
+
result.y = (compressed - xZeroTo4095 * 4096) / 4095;
|
534
|
+
return result;
|
535
|
+
};
|
536
|
+
|
537
|
+
function zigZagDecode(value) {
|
538
|
+
return (value >> 1) ^ -(value & 1);
|
539
|
+
}
|
540
|
+
|
541
|
+
/**
|
542
|
+
* Decodes delta and ZigZag encoded vertices. This modifies the buffers in place.
|
543
|
+
*
|
544
|
+
* @param {Uint16Array} uBuffer The buffer view of u values.
|
545
|
+
* @param {Uint16Array} vBuffer The buffer view of v values.
|
546
|
+
* @param {Uint16Array} [heightBuffer] The buffer view of height values.
|
547
|
+
*
|
548
|
+
* @see {@link https://github.com/CesiumGS/quantized-mesh|quantized-mesh-1.0 terrain format}
|
549
|
+
*/
|
550
|
+
AttributeCompression.zigZagDeltaDecode = function (
|
551
|
+
uBuffer,
|
552
|
+
vBuffer,
|
553
|
+
heightBuffer
|
554
|
+
) {
|
555
|
+
//>>includeStart('debug', pragmas.debug);
|
556
|
+
Check.Check.defined("uBuffer", uBuffer);
|
557
|
+
Check.Check.defined("vBuffer", vBuffer);
|
558
|
+
Check.Check.typeOf.number.equals(
|
559
|
+
"uBuffer.length",
|
560
|
+
"vBuffer.length",
|
561
|
+
uBuffer.length,
|
562
|
+
vBuffer.length
|
563
|
+
);
|
564
|
+
if (defaultValue.defined(heightBuffer)) {
|
565
|
+
Check.Check.typeOf.number.equals(
|
566
|
+
"uBuffer.length",
|
567
|
+
"heightBuffer.length",
|
568
|
+
uBuffer.length,
|
569
|
+
heightBuffer.length
|
570
|
+
);
|
571
|
+
}
|
572
|
+
//>>includeEnd('debug');
|
573
|
+
|
574
|
+
const count = uBuffer.length;
|
575
|
+
|
576
|
+
let u = 0;
|
577
|
+
let v = 0;
|
578
|
+
let height = 0;
|
579
|
+
|
580
|
+
for (let i = 0; i < count; ++i) {
|
581
|
+
u += zigZagDecode(uBuffer[i]);
|
582
|
+
v += zigZagDecode(vBuffer[i]);
|
583
|
+
|
584
|
+
uBuffer[i] = u;
|
585
|
+
vBuffer[i] = v;
|
586
|
+
|
587
|
+
if (defaultValue.defined(heightBuffer)) {
|
588
|
+
height += zigZagDecode(heightBuffer[i]);
|
589
|
+
heightBuffer[i] = height;
|
590
|
+
}
|
591
|
+
}
|
592
|
+
};
|
593
|
+
|
594
|
+
/**
|
595
|
+
* Dequantizes a quantized typed array into a floating point typed array.
|
596
|
+
*
|
597
|
+
* @see {@link https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_mesh_quantization#encoding-quantized-data}
|
598
|
+
*
|
599
|
+
* @param {Int8Array|Uint8Array|Int16Array|Uint16Array|Int32Array|Uint32Array} typedArray The typed array for the quantized data.
|
600
|
+
* @param {ComponentDatatype} componentDatatype The component datatype of the quantized data.
|
601
|
+
* @param {AttributeType} type The attribute type of the quantized data.
|
602
|
+
* @param {Number} count The number of attributes referenced in the dequantized array.
|
603
|
+
*
|
604
|
+
* @returns {Float32Array} The dequantized array.
|
605
|
+
*/
|
606
|
+
AttributeCompression.dequantize = function (
|
607
|
+
typedArray,
|
608
|
+
componentDatatype,
|
609
|
+
type,
|
610
|
+
count
|
611
|
+
) {
|
612
|
+
//>>includeStart('debug', pragmas.debug);
|
613
|
+
Check.Check.defined("typedArray", typedArray);
|
614
|
+
Check.Check.defined("componentDatatype", componentDatatype);
|
615
|
+
Check.Check.defined("type", type);
|
616
|
+
Check.Check.defined("count", count);
|
617
|
+
//>>includeEnd('debug');
|
618
|
+
|
619
|
+
const componentsPerAttribute = AttributeType$1.getNumberOfComponents(type);
|
620
|
+
|
621
|
+
let divisor;
|
622
|
+
switch (componentDatatype) {
|
623
|
+
case ComponentDatatype.ComponentDatatype.BYTE:
|
624
|
+
divisor = 127.0;
|
625
|
+
break;
|
626
|
+
case ComponentDatatype.ComponentDatatype.UNSIGNED_BYTE:
|
627
|
+
divisor = 255.0;
|
628
|
+
break;
|
629
|
+
case ComponentDatatype.ComponentDatatype.SHORT:
|
630
|
+
divisor = 32767.0;
|
631
|
+
break;
|
632
|
+
case ComponentDatatype.ComponentDatatype.UNSIGNED_SHORT:
|
633
|
+
divisor = 65535.0;
|
634
|
+
break;
|
635
|
+
case ComponentDatatype.ComponentDatatype.INT:
|
636
|
+
divisor = 2147483647.0;
|
637
|
+
break;
|
638
|
+
case ComponentDatatype.ComponentDatatype.UNSIGNED_INT:
|
639
|
+
divisor = 4294967295.0;
|
640
|
+
break;
|
641
|
+
//>>includeStart('debug', pragmas.debug);
|
642
|
+
default:
|
643
|
+
throw new Check.DeveloperError(
|
644
|
+
`Cannot dequantize component datatype: ${componentDatatype}`
|
645
|
+
);
|
646
|
+
//>>includeEnd('debug');
|
647
|
+
}
|
648
|
+
|
649
|
+
const dequantizedTypedArray = new Float32Array(
|
650
|
+
count * componentsPerAttribute
|
651
|
+
);
|
652
|
+
|
653
|
+
for (let i = 0; i < count; i++) {
|
654
|
+
for (let j = 0; j < componentsPerAttribute; j++) {
|
655
|
+
const index = i * componentsPerAttribute + j;
|
656
|
+
dequantizedTypedArray[index] = Math.max(
|
657
|
+
typedArray[index] / divisor,
|
658
|
+
-1.0
|
659
|
+
);
|
660
|
+
}
|
661
|
+
}
|
662
|
+
|
663
|
+
return dequantizedTypedArray;
|
664
|
+
};
|
665
|
+
|
666
|
+
/**
|
667
|
+
* Decode RGB565-encoded colors into a floating point typed array containing
|
668
|
+
* normalized RGB values.
|
669
|
+
*
|
670
|
+
* @param {Uint16Array} typedArray Array of RGB565 values
|
671
|
+
* @param {Float32Array} [result] Array to store the normalized VEC3 result
|
672
|
+
*/
|
673
|
+
AttributeCompression.decodeRGB565 = function (typedArray, result) {
|
674
|
+
//>>includeStart('debug', pragmas.debug);
|
675
|
+
Check.Check.defined("typedArray", typedArray);
|
676
|
+
|
677
|
+
const expectedLength = typedArray.length * 3;
|
678
|
+
if (defaultValue.defined(result)) {
|
679
|
+
Check.Check.typeOf.number.equals(
|
680
|
+
"result.length",
|
681
|
+
"typedArray.length * 3",
|
682
|
+
result.length,
|
683
|
+
expectedLength
|
684
|
+
);
|
685
|
+
}
|
686
|
+
//>>includeEnd('debug');
|
687
|
+
|
688
|
+
const count = typedArray.length;
|
689
|
+
if (!defaultValue.defined(result)) {
|
690
|
+
result = new Float32Array(count * 3);
|
691
|
+
}
|
692
|
+
|
693
|
+
const mask5 = (1 << 5) - 1;
|
694
|
+
const mask6 = (1 << 6) - 1;
|
695
|
+
const normalize5 = 1.0 / 31.0;
|
696
|
+
const normalize6 = 1.0 / 63.0;
|
697
|
+
for (let i = 0; i < count; i++) {
|
698
|
+
const value = typedArray[i];
|
699
|
+
const red = value >> 11;
|
700
|
+
const green = (value >> 5) & mask6;
|
701
|
+
const blue = value & mask5;
|
702
|
+
|
703
|
+
const offset = 3 * i;
|
704
|
+
result[offset] = red * normalize5;
|
705
|
+
result[offset + 1] = green * normalize6;
|
706
|
+
result[offset + 2] = blue * normalize5;
|
707
|
+
}
|
708
|
+
|
709
|
+
return result;
|
710
|
+
};
|
711
|
+
|
712
|
+
var AttributeCompression$1 = AttributeCompression;
|
713
|
+
|
714
|
+
exports.AttributeCompression = AttributeCompression$1;
|
715
|
+
|
716
|
+
}));
|