@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
3 lines (2 loc) • 8.89 kB
JavaScript
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.8/LICENSE.txt */
import t from"../request.js";import{ensureClass as e}from"../core/accessorSupport/ensureType.js";import r from"../geometry/SpatialReference.js";import{fromJSON as o}from"../geometry/support/jsonUtils.js";import{normalizeCentralMeridian as a}from"../geometry/support/normalizeUtils.js";import{srToRESTValue as s}from"../geometry/support/spatialReferenceUtils.js";import{parseUrl as n,encode as m,asValidOptions as i}from"./utils.js";import p from"./support/FindImagesParameters.js";import u from"./support/FindImagesResult.js";import c from"./support/ImageAngleParameters.js";import f from"./support/ImageAngleResult.js";import l from"./support/ImageAreaParameters.js";import g from"./support/ImageAreaResult.js";import y from"./support/ImageBoundaryParameters.js";import j from"./support/ImageBoundaryResult.js";import d from"./support/ImageDistanceParameters.js";import S from"./support/ImageDistanceResult.js";import I from"./support/ImageGPSInfoParameters.js";import N from"./support/ImageGPSInfoResult.js";import R from"./support/ImageHeightParameters.js";import h from"./support/ImageHeightResult.js";import O from"./support/ImageHistogramParameters.js";import J from"./support/ImageIdentifyParameters.js";import w from"./support/ImageIdentifyResult.js";import P from"./support/ImagePixelLocationParameters.js";import q from"./support/ImagePixelLocationResult.js";import G from"./support/ImagePointParameters.js";import $ from"./support/ImagePointResult.js";import C from"./support/ImageSampleParameters.js";import M from"./support/ImageSampleResult.js";import b from"./support/ImageToMapMultirayParameters.js";import v from"./support/ImageToMapParameters.js";import F from"./support/ImageUrlParameters.js";import T from"./support/ImageUrlResult.js";import A from"./support/ImageVolumeParameters.js";import L from"./support/ImageVolumeResult.js";import U from"./support/MapToImageParameters.js";import x from"./support/MeasureAreaFromImageResult.js";import H from"./support/MeasureFromImageParameters.js";import V from"./support/MeasureLengthFromImageResult.js";function B(t){const e=t?.time;if(e&&(null!=e.start||null!=e.end)){const r=[];null!=e.start&&r.push(e.start),null==e.end||r.includes(e.end)||r.push(e.end),t.time=r.join(",")}}async function D(t,r,o){const s=e(O,r),p=n(t),u=s.geometry?[s.geometry]:[],c=await a(u),f=s.toJSON();B(f);const l=c?.[0];null!=l&&(f.geometry=st(l));const g=m({...p.query,f:"json",...f});return i(g,o)}async function k(r,o,a){const s=e(A,o).toJSON();s.geometries=JSON.stringify(s.geometries);const p=n(r),u=m({...p.query,f:"json",...s}),c=i(u,a),{data:f}=await t(`${p.path}/calculateVolume`,c);return L.fromJSON({volumes:f.results})}async function z(o,a,s){const p=e(c,a),u=p.toJSON();null!=u.angleName&&(u.angleName=u.angleName.join(",")),p?.point?.spatialReference?.imageCoordinateSystem&&(u.point.spatialReference=nt(p.point.spatialReference)),p?.spatialReference?.imageCoordinateSystem&&(u.spatialReference=mt(p.spatialReference));const l=n(o),g=m({...l.query,f:"json",...u}),y=i(g,s),{data:j}=await t(`${l.path}/computeAngles`,y);return j.spatialReference=j.spatialReference?null!=j.spatialReference.geodataXform?new r({wkid:0,imageCoordinateSystem:j.spatialReference}):r.fromJSON(j.spatialReference):null,"NaN"===j.north&&(j.north=null),"NaN"===j.up&&(j.up=null),new f(j)}async function E(r,o,a){const s=e(P,o),p=s.toJSON(),{geometries:u}=s;if(u)for(let t=0;t<u.length;t++)u[t].spatialReference?.imageCoordinateSystem&&(p.geometries.geometries[t].spatialReference=nt(u[t].spatialReference));const c=n(r),f=m({...c.query,f:"json",...p}),l=i(f,a),{data:g}=await t(`${c.path}/computePixelLocation`,l);return q.fromJSON(g)}async function X(e,r,o){const a=await D(e,r,o),s=n(e),{data:m}=await t(`${s.path}/computeStatisticsHistograms`,a),{statistics:i}=m;return i?.length&&i.forEach(t=>{t.avg=t.mean,t.stddev=t.standardDeviation}),{statistics:i,histograms:m.histograms}}async function K(e,r,o){const a=await D(e,r,o),s=n(e),{data:m}=await t(`${s.path}/computeHistograms`,a);return{histograms:m.histograms}}async function Q(r,o,s){const p=e(C,o),u=p.toJSON();B(u),u.outFields?.length&&(u.outFields=u.outFields.join(","));const c=await a(p.geometry),f=c?.[0];null!=f&&(u.geometry=st(f));const l=n(r),g=m({...l.query,f:"json",...u}),y=i(g,s),{data:j}=await t(`${l.path}/getSamples`,y),d=j.samples.map(t=>{const e="NaN"===t.value||""===t.value?null:t.value.split(" ").map(t=>Number(t));return{...t,pixelValue:e}});return M.fromJSON({samples:d})}async function W(r,o,s){const p=e(J,o),u=n(r),c=p.geometry?[p.geometry]:[];return a(c).then(e=>{const r=p.toJSON(),o=e?.[0];null!=o&&(r.geometry=JSON.stringify(st(o)));const a=m({...u.query,f:"json",...r}),n=i(a,s);return t(u.path+"/identify",n)}).then(t=>w.fromJSON(t.data))}async function Y(t,r,o){const a=e(R,r),s=await et(t,a,[a.fromGeometry,a.toGeometry],o);return h.fromJSON(s)}async function Z(t,r,o){const a=e(l,r),s=await et(t,a,[a.geometry],o);return g.fromJSON(s)}async function _(t,r,o){const a=e(G,r),s=await et(t,a,[a.geometry],o);return $.fromJSON(s)}async function tt(t,r,o){const a=e(d,r),s=await et(t,a,[a.fromGeometry,a.toGeometry],o);return S.fromJSON(s)}async function et(e,r,o,s){const p=n(e),u=await a(o),c=r.toJSON();null!=u[0]&&(c.fromGeometry=JSON.stringify(st(u[0]))),null!=u[1]&&(c.toGeometry=JSON.stringify(st(u[1])));const f=m({...p.query,f:"json",...c}),l=i(f,s),{data:g}=await t(p.path+"/measure",l);return g}async function rt(t,r,o){const a=e(H,r),s=await at(t,a,o);return V.fromJSON(s)}async function ot(t,r,o){const a=e(H,r),s=await at(t,a,o);return x.fromJSON(s)}async function at(r,o,a){o=e(H,o);const s=n(r),p=o.toJSON(),u=m({...s.query,f:"json",...p}),c=i(u,a),{data:f}=await t(s.path+"/measureFromImage",c);return f}function st(t){const e=t.toJSON();return t.spatialReference?.imageCoordinateSystem&&(e.spatialReference=nt(t.spatialReference)),e}function nt(t){const{imageCoordinateSystem:e}=t;if(e){const{id:t,referenceServiceName:r}=e;return null!=t?r?{icsid:t,icsns:r}:{icsid:t}:{ics:e}}return t.toJSON()}function mt(t,e){if(!t.imageCoordinateSystem)return s(t);const r=nt(t),{icsid:o,icsns:a}=r;return null==o||null!=a&&!e?.toLowerCase().includes("/"+a.toLowerCase()+"/")?JSON.stringify(r):`0:${o}`}async function it(r,o,a){const s=e(y,o),p=n(r),u=s.toJSON();s.outSpatialReference&&(u.outSR=mt(s.outSpatialReference));const c=m({...p.query,f:"json",...u}),f=i(c,a),{data:l}=await t(p.path+"/queryBoundary",f);return j.fromJSON(l)}async function pt(r,o,s){const p=e(I,o),u=p.toJSON();B(u),u.objectIds?.length&&(u.objectIds=u.objectIds.join(",")),u.geometry||u.objectIds||u.time||u.where||(u.where="1=1");const c=await a(p.geometry),f=c?.[0];null!=f&&(u.geometry=st(f));const l=f?.spatialReference??p.geometry?.spatialReference;l&&(u.inSR=mt(l));const g=n(r),y=m({...g.query,f:"json",...u}),j=i(y,s),{data:d}=await t(`${g.path}/queryGPSInfo`,j);return N.fromJSON(d)}async function ut(r,a,s){const p=e(v,a),u=p.toJSON();p.geometry.spatialReference.imageCoordinateSystem&&(u.geometry=st(p.geometry)),p.depthOffset&&p.adjust||delete u.options;const c=n(r),f=m({...c.query,f:"json",...u}),l=i(f,s),{data:g}=await t(`${c.path}/imageToMap`,l);return o(g)}async function ct(r,a,s){const p=e(b,a),u=p.toJSON();p.rasterIds?.length&&(u.rasterIds=p.rasterIds.join(","));const c=n(r),f=m({...c.query,f:"json",...u}),l=i(f,s),{data:g}=await t(`${c.path}/imageToMapMultiray`,l);return o(g)}async function ft(r,s,p){const u=e(U,s),c=u.toJSON(),f=await a(u.geometry),l=f?.[0];null!=l&&(c.geometry=st(l)),u.visibleOnly||delete c.options;const g=l?.spatialReference??u.geometry?.spatialReference;g&&(c.inSR=mt(g));const y=n(r),j=m({...y.query,f:"json",...c}),d=i(j,p),{data:S}=await t(`${y.path}/mapToImage`,d);return o(S)}async function lt(r,o,a){const s=e(F,o).toJSON(),p=n(r),u=m({...p.query,f:"json",...s}),c=i(u,a),{data:f}=await t(`${p.path}/getImageUrl`,c);return T.fromJSON(f)}async function gt(r,o,s){const c=e(p,o),f=c.toJSON(),l=await a([c.fromGeometry,c.toGeometry]);null!=l[0]&&(f.fromGeometry=st(l[0]),l[0].spatialReference&&(f.inSR=mt(l[0].spatialReference))),null!=l[1]&&(f.toGeometry=st(l[1])),c.objectIds?.length&&(f.objectIds=f.objectIds.join(","));const g=n(r),y=m({...g.query,f:"json",...f}),j=i(y,s),{data:d}=await t(`${g.path}/find`,j);return u.fromJSON(d)}export{k as calculateVolume,z as computeAngles,K as computeHistograms,E as computePixelSpaceLocations,X as computeStatisticsHistograms,gt as findImages,nt as getImageSpatialReferenceJSON,mt as getImageSpatialReferenceQueryParameter,lt as getImageUrl,Q as getSamples,W as identify,ut as imageToMap,ct as imageToMapMultiray,ft as mapToImage,Z as measureAreaAndPerimeter,ot as measureAreaFromImage,tt as measureDistanceAndAngle,Y as measureHeight,rt as measureLengthFromImage,_ as measurePointOrCentroid,it as queryBoundary,pt as queryGPSInfo};