func init // adds using namespace sys.add_use('System.Drawing.Drawing2D') // initialize instance params = this.props('Constructor').value if(params == 'Constructor') params = '' elseif(params == 'Constructor2') params = '' + d("Rect", 20) + ', ' + sys.structure_array('null', 'PlgPts', 'Point') elseif(params == 'Constructor3') params = '' + d("Rect", 20) + ', ' + sys.structure_array('null', 'PlgPts', 'PointF') elseif(params == 'Constructor4') params = '' + d("m11", 107) + ', ' + d("m12", 107) + ', ' + d("m21", 107) + ', ' + d("m22", 107) + ', ' + d("dx", 107) + ', ' + d("dy", 107) end sys.add_object(this.codename, 'Matrix', params) // makes implementation methods for properties sys._prop_init('Elements', 1, 0, 0) sys._prop_init('IsIdentity', 1, 0, 104) sys._prop_init('IsInvertible', 1, 0, 104) sys._prop_init('.OffsetX', 1, 0, 107) sys._prop_init('.OffsetY', 1, 0, 107) // makes implementation of methods as properties sys._mtd_as_prop_init('Clone()') sys._mtd_as_prop_init('GetHashCode()') sys._mtd_as_prop_init('.Matrix') // makes implementation of simple methods sys._method_init('Dispose') sys._method_init('Invert') sys._method_init('Reset') end func doConstructor() blk.println(this.codename, ' = new Matrix();') end func doConstructor2(data) blk.println(this.codename, ' = new Matrix(', d("rect"), ', ', sys.structure_array(data, 'PlgPts', 'Point'), ');') end func doConstructor3(data) blk.println(this.codename, ' = new Matrix(', d("rect"), ', ', sys.structure_array(data, 'PlgPts', 'PointF'), ');') end func doConstructor4(data) blk.println(this.codename, ' = new Matrix(', d("m11", 107), ', ', d("m12", 107), ', ', d("m21", 107), ', ', d("m22", 107), ', ', d("dx", 107), ', ', d("dy", 107), ');') end func doEquals(data) if(linked("onEquals")) event("onEquals", this.codename + '.Equals(' + d("obj") + ')') else blk.println(this.codename, '.Equals(', d("obj"), ');') end end func doMultiply(data) blk.println(this.codename, '.Multiply(', d("matrix"), ');') end func doMultiply2(data) blk.println(this.codename, '.Multiply(', d("matrix"), ', ', d("Order", 20), ');') end func doRotate(data) blk.println(this.codename, '.Rotate(', d("angle", 107), ');') end func doRotate2(data) blk.println(this.codename, '.Rotate(', d("angle", 107), ', ', d("Order", 20), ');') end func doRotateAt(data) blk.println(this.codename, '.RotateAt(', d("angle", 107), ', ', d("point", 20), ');') end func doRotateAt2(data) blk.println(this.codename, '.RotateAt(', d("angle", 107), ', ', d("point", 20), ', ', d("Order", 20), ');') end func doScale(data) blk.println(this.codename, '.Scale(', d("scaleX", 107), ', ', d("scaleY", 107), ');') end func doScale2(data) blk.println(this.codename, '.Scale(', d("scaleX", 107), ', ', d("scaleY", 107), ', ', d("Order", 20), ');') end func doShear(data) blk.println(this.codename, '.Shear(', d("shearX", 107), ', ', d("shearY", 107), ');') end func doShear2(data) blk.println(this.codename, '.Shear(', d("shearX", 107), ', ', d("shearY", 107), ', ', d("Order", 20), ');') end func doTransformPoints(data) blk.println(this.codename, '.TransformPoints(', sys.structure_array(data, 'Pts', 'Point'), ');') end func doTransformPoints2(data) blk.println(this.codename, '.TransformPoints(', sys.structure_array(data, 'Pts', 'PointF'), ');') end func doTransformVectors(data) blk.println(this.codename, '.TransformVectors(', sys.structure_array(data, 'Pts', 'Point'), ');') end func doTransformVectors2(data) blk.println(this.codename, '.TransformVectors(', sys.structure_array(data, 'Pts', 'PointF'), ');') end func doTranslate(data) blk.println(this.codename, '.Translate(', d("offsetX", 107), ', ', d("offsetY", 107), ');') end func doTranslate2(data) blk.println(this.codename, '.Translate(', d("offsetX", 107), ', ', d("offsetY", 107), ', ', d("Order", 20), ');') end func doVectorTransformPoints(data) blk.println(this.codename, '.VectorTransformPoints(', sys.structure_array(data, 'Pts', 'Point'), ');') end