@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 6.6 kB
JavaScript
/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.32/esri/copyright.txt for details.
*/
import{_ as e}from"../chunks/tslib.es6.js";import t from"../core/Error.js";import{clone as i}from"../core/lang.js";import{setDeepValue as r}from"../core/object.js";import{property as o}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import{subclass as a}from"../core/accessorSupport/decorators/subclass.js";import n from"./FeatureLayer.js";import{useViewTimeProperty as s}from"./mixins/TemporalLayer.js";import{orientedImageryTypeMap as p,timeIntervalUnitTypeMap as m,verticalMeasurementTypeMap as y,getEffectiveElevationSource as l,isOrientationAccuracy as d}from"./orientedImagery/core/utils.js";import u from"../time/TimeExtent.js";import{SaveOperationType as c}from"../webdoc/interfaces.js";const h=new Set(["demPathPrefix","demPathSuffix","depthImagePathPrefix","depthImagePathSuffix","elevationSource","horizontalMeasurementUnit","imageGeometryField","imageReferenceField","verticalMeasurementUnit","videoPathPrefix","videoPathSuffix","timeAnimation","visibilityTimeExtent"]),g=(e,t)=>!h.has(t)&&e,f=(e,t,i)=>{const r=`orientedImageryProperties.${e}`;return{name:r,write:t?{ignoreOrigin:!0,target:r,writer:t}:{ignoreOrigin:!0},read:i?{ignoreOrigin:!0,source:r,reader:i}:{ignoreOrigin:!0}}};function v(e){return e.json?(e.json.origins=e.json.origins??{},e.json.origins["web-scene"]={write:!1,read:!1},e):e}function j(e,t,i,r){const{name:o,write:a,read:n}=f(e,t,i),s={name:o,write:a,read:n,origins:{service:{name:`orientedImageryInfo.${o}`,write:t,read:i},"web-scene":{name:o,write:g(a,e),read:g(n,e)},"web-map":{name:o,write:a,read:n}}};return r&&s.origins?(s.type=r,s.origins["web-map"].type=r,s.origins["web-scene"].type=r,s):s}let P=class extends n{constructor(){super(...arguments),this.cameraHeading=null,this.cameraHeight=null,this.cameraPitch=null,this.cameraRoll=null,this.coveragePercent=null,this.demPathPrefix=null,this.demPathSuffix=null,this.depthImagePathPrefix=null,this.depthImagePathSuffix=null,this.elevationSource=null,this.farDistance=null,this.geometryType="point",this.horizontalFieldOfView=null,this.horizontalMeasurementUnit=null,this.imageGeometryField="ImageGeometry",this.imagePathPrefix=null,this.imagePathSuffix=null,this.imageReferenceField="OIObjectID",this.imageRotation=null,this.maximumDistance=null,this.nearDistance=null,this.operationalLayerType="OrientedImageryLayer",this.orientationAccuracy=null,this.orientedImageryType=null,this.supportedSourceTypes=new Set(["Oriented Imagery Layer"]),this.type="oriented-imagery",this.timeIntervalUnit="days",this.useViewTime=!0,this.verticalFieldOfView=null,this.verticalMeasurementUnit=null,this.videoPathPrefix=null,this.videoPathSuffix=null,this.visibilityTimeExtent=null}get effectiveElevationSource(){const{elevationSource:e,demPathPrefix:t,demPathSuffix:i}=this;return l(e,t,i)}async save(e){return this._debouncedSaveOperations(c.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations(c.SAVE_AS,t,e)}findFirstValidLayerId(e){return e.layers?.find((e=>this.supportedSourceTypes.has(e.type)))?.id}_verifySource(){if(super._verifySource(),"point"!==this.geometryType)throw new t("oriented-imagery-layer:invalid-geometry-type","OrientedImageryLayer only supports point geometry type")}};e([o({type:Number,json:j("cameraHeading")})],P.prototype,"cameraHeading",void 0),e([o({type:Number,json:j("cameraHeight")})],P.prototype,"cameraHeight",void 0),e([o({type:Number,json:j("cameraPitch")})],P.prototype,"cameraPitch",void 0),e([o({type:Number,json:j("cameraRoll")})],P.prototype,"cameraRoll",void 0),e([o({type:Number,json:j("coveragePercent")})],P.prototype,"coveragePercent",void 0),e([o({type:String,json:j("demPathPrefix")})],P.prototype,"demPathPrefix",void 0),e([o({type:String,json:j("demPathSuffix")})],P.prototype,"demPathSuffix",void 0),e([o({type:String,json:j("depthImagePathPrefix")})],P.prototype,"depthImagePathPrefix",void 0),e([o({type:String,json:j("depthImagePathSuffix")})],P.prototype,"depthImagePathSuffix",void 0),e([o({type:Object,json:j("elevationSource")})],P.prototype,"elevationSource",void 0),e([o({readOnly:!0})],P.prototype,"effectiveElevationSource",null),e([o({type:Number,json:j("farDistance")})],P.prototype,"farDistance",void 0),e([o()],P.prototype,"geometryType",void 0),e([o({type:Number,json:j("horizontalFieldOfView")})],P.prototype,"horizontalFieldOfView",void 0),e([o({type:String,json:j("horizontalMeasurementUnit")})],P.prototype,"horizontalMeasurementUnit",void 0),e([o({type:String,json:{...j("imageGeometryField"),default:"ImageGeometry"}})],P.prototype,"imageGeometryField",void 0),e([o({type:String,json:j("imagePathPrefix")})],P.prototype,"imagePathPrefix",void 0),e([o({type:String,json:j("imagePathSuffix")})],P.prototype,"imagePathSuffix",void 0),e([o({type:String,json:{...j("imageReferenceField"),default:"OIObjectID"}})],P.prototype,"imageReferenceField",void 0),e([o({type:Number,json:j("imageRotation")})],P.prototype,"imageRotation",void 0),e([o({type:Number,json:j("maximumDistance")})],P.prototype,"maximumDistance",void 0),e([o({type:Number,json:j("nearDistance")})],P.prototype,"nearDistance",void 0),e([o({type:["OrientedImageryLayer"],json:{origins:{"portal-item":{name:"layerType",write:{enabled:!0,ignoreOrigin:!0}}}}})],P.prototype,"operationalLayerType",void 0),e([o({json:{...j("orientationAccuracy",((e,t,i)=>{r(i,e.join(";"),t)}),(e=>{const t=e?.split(";")?.map(Number);return d(t)?t:[0,0,0,0,0,0,0,0,0]}),String)}})],P.prototype,"orientationAccuracy",void 0),e([o({json:{...j("orientedImageryType",p.write,p.read,p.jsonValues.slice(1))}})],P.prototype,"orientedImageryType",void 0),e([o({json:{read:!1},value:"oriented-imagery",readOnly:!0})],P.prototype,"type",void 0),e([o({type:m.apiValues,json:{...j("timeIntervalUnit",m.write,m.read,m.jsonValues)}})],P.prototype,"timeIntervalUnit",void 0),e([o(v(i(s)))],P.prototype,"useViewTime",void 0),e([o({type:Number,json:j("verticalFieldOfView")})],P.prototype,"verticalFieldOfView",void 0),e([o({type:y.apiValues,json:{...j("verticalMeasurementUnit",y.write,y.read,y.jsonValues)}})],P.prototype,"verticalMeasurementUnit",void 0),e([o({type:String,json:j("videoPathPrefix")})],P.prototype,"videoPathPrefix",void 0),e([o({type:String,json:j("videoPathSuffix")})],P.prototype,"videoPathSuffix",void 0),e([o({type:u,json:{origins:{"web-scene":{write:!1,read:!1}}}})],P.prototype,"visibilityTimeExtent",void 0),P=e([a("esri.layers.OrientedImageryLayer")],P);const S=P;export{S as default};