@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 1.02 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{setSingleImageTextures as e,setCoordsAndTransforms as t}from"./utils.js";const r={vsPath:"raster/rfx/vs",fsPath:"raster/rfx/slope",attributes:new Map([["a_position",0],["a_texcoord",1]])};function s(e,t){const{painter:s,rasterFunction:o}=e,{slopeType:a,isOutputRounded:i}=o.parameters,n=[];return"percent-rise"===a&&n.push("percentRise"),i&&n.push("roundOutput"),s.materialManager.getProgram(r,n)}function o(r,s,o){e(r,s,o),t(s);const a=o.getRasterTextureSize();s.setUniform2fv("u_srcImageSize",a);const i=o.getRasterCellSize();s.setUniform2fv("u_cellSize",i);const{zFactor:n,slopeType:u,pixelSizePower:p,pixelSizeFactor:c}=r.rasterFunction.parameters;s.setUniform1f("u_zFactor",n),s.setUniform1f("u_pixelSizePower","adjusted"===u?p:0),s.setUniform1f("u_pixelSizeFactor","adjusted"===u?c:0)}const a={createProgram:s,bindTextureAndUniforms:o};export{a as default};