//>>built define("dojox/gfx/gradutils",["./_base","dojo/_base/lang","./matrix","dojo/_base/Color"],function(g,_1,m,_2){ var _3=g.gradutils={}; function _4(o,c){ if(o<=0){ return c[0].color; } var _5=c.length; if(o>=1){ return c[_5-1].color; } for(var i=0;i<_5;++i){ var _6=c[i]; if(_6.offset>=o){ if(i){ var _7=c[i-1]; return _2.blendColors(new _2(_7.color),new _2(_6.color),(o-_7.offset)/(_6.offset-_7.offset)); } return _6.color; } } return c[_5-1].color; }; _3.getColor=function(_8,pt){ var o; if(_8){ switch(_8.type){ case "linear": var _9=Math.atan2(_8.y2-_8.y1,_8.x2-_8.x1),_a=m.rotate(-_9),_b=m.project(_8.x2-_8.x1,_8.y2-_8.y1),p=m.multiplyPoint(_b,pt),_c=m.multiplyPoint(_b,_8.x1,_8.y1),_d=m.multiplyPoint(_b,_8.x2,_8.y2),_e=m.multiplyPoint(_a,_d.x-_c.x,_d.y-_c.y).x; o=m.multiplyPoint(_a,p.x-_c.x,p.y-_c.y).x/_e; break; case "radial": var dx=pt.x-_8.cx,dy=pt.y-_8.cy; o=Math.sqrt(dx*dx+dy*dy)/_8.r; break; } return _4(o,_8.colors); } return new _2(_8||[0,0,0,0]); }; _3.reverse=function(_f){ if(_f){ switch(_f.type){ case "linear": case "radial": _f=_1.delegate(_f); if(_f.colors){ var c=_f.colors,l=c.length,i=0,_10,n=_f.colors=new Array(c.length); for(;i