OSDN Git Service

svg.jsで定義されている単位インターフェースをbase関数を使って、オブジェクトに変換
authordhrname <sie-developers@lists.sourceforge.jp>
Mon, 15 Sep 2014 13:11:46 +0000 (22:11 +0900)
committerdhrname <sie-developers@lists.sourceforge.jp>
Mon, 15 Sep 2014 13:11:46 +0000 (22:11 +0900)
org/w3c/dom/svg.js

index 483fbad..2e443cf 100644 (file)
@@ -359,7 +359,7 @@ base("$document").$element.up("$svgelement").mix( {
 \r
   /*interface SVGLocatable*/\r
   /*SVGRect*/     getBBox: function(){\r
-    var s = new SVGRect(),\r
+    var s = base("$SVGRect").up("$1"),\r
         data = this._tar.path.value,\r
         vi = this.ownerDocument.documentElement.viewport,\r
         el = vi.width,\r
@@ -507,35 +507,34 @@ base("$SVGStringList").mix(Array.prototype)
    this.up("$SVGPathSegList");\r
  } );\r
 \r
-function SVGAnimatedEnumeration() {\r
-  /*unsigned short*/ this.baseVal = 0;\r
+base("$SVGAnimatedEnumeration").mix( {\r
+  /*unsigned short*/ baseVal: 0,\r
                          // raises DOMException on setting\r
-  /*readonly unsigned short*/ this.animVal = 0;\r
-};\r
-function SVGAnimatedInteger() {\r
-  /*long*/ this.baseVal = 0;\r
+  /*readonly unsigned short*/ animVal: 0\r
+} );\r
+base("$SVGAnimatedInteger").mix( {\r
+  /*long*/ baseVal: 0,\r
                          // raises DOMException on setting\r
-  /*readonly long*/ this.animVal = 0;\r
-};\r
-function SVGNumber() {\r
-  /*float*/ this.value = 0;\r
+  /*readonly long*/ animVal: 0\r
+} );\r
+base("$SVGNumber") \r
+  /*float*/ .value = 0;\r
                          // raises DOMException on setting\r
-};\r
-function SVGAnimatedNumber() {\r
-  /*float*/ this.baseVal = this.animVal = 0;\r
-};\r
+base("$SVGAnimatedNumber").mix( {\r
+  /*float*/ baseVal: 0,\r
+  /*float*/ animVal: 0\r
+} );\r
 \r
 /*SVGUnmberListのメソッドはSVGStringListを参照*/\r
 \r
 function SVGAnimatedNumberList() {\r
   /*readonly SVGNumberList*/ this.animVal = this.baseVal = base("$SVGStringList").$SVGNumberList.up("$1");\r
 };\r
-/*SVGLengthクラス\r
+/*$SVGLengthオブジェクト\r
  *長さを設定する(単位pxに統一する方便として使う)\r
  *valueInSpecifiedUnitsプロパティはpxに統一する前の数値。valueプロパティはpxに統一した後の数値\r
  */\r
-function SVGLength() {\r
-};\r
+base("$SVGLength").mix( {\r
 /*(function(t) {\r
     // Length Unit Types\r
   /*const unsigned short t.SVG_LENGTHTYPE_UNKNOWN    = 0;\r
@@ -551,7 +550,7 @@ function SVGLength() {
   /*const unsigned short t.SVG_LENGTHTYPE_PC         = 10;\r
 })(SVGLength);*/\r
 \r
-SVGLength.prototype = {\r
+\r
   /*readonly attribute unsigned short*/ unitType : /*SVGLength.SVG_LENGTHTYPE_UNKNOWN*/ 0,\r
   /*attribute float*/          value : 0,                  //利用単位における値\r
   /*attribute float*/          valueInSpecifiedUnits : /*SVGLength.SVG_LENGTHTYPE_UNKNOWN*/ 0,  //unitTypeにおける値\r
@@ -628,10 +627,10 @@ SVGLength.prototype = {
       this.newValueSpecifiedUnits(this.unitType, this.valueInSpecifiedUnits);\r
     }\r
   }\r
-};\r
+} );\r
 function SVGAnimatedLength() {\r
   /*readonly SVGLength*/ this.animVal;\r
-  this.baseVal = new SVGLength();\r
+  this.baseVal = base("$SVGLength").up("$1");\r
   this.baseVal.unitType = 1;\r
 };\r
 \r
