UNPKG

@arcgis/core

Version:

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

6 lines (5 loc) 1.86 kB
/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.33/esri/copyright.txt for details. */ import{_ as t,a as e}from"../../../../../../../chunks/tslib.es6.js";import{input as i}from"../../GraphShaderModule.js";import{Float as s,sin as o,cos as r,Vec3 as l,Vec4 as n,Mat3 as a,mix as m}from"../../graph/glsl.js";import{AAnimatedPolyShader as p,PolyVertexInput as u,PolyHittestVertexInput as c,PolyFragmentInput as d}from"./AAnimatedPolyShader.js";import{getPatternMatrix as h}from"../shaders/ComplexFillShader.js";import{hittestFill as y}from"../shaders/hittestUtils.js";class f extends p{constructor(){super(...arguments),this.type="AnimatedFillShader",this.computeAttributes={pos:["nextPos1","nextPos2"]}}vertex(t,e){const{distanceToPx:i,ndc:p,z:u,color:c,isOutline:d,strokeWidth:y,isSDF:f,baseSize:x,scale:g,scaleSymbolsProportionally:b}=this._vertexPoly(t),w=this.view.requiredZoomFactor,P=t.sizing.xy,S=P.multiply(w),v=new s(0),z=o(v),F=r(v),j=h(t.id,S,z,F,t.bitset),A=this.localTileOffset.getPatternOffsetAtTileOrigin(P,z,F),O=w.multiply(t.offset.subtract(A)).divide(S),T=new l(t.pos,1),M=j.multiply(T).xy.subtract(O),k=t.tlbr.divide(this.mosaicInfo.size.xyxy);return{glPosition:new n(p,u,1),tlbr:k,uv:M,color:c.multiply(new s(1).subtract(d)),outlineColor:c.multiply(d),distanceToPx:i,strokeWidth:y.multiply(m(new s(1),g,b)),isOutline:d,isSDF:f,...this.maybeRunHittest(t,e,{pos:t.pos,size:x,sizeCorrection:new s(1),isMapAligned:new s(1),vvRotationMat3:new a(1,0,0,0,1,0,0,0,1),placementMat3:new a(1,0,0,0,1,0,0,0,1),outlineSize:new s(1),distanceToPx:i,isSDF:f})}}fragment(t){const e=this._fragmentPoly(t);return this.getFragmentOutput(e,t)}hittest(t,e,i){return y(this,t,e)}}t([e(0,i(u)),e(1,i(c))],f.prototype,"vertex",null),t([e(0,i(d))],f.prototype,"fragment",null);export{f as AnimatedFillShader};