/* COPYRIGHT Esri - https://js.arcgis.com/5.1.2/LICENSE.txt */
import{FeatureTechnique as e}from"../FeatureTechnique.js";import{isHittest as t,getSelectionDefines as s,getFeatureTextures as r,getFeatureUniforms as i,resolveDynamicUniforms as o,getFeaturePipelineState as a}from"../featureTechniqueUtils.js";import{getAntialiasingControls as n}from"./utils.js";import{LineShader as u}from"../shaders/LineShader.js";class m extends e{constructor(){super(...arguments),this.type=21,this.shaders={geometry:new u},this.symbologyPlane=1}render(e,u){const{painter:m,pixelRatio:p}=e,h=u.instance.getInput();m.setShader({shader:this.shaders.geometry,uniforms:{...o(e,u.target,h.uniforms),...i(e,u.target),antialiasingControls:n(p)},textures:r(e),defines:{...s(e)},optionalAttributes:h.optionalAttributes,useComputeBuffer:t(e)}),m.setPipelineState(a(e)),m.submitDraw(e,u)}}export{m as LineTechnique};
