{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/TurboLine.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/TileClipper.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/Geometry.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/mesh/Tesselator.js"],"names":["e","t","x","y","i","length","r","n","s","Math","sqrt","o","h","l","a","this","writeVertex","writeTriangle","canUseThinTessellation","prevNormal","nextNormal","textureNormalLeft","textureNormalRight","textureNormal","joinNormal","inner","outer","roundStart","roundEnd","startBreak","endBreak","innerPrev","innerNext","bevelStart","bevelEnd","bevelMiddle","halfWidth","offset","tessellateThin_","tessellate_","wrapDistance","initialDistance","c","d","u","v","pixelCoordRatio","f","capType","w","joinType","g","miterLimit","min","T","roundLimit","m","V","textured","b","N","k","p","M","E","L","B","S","_","j","P","A","D","U","R","W","q","X","C","z","F","abs","Number","MAX_VALUE","G","H","I","ratio","lines","starts","validateTessellation","pixelRatio","pixelMargin","tileSize","dz","yPos","xPos","setExtent","_extent","finalRatio","margin","xmin","ymin","xmax","ymax","type","line","start","_pushLine","_prevIsIn","_isIn","_moveTo","_prevPt","_firstPt","_dist","distance","_lineTo","_intersect","_r","push","lineTo","pop","simplify","Error","round","_is_h","_is_v","equals","_ratio","isEqual","fillParent","calcDeltas","addDeltas","calcDelta","exports","DEBUG","assert","GLU_TESS_MAX_COORD","TRUE_PROJECT","GLU_TESS_DEFAULT_TOLERANCE","windingRule","GLU_TESS_WINDING_ODD","GLU_TESS_WINDING_NONZERO","GLU_TESS_WINDING_POSITIVE","GLU_TESS_WINDING_NEGATIVE","GLU_TESS_WINDING_ABS_GEQ_TWO","primitiveType","GL_LINE_LOOP","GL_TRIANGLES","GL_TRIANGLE_STRIP","GL_TRIANGLE_FAN","errorType","GLU_TESS_MISSING_BEGIN_POLYGON","GLU_TESS_MISSING_END_POLYGON","GLU_TESS_MISSING_BEGIN_CONTOUR","GLU_TESS_MISSING_END_CONTOUR","GLU_TESS_COORD_TOO_LARGE","GLU_TESS_NEED_COMBINE_CALLBACK","gluEnum","GLU_TESS_BEGIN","GLU_TESS_VERTEX","GLU_TESS_END","GLU_TESS_ERROR","GLU_TESS_EDGE_FLAG","GLU_TESS_COMBINE","GLU_TESS_BEGIN_DATA","GLU_TESS_VERTEX_DATA","GLU_TESS_END_DATA","GLU_TESS_ERROR_DATA","GLU_TESS_EDGE_FLAG_DATA","GLU_TESS_COMBINE_DATA","GLU_TESS_MESH","GLU_TESS_TOLERANCE","GLU_TESS_WINDING_RULE","GLU_TESS_BOUNDARY_ONLY","GLU_INVALID_ENUM","GLU_INVALID_VALUE","geom","vertEq","vertLeq","edgeEval","edgeSign","transLeq","transEval","transSign","edgeGoesLeft","dst","org","edgeGoesRight","vertL1dist","vertCCW","interpolate_","edgeIntersect","mesh","makeEdge","makeEdgePair_","eHead","makeVertex_","vHead","sym","makeFace_","fHead","meshSplice","killVertex_","lFace","killFace_","splice_","anEdge","deleteEdge","rFace","oNext","oPrev","killEdge_","addEdgeVertex","lNext","splitEdge","winding","connect","zapFace","prev","next","meshUnion","deleteMesh","GluHalfEdge","GluVertex","GluFace","inside","normal","S_UNIT_X_","S_UNIT_Y_","projectPolygon","computeNormal_","longAxis_","normalize_","dot_","coords","checkOrientation_","render","renderMesh","callBeginCallback","callEdgeFlagCallback","callVertexCallback","data","callEndCallback","renderBoundary","sweep","SENTINEL_COORD_","TOLERANCE_NONZERO_","computeInterior","fatalError","removeDegenerateEdges_","initPriorityQ_","initEdgeDict_","pq","extractMin","minimum","spliceMergeVertices_","sweepEvent_","dict","getMin","getKey","event","eUp","doneEdgeDict_","donePriorityQ_","removeDegenerateFaces_","checkMesh","addWinding_","edgeLeq_","deleteRegion_","fixUpperEdge","activeRegion","deleteNode","nodeUp","fixUpperEdge_","topLeftRegion_","regionAbove","regionBelow","topRightRegion_","addRegionBelow_","ActiveRegion","insertBefore","isWindingInside_","computeWinding_","windingNumber","finishRegion_","finishLeftRegions_","lPrev","addRightEdges_","rPrev","dirty","checkForRightSplice_","walkDirtyRegions_","callCombine_","callCombineCallback","callErrorCallback","vertexWeights_","getIntersectData_","remove","pqHandle","checkForLeftSplice_","checkForIntersect_","max","insert","connectRightVertex_","connectLeftDegenerate_","connectLeftVertex_","search","dNext","addSentinel_","sentinel","Dict","PriorityQ","init","deleteQ","tessmono","tessellateMonoRegion_","tessellateInterior","discardExterior","setWindingNumber","head_","DictNode","frame_","leq_","prototype","deleteDict_","key","getMax","getSuccessor","getPredecessor","GluTesselator","state_","tessState_","T_DORMANT","lastEdge_","errorCallback_","normal_","combineCallback_","boundaryOnly_","beginCallback_","edgeFlagCallback_","vertexCallback_","endCallback_","meshCallback_","polygonData_","T_IN_POLYGON","T_IN_CONTOUR","gluDeleteTess","requireState_","gluTessProperty","gluGetTessProperty","gluTessNormal","gluTessCallback","gluTessVertex","addVertex_","gluTessBeginPolygon","GluMesh","gluTessBeginContour","gluTessEndContour","gluTessEndPolygon","gotoState_","dPrev","rNext","eHeadSym","verts_","order_","size_","initialized_","heap_","PriorityQHeap","sort","isEmpty","reallocNumeric_","INIT_SIZE_","handles_","max_","freeList_","Array","floatDown_","floatUp_","getLogger","_currentVertexIndex","_indexCounter","_triangleIndices","glu","_begincallback","bind","_vertexCallback","_endcallback","_combinecallback","_errorcallback","_edgeCallback","_indices","error"],"mappings":"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","file":"js/chunk-228c591e.f24a48b8.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{THIN_LINE_HALF_WIDTH_THRESHOLD as t}from\"./definitions.js\";function e(t,e){return t.x===e.x&&t.y===e.y}function i(t){if(!t)return;const i=t.length;if(i<=1)return;let x=0;for(let r=1;ri){r=!0;const t=(i-x)/a;a=i-x,e=(1-t)*n+t*e,y=(1-t)*s+t*y,--o}const c=this.writeVertex(n,s,0,0,h,l,l,-h,0,-1,x),d=this.writeVertex(n,s,0,0,h,l,-l,h,0,1,x);x+=a;const u=this.writeVertex(e,y,0,0,h,l,l,-h,0,-1,x),v=this.writeVertex(e,y,0,0,h,l,-l,h,0,1,x);this.writeTriangle(c,d,u),this.writeTriangle(d,u,v),n=e,s=y}}tessellate_(t,i){const a=t[0],c=t[t.length-1],d=e(a,c),u=d?3:2;if(t.length=0&&R>=0&&s>=0&&C(U,R,s),U=R,R=s,s};d&&(k=t[t.length-2],E.x=c.x-k.x,E.y=c.y-k.y,B=y(E),E.x/=B,E.y/=B);let F=!1;for(let e=0;eW&&(F=!0)),F){const i=(W-q)/L;L=W-q,k={x:(1-i)*k.x+i*t[e].x,y:(1-i)*k.y+i*t[e].y},--e}else k=t[e];b=k.x,N=k.y;const i=e<=0&&!F,a=e===t.length-1;if(i||(q+=L),p=a?d?t[1]:null:t[e+1],p?(E.x=p.x-b,E.y=p.y-N,B=y(E),E.x/=B,E.y/=B):(E.x=void 0,E.y=void 0),!d){if(i){r(S,E),_=S.x,j=S.y,2===f&&(z(-E.y-E.x,E.x-E.y,E.x,E.y,0,-1),z(E.y-E.x,-E.x-E.y,E.x,E.y,0,1)),1===f&&(z(-E.y-E.x,E.x-E.y,E.x,E.y,-1,-1),z(E.y-E.x,-E.x-E.y,E.x,E.y,-1,1)),1!==f&&0!==f||(z(-E.y,E.x,E.x,E.y,0,-1),z(E.y,-E.x,E.x,E.y,0,1));continue}if(a){x(S,M),_=S.x,j=S.y,1!==f&&0!==f||(z(M.y,-M.x,-M.x,-M.y,0,-1),z(-M.y,M.x,-M.x,-M.y,0,1)),2===f&&(z(M.y-M.x,-M.x-M.y,-M.x,-M.y,0,-1),z(-M.y-M.x,M.x-M.y,-M.x,-M.y,0,1)),1===f&&(z(M.y-M.x,-M.x-M.y,-M.x,-M.y,1,-1),z(-M.y-M.x,M.x-M.y,-M.x,-M.y,1,1));continue}}let c,u,X=-o(M,E);if(Math.abs(X)<.01)h(M,E)>0?(S.x=M.x,S.y=M.y,X=1,c=Number.MAX_VALUE,u=!0):(r(S,E),X=1,c=1,u=!1);else{S.x=(M.x+E.x)/X,S.y=(M.y+E.y)/X,c=y(S);const t=(c-1)*m*v;u=c>4||t>L&&t>B}_=S.x,j=S.y;let C=w;switch(w){case 0:c<1.05&&(C=2);break;case 1:cg&&(C=0)}switch(C){case 2:if(z(S.x,S.y,-M.x,-M.y,0,-1),z(-S.x,-S.y,-M.x,-M.y,0,1),a)break;if(V){const t=F?0:q;U=this.writeVertex(b,N,_,j,E.x,E.y,S.x,S.y,0,-1,t),R=this.writeVertex(b,N,_,j,E.x,E.y,-S.x,-S.y,0,1,t)}break;case 0:{const t=X<0;let e,i,y,o;if(t){const t=U;U=R,R=t,e=P,i=A}else e=A,i=P;if(u)y=t?r(this.innerPrev,M):x(this.innerPrev,M),o=t?x(this.innerNext,E):r(this.innerNext,E);else{const e=t?s(this.inner,S):n(this.inner,S);y=e,o=e}const h=t?x(this.bevelStart,M):r(this.bevelStart,M);z(y.x,y.y,-M.x,-M.y,e.x,e.y);const c=z(h.x,h.y,-M.x,-M.y,i.x,i.y);if(a)break;const d=t?r(this.bevelEnd,E):x(this.bevelEnd,E);if(u){const t=this.writeVertex(b,N,_,j,-M.x,-M.y,0,0,0,0,q);U=this.writeVertex(b,N,_,j,E.x,E.y,o.x,o.y,e.x,e.y,q),R=this.writeVertex(b,N,_,j,E.x,E.y,d.x,d.y,i.x,i.y,q),this.writeTriangle(c,t,R)}else{if(V){const t=this.bevelMiddle;t.x=(h.x+d.x)/2,t.y=(h.y+d.y)/2,l(D,t,-M.x,-M.y),z(t.x,t.y,-M.x,-M.y,D.x,D.y),l(D,t,E.x,E.y),U=this.writeVertex(b,N,_,j,E.x,E.y,t.x,t.y,D.x,D.y,q),R=this.writeVertex(b,N,_,j,E.x,E.y,o.x,o.y,e.x,e.y,q)}else{const t=U;U=R,R=t}z(d.x,d.y,E.x,E.y,i.x,i.y)}if(t){const t=U;U=R,R=t}break}case 1:{const t=X<0;let e,i;if(t){const t=U;U=R,R=t,e=P,i=A}else e=A,i=P;const y=t?s(this.inner,S):n(this.inner,S);let o,d;u?(o=t?r(this.innerPrev,M):x(this.innerPrev,M),d=t?x(this.innerNext,E):r(this.innerNext,E)):(o=y,d=y);const v=t?x(this.roundStart,M):r(this.roundStart,M),f=t?r(this.roundEnd,E):x(this.roundEnd,E),w=z(o.x,o.y,-M.x,-M.y,e.x,e.y),g=z(v.x,v.y,-M.x,-M.y,i.x,i.y);if(a)break;const T=this.writeVertex(b,N,_,j,-M.x,-M.y,0,0,0,0,q);u||this.writeTriangle(U,R,T);const m=s(this.outer,y),k=this.writeVertex(b,N,_,j,E.x,E.y,f.x,f.y,i.x,i.y,q);let p,L;const B=c>2;if(B){let e;c!==Number.MAX_VALUE?(m.x/=c,m.y/=c,e=h(M,m),e=(c*(e*e-1)+1)/e):e=-1,p=t?x(this.startBreak,M):r(this.startBreak,M),p.x+=M.x*e,p.y+=M.y*e,L=t?r(this.endBreak,E):x(this.endBreak,E),L.x+=E.x*e,L.y+=E.y*e}l(D,m,-M.x,-M.y);const W=this.writeVertex(b,N,_,j,-M.x,-M.y,m.x,m.y,D.x,D.y,q);l(D,m,E.x,E.y);const C=V?this.writeVertex(b,N,_,j,E.x,E.y,m.x,m.y,D.x,D.y,q):W,F=T,G=V?this.writeVertex(b,N,_,j,E.x,E.y,0,0,0,0,q):T;let H=-1,I=-1;if(B&&(l(D,p,-M.x,-M.y),H=this.writeVertex(b,N,_,j,-M.x,-M.y,p.x,p.y,D.x,D.y,q),l(D,L,E.x,E.y),I=this.writeVertex(b,N,_,j,E.x,E.y,L.x,L.y,D.x,D.y,q)),V?B?(this.writeTriangle(F,g,H),this.writeTriangle(F,H,W),this.writeTriangle(G,C,I),this.writeTriangle(G,I,k)):(this.writeTriangle(F,g,W),this.writeTriangle(G,C,k)):B?(this.writeTriangle(T,g,H),this.writeTriangle(T,H,I),this.writeTriangle(T,I,k)):(this.writeTriangle(T,g,W),this.writeTriangle(T,C,k)),u?(U=this.writeVertex(b,N,_,j,E.x,E.y,d.x,d.y,e.x,e.y,q),R=k):(U=V?this.writeVertex(b,N,_,j,E.x,E.y,d.x,d.y,e.x,e.y,q):w,this.writeTriangle(U,G,k),R=k),t){const t=U;U=R,R=t}break}}}}}export{a as LineTessellation};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{TILE_SIZE as i}from\"./definitions.js\";import{Point as t}from\"./Geometry.js\";import{between as s}from\"./GeometryUtils.js\";class h{constructor(i,t,s){this.ratio=i,this.x=t,this.y=s}}class n{constructor(t,s,h,n=8,e=8){this.lines=[],this.starts=[],this.validateTessellation=!0,this.pixelRatio=n,this.pixelMargin=e,this.tileSize=i*n,this.dz=t,this.yPos=s,this.xPos=h}setPixelMargin(i){i!==this.pixelMargin&&(this.pixelMargin=i,this.setExtent(this._extent))}setExtent(i){this._extent=i,this.finalRatio=this.tileSize/i*(1<>this.dz;t>s&&(t=s),this.margin=t,this.xmin=s*this.xPos-t,this.ymin=s*this.yPos-t,this.xmax=this.xmin+s+2*t,this.ymax=this.ymin+s+2*t}reset(i){this.type=i,this.lines=[],this.starts=[],this.line=null,this.start=0}moveTo(i,s){this._pushLine(),this._prevIsIn=this._isIn(i,s),this._moveTo(i,s,this._prevIsIn),this._prevPt=new t(i,s),this._firstPt=new t(i,s),this._dist=0}lineTo(i,s){const n=this._isIn(i,s),e=new t(i,s),l=t.distance(this._prevPt,e);let x,a,y,r,o,m,p,u;if(n)this._prevIsIn?this._lineTo(i,s,!0):(x=this._prevPt,a=e,y=this._intersect(a,x),this.start=this._dist+l*(1-this._r),this._lineTo(y.x,y.y,!0),this._lineTo(a.x,a.y,!0));else if(this._prevIsIn)a=this._prevPt,x=e,y=this._intersect(a,x),this._lineTo(y.x,y.y,!0),this._lineTo(x.x,x.y,!1);else{const i=this._prevPt,t=e;if(i.x<=this.xmin&&t.x<=this.xmin||i.x>=this.xmax&&t.x>=this.xmax||i.y<=this.ymin&&t.y<=this.ymin||i.y>=this.ymax&&t.y>=this.ymax)this._lineTo(t.x,t.y,!1);else{const s=[];if((i.xthis.xmin||i.x>this.xmin&&t.x=this.ymax?m=!0:s.push(new h(r,this.xmin,u))),(i.xthis.xmax||i.x>this.xmax&&t.x=this.ymax?m=!0:s.push(new h(r,this.xmax,u))),(i.ythis.ymin||i.y>this.ymin&&t.y=this.xmax?o=!0:s.push(new h(r,p,this.ymin))),(i.ythis.ymax||i.y>this.ymax&&t.y=this.xmax?o=!0:s.push(new h(r,p,this.ymax))),0===s.length)o?m?this._lineTo(this.xmax,this.ymax,!0):this._lineTo(this.xmax,this.ymin,!0):m?this._lineTo(this.xmin,this.ymax,!0):this._lineTo(this.xmin,this.ymin,!0);else if(s.length>1&&s[0].ratio>s[1].ratio)this.start=this._dist+l*s[1].ratio,this._lineTo(s[1].x,s[1].y,!0),this._lineTo(s[0].x,s[0].y,!0);else{this.start=this._dist+l*s[0].ratio;for(let i=0;i2){const i=this._firstPt,t=this._prevPt;i.x===t.x&&i.y===t.y||this.lineTo(i.x,i.y);const s=this.line;let h=s.length;for(;h>=4&&(s[0].x===s[1].x&&s[0].x===s[h-2].x||s[0].y===s[1].y&&s[0].y===s[h-2].y);)s.pop(),s[0].x=s[h-2].x,s[0].y=s[h-2].y,--h}}result(i=!0){return this._pushLine(),0===this.lines.length?null:(3===this.type&&i&&l.simplify(this.tileSize,this.margin*this.finalRatio,this.lines),this.lines)}resultWithStarts(){if(2!==this.type)throw new Error(\"Only valid for lines\");this._pushLine();const i=this.lines,t=i.length;if(0===t)return null;const s=[];for(let h=0;h=this.xmin&&i<=this.xmax&&t>=this.ymin&&t<=this.ymax}_intersect(i,s){let h,n,e;if(s.x>=this.xmin&&s.x<=this.xmax)n=s.y<=this.ymin?this.ymin:this.ymax,e=(n-i.y)/(s.y-i.y),h=i.x+e*(s.x-i.x);else if(s.y>=this.ymin&&s.y<=this.ymax)h=s.x<=this.xmin?this.xmin:this.xmax,e=(h-i.x)/(s.x-i.x),n=i.y+e*(s.y-i.y);else{n=s.y<=this.ymin?this.ymin:this.ymax,h=s.x<=this.xmin?this.xmin:this.xmax;const t=(h-i.x)/(s.x-i.x),l=(n-i.y)/(s.y-i.y);t0&&(this.lines.push(this.line),this.starts.push(this.start)):2===this.type?this.line.length>1&&(this.lines.push(this.line),this.starts.push(this.start)):3===this.type&&this.line.length>3&&(this.lines.push(this.line),this.starts.push(this.start))),this.line=[],this.start=0}_moveTo(i,s,h){3!==this.type?h&&(i=Math.round((i-(this.xmin+this.margin))*this.finalRatio),s=Math.round((s-(this.ymin+this.margin))*this.finalRatio),this.line.push(new t(i,s))):(h||(ithis.xmax&&(i=this.xmax),sthis.ymax&&(s=this.ymax)),i=Math.round((i-(this.xmin+this.margin))*this.finalRatio),s=Math.round((s-(this.ymin+this.margin))*this.finalRatio),this.line.push(new t(i,s)),this._is_h=!1,this._is_v=!1)}_lineTo(i,s,h){let n,e;if(3!==this.type)if(h){if(i=Math.round((i-(this.xmin+this.margin))*this.finalRatio),s=Math.round((s-(this.ymin+this.margin))*this.finalRatio),this.line.length>0&&(n=this.line[this.line.length-1],n.equals(i,s)))return;this.line.push(new t(i,s))}else this.line&&this.line.length>0&&this._pushLine();else if(h||(ithis.xmax&&(i=this.xmax),sthis.ymax&&(s=this.ymax)),i=Math.round((i-(this.xmin+this.margin))*this.finalRatio),s=Math.round((s-(this.ymin+this.margin))*this.finalRatio),this.line&&this.line.length>0){n=this.line[this.line.length-1];const h=n.x===i,l=n.y===s;if(h&&l)return;this._is_h&&h||this._is_v&&l?(n.x=i,n.y=s,e=this.line[this.line.length-2],e.x===i&&e.y===s?(this.line.pop(),this.line.length<=1?(this._is_h=!1,this._is_v=!1):(e=this.line[this.line.length-2],this._is_h=e.x===i,this._is_v=e.y===s)):(this._is_h=e.x===i,this._is_v=e.y===s)):(this.line.push(new t(i,s)),this._is_h=h,this._is_v=l)}else this.line.push(new t(i,s))}}class e{setExtent(i){this._ratio=4096===i?1:4096/i}get validateTessellation(){return this._ratio<1}reset(i){this.lines=[],this.line=null}moveTo(i,s){this.line&&this.lines.push(this.line),this.line=[];const h=this._ratio;this.line.push(new t(i*h,s*h))}lineTo(i,s){const h=this._ratio;this.line.push(new t(i*h,s*h))}close(){const i=this.line;i&&!i[0].isEqual(i[i.length-1])&&i.push(i[0])}result(){return this.line&&this.lines.push(this.line),0===this.lines.length?null:this.lines}}class l{static simplify(i,t,s){if(!s)return;const h=-t,n=i+t,e=-t,x=i+t,a=[],y=[],r=s.length;for(let l=0;lt.y?(a.push(l),a.push(s),a.push(0),a.push(-1)):(y.push(l),y.push(s),y.push(0),y.push(-1))),r.x>=n&&(r.y=x&&(r.x>t.x?(a.push(l),a.push(s),a.push(3),a.push(-1)):(y.push(l),y.push(s),y.push(3),y.push(-1)))),r=t}if(0===a.length||0===y.length)return;l.fillParent(s,y,a),l.fillParent(s,a,y);const o=[];l.calcDeltas(o,y,a),l.calcDeltas(o,a,y),l.addDeltas(o,s)}static fillParent(i,t,h){const n=h.length,e=t.length;for(let l=0;l1&&h[e-2]===n?0:(h.push(n),l.calcDelta(n,s,t,h)+1)}static addDeltas(i,t){const s=i.length;let h=0;for(let n=0;nh&&(h=t)}for(let n=0;n0?i0?(s.t-r.t)*i+(s.t-t.t)*n:0},e.geom.transLeq=function(e,t){return e.t0?i0?(s.s-r.s)*i+(s.s-t.s)*n:0},e.geom.edgeGoesLeft=function(t){return e.geom.vertLeq(t.dst(),t.org)},e.geom.edgeGoesRight=function(t){return e.geom.vertLeq(t.org,t.dst())},e.geom.vertL1dist=function(e,t){return Math.abs(e.s-t.s)+Math.abs(e.t-t.t)},e.geom.vertCCW=function(e,t,s){return e.s*(t.t-s.t)+t.s*(s.t-e.t)+s.s*(e.t-t.t)>=0},e.geom.interpolate_=function(e,t,s,r){return(e=e<0?0:e)<=(s=s<0?0:s)?0===s?(t+r)/2:t+e/(e+s)*(r-t):r+s/(e+s)*(t-r)},e.geom.edgeIntersect=function(t,s,r,i,n){var o,l,a;e.geom.vertLeq(t,s)||(a=t,t=s,s=a),e.geom.vertLeq(r,i)||(a=r,r=i,i=a),e.geom.vertLeq(t,r)||(a=t,t=r,r=a,a=s,s=i,i=a),e.geom.vertLeq(r,s)?e.geom.vertLeq(s,i)?((o=e.geom.edgeEval(t,r,s))+(l=e.geom.edgeEval(r,s,i))<0&&(o=-o,l=-l),n.s=e.geom.interpolate_(o,r.s,l,s.s)):((o=e.geom.edgeSign(t,r,s))+(l=-e.geom.edgeSign(t,i,s))<0&&(o=-o,l=-l),n.s=e.geom.interpolate_(o,r.s,l,i.s)):n.s=(r.s+s.s)/2,e.geom.transLeq(t,s)||(a=t,t=s,s=a),e.geom.transLeq(r,i)||(a=r,r=i,i=a),e.geom.transLeq(t,r)||(a=t,t=r,r=a,a=s,s=i,i=a),e.geom.transLeq(r,s)?e.geom.transLeq(s,i)?((o=e.geom.transEval(t,r,s))+(l=e.geom.transEval(r,s,i))<0&&(o=-o,l=-l),n.t=e.geom.interpolate_(o,r.t,l,s.t)):((o=e.geom.transSign(t,r,s))+(l=-e.geom.transSign(t,i,s))<0&&(o=-o,l=-l),n.t=e.geom.interpolate_(o,r.t,l,i.t)):n.t=(r.t+s.t)/2},e.mesh={},e.mesh.makeEdge=function(t){var s=e.mesh.makeEdgePair_(t.eHead);return e.mesh.makeVertex_(s,t.vHead),e.mesh.makeVertex_(s.sym,t.vHead),e.mesh.makeFace_(s,t.fHead),s},e.mesh.meshSplice=function(t,s){var r=!1,i=!1;t!==s&&(s.org!==t.org&&(i=!0,e.mesh.killVertex_(s.org,t.org)),s.lFace!==t.lFace&&(r=!0,e.mesh.killFace_(s.lFace,t.lFace)),e.mesh.splice_(s,t),i||(e.mesh.makeVertex_(s,t.org),t.org.anEdge=t),r||(e.mesh.makeFace_(s,t.lFace),t.lFace.anEdge=t))},e.mesh.deleteEdge=function(t){var s=t.sym,r=!1;t.lFace!==t.rFace()&&(r=!0,e.mesh.killFace_(t.lFace,t.rFace())),t.oNext===t?e.mesh.killVertex_(t.org,null):(t.rFace().anEdge=t.oPrev(),t.org.anEdge=t.oNext,e.mesh.splice_(t,t.oPrev()),r||e.mesh.makeFace_(t,t.lFace)),s.oNext===s?(e.mesh.killVertex_(s.org,null),e.mesh.killFace_(s.lFace,null)):(t.lFace.anEdge=s.oPrev(),s.org.anEdge=s.oNext,e.mesh.splice_(s,s.oPrev())),e.mesh.killEdge_(t)},e.mesh.addEdgeVertex=function(t){var s=e.mesh.makeEdgePair_(t),r=s.sym;return e.mesh.splice_(s,t.lNext),s.org=t.dst(),e.mesh.makeVertex_(r,s.org),s.lFace=r.lFace=t.lFace,s},e.mesh.splitEdge=function(t){var s=e.mesh.addEdgeVertex(t).sym;return e.mesh.splice_(t.sym,t.sym.oPrev()),e.mesh.splice_(t.sym,s),t.sym.org=s.org,s.dst().anEdge=s.sym,s.sym.lFace=t.rFace(),s.winding=t.winding,s.sym.winding=t.sym.winding,s},e.mesh.connect=function(t,s){var r=!1,i=e.mesh.makeEdgePair_(t),n=i.sym;return s.lFace!==t.lFace&&(r=!0,e.mesh.killFace_(s.lFace,t.lFace)),e.mesh.splice_(i,t.lNext),e.mesh.splice_(n,s),i.org=t.dst(),n.org=s.org,i.lFace=n.lFace=t.lFace,t.lFace.anEdge=n,r||e.mesh.makeFace_(i,t.lFace),i},e.mesh.zapFace=function(t){var s,r=t.anEdge,i=r.lNext;do{if(i=(s=i).lNext,s.lFace=null,null===s.rFace()){s.oNext===s?e.mesh.killVertex_(s.org,null):(s.org.anEdge=s.oNext,e.mesh.splice_(s,s.oPrev()));var n=s.sym;n.oNext===n?e.mesh.killVertex_(n.org,null):(n.org.anEdge=n.oNext,e.mesh.splice_(n,n.oPrev())),e.mesh.killEdge_(s)}}while(s!==r);var o=t.prev,l=t.next;l.prev=o,o.next=l},e.mesh.meshUnion=function(e,t){var s=e.fHead,r=e.vHead,i=e.eHead,n=t.fHead,o=t.vHead,l=t.eHead;return n.next!==n&&(s.prev.next=n.next,n.next.prev=s.prev,n.prev.next=s,s.prev=n.prev),o.next!==o&&(r.prev.next=o.next,o.next.prev=r.prev,o.prev.next=r,r.prev=o.prev),l.next!==l&&(i.sym.next.sym.next=l.next,l.next.sym.next=i.sym.next,l.sym.next.sym.next=i,i.sym.next=l.sym.next),e},e.mesh.deleteMesh=function(e){},e.mesh.makeEdgePair_=function(t){var s=new e.GluHalfEdge,r=new e.GluHalfEdge,i=t.sym.next;return r.next=i,i.sym.next=s,s.next=t,t.sym.next=r,s.sym=r,s.oNext=s,s.lNext=r,r.sym=s,r.oNext=r,r.lNext=s,s},e.mesh.splice_=function(e,t){var s=e.oNext,r=t.oNext;s.sym.lNext=t,r.sym.lNext=e,e.oNext=r,t.oNext=s},e.mesh.makeVertex_=function(t,s){var r=s.prev,i=new e.GluVertex(s,r);r.next=i,s.prev=i,i.anEdge=t;var n=t;do{n.org=i,n=n.oNext}while(n!==t)},e.mesh.makeFace_=function(t,s){var r=s.prev,i=new e.GluFace(s,r);r.next=i,s.prev=i,i.anEdge=t,i.inside=s.inside;var n=t;do{n.lFace=i,n=n.lNext}while(n!==t)},e.mesh.killEdge_=function(e){var t=e.next,s=e.sym.next;t.sym.next=s,s.sym.next=t},e.mesh.killVertex_=function(e,t){var s=e.anEdge,r=s;do{r.org=t,r=r.oNext}while(r!==s);var i=e.prev,n=e.next;n.prev=i,i.next=n},e.mesh.killFace_=function(e,t){var s=e.anEdge,r=s;do{r.lFace=t,r=r.lNext}while(r!==s);var i=e.prev,n=e.next;n.prev=i,i.next=n},e.normal={},e.normal.S_UNIT_X_=1,e.normal.S_UNIT_Y_=0,e.normal.projectPolygon=function(t,s,r,i){var n=!1,o=[s,r,i];0===s&&0===r&&0===i&&(e.normal.computeNormal_(t,o),n=!0);var l,a=e.normal.longAxis_(o),_=t.mesh.vHead;if(e.TRUE_PROJECT){e.normal.normalize_(o);var g=[0,0,0],d=[0,0,0];g[a]=0,g[(a+1)%3]=e.normal.S_UNIT_X_,g[(a+2)%3]=e.normal.S_UNIT_Y_;var h=e.normal.dot_(g,o);for(g[0]-=h*o[0],g[1]-=h*o[1],g[2]-=h*o[2],e.normal.normalize_(g),d[0]=o[1]*g[2]-o[2]*g[1],d[1]=o[2]*g[0]-o[0]*g[2],d[2]=o[0]*g[1]-o[1]*g[0],e.normal.normalize_(d),l=_.next;l!==_;l=l.next)l.s=e.normal.dot_(l.coords,g),l.t=e.normal.dot_(l.coords,d)}else{var c=(a+1)%3,u=(a+2)%3,p=o[a]>0?1:-1;for(l=_.next;l!==_;l=l.next)l.s=l.coords[c],l.t=p*l.coords[u]}n&&e.normal.checkOrientation_(t)},e.normal.dot_=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]},e.normal.normalize_=function(t){var s=t[0]*t[0]+t[1]*t[1]+t[2]*t[2];e.assert(s>0),s=Math.sqrt(s),t[0]/=s,t[1]/=s,t[2]/=s},e.normal.longAxis_=function(e){var t=0;return Math.abs(e[1])>Math.abs(e[0])&&(t=1),Math.abs(e[2])>Math.abs(e[t])&&(t=2),t},e.normal.computeNormal_=function(t,s){var r,i=[-2*e.GLU_TESS_MAX_COORD,-2*e.GLU_TESS_MAX_COORD,-2*e.GLU_TESS_MAX_COORD],n=[2*e.GLU_TESS_MAX_COORD,2*e.GLU_TESS_MAX_COORD,2*e.GLU_TESS_MAX_COORD],o=[],l=[],a=t.mesh.vHead;for(r=a.next;r!==a;r=r.next)for(var _=0;_<3;++_){var g=r.coords[_];gi[_]&&(i[_]=g,o[_]=r)}var d=0;if(i[1]-n[1]>i[0]-n[0]&&(d=1),i[2]-n[2]>i[d]-n[d]&&(d=2),n[d]>=i[d])return s[0]=0,s[1]=0,void(s[2]=1);var h=0,c=l[d],u=o[d],p=[0,0,0],m=[c.coords[0]-u.coords[0],c.coords[1]-u.coords[1],c.coords[2]-u.coords[2]],E=[0,0,0];for(r=a.next;r!==a;r=r.next){E[0]=r.coords[0]-u.coords[0],E[1]=r.coords[1]-u.coords[1],E[2]=r.coords[2]-u.coords[2],p[0]=m[1]*E[2]-m[2]*E[1],p[1]=m[2]*E[0]-m[0]*E[2],p[2]=m[0]*E[1]-m[1]*E[0];var v=p[0]*p[0]+p[1]*p[1]+p[2]*p[2];v>h&&(h=v,s[0]=p[0],s[1]=p[1],s[2]=p[2])}h<=0&&(s[0]=s[1]=s[2]=0,s[e.normal.longAxis_(m)]=1)},e.normal.checkOrientation_=function(e){for(var t=0,s=e.mesh.fHead,r=s.next;r!==s;r=r.next){var i=r.anEdge;if(!(i.winding<=0))do{t+=(i.org.s-i.dst().s)*(i.org.t+i.dst().t),i=i.lNext}while(i!==r.anEdge)}if(t<0)for(var n=e.mesh.vHead,o=n.next;o!==n;o=o.next)o.t=-o.t},e.render={},e.render.renderMesh=function(t,s,r){for(var i=!1,n=-1,o=s.fHead.prev;o!==s.fHead;o=o.prev)if(o.inside){i||(t.callBeginCallback(e.primitiveType.GL_TRIANGLES),i=!0);var l=o.anEdge;e.assert(l.lNext.lNext.lNext===l,\"renderMesh called with non-triangulated mesh\");do{if(r){var a=l.rFace().inside?0:1;n!==a&&(n=a,t.callEdgeFlagCallback(!!n))}t.callVertexCallback(l.org.data),l=l.lNext}while(l!==o.anEdge)}i&&t.callEndCallback()},e.render.renderBoundary=function(t,s){for(var r=s.fHead.next;r!==s.fHead;r=r.next)if(r.inside){t.callBeginCallback(e.primitiveType.GL_LINE_LOOP);var i=r.anEdge;do{t.callVertexCallback(i.org.data),i=i.lNext}while(i!==r.anEdge);t.callEndCallback()}},e.sweep={},e.sweep.SENTINEL_COORD_=4*e.GLU_TESS_MAX_COORD,e.sweep.TOLERANCE_NONZERO_=!1,e.sweep.computeInterior=function(t){var s;for(t.fatalError=!1,e.sweep.removeDegenerateEdges_(t),e.sweep.initPriorityQ_(t),e.sweep.initEdgeDict_(t);null!==(s=t.pq.extractMin());){for(;;){var r=t.pq.minimum();if(null===r||!e.geom.vertEq(r,s))break;r=t.pq.extractMin(),e.sweep.spliceMergeVertices_(t,s.anEdge,r.anEdge)}e.sweep.sweepEvent_(t,s)}var i=t.dict.getMin().getKey();t.event=i.eUp.org,e.sweep.doneEdgeDict_(t),e.sweep.donePriorityQ_(t),e.sweep.removeDegenerateFaces_(t.mesh),t.mesh.checkMesh()},e.sweep.addWinding_=function(e,t){e.winding+=t.winding,e.sym.winding+=t.sym.winding},e.sweep.edgeLeq_=function(t,s,r){var i=t.event,n=s.eUp,o=r.eUp;return n.dst()===i?o.dst()===i?e.geom.vertLeq(n.org,o.org)?e.geom.edgeSign(o.dst(),n.org,o.org)<=0:e.geom.edgeSign(n.dst(),o.org,n.org)>=0:e.geom.edgeSign(o.dst(),i,o.org)<=0:o.dst()===i?e.geom.edgeSign(n.dst(),i,n.org)>=0:e.geom.edgeEval(n.dst(),i,n.org)>=e.geom.edgeEval(o.dst(),i,o.org)},e.sweep.deleteRegion_=function(t,s){s.fixUpperEdge&&e.assert(0===s.eUp.winding),s.eUp.activeRegion=null,t.dict.deleteNode(s.nodeUp),s.nodeUp=null},e.sweep.fixUpperEdge_=function(t,s){e.assert(t.fixUpperEdge),e.mesh.deleteEdge(t.eUp),t.fixUpperEdge=!1,t.eUp=s,s.activeRegion=t},e.sweep.topLeftRegion_=function(t){var s=t.eUp.org;do{t=t.regionAbove()}while(t.eUp.org===s);if(t.fixUpperEdge){var r=e.mesh.connect(t.regionBelow().eUp.sym,t.eUp.lNext);e.sweep.fixUpperEdge_(t,r),t=t.regionAbove()}return t},e.sweep.topRightRegion_=function(e){var t=e.eUp.dst();do{e=e.regionAbove()}while(e.eUp.dst()===t);return e},e.sweep.addRegionBelow_=function(t,s,r){var i=new e.ActiveRegion;return i.eUp=r,i.nodeUp=t.dict.insertBefore(s.nodeUp,i),r.activeRegion=i,i},e.sweep.isWindingInside_=function(t,s){switch(t.windingRule){case e.windingRule.GLU_TESS_WINDING_ODD:return 0!=(1&s);case e.windingRule.GLU_TESS_WINDING_NONZERO:return 0!==s;case e.windingRule.GLU_TESS_WINDING_POSITIVE:return s>0;case e.windingRule.GLU_TESS_WINDING_NEGATIVE:return s<0;case e.windingRule.GLU_TESS_WINDING_ABS_GEQ_TWO:return s>=2||s<=-2}return e.assert(!1),!1},e.sweep.computeWinding_=function(t,s){s.windingNumber=s.regionAbove().windingNumber+s.eUp.winding,s.inside=e.sweep.isWindingInside_(t,s.windingNumber)},e.sweep.finishRegion_=function(t,s){var r=s.eUp,i=r.lFace;i.inside=s.inside,i.anEdge=r,e.sweep.deleteRegion_(t,s)},e.sweep.finishLeftRegions_=function(t,s,r){for(var i=s,n=s.eUp;i!==r;){i.fixUpperEdge=!1;var o=i.regionBelow(),l=o.eUp;if(l.org!==n.org){if(!o.fixUpperEdge){e.sweep.finishRegion_(t,i);break}l=e.mesh.connect(n.lPrev(),l.sym),e.sweep.fixUpperEdge_(o,l)}n.oNext!==l&&(e.mesh.meshSplice(l.oPrev(),l),e.mesh.meshSplice(n,l)),e.sweep.finishRegion_(t,i),n=o.eUp,i=o}return n},e.sweep.addRightEdges_=function(t,s,r,i,n,o){var l=!0,a=r;do{e.assert(e.geom.vertLeq(a.org,a.dst())),e.sweep.addRegionBelow_(t,s,a.sym),a=a.oNext}while(a!==i);null===n&&(n=s.regionBelow().eUp.rPrev());for(var _,g=s,d=n;(a=(_=g.regionBelow()).eUp.sym).org===d.org;)a.oNext!==d&&(e.mesh.meshSplice(a.oPrev(),a),e.mesh.meshSplice(d.oPrev(),a)),_.windingNumber=g.windingNumber-a.winding,_.inside=e.sweep.isWindingInside_(t,_.windingNumber),g.dirty=!0,!l&&e.sweep.checkForRightSplice_(t,g)&&(e.sweep.addWinding_(a,d),e.sweep.deleteRegion_(t,g),e.mesh.deleteEdge(d)),l=!1,g=_,d=a;g.dirty=!0,e.assert(g.windingNumber-a.winding===_.windingNumber),o&&e.sweep.walkDirtyRegions_(t,g)},e.sweep.callCombine_=function(t,s,r,i,n){var o=[s.coords[0],s.coords[1],s.coords[2]];s.data=null,s.data=t.callCombineCallback(o,r,i),null===s.data&&(n?t.fatalError||(t.callErrorCallback(e.errorType.GLU_TESS_NEED_COMBINE_CALLBACK),t.fatalError=!0):s.data=r[0])},e.sweep.spliceMergeVertices_=function(t,s,r){var i=[null,null,null,null],n=[.5,.5,0,0];i[0]=s.org.data,i[1]=r.org.data,e.sweep.callCombine_(t,s.org,i,n,!1),e.mesh.meshSplice(s,r)},e.sweep.vertexWeights_=function(t,s,r,i,n){var o=e.geom.vertL1dist(s,t),l=e.geom.vertL1dist(r,t),a=n,_=n+1;i[a]=.5*l/(o+l),i[_]=.5*o/(o+l),t.coords[0]+=i[a]*s.coords[0]+i[_]*r.coords[0],t.coords[1]+=i[a]*s.coords[1]+i[_]*r.coords[1],t.coords[2]+=i[a]*s.coords[2]+i[_]*r.coords[2]},e.sweep.getIntersectData_=function(t,s,r,i,n,o){var l=[0,0,0,0],a=[r.data,i.data,n.data,o.data];s.coords[0]=s.coords[1]=s.coords[2]=0,e.sweep.vertexWeights_(s,r,i,l,0),e.sweep.vertexWeights_(s,n,o,l,2),e.sweep.callCombine_(t,s,a,l,!0)},e.sweep.checkForRightSplice_=function(t,s){var r=s.regionBelow(),i=s.eUp,n=r.eUp;if(e.geom.vertLeq(i.org,n.org)){if(e.geom.edgeSign(n.dst(),i.org,n.org)>0)return!1;e.geom.vertEq(i.org,n.org)?i.org!==n.org&&(t.pq.remove(i.org.pqHandle),e.sweep.spliceMergeVertices_(t,n.oPrev(),i)):(e.mesh.splitEdge(n.sym),e.mesh.meshSplice(i,n.oPrev()),s.dirty=r.dirty=!0)}else{if(e.geom.edgeSign(i.dst(),n.org,i.org)<0)return!1;s.regionAbove().dirty=s.dirty=!0,e.mesh.splitEdge(i.sym),e.mesh.meshSplice(n.oPrev(),i)}return!0},e.sweep.checkForLeftSplice_=function(t,s){var r,i=s.regionBelow(),n=s.eUp,o=i.eUp;if(e.assert(!e.geom.vertEq(n.dst(),o.dst())),e.geom.vertLeq(n.dst(),o.dst())){if(e.geom.edgeSign(n.dst(),o.dst(),n.org)<0)return!1;s.regionAbove().dirty=s.dirty=!0,r=e.mesh.splitEdge(n),e.mesh.meshSplice(o.sym,r),r.lFace.inside=s.inside}else{if(e.geom.edgeSign(o.dst(),n.dst(),o.org)>0)return!1;s.dirty=i.dirty=!0,r=e.mesh.splitEdge(o),e.mesh.meshSplice(n.lNext,o.sym),r.rFace().inside=s.inside}return!0},e.sweep.checkForIntersect_=function(t,s){var r=s.regionBelow(),i=s.eUp,n=r.eUp,o=i.org,l=n.org,a=i.dst(),_=n.dst(),g=new e.GluVertex;if(e.assert(!e.geom.vertEq(_,a)),e.assert(e.geom.edgeSign(a,t.event,o)<=0),e.assert(e.geom.edgeSign(_,t.event,l)>=0),e.assert(o!==t.event&&l!==t.event),e.assert(!s.fixUpperEdge&&!r.fixUpperEdge),o===l)return!1;if(Math.min(o.t,a.t)>Math.max(l.t,_.t))return!1;if(e.geom.vertLeq(o,l)){if(e.geom.edgeSign(_,o,l)>0)return!1}else if(e.geom.edgeSign(a,l,o)<0)return!1;e.geom.edgeIntersect(a,o,_,l,g),e.assert(Math.min(o.t,a.t)<=g.t),e.assert(g.t<=Math.max(l.t,_.t)),e.assert(Math.min(_.s,a.s)<=g.s),e.assert(g.s<=Math.max(l.s,o.s)),e.geom.vertLeq(g,t.event)&&(g.s=t.event.s,g.t=t.event.t);var d=e.geom.vertLeq(o,l)?o:l;if(e.geom.vertLeq(d,g)&&(g.s=d.s,g.t=d.t),e.geom.vertEq(g,o)||e.geom.vertEq(g,l))return e.sweep.checkForRightSplice_(t,s),!1;if(!e.geom.vertEq(a,t.event)&&e.geom.edgeSign(a,t.event,g)>=0||!e.geom.vertEq(_,t.event)&&e.geom.edgeSign(_,t.event,g)<=0){if(_===t.event)return e.mesh.splitEdge(i.sym),e.mesh.meshSplice(n.sym,i),i=(s=e.sweep.topLeftRegion_(s)).regionBelow().eUp,e.sweep.finishLeftRegions_(t,s.regionBelow(),r),e.sweep.addRightEdges_(t,s,i.oPrev(),i,i,!0),!0;if(a===t.event){e.mesh.splitEdge(n.sym),e.mesh.meshSplice(i.lNext,n.oPrev()),r=s;var h=(s=e.sweep.topRightRegion_(s)).regionBelow().eUp.rPrev();return r.eUp=n.oPrev(),n=e.sweep.finishLeftRegions_(t,r,null),e.sweep.addRightEdges_(t,s,n.oNext,i.rPrev(),h,!0),!0}return e.geom.edgeSign(a,t.event,g)>=0&&(s.regionAbove().dirty=s.dirty=!0,e.mesh.splitEdge(i.sym),i.org.s=t.event.s,i.org.t=t.event.t),e.geom.edgeSign(_,t.event,g)<=0&&(s.dirty=r.dirty=!0,e.mesh.splitEdge(n.sym),n.org.s=t.event.s,n.org.t=t.event.t),!1}return e.mesh.splitEdge(i.sym),e.mesh.splitEdge(n.sym),e.mesh.meshSplice(n.oPrev(),i),i.org.s=g.s,i.org.t=g.t,i.org.pqHandle=t.pq.insert(i.org),e.sweep.getIntersectData_(t,i.org,o,a,l,_),s.regionAbove().dirty=s.dirty=r.dirty=!0,!1},e.sweep.walkDirtyRegions_=function(t,s){for(var r=s.regionBelow();;){for(;r.dirty;)s=r,r=r.regionBelow();if(!s.dirty&&(r=s,null===(s=s.regionAbove())||!s.dirty))return;s.dirty=!1;var i=s.eUp,n=r.eUp;if(i.dst()!==n.dst()&&e.sweep.checkForLeftSplice_(t,s)&&(r.fixUpperEdge?(e.sweep.deleteRegion_(t,r),e.mesh.deleteEdge(n),n=(r=s.regionBelow()).eUp):s.fixUpperEdge&&(e.sweep.deleteRegion_(t,s),e.mesh.deleteEdge(i),i=(s=r.regionAbove()).eUp)),i.org!==n.org)if(i.dst()===n.dst()||s.fixUpperEdge||r.fixUpperEdge||i.dst()!==t.event&&n.dst()!==t.event)e.sweep.checkForRightSplice_(t,s);else if(e.sweep.checkForIntersect_(t,s))return;i.org===n.org&&i.dst()===n.dst()&&(e.sweep.addWinding_(n,i),e.sweep.deleteRegion_(t,s),e.mesh.deleteEdge(i),s=r.regionAbove())}},e.sweep.connectRightVertex_=function(t,s,r){var i,n=r.oNext,o=s.regionBelow(),l=s.eUp,a=o.eUp,_=!1;l.dst()!==a.dst()&&e.sweep.checkForIntersect_(t,s),e.geom.vertEq(l.org,t.event)&&(e.mesh.meshSplice(n.oPrev(),l),n=(s=e.sweep.topLeftRegion_(s)).regionBelow().eUp,e.sweep.finishLeftRegions_(t,s.regionBelow(),o),_=!0),e.geom.vertEq(a.org,t.event)&&(e.mesh.meshSplice(r,a.oPrev()),r=e.sweep.finishLeftRegions_(t,o,null),_=!0),_?e.sweep.addRightEdges_(t,s,r.oNext,n,n,!0):(i=e.geom.vertLeq(a.org,l.org)?a.oPrev():l,i=e.mesh.connect(r.lPrev(),i),e.sweep.addRightEdges_(t,s,i,i.oNext,i.oNext,!1),i.sym.activeRegion.fixUpperEdge=!0,e.sweep.walkDirtyRegions_(t,s))},e.sweep.connectLeftDegenerate_=function(t,s,r){var i=s.eUp;if(e.geom.vertEq(i.org,r))return e.assert(e.sweep.TOLERANCE_NONZERO_),void(e.sweep.TOLERANCE_NONZERO_&&e.sweep.spliceMergeVertices_(t,i,r.anEdge));if(!e.geom.vertEq(i.dst(),r))return e.mesh.splitEdge(i.sym),s.fixUpperEdge&&(e.mesh.deleteEdge(i.oNext),s.fixUpperEdge=!1),e.mesh.meshSplice(r.anEdge,i),void e.sweep.sweepEvent_(t,r);if(e.assert(e.sweep.TOLERANCE_NONZERO_),e.sweep.TOLERANCE_NONZERO_){var n=(s=e.sweep.topRightRegion_(s)).regionBelow(),o=n.eUp.sym,l=o.oNext,a=l;n.fixUpperEdge&&(e.assert(l!==o),e.sweep.deleteRegion_(t,n),e.mesh.deleteEdge(o),o=l.oPrev()),e.mesh.meshSplice(r.anEdge,o),e.geom.edgeGoesLeft(l)||(l=null),e.sweep.addRightEdges_(t,s,o.oNext,a,l,!0)}},e.sweep.connectLeftVertex_=function(t,s){var r=new e.ActiveRegion;r.eUp=s.anEdge.sym;var i=t.dict.search(r).getKey(),n=i.regionBelow(),o=i.eUp,l=n.eUp;if(0!==e.geom.edgeSign(o.dst(),s,o.org)){var a,_=e.geom.vertLeq(l.dst(),o.dst())?i:n;i.inside||_.fixUpperEdge?(a=_===i?e.mesh.connect(s.anEdge.sym,o.lNext):e.mesh.connect(l.dNext(),s.anEdge).sym,_.fixUpperEdge?e.sweep.fixUpperEdge_(_,a):e.sweep.computeWinding_(t,e.sweep.addRegionBelow_(t,i,a)),e.sweep.sweepEvent_(t,s)):e.sweep.addRightEdges_(t,i,s.anEdge,s.anEdge,null,!0)}else e.sweep.connectLeftDegenerate_(t,i,s)},e.sweep.sweepEvent_=function(t,s){t.event=s;for(var r=s.anEdge;null===r.activeRegion;)if((r=r.oNext)===s.anEdge)return void e.sweep.connectLeftVertex_(t,s);var i=e.sweep.topLeftRegion_(r.activeRegion),n=i.regionBelow(),o=n.eUp,l=e.sweep.finishLeftRegions_(t,n,null);l.oNext===o?e.sweep.connectRightVertex_(t,i,l):e.sweep.addRightEdges_(t,i,l.oNext,o,o,!0)},e.sweep.addSentinel_=function(t,s){var r=new e.ActiveRegion,i=e.mesh.makeEdge(t.mesh);i.org.s=e.sweep.SENTINEL_COORD_,i.org.t=s,i.dst().s=-e.sweep.SENTINEL_COORD_,i.dst().t=s,t.event=i.dst(),r.eUp=i,r.windingNumber=0,r.inside=!1,r.fixUpperEdge=!1,r.sentinel=!0,r.dirty=!1,r.nodeUp=t.dict.insert(r)},e.sweep.initEdgeDict_=function(t){t.dict=new e.Dict(t,e.sweep.edgeLeq_),e.sweep.addSentinel_(t,-e.sweep.SENTINEL_COORD_),e.sweep.addSentinel_(t,e.sweep.SENTINEL_COORD_)},e.sweep.doneEdgeDict_=function(t){for(var s,r=0;null!==(s=t.dict.getMin().getKey());)s.sentinel||(e.assert(s.fixUpperEdge),e.assert(1==++r)),e.assert(0===s.windingNumber),e.sweep.deleteRegion_(t,s);t.dict=null},e.sweep.removeDegenerateEdges_=function(t){for(var s,r=t.mesh.eHead,i=r.next;i!==r;i=s){s=i.next;var n=i.lNext;e.geom.vertEq(i.org,i.dst())&&i.lNext.lNext!==i&&(e.sweep.spliceMergeVertices_(t,n,i),e.mesh.deleteEdge(i),n=(i=n).lNext),n.lNext===i&&(n!==i&&(n!==s&&n!==s.sym||(s=s.next),e.mesh.deleteEdge(n)),i!==s&&i!==s.sym||(s=s.next),e.mesh.deleteEdge(i))}},e.sweep.initPriorityQ_=function(t){var s=new e.PriorityQ;t.pq=s;var r,i=t.mesh.vHead;for(r=i.next;r!==i;r=r.next)r.pqHandle=s.insert(r);s.init()},e.sweep.donePriorityQ_=function(e){e.pq.deleteQ(),e.pq=null},e.sweep.removeDegenerateFaces_=function(t){for(var s,r=t.fHead.next;r!==t.fHead;r=s){s=r.next;var i=r.anEdge;e.assert(i.lNext!==i),i.lNext.lNext===i&&(e.sweep.addWinding_(i.oNext,i),e.mesh.deleteEdge(i))}},e.tessmono={},e.tessmono.tessellateMonoRegion_=function(t){var s=t.anEdge;for(e.assert(s.lNext!==s&&s.lNext.lNext!==s);e.geom.vertLeq(s.dst(),s.org);s=s.lPrev());for(;e.geom.vertLeq(s.org,s.dst());s=s.lNext);for(var r,i=s.lPrev();s.lNext!==i;)if(e.geom.vertLeq(s.dst(),i.org)){for(;i.lNext!==s&&(e.geom.edgeGoesLeft(i.lNext)||e.geom.edgeSign(i.org,i.dst(),i.lNext.dst())<=0);)i=(r=e.mesh.connect(i.lNext,i)).sym;i=i.lPrev()}else{for(;i.lNext!==s&&(e.geom.edgeGoesRight(s.lPrev())||e.geom.edgeSign(s.dst(),s.org,s.lPrev().org)>=0);)r=e.mesh.connect(s,s.lPrev()),s=r.sym;s=s.lNext}for(e.assert(i.lNext!==s);i.lNext.lNext!==s;)i=(r=e.mesh.connect(i.lNext,i)).sym},e.tessmono.tessellateInterior=function(t){for(var s,r=t.fHead.next;r!==t.fHead;r=s)s=r.next,r.inside&&e.tessmono.tessellateMonoRegion_(r)},e.tessmono.discardExterior=function(t){for(var s,r=t.fHead.next;r!==t.fHead;r=s)s=r.next,r.inside||e.mesh.zapFace(r)},e.tessmono.setWindingNumber=function(t,s,r){for(var i,n=t.eHead.next;n!==t.eHead;n=i)i=n.next,n.rFace().inside!==n.lFace.inside?n.winding=n.lFace.inside?s:-s:r?e.mesh.deleteEdge(n):n.winding=0},e.Dict=function(t,s){this.head_=new e.DictNode,this.frame_=t,this.leq_=s},e.Dict.prototype.deleteDict_=function(){},e.Dict.prototype.insertBefore=function(t,s){do{t=t.prev}while(null!==t.key&&!this.leq_(this.frame_,t.key,s));var r=new e.DictNode(s,t.next,t);return t.next.prev=r,t.next=r,r},e.Dict.prototype.insert=function(e){return this.insertBefore(this.head_,e)},e.Dict.prototype.deleteNode=function(e){e.next.prev=e.prev,e.prev.next=e.next},e.Dict.prototype.search=function(e){var t=this.head_;do{t=t.next}while(null!==t.key&&!this.leq_(this.frame_,e,t.key));return t},e.Dict.prototype.getMin=function(){return this.head_.next},e.Dict.prototype.getMax=function(){return this.head_.prev},e.DictNode=function(e,t,s){this.key=e||null,this.next=t||this,this.prev=s||this},e.DictNode.prototype.getKey=function(){return this.key},e.DictNode.prototype.getSuccessor=function(){return this.next},e.DictNode.prototype.getPredecessor=function(){return this.prev},e.GluTesselator=function(){this.state_=e.GluTesselator.tessState_.T_DORMANT,this.lastEdge_=null,this.mesh=null,this.errorCallback_=null,this.normal_=[0,0,0],this.windingRule=e.windingRule.GLU_TESS_WINDING_ODD,this.fatalError=!1,this.dict=null,this.pq=null,this.event=null,this.combineCallback_=null,this.boundaryOnly_=!1,this.beginCallback_=null,this.edgeFlagCallback_=null,this.vertexCallback_=null,this.endCallback_=null,this.meshCallback_=null,this.polygonData_=null},e.GluTesselator.tessState_={T_DORMANT:0,T_IN_POLYGON:1,T_IN_CONTOUR:2},e.GluTesselator.prototype.gluDeleteTess=function(){this.requireState_(e.GluTesselator.tessState_.T_DORMANT)},e.GluTesselator.prototype.gluTessProperty=function(t,s){switch(t){case e.gluEnum.GLU_TESS_TOLERANCE:return;case e.gluEnum.GLU_TESS_WINDING_RULE:var r=s;switch(r){case e.windingRule.GLU_TESS_WINDING_ODD:case e.windingRule.GLU_TESS_WINDING_NONZERO:case e.windingRule.GLU_TESS_WINDING_POSITIVE:case e.windingRule.GLU_TESS_WINDING_NEGATIVE:case e.windingRule.GLU_TESS_WINDING_ABS_GEQ_TWO:return void(this.windingRule=r)}break;case e.gluEnum.GLU_TESS_BOUNDARY_ONLY:return void(this.boundaryOnly_=!!s);default:return void this.callErrorCallback(e.gluEnum.GLU_INVALID_ENUM)}this.callErrorCallback(e.gluEnum.GLU_INVALID_VALUE)},e.GluTesselator.prototype.gluGetTessProperty=function(t){switch(t){case e.gluEnum.GLU_TESS_TOLERANCE:return 0;case e.gluEnum.GLU_TESS_WINDING_RULE:var s=this.windingRule;return e.assert(s===e.windingRule.GLU_TESS_WINDING_ODD||s===e.windingRule.GLU_TESS_WINDING_NONZERO||s===e.windingRule.GLU_TESS_WINDING_POSITIVE||s===e.windingRule.GLU_TESS_WINDING_NEGATIVE||s===e.windingRule.GLU_TESS_WINDING_ABS_GEQ_TWO),s;case e.gluEnum.GLU_TESS_BOUNDARY_ONLY:return e.assert(!0===this.boundaryOnly_||!1===this.boundaryOnly_),this.boundaryOnly_;default:this.callErrorCallback(e.gluEnum.GLU_INVALID_ENUM)}return!1},e.GluTesselator.prototype.gluTessNormal=function(e,t,s){this.normal_[0]=e,this.normal_[1]=t,this.normal_[2]=s},e.GluTesselator.prototype.gluTessCallback=function(t,s){var r=s||null;switch(t){case e.gluEnum.GLU_TESS_BEGIN:case e.gluEnum.GLU_TESS_BEGIN_DATA:return void(this.beginCallback_=r);case e.gluEnum.GLU_TESS_EDGE_FLAG:case e.gluEnum.GLU_TESS_EDGE_FLAG_DATA:return void(this.edgeFlagCallback_=r);case e.gluEnum.GLU_TESS_VERTEX:case e.gluEnum.GLU_TESS_VERTEX_DATA:return void(this.vertexCallback_=r);case e.gluEnum.GLU_TESS_END:case e.gluEnum.GLU_TESS_END_DATA:return void(this.endCallback_=r);case e.gluEnum.GLU_TESS_ERROR:case e.gluEnum.GLU_TESS_ERROR_DATA:return void(this.errorCallback_=r);case e.gluEnum.GLU_TESS_COMBINE:case e.gluEnum.GLU_TESS_COMBINE_DATA:return void(this.combineCallback_=r);case e.gluEnum.GLU_TESS_MESH:return void(this.meshCallback_=r);default:return void this.callErrorCallback(e.gluEnum.GLU_INVALID_ENUM)}},e.GluTesselator.prototype.gluTessVertex=function(t,s){var r=!1,i=[0,0,0];this.requireState_(e.GluTesselator.tessState_.T_IN_CONTOUR);for(var n=0;n<3;++n){var o=t[n];o<-e.GLU_TESS_MAX_COORD&&(o=-e.GLU_TESS_MAX_COORD,r=!0),o>e.GLU_TESS_MAX_COORD&&(o=e.GLU_TESS_MAX_COORD,r=!0),i[n]=o}r&&this.callErrorCallback(e.errorType.GLU_TESS_COORD_TOO_LARGE),this.addVertex_(i,s)},e.GluTesselator.prototype.gluTessBeginPolygon=function(t){this.requireState_(e.GluTesselator.tessState_.T_DORMANT),this.state_=e.GluTesselator.tessState_.T_IN_POLYGON,this.mesh=new e.GluMesh,this.polygonData_=t},e.GluTesselator.prototype.gluTessBeginContour=function(){this.requireState_(e.GluTesselator.tessState_.T_IN_POLYGON),this.state_=e.GluTesselator.tessState_.T_IN_CONTOUR,this.lastEdge_=null},e.GluTesselator.prototype.gluTessEndContour=function(){this.requireState_(e.GluTesselator.tessState_.T_IN_CONTOUR),this.state_=e.GluTesselator.tessState_.T_IN_POLYGON},e.GluTesselator.prototype.gluTessEndPolygon=function(){if(this.requireState_(e.GluTesselator.tessState_.T_IN_POLYGON),this.state_=e.GluTesselator.tessState_.T_DORMANT,e.normal.projectPolygon(this,this.normal_[0],this.normal_[1],this.normal_[2]),e.sweep.computeInterior(this),!this.fatalError){var t=this.mesh;if(this.boundaryOnly_?e.tessmono.setWindingNumber(t,1,!0):e.tessmono.tessellateInterior(t),this.mesh.checkMesh(),this.beginCallback_||this.endCallback_||this.vertexCallback_||this.edgeFlagCallback_)if(this.boundaryOnly_)e.render.renderBoundary(this,this.mesh);else{var s=!!this.edgeFlagCallback_;e.render.renderMesh(this,this.mesh,s)}if(this.meshCallback_)return e.tessmono.discardExterior(this.mesh),this.meshCallback_(this.mesh),this.mesh=null,void(this.polygonData_=null)}e.mesh.deleteMesh(this.mesh),this.polygonData_=null,this.mesh=null},e.GluTesselator.prototype.requireState_=function(e){this.state_!==e&&this.gotoState_(e)},e.GluTesselator.prototype.gotoState_=function(t){for(;this.state_!==t;)if(this.state_0&&null===this.verts_[this.order_[this.size_-1]]);return t},e.PriorityQ.prototype.minimum=function(){if(0===this.size_)return this.heap_.minimum();var t=this.verts_[this.order_[this.size_-1]];if(!this.heap_.isEmpty()){var s=this.heap_.minimum();if(e.geom.vertLeq(s,t))return s}return t},e.PriorityQ.prototype.remove=function(t){if(t>=0)this.heap_.remove(t);else for(t=-(t+1),e.assert(t0&&null===this.verts_[this.order_[this.size_-1]];)--this.size_},e.PriorityQHeap=function(){this.heap_=e.PriorityQHeap.reallocNumeric_([0],e.PriorityQHeap.INIT_SIZE_+1),this.verts_=[null,null],this.handles_=[0,0],this.size_=0,this.max_=e.PriorityQHeap.INIT_SIZE_,this.freeList_=0,this.initialized_=!1,this.heap_[1]=1},e.PriorityQHeap.INIT_SIZE_=32,e.PriorityQHeap.reallocNumeric_=function(e,t){for(var s=new Array(t),r=0;r=1;--e)this.floatDown_(e);this.initialized_=!0},e.PriorityQHeap.prototype.insert=function(t){var s,r=++this.size_;return 2*r>this.max_&&(this.max_*=2,this.handles_=e.PriorityQHeap.reallocNumeric_(this.handles_,this.max_+1)),0===this.freeList_?s=r:(s=this.freeList_,this.freeList_=this.handles_[this.freeList_]),this.verts_[s]=t,this.handles_[s]=r,this.heap_[r]=s,this.initialized_&&this.floatUp_(r),s},e.PriorityQHeap.prototype.isEmpty=function(){return 0===this.size_},e.PriorityQHeap.prototype.minimum=function(){return this.verts_[this.heap_[1]]},e.PriorityQHeap.prototype.extractMin=function(){var e=this.heap_,t=this.verts_,s=this.handles_,r=e[1],i=t[r];return this.size_>0&&(e[1]=e[this.size_],s[e[1]]=1,t[r]=null,s[r]=this.freeList_,this.freeList_=r,--this.size_>0&&this.floatDown_(1)),i},e.PriorityQHeap.prototype.remove=function(t){var s=this.heap_,r=this.verts_,i=this.handles_;e.assert(t>=1&&t<=this.max_&&null!==r[t]);var n=i[t];if(s[n]=s[this.size_],i[s[n]]=n,n<=--this.size_)if(n<=1)this.floatDown_(n);else{var o=r[s[n]],l=r[s[n>>1]];e.geom.vertLeq(l,o)?this.floatDown_(n):this.floatUp_(n)}r[t]=null,i[t]=this.freeList_,this.freeList_=t},e.PriorityQHeap.prototype.floatDown_=function(t){for(var s=this.heap_,r=this.verts_,i=this.handles_,n=t,o=s[n];;){var l=n<<1;lthis.size_||e.geom.vertLeq(r[o],r[a]))return s[n]=o,void(i[o]=n);s[n]=a,i[a]=n,n=l}},e.PriorityQHeap.prototype.floatUp_=function(t){for(var s=this.heap_,r=this.verts_,i=this.handles_,n=t,o=s[n];;){var l=n>>1,a=s[l];if(0===l||e.geom.vertLeq(r[a],r[o]))return s[n]=o,void(i[o]=n);s[n]=a,i[a]=n,n=l}},e.ActiveRegion=function(){this.eUp=null,this.nodeUp=null,this.windingNumber=0,this.inside=!1,this.sentinel=!1,this.dirty=!1,this.fixUpperEdge=!1},e.ActiveRegion.prototype.regionBelow=function(){return this.nodeUp.getPredecessor().getKey()},e.ActiveRegion.prototype.regionAbove=function(){return this.nodeUp.getSuccessor().getKey()},e},void 0!==(r=s())&&(t.exports=r);const n=e.getLogger(\"esri.views.2d.engine.webgl.mesh.templates.Tesselator\");class o{constructor(){this._currentVertexIndex=0,this._indexCounter=0,this._triangleIndices=[-1,-1,-1],this.glu=new i.exports.GluTesselator,this.glu.gluTessCallback(i.exports.gluEnum.GLU_TESS_BEGIN,this._begincallback.bind(this)),this.glu.gluTessCallback(i.exports.gluEnum.GLU_TESS_VERTEX_DATA,this._vertexCallback.bind(this)),this.glu.gluTessCallback(i.exports.gluEnum.GLU_TESS_END,this._endcallback.bind(this)),this.glu.gluTessCallback(i.exports.gluEnum.GLU_TESS_COMBINE,this._combinecallback.bind(this)),this.glu.gluTessCallback(i.exports.gluEnum.GLU_TESS_ERROR,this._errorcallback.bind(this)),this.glu.gluTessCallback(i.exports.gluEnum.GLU_TESS_EDGE_FLAG,this._edgeCallback.bind(this)),this.glu.gluTessProperty(i.exports.gluEnum.GLU_TESS_WINDING_RULE,i.exports.windingRule.GLU_TESS_WINDING_ODD)}beginPolygon(e,t){this._triangleIndices[0]=-1,this._triangleIndices[1]=-1,this._triangleIndices[2]=-1,this._currentVertexIndex=0,this._indexCounter=0,this.glu.gluTessBeginPolygon(e),this._indices=t}endPolygon(){this.glu.gluTessEndPolygon()}beginContour(){this.glu.gluTessBeginContour()}endContour(){this.glu.gluTessEndContour()}addVertex(e,t){this.glu.gluTessVertex(e,t)}_vertexCallback(e,t){if(t[t.length]=e[0],t[t.length]=e[1],this._triangleIndices[this._currentVertexIndex]=-1,this._currentVertexIndex>=2){for(let e=0;e<3;e++)-1===this._triangleIndices[e]&&(this._triangleIndices[e]=this._indexCounter++),this._indices[this._indices.length]=this._triangleIndices[e];this._currentVertexIndex=0}else this._currentVertexIndex++}_begincallback(){this._triangleIndices[0]=-1,this._triangleIndices[1]=-1,this._triangleIndices[2]=-1,this._currentVertexIndex=0}_endcallback(){this._currentVertexIndex=0}_errorcallback(e){n.error(`Encountered error during tesselation: ${e}`)}_combinecallback(e){return[e[0],e[1],e[2]]}_edgeCallback(){}}export default o;\n"],"sourceRoot":""}