/* Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved. Available via Academic Free License >= 2.1 OR the modified BSD license. see: http://dojotoolkit.org/license for details */ if(!dojo._hasResource["dojox.gfx.path"]){dojo._hasResource["dojox.gfx.path"]=true;dojo.provide("dojox.gfx.path");dojo.require("dojox.gfx.shape");dojo.declare("dojox.gfx.path.Path",dojox.gfx.Shape,{constructor:function(_1){this.shape=dojo.clone(dojox.gfx.defaultPath);this.segments=[];this.absolute=true;this.last={};this.rawNode=_1;},setAbsoluteMode:function(_2){this.absolute=typeof _2=="string"?(_2=="absolute"):_2;return this;},getAbsoluteMode:function(){return this.absolute;},getBoundingBox:function(){return (this.bbox&&("l" in this.bbox))?{x:this.bbox.l,y:this.bbox.t,width:this.bbox.r-this.bbox.l,height:this.bbox.b-this.bbox.t}:null;},getLastPosition:function(){return "x" in this.last?this.last:null;},_updateBBox:function(x,y){if(this.bbox&&("l" in this.bbox)){if(this.bbox.l>x){this.bbox.l=x;}if(this.bbox.ry){this.bbox.t=y;}if(this.bbox.b=_8){var _9={action:_6,args:_7.slice(0,_7.length-_7.length%_8)};this.segments.push(_9);this._updateWithSegment(_9);}}else{var _9={action:_6,args:[]};this.segments.push(_9);this._updateWithSegment(_9);}}},_collectArgs:function(_a,_b){for(var i=0;i<_b.length;++i){var t=_b[i];if(typeof t=="boolean"){_a.push(t?1:0);}else{if(typeof t=="number"){_a.push(t);}else{if(t instanceof Array){this._collectArgs(_a,t);}else{if("x" in t&&"y" in t){_a.push(t.x,t.y);}}}}}},moveTo:function(){var _c=[];this._collectArgs(_c,arguments);this._pushSegment(this.absolute?"M":"m",_c);return this;},lineTo:function(){var _d=[];this._collectArgs(_d,arguments);this._pushSegment(this.absolute?"L":"l",_d);return this;},hLineTo:function(){var _e=[];this._collectArgs(_e,arguments);this._pushSegment(this.absolute?"H":"h",_e);return this;},vLineTo:function(){var _f=[];this._collectArgs(_f,arguments);this._pushSegment(this.absolute?"V":"v",_f);return this;},curveTo:function(){var _10=[];this._collectArgs(_10,arguments);this._pushSegment(this.absolute?"C":"c",_10);return this;},smoothCurveTo:function(){var _11=[];this._collectArgs(_11,arguments);this._pushSegment(this.absolute?"S":"s",_11);return this;},qCurveTo:function(){var _12=[];this._collectArgs(_12,arguments);this._pushSegment(this.absolute?"Q":"q",_12);return this;},qSmoothCurveTo:function(){var _13=[];this._collectArgs(_13,arguments);this._pushSegment(this.absolute?"T":"t",_13);return this;},arcTo:function(){var _14=[];this._collectArgs(_14,arguments);this._pushSegment(this.absolute?"A":"a",_14);return this;},closePath:function(){this._pushSegment("Z",[]);return this;},_setPath:function(_15){var p=dojo.isArray(_15)?_15:_15.match(dojox.gfx.pathSvgRegExp);this.segments=[];this.absolute=true;this.bbox={};this.last={};if(!p){return;}var _16="",_17=[],l=p.length;for(var i=0;i