UNPKG

@arcgis/core

Version:

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

6 lines (5 loc) 2.17 kB
/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.32/esri/copyright.txt for details. */ import{GLSLShaderModule as e}from"../../GLSLShaderModule.js";import{Float as i,FixedArray as t,Vec4 as a,Vec2 as o,Vec3 as s,Sampler2D as r,Mat3 as l}from"../../graph/glsl.js";import{resolveIncludes as n}from"../../../shaders/sources/resolver.js";const p={hittestDist:i,hittestPos:o},y={filterFlags:r,animation:r,visualVariableData:r,dataDriven0:r,dataDriven1:r,dataDriven2:r,gpgpu:r,size:i},d={displayViewScreenMat3:l,displayViewMat3:l,displayMat3:l,viewMat3:l,tileMat3:l,displayZoomFactor:i,requiredZoomFactor:i,tileOffset:o,currentScale:i,currentZoom:i,metersPerSRUnit:i};class u extends e{constructor(){super(...arguments),this.vertexShader=n("materials/pie/pie.vert"),this.fragmentShader=n("materials/pie/pie.frag"),this.required={...y,...d,outlineWidth:i,colors:t,defaultColor:a,othersColor:a,outlineColor:a,donutRatio:i,sectorThreshold:i},this.options={hittestUniforms:p,visualVariableSizeMinMaxValue:{minMaxValueAndSize:a},visualVariableSizeScaleStops:{sizes:{...t.ofType(i,8),type:"array",elementType:i,size:8},values:{...t.ofType(i,8),type:"array",elementType:i,size:8}},visualVariableSizeStops:{sizes:{...t.ofType(i,8),type:"array",elementType:i,size:8},values:{...t.ofType(i,8),type:"array",elementType:i,size:8}},visualVariableSizeUnitValue:{unitValueToPixelsRatio:i},visualVariableOpacity:{opacities:{...t.ofType(i,8),type:"array",elementType:i,size:8},opacityValues:{...t.ofType(i,8),type:"array",elementType:i,size:8}}},this.locations={pos:{index:0,type:o},id:{index:1,type:s},bitset:{index:2,type:i},offset:{index:3,type:o},texCoords:{index:4,type:o},size:{index:5,type:o},referenceSize:{index:6,type:i},zoomRange:{index:7,type:o}},this.defines={VV_SIZE_MIN_MAX_VALUE:"boolean",VV_SIZE_SCALE_STOPS:"boolean",VV_SIZE_FIELD_STOPS:"boolean",VV_SIZE_UNIT_VALUE:"boolean",VV_OPACITY:"boolean",HITTEST:"boolean",numberOfFields:"number",highlight:"boolean",inside:"boolean",outside:"boolean"}}setNumberOfFields(e){this.required.colors={...t.ofType(a,e),type:"array",elementType:a,size:e}}}export{u as PieChartShader};