//----------------------------------------------------------------------- void parseEllipse(ref MultiShape @out, XmlNode pEllipseNode) { float rx = getAttribReal(pEllipseNode, "rx"); float ry = getAttribReal(pEllipseNode, "ry"); if (rx <= 0.0f || ry <= 0.0f) return; Shape s = new EllipseShape().setNumSeg(mNumSeg).setRadiusX(rx).setRadiusY(ry).realizeShape(); // if(pEllipseNode->first_attribute("id")) // ss.id = pEllipseNode->first_attribute("id")->value(); float position_x = getAttribReal(pEllipseNode, "cx"); float position_y = getAttribReal(pEllipseNode, "cy"); Vector2 position = new Vector2(position_x, position_y); Vector2 trans = getAttribTranslate(pEllipseNode); position += trans; s.translate(position); @out.addShape(s); }