@@ -640,9 +639,8 @@ function SVGAnimatedLength() {
 function SVGAnimatedLengthList() {\r
   /*readonly SVGLengthList*/ this.animVal = this.baseVal = base("$SVGStringList").$SVGLengthList.up("$1");;\r
 };\r
-function SVGAngle() {\r
-};\r
-SVGAngle.prototype = {\r
+\r
+base("$SVGAngle").mix( {\r
   /*readonly attribute unsigned short*/ unitType : 0,\r
   /*attribute float*/     value : 0,\r
                          // raises DOMException on setting\r
@@ -683,7 +681,7 @@ SVGAngle.prototype = {
     this.newValueSpecifiedUnits(unitType, v);\r
     //raises( DOMException );\r
   }\r
-};\r
+} );\r
 // Angle Unit Types\r
 /*const unsigned short SVGAngle.SVG_ANGLETYPE_UNKNOWN     = 0;\r
 /*const unsigned short SVGAngle.SVG_ANGLETYPE_UNSPECIFIED = 1;\r
@@ -691,8 +689,8 @@ SVGAngle.prototype = {
 /*const unsigned short SVGAngle.SVG_ANGLETYPE_RAD         = 3;\r
 /*const unsigned short SVGAngle.SVG_ANGLETYPE_GRAD        = 4;*/\r
 function SVGAnimatedAngle() {\r
-  /*readonly attribute SVGAngle*/ this.baseVal = new SVGAngle();\r
-  /*readonly attribute SVGAngle*/ this.animVal = this.baseVal;\r
+  /*readonly attribute SVGAngle*/ this.baseVal = base("$SVGAngle").up("$1");\r
+  /*readonly attribute SVGAngle*/ this.animVal = base("$SVGAngle").up("$1");\r
 };\r
 \r
 base("$CSSValue").up("$SVGColor").mix( {\r
@@ -920,19 +918,20 @@ _keywords: {
 }\r
 } );\r
 \r
-function SVGRect() {\r
-  /*float*/ this.x      = 0;\r
+base("$SVGRect").mix( {\r
+  /*float*/ x: 0,\r
                          // raises DOMException on setting\r
-  /*float*/ this.y      = 0;\r
+  /*float*/ y: 0,\r
                          // raises DOMException on setting\r
-  /*float*/ this.width  = 0;\r
+  /*float*/ width: 0,\r
                          // raises DOMException on setting\r
-  /*float*/ this.height = 0;\r
+  /*float*/ height: 0\r
                          // raises DOMException on setting\r
-};\r
+} );\r
 \r
 function SVGAnimatedRect() {\r
-  /*readonly SVGRect*/ this.animVal = this.baseVal = new SVGRect();\r
+  /*readonly SVGRect*/ this.baseVal = base("$SVGRect").up("$1");\r
+/*readonly SVGRect*/ this.animVal  = base("$SVGRect").up("$1");\r
 };\r
 \r
 /*SVGUnitTypes = {\r
@@ -1392,30 +1391,27 @@ base("$document").$element.$svgelement.up("http://www.w3.org/2000/svgsvg").on("i
   this._currentTime = seconds;\r
 },\r
 /*SVGNumber*/     createSVGNumber: function(){\r
-  var s = new SVGNumber();\r
-  s.value = 0;\r
-  return s;\r
+  return base("$SVGNumber").up("$1");\r
 },\r
 /*SVGAngle*/     createSVGAngle: function(){\r
-  var s = new SVGAngle();\r
-  s.value = 0;\r
+  var s = base("$SVGAngle").up("$1");\r
   s.unitType = 1;\r
   return s;\r
 },\r
 /*SVGLength*/     createSVGLength: function(){\r
-  var s = new SVGLength();\r
+  var s = base("$SVGLength").up("$1");\r
   s.unitType = /*SVG_LENGTHTYPE_NUMBER*/ 1;\r
   return s;\r
 },\r
 /*SVGPoint*/      createSVGPoint: function(){\r
-  return new SVGPoint();\r
+  return base("$SVGPoint").up("$1");\r
 },\r
 /*SVGMatrix*/     createSVGMatrix: function(){\r
   //単位行列を作成\r
-  return new SVGMatrix();\r
+  return base("$SVGMatrix").up("$1");\r
 },\r
 /*SVGRect*/       createSVGRect: function(){\r
-  return new SVGRect();\r
+  return base("$SVGRect").up("$1");\r
 },\r
 /*SVGTransform*/  createSVGTransform: function(){\r
   var s = this.createSVGTransformFromMatrix(this.createSVGMatrix());\r
@@ -2117,18 +2113,19 @@ function SVGStyleElement(_doc) {
 /*SVGPoint\r
  *2次元座標の点(x,y)を表すオブジェクト\r
  */\r
-function SVGPoint() {\r
-};\r
-/*float*/SVGPoint.prototype.x = SVGPoint.prototype.y = 0;\r
-SVGPoint.prototype.matrixTransform = function(/*SVGMatrix*/ matrix ) {\r
-  if (!isFinite(matrix.a) || !isFinite(matrix.b) || !isFinite(matrix.c) || !isFinite(matrix.d) || !isFinite(matrix.e) || !isFinite(matrix.f)) {\r
-    throw (new Error("Type Error: 引数の値がNumber型ではありません"));\r
+base("$SVGPoint").mix( {\r
+  /*float*/ x: 0,\r
+  /*float*/ y: 0,\r
+  matrixTransform: function(/*SVGMatrix*/ matrix ) {\r
+    if (!isFinite(matrix.a) || !isFinite(matrix.b) || !isFinite(matrix.c) || !isFinite(matrix.d) || !isFinite(matrix.e) || !isFinite(matrix.f)) {\r
+      throw (new Error("Type Error: 引数の値がNumber型ではありません"));\r
+    }\r
+    var s = base("$SVGPoint").up("$1");\r
+    s.x = matrix.a * this.x + matrix.c * this.y + matrix.e;\r
+    s.y = matrix.b * this.x + matrix.d * this.y + matrix.f;\r
+    return s;\r
   }\r
-  var s = new SVGPoint();\r
-  s.x = matrix.a * this.x + matrix.c * this.y + matrix.e;\r
-  s.y = matrix.b * this.x + matrix.d * this.y + matrix.f;\r
-  return s;\r
-};\r
+} );\r
 \r
 \r
 /*SVGPointListのメソッドはSVGStringListを参照*/\r
@@ -2139,9 +2136,7 @@ SVGPoint.prototype.matrixTransform = function(/*SVGMatrix*/ matrix ) {
  *[b d f]\r
  *[0 0 1]\r
  */\r
-function SVGMatrix() {\r
-};\r
-SVGMatrix.prototype = {\r
+base("$SVGMatrix").mix( {\r
   /*float*/ a : 1,\r
   /*float*/ b : 0,\r
   /*float*/ c : 0,\r
@@ -2152,7 +2147,7 @@ SVGMatrix.prototype = {
    *行列の積を求めて返す\r
    */\r
   /*SVGMatrix*/ multiply : function(/*SVGMatrix*/ secondMatrix ) {\r
-    var s = new SVGMatrix(),\r
+    var s = base("$SVGMatrix").up("$1"),\r
         m = secondMatrix,\r
         isf = isFinite,\r
         t = this;\r
@@ -2172,7 +2167,8 @@ SVGMatrix.prototype = {
    *逆行列を返す\r
    */\r
   /*SVGMatrix*/ inverse : function() {\r
-    var s = new SVGMatrix(), n = this._determinant();\r
+    var s = base("$SVGMatrix").up("$1"), \r
+        n = this._determinant();\r
     if (n !== 0) {\r
       s.a = this.d / n;\r
       s.b = -this.b / n;\r
@@ -2186,7 +2182,7 @@ SVGMatrix.prototype = {
     }\r
   },\r
   /*SVGMatrix*/ translate : function(/*float*/ x, /*float*/ y ) {\r
-    var m = new SVGMatrix();\r
+    var m = base("$SVGMatrix").up("$1");\r
     m.e = x;\r
     m.f = y;\r
     var s =  this.multiply(m);\r
@@ -2194,7 +2190,7 @@ SVGMatrix.prototype = {
     return s;\r
   },\r
   /*SVGMatrix*/ scale : function(/*float*/ scaleFactor ) {\r
-    var m = new SVGMatrix();\r
+    var m = base("$SVGMatrix").up("$1");\r
     m.a = scaleFactor;\r
     m.d = scaleFactor;\r
     var s =  this.multiply(m);\r
@@ -2202,7 +2198,7 @@ SVGMatrix.prototype = {
     return s;\r
   },\r
   /*SVGMatrix*/ scaleNonUniform : function(/*float*/ scaleFactorX, /*float*/ scaleFactorY ) {\r
-    var m = new SVGMatrix();\r
+    var m = base("$SVGMatrix").up("$1");\r
     m.a = scaleFactorX;\r
     m.d = scaleFactorY;\r
     var s =  this.multiply(m);\r
@@ -2210,7 +2206,7 @@ SVGMatrix.prototype = {
     return s;\r
   },\r
   /*SVGMatrix*/ rotate : function(/*float*/ angle ) {\r
-    var m = new SVGMatrix(), rad = angle / 180 * Math.PI; //ラジアン変換\r
+    var m = base("$SVGMatrix").up("$1"), rad = angle / 180 * Math.PI; //ラジアン変換\r
     m.a = Math.cos(rad);\r
     m.b = Math.sin(rad);\r
     m.c = -m.b;\r
@@ -2224,7 +2220,7 @@ SVGMatrix.prototype = {
     if ((x === 0) || (y === 0) || !isFinite(x) || !isFinite(y)) {\r
       throw (new SVGException(/*SVGException.SVG_INVALID_VALUE_ERR*/ 1));\r
     }\r
-    var m = new SVGMatrix(), rad = Math.atan2(y, x);\r
+    var m = base("$SVGMatrix").up("$1"), rad = Math.atan2(y, x);\r
     m.a = Math.cos(rad);\r
     m.b = Math.sin(rad);\r
     m.c = -m.b;\r
@@ -2234,28 +2230,28 @@ SVGMatrix.prototype = {
     return s;\r
   },\r
   /*SVGMatrix*/ flipX : function() {\r
-    var m = new SVGMatrix();\r
+    var m = base("$SVGMatrix").up("$1");\r
     m.a = -m.a;\r
     var s =  this.multiply(m);\r
     m = void 0;\r
     return s;\r
   },\r
   /*SVGMatrix*/ flipY : function() {\r
-    var m = new SVGMatrix();\r
+    var m = base("$SVGMatrix").up("$1");\r
     m.d = -m.d;\r
     var s =  this.multiply(m);\r
     m = void 0;\r
     return s;\r
   },\r
   /*SVGMatrix*/ skewX : function(/*float*/ angle ){\r
-    var m = new SVGMatrix(), rad = angle / 180 * Math.PI; //ラジアン変換\r
+    var m = base("$SVGMatrix").up("$1"), rad = angle / 180 * Math.PI; //ラジアン変換\r
     m.c = Math.tan(rad);\r
     var s =  this.multiply(m);\r
     m = void 0;\r
     return s;\r
   },\r
   /*SVGMatrix*/ skewY : function(/*float*/ angle ){\r
-    var m = new SVGMatrix(), rad = angle / 180 * Math.PI;\r
+    var m = base("$SVGMatrix").up("$1"), rad = angle / 180 * Math.PI;\r
     m.b = Math.tan(rad);\r
     var s =  this.multiply(m);\r
     m = void 0;\r
@@ -2265,10 +2261,10 @@ SVGMatrix.prototype = {
   /*float*/ _determinant : function() {\r
     return (this.a * this.d - this.b * this.c);\r
   }\r
-};\r
+} );\r
 \r
 function SVGTransform() {\r
-  /*readonly SVGMatrix*/ this.matrix = new SVGMatrix();\r
+  /*readonly SVGMatrix*/ this.matrix = base("$SVGMatrix").up("$1");\r
 };\r
     // Transform Types\r
   /*unsigned short*/ SVGTransform.SVG_TRANSFORM_UNKNOWN   = 0;\r
@@ -2280,7 +2276,7 @@ function SVGTransform() {
   /*unsigned short*/ SVGTransform.SVG_TRANSFORM_SKEWY     = 6;\r
 SVGTransform.prototype = {\r
   /*ダミーの単位行列。各メソッドで使う*/\r
-  _matrix : (new SVGMatrix()),\r
+  _matrix : base("$SVGMatrix").up("$1"),\r
   /*readonly unsigned short*/ type : /*SVGTransform.SVG_TRANSFORM_UNKNOWN*/ 0,\r
   /*readonly float*/ angle : 0,\r
   /*void*/ setMatrix : function(/*SVGMatrix*/ matrix ) {\r
@@ -2711,7 +2707,7 @@ function SVGPathElement(_doc) {
   /*readonly SVGPathSegList*/ this.normalizedPathSegList = sp.up("$1");\r
   sp = _doc = void 0;\r
   this.animatedNormalizedPathSegList = this.normalizedPathSegList;\r
-  /*readonly SVGAnimatedNumber*/ this.pathLength = new SVGAnimatedNumber();\r
+  /*readonly SVGAnimatedNumber*/ this.pathLength = base("$SVGAnimatedNumber").up("$1");\r
   //以下は、d属性に変更があった場合の処理\r
   this.addEventListener("DOMAttrModified", this._attrModi, false);\r
   /*以下の処理は、このpath要素ノードがDOMツリーに追加されて初めて、\r
@@ -3818,7 +3814,7 @@ function SVGPolygonElement(_doc) {
 \r
 function SVGTextContentElement(_doc) {\r
   /*readonly SVGAnimatedLength*/      this.textLength = new SVGAnimatedLength();\r
-  /*readonly SVGAnimatedEnumeration*/ this.lengthAdjust = new SVGAnimatedEnumeration(/*SVGTextContentElement.LENGTHADJUST_UNKNOWN*/ 0);\r
+  /*readonly SVGAnimatedEnumeration*/ this.lengthAdjust = base("$SVGAnimatedEnumeration").up("$1");\r
   this.addEventListener("DOMNodeInserted", function(evt){\r
     var tar = evt.target,\r
         cur = evt.currentTarget,\r
@@ -4492,7 +4488,7 @@ function SVGMarkerElement(_doc) {
   var sl = SVGAnimatedLength;\r
   /*readonly SVGAnimatedLength*/      this.refX = new sl();\r
   /*readonly SVGAnimatedLength*/      this.refY = new sl();\r
-  /*readonly SVGAnimatedEnumeration*/ this.markerUnits = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/ this.markerUnits = base("$SVGAnimatedEnumeration").up("$1");\r
   this.markerUnits.baseVal = /*SVGMarkerElement.SVG_MARKERUNITS_STROKEWIDTH*/ 2;\r
   /*readonly SVGAnimatedLength*/      this.markerWidth = new sl();\r
   /*readonly SVGAnimatedLength*/      this.markerHeight = new sl();\r
@@ -4501,7 +4497,7 @@ function SVGMarkerElement(_doc) {
   this.markerWidth.baseVal.newValueSpecifiedUnits(1, 3);\r
   this.markerHeight.baseVal.newValueSpecifiedUnits(1, 3);\r
   sl = void 0;\r
-  /*readonly SVGAnimatedEnumeration*/ this.orientType = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/ this.orientType = base("$SVGAnimatedEnumeration").up("$1");\r
   this.orientType.baseVal = /*SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE*/ 2;\r
   /*readonly SVGAnimatedAngle*/       this.orientAngle = new SVGAnimatedAngle();\r
     //SVGFitToViewBoxのインターフェースはhttp://www.w3.org/2000/svgsvgオブジェクトで代用\r
@@ -4676,9 +4672,9 @@ base("$CSSStyleRule").$SVGCSSRule.up("$SVGColorProfileRule").mix( {
 \r
 function SVGGradientElement() {\r
   SVGURIReference.apply(this);\r
-  /*readonly SVGAnimatedEnumeration*/   this.gradientUnits = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/   this.gradientUnits = base("$SVGAnimatedEnumeration").up("$1");\r
   /*readonly SVGAnimatedTransformList*/ this.gradientTransform = new SVGAnimatedTransformList();\r
-  /*readonly SVGAnimatedEnumeration*/   this.spreadMethod = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/   this.spreadMethod = base("$SVGAnimatedEnumeration").up("$1");\r
   this.addEventListener("DOMNodeInsertedIntoDocument", function(evt) {\r
     var grad = evt.target,\r
         ele = evt._tar,\r
@@ -4888,7 +4884,7 @@ function SVGRadialGradientElement(_doc) {
 SVGRadialGradientElement.prototype = Object._create(SVGGradientElement);\r
 \r
 function SVGStopElement() {\r
-  /*readonly SVGAnimatedNumber*/ this.offset = new SVGAnimatedNumber();\r
+  /*readonly SVGAnimatedNumber*/ this.offset = base("$SVGAnimatedNumber").up("$1");\r
   this.addEventListener("DOMAttrModified", function(evt) {\r
     if (evt.attrName === "offset") {\r
       var env = evt.newValue;\r
@@ -4904,8 +4900,8 @@ function SVGStopElement() {
 \r
 function SVGPatternElement() {\r
   var sl = SVGAnimatedLength;\r
-  /*readonly SVGAnimatedEnumeration*/   this.patternUnits = new SVGAnimatedEnumeration();\r
-  /*readonly SVGAnimatedEnumeration*/   this.patternContentUnits = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/   this.patternUnits = base("$SVGAnimatedEnumeration").up("$1");\r
+  /*readonly SVGAnimatedEnumeration*/   this.patternContentUnits = base("$SVGAnimatedEnumeration").up("$1");\r
   /*readonly SVGAnimatedTransformList*/ this.patternTransform = new SVGAnimatedTransformList();\r
   /*readonly SVGAnimatedLength*/        this.x = new sl();\r
   /*readonly SVGAnimatedLength*/        this.y = new sl();\r
@@ -4920,13 +4916,13 @@ function SVGPatternElement() {
 };\r
 \r
 function SVGClipPathElement() {\r
-  /*readonly SVGAnimatedEnumeration*/ this.clipPathUnits = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/ this.clipPathUnits = base("$SVGAnimatedEnumeration").up("$1");\r
 };\r
 \r
 function SVGMaskElement() {\r
   var sl = SVGAnimatedLength;\r
-  /*readonly SVGAnimatedEnumeration*/ this.maskUnits = new SVGAnimatedEnumeration();\r
-  /*readonly SVGAnimatedEnumeration*/ this.maskContentUnits = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/ this.maskUnits = base("$SVGAnimatedEnumeration").up("$1");\r
+  /*readonly SVGAnimatedEnumeration*/ this.maskContentUnits = base("$SVGAnimatedEnumeration").up("$1");\r
   /*readonly SVGAnimatedLength*/      this.x = new sl();\r
   /*readonly SVGAnimatedLength*/      this.y = new sl();\r
   /*readonly SVGAnimatedLength*/      this.width = new sl();\r
@@ -4936,15 +4932,15 @@ function SVGMaskElement() {
 \r
 function SVGFilterElement() {\r
   var sl = SVGAnimatedLength;\r
-  /*readonly SVGAnimatedEnumeration*/ this.filterUnits = new SVGAnimatedEnumeration();\r
-  /*readonly SVGAnimatedEnumeration*/ this.primitiveUnits = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/ this.filterUnits = base("$SVGAnimatedEnumeration").up("$1");\r
+  /*readonly SVGAnimatedEnumeration*/ this.primitiveUnits = base("$SVGAnimatedEnumeration").up("$1");\r
   /*readonly SVGAnimatedLength*/      this.x = new sl();\r
   /*readonly SVGAnimatedLength*/      this.y = new sl();\r
   /*readonly SVGAnimatedLength*/      this.width = new sl();\r
   /*readonly SVGAnimatedLength*/      this.height = new sl();\r
   sl = void 0;\r
-  /*readonly SVGAnimatedInteger*/     this.filterResX = new SVGAnimatedInteger();\r
-  /*readonly SVGAnimatedInteger*/     this.filterResY = new SVGAnimatedInteger();\r
+  /*readonly SVGAnimatedInteger*/     this.filterResX = base("$SVGAnimatedInteger").up("$1");\r
+  /*readonly SVGAnimatedInteger*/     this.filterResY = base("$SVGAnimatedInteger").up("$1");\r
   SVGURIReference.apply(this);\r
   //setFilterRes (/*unsigned long*/ filterResX,/*unsigned long*/ filterResY );\r
 };\r
@@ -4965,7 +4961,7 @@ SVGFilterPrimitiveStandardAttributes.prototype = Object._create(SVGStylable);
 function SVGFEBlendElement() {\r
   /*readonly SVGAnimatedString*/      this.in1 = base("$SVGAnimatedString").up("$1");\r
   /*readonly SVGAnimatedString*/      this.in2 = base("$SVGAnimatedString").up("$1");\r
-  /*readonly SVGAnimatedEnumeration*/ this.mode = new SVGAnimatedEnumeration();\r
+  /*readonly SVGAnimatedEnumeration*/ this.mode = base("$SVGAnimatedEnumeration").up("$1");\r
   this._fpsa = SVGFilterPrimitiveStandardAttributes(this);\r
 };\r
     // Blend Mode Types\r
@@ -4978,8 +4974,8 @@ function SVGFEBlendElement() {
 \r
 function SVGFEGaussianBlurElement() {\r
   /*readonly SVGAnimatedString*/ this.in1 = base("$SVGAnimatedString").up("$1");\r
-  /*readonly SVGAnimatedNumber*/ this.stdDeviationX = new SVGAnimatedNumber();\r
-  /*readonly SVGAnimatedNumber*/ this.stdDeviationY = new SVGAnimatedNumber();\r
+  /*readonly SVGAnimatedNumber*/ this.stdDeviationX = base("$SVGAnimatedNumber").up("$1");\r
+  /*readonly SVGAnimatedNumber*/ this.stdDeviationY = base("$SVGAnimatedNumber").up("$1");\r
   this._fpsa = SVGFilterPrimitiveStandardAttributes(this);\r
 };\r
 /*void*/ SVGFEGaussianBlurElement.prototype.setStdDeviation = function(/*float*/ stdDeviationX, /*float*/ stdDeviationY ) {\r
@@ -5169,10 +5165,10 @@ function SVGScriptElement() {
 base("$event").up("SVGEvents");\r
 \r
 base("$event").SVGZoomEvents = base("$event").UIEvents.up("SVGZoomEvents").on("itnitialize", function() {\r
-  /*readonly SVGRect*/  this.zoomRectScreen = new SVGRect();\r
+  /*readonly SVGRect*/  this.zoomRectScreen = base("$SVGRect").up("$1");\r
   /*readonly float*/    this.previousScale =  this.newScale = 1;\r
-  /*readonly SVGPoint*/ this.previousTranslate = new SVGPoint();\r
-  /*readonly SVGPoint*/ this.newTranslate = new SVGPoint();\r
+  /*readonly SVGPoint*/ this.previousTranslate = base("$SVGPoint").up("$1");\r
+  /*readonly SVGPoint*/ this.newTranslate = base("$SVGPoint").up("$1");\r
 });\r
 \r
 function SVGAnimationElement() {\r
@@ -5696,7 +5692,7 @@ function SVGAnimateElement(){
           ttr = tar.targetElement,\r
           tta = ttr[attrName];\r
       /*tar.valuesのリスト:  ["12px", "13px"]\r
-       *tar._valueList:   [(new SVGPoint()), (new SVGPoint())]\r
+       *tar._valueList:   [(base("$SVGPoint").up("$1")), (base("$SVGPoint").up("$1"))]\r
        *  tar.valuesを機械が理解できるように変換したものがtar._valueList\r
        *この_valueListプロパティはアニメの際に使うので、_valuesプロパティはアニメ中に使わないことに注意\r
        */\r