]> source.dussan.org Git - svg.js.git/commitdiff
Fix in circle and ellipse generater
authorwout <wout@impinc.co.uk>
Sun, 16 Dec 2012 17:48:35 +0000 (18:48 +0100)
committerwout <wout@impinc.co.uk>
Sun, 16 Dec 2012 17:48:35 +0000 (18:48 +0100)
src/container.js
src/element.js

index 339e5549ca2cf2baa0725edaf2104efdfb2b8998..b45f184c262f19cc32337117960f67b0ba4ab2ac 100644 (file)
@@ -90,21 +90,33 @@ SVG.Container = {
   },
   
   circle: function(v) {
-    return this.place(new SVG.Circle(), {
-      x: v != null ? v.x : void 0,
-      y: v != null ? v.y : void 0,
-      width: (v != null ? (v.width || v.r || v.radius) : void 0),
-      height: null
-    });
+    var g;
+    
+    if (v != null) {
+      g = { x: v.x, y: v.y };
+      
+      if (v.r || v.radius)
+        g.width = g.height = (v.r || v.radius) * 2;
+      else
+        g.width = g.height = v.width || v.height;
+    }
+    
+    return this.place(new SVG.Circle(), g);
   },
   
   ellipse: function(v) {
-    return this.place(new SVG.Ellipse(), {
-      x: v != null ? v.x : void 0,
-      y: v != null ? v.y : void 0,
-      width:  (v != null ? (v.width  || v.rx || v.radiusX) : void 0),
-      height: (v != null ? (v.height || v.ry || v.radiusY) : void 0)
-    });
+    var g;
+    
+    if (v != null) {
+      g = { x: v.x, y: v.y };
+      
+      if (v.width)  g.width  = v.width;
+      if (v.height) g.height = v.height;
+      if (v.rx)     g.width  = v.rx * 2;
+      if (v.ry)     g.height = v.ry * 2;
+    }
+    
+    return this.place(new SVG.Ellipse(), g);
   },
   
   path: function(v) {
index d38e3233de2148e9addf3aa1c3e0b17eca16cc23..bf729cd086b6417d465e087f044791ba55a13f0e 100644 (file)
@@ -84,4 +84,9 @@ SVG.Element.prototype._findParent = function(pt) {
 };
 
 // include the dispatcher object
-SVG.Element.include(SVG.Dispatcher);
\ No newline at end of file
+SVG.Element.include(SVG.Dispatcher);
+
+
+
+
+