<divid=Content><divclass="CClass"><divclass=CTopicid=MainTopic><h1class=CTitle><aname="mxDoubleEllipse"></a>mxDoubleEllipse</h1><divclass=CBody><p>Extends <ahref="mxShape-js.html#mxShape"class=LClassid=link6onMouseOver="ShowTip(event, 'tt1', 'link6')"onMouseOut="HideTip('tt1')">mxShape</a> to implement a double ellipse shape. This shape is registered under <ahref="../util/mxConstants-js.html#mxConstants.SHAPE_DOUBLE_ELLIPSE"class=LVariableid=link7onMouseOver="ShowTip(event, 'tt6', 'link7')"onMouseOut="HideTip('tt6')">mxConstants.SHAPE_DOUBLE_ELLIPSE</a> in <ahref="../view/mxCellRenderer-js.html#mxCellRenderer"class=LClassid=link8onMouseOver="ShowTip(event, 'tt7', 'link8')"onMouseOut="HideTip('tt7')">mxCellRenderer</a>. Use the following override to only fill the inner ellipse in this shape:</p><blockquote><preclass="prettyprint">mxDoubleEllipse.prototype.paintVertexShape = function(c, x, y, w, h)
{
c.ellipse(x, y, w, h);
c.stroke();
var inset = mxUtils.getValue(this.style, mxConstants.STYLE_MARGIN, Math.min(3 + this.strokewidth, Math.min(w / 5, h / 5)));
x += inset;
y += inset;
w -= 2 * inset;
h -= 2 * inset;
if (w > 0 && h > 0)
{
c.ellipse(x, y, w, h);
}
c.fillAndStroke();
};</pre></blockquote><!--START_ND_SUMMARY--><divclass=Summary><divclass=STitle>Summary</div><divclass=SBorder><tableborder=0cellspacing=0cellpadding=0class=STable><trclass="SMain"><tdclass=SEntry><ahref="#mxDoubleEllipse">mxDoubleEllipse</a></td><tdclass=SDescription>Extends <ahref="mxShape-js.html#mxShape"class=LClassid=link1onMouseOver="ShowTip(event, 'tt1', 'link1')"onMouseOut="HideTip('tt1')">mxShape</a> to implement a double ellipse shape. </td></tr><trclass="SGroup SIndent1"><tdclass=SEntry><ahref="#mxDoubleEllipse.Functions">Functions</a></td><tdclass=SDescription></td></tr><trclass="SFunction SIndent2 SMarked"><tdclass=SEntry><ahref="#mxDoubleEllipse.mxDoubleEllipse"id=link2onMouseOver="ShowTip(event, 'tt2', 'link2')"onMouseOut="HideTip('tt2')">mxDoubleEllipse</a></td><tdclass=SDescription>Constructs a new ellipse shape.</td></tr><trclass="SGroup SIndent1"><tdclass=SEntry><ahref="#mxDoubleEllipse.Variables">Variables</a></td><tdclass=SDescription></td></tr><trclass="SVariable SIndent2 SMarked"><tdclass=SEntry><ahref="#mxDoubleEllipse.vmlScale"id=link3onMouseOver="ShowTip(event, 'tt3', 'link3')"onMouseOut="HideTip('tt3')">vmlScale</a></td><tdclass=SDescription>Scale for improving the precision of VML rendering. </td></tr><trclass="SGroup SIndent1"><tdclass=SEntry><ahref="#mxDoubleEllipse.Functions">Functions</a></td><tdclass=SDescription></td></tr><trclass="SFunction SIndent2 SMarked"><tdclass=SEntry><ahref="#mxDoubleEllipse.paintBackground"id=link4onMouseOver="ShowTip(event, 'tt4', 'link4')"onMouseOut="HideTip('tt4')">paintBackground</a></td><tdclass=SDescription>Paints the background.</td></tr><trclass="SFunction SIndent2"><tdclass=SEntry><ahref="#mxDoubleEllipse.paintForeground"id=link5onMouseOver="ShowTip(event, 'tt5', 'link5')"onMouseOut="HideTip('tt5')">paintForeground</a></td><tdclass=SDescription>Paints the foreground.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
<divclass="CFunction"><divclass=CTopic><h3class=CTitle><aname="mxDoubleEllipse.mxDoubleEllipse"></a>mxDoubleEllipse</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>function mxDoubleEllipse(</td><tdclass=PParameternowrap>bounds,</td></tr><tr><td></td><tdclass=PParameternowrap>fill,</td></tr><tr><td></td><tdclass=PParameternowrap>stroke,</td></tr><tr><td></td><tdclass=PParameternowrap>strokewidth</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote><p>Constructs a new ellipse shape.</p><h4class=CHeading>Parameters</h4><tableborder=0cellspacing=0cellpadding=0class=CDescriptionList><tr><tdclass=CDLEntry>bounds</td><tdclass=CDLDescription><ahref="../util/mxRectangle-js.html#mxRectangle"class=LClassid=link9onMouseOver="ShowTip(event, 'tt8', 'link9')"onMouseOut="HideTip('tt8')">mxRectangle</a> that defines the bounds. This is stored in <ahref="mxShape-js.html#mxShape.bounds"class=LVariableid=link10onMouseOver="ShowTip(event, 'tt9', 'link10')"onMouseOut="HideTip('tt9')">mxShape.bounds</a>.</td></tr><tr><tdclass=CDLEntry>fill</td><tdclass=CDLDescription>String that defines the fill color. This is stored in <fill>.</td></tr><tr><tdclass=CDLEntry>stroke</td><tdclass=CDLDescription>String that defines the stroke color. This is stored in <stroke>.</td></tr><tr><tdclass=CDLEntry>strokewidth</td><tdclass=CDLDescription>Optional integer that defines the stroke width. Default is 1. This is stored in <strokewidth>.</td></tr></table></div></div></div>
<divclass="CVariable"><divclass=CTopic><h3class=CTitle><aname="mxDoubleEllipse.vmlScale"></a>vmlScale</h3><divclass=CBody><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxDoubleEllipse.prototype.vmlScale</td></tr></table></blockquote><p>Scale for improving the precision of VML rendering. Default is 10.</p></div></div></div>
<divclass=CToolTipid="tt1"><divclass=CClass>Base class for all shapes. </div></div><divclass=CToolTipid="tt2"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>function mxDoubleEllipse(</td><tdclass=PParameternowrap>bounds,</td></tr><tr><td></td><tdclass=PParameternowrap>fill,</td></tr><tr><td></td><tdclass=PParameternowrap>stroke,</td></tr><tr><td></td><tdclass=PParameternowrap>strokewidth</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Constructs a new ellipse shape.</div></div><divclass=CToolTipid="tt3"><divclass=CVariable><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxDoubleEllipse.prototype.vmlScale</td></tr></table></blockquote>Scale for improving the precision of VML rendering. </div></div><divclass=CToolTipid="tt4"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxDoubleEllipse.prototype.paintBackground = function(</td><tdclass=PParameternowrap>c,</td></tr><tr><td></td><tdclass=PParameternowrap>x,</td></tr><tr><td></td><tdclass=PParameternowrap>y,</td></tr><tr><td></td><tdclass=PParameternowrap>w,</td></tr><tr><td></td><tdclass=PParameternowrap>h</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Paints the background.</div></div><divclass=CToolTipid="tt5"><divclass=CFunction><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td><tableborder=0cellspacing=0cellpadding=0><tr><tdclass=PBeforeParametersnowrap>mxDoubleEllipse.prototype.paintForeground = function(</td><tdclass=PParameternowrap>c,</td></tr><tr><td></td><tdclass=PParameternowrap>x,</td></tr><tr><td></td><tdclass=PParameternowrap>y,</td></tr><tr><td></td><tdclass=PParameternowrap>w,</td></tr><tr><td></td><tdclass=PParameternowrap>h</td><tdclass=PAfterParametersnowrap>)</td></tr></table></td></tr></table></blockquote>Paints the foreground.</div></div><divclass=CToolTipid="tt6"><divclass=CVariable>Name under which mxDoubleEllipse is registered in mxCellRenderer. </div></div><divclass=CToolTipid="tt7"><divclass=CClass>Renders cells into a document object model. </div></div><divclass=CToolTipid="tt8"><divclass=CClass>Extends mxPoint to implement a 2-dimensional rectangle with double precision coordinates.</div></div><divclass=CToolTipid="tt9"><divclass=CVariable><blockquote><tableborder=0cellspacing=0cellpadding=0class="Prototype prettyprint"><tr><td>mxShape.prototype.bounds</td></tr></table></blockquote>Holds the mxRectangle that specifies the bounds of this shape.</div></div><!--END_ND_TOOLTIPS-->