UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

3 lines (2 loc) 1.38 kB
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.8/LICENSE.txt */ import e from"../../../geometry/Point.js";import n from"../../../geometry/SpatialReference.js";import{convertPixelLocationToSphereVertex as t,convertSphereVertexToPixelLocation as r}from"../../../layers/orientedImagery/transformations/utils.js";function a(r,a,o){const[i,s]=a;return new e(t(r,i,s,o),n.WebMercator)}function o(e){return{x:e.x-.5,y:.5-e.y}}function i(t){return new e({...o(t),spatialReference:n.WebMercator})}function s(e,n,t,r){switch(n){case"default":return i(e);case"panoramic":return a(e,t,r);default:throw new Error(`Unsupported image mode: ${n}`)}}function c(e){return{x:e.x+.5,y:.5-e.y}}function p(e,n,t){const[a,o]=n;return r({x:e.x,y:e.y,z:e.z},a,o,t)}function m(e,n,t,r){return"panoramic"===n?p(e,t,r):c(e)}function u(e){if(e&&"hasZ"in e&&e.hasZ)switch(e.type){case"point":e.z=void 0,e.hasZ=!1;break;case"polyline":e.paths=e.paths.map(e=>e.map(e=>3===e.length?[e[0],e[1]]:e)),e.hasZ=!1;break;case"polygon":e.rings=e.rings.map(e=>e.map(e=>3===e.length?[e[0],e[1]]:e)),e.hasZ=!1;break;case"multipoint":e.points=e.points.map(e=>3===e.length?[e[0],e[1]]:e),e.hasZ=!1;break;case"extent":e.zmax=void 0,e.zmin=void 0}}export{i as imageSpaceTo2DPoint,a as imageSpaceTo3DPoint,s as imageSpaceToPoint,o as pixelTo2D,m as pointToImageSpace,u as removeZFromGeometry,c as toImageSpace,p as toImageSpace3D};