1 module libwasm.bindings.SVGMatrix; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 @safe: 7 nothrow: 8 9 struct SVGMatrix { 10 nothrow: 11 JsHandle handle; 12 alias handle this; 13 this(Handle h) { 14 this.handle = JsHandle(h); 15 } 16 void a()(float a) { 17 Object_Call_float__void(this.handle, "a", a); 18 } 19 float a()() { 20 return Object_Getter__float(this.handle, "a"); 21 } 22 void b()(float b) { 23 Object_Call_float__void(this.handle, "b", b); 24 } 25 float b()() { 26 return Object_Getter__float(this.handle, "b"); 27 } 28 void c()(float c) { 29 Object_Call_float__void(this.handle, "c", c); 30 } 31 float c()() { 32 return Object_Getter__float(this.handle, "c"); 33 } 34 void d()(float d) { 35 Object_Call_float__void(this.handle, "d", d); 36 } 37 float d()() { 38 return Object_Getter__float(this.handle, "d"); 39 } 40 void e()(float e) { 41 Object_Call_float__void(this.handle, "e", e); 42 } 43 float e()() { 44 return Object_Getter__float(this.handle, "e"); 45 } 46 void f()(float f) { 47 Object_Call_float__void(this.handle, "f", f); 48 } 49 float f()() { 50 return Object_Getter__float(this.handle, "f"); 51 } 52 auto multiply()(scope ref SVGMatrix secondMatrix) { 53 return SVGMatrix(Object_Call_Handle__Handle(this.handle, "multiply", secondMatrix.handle)); 54 } 55 auto inverse()() { 56 return SVGMatrix(Object_Getter__Handle(this.handle, "inverse")); 57 } 58 auto translate()(float x, float y) { 59 return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "translate", "float;float", tuple(x, y))); 60 } 61 auto scale()(float scaleFactor) { 62 return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "scale", "float", tuple(scaleFactor))); 63 } 64 auto scaleNonUniform()(float scaleFactorX, float scaleFactorY) { 65 return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "scaleNonUniform", "float;float", tuple(scaleFactorX, scaleFactorY))); 66 } 67 auto rotate()(float angle) { 68 return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "rotate", "float", tuple(angle))); 69 } 70 auto rotateFromVector()(float x, float y) { 71 return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "rotateFromVector", "float;float", tuple(x, y))); 72 } 73 auto flipX()() { 74 return SVGMatrix(Object_Getter__Handle(this.handle, "flipX")); 75 } 76 auto flipY()() { 77 return SVGMatrix(Object_Getter__Handle(this.handle, "flipY")); 78 } 79 auto skewX()(float angle) { 80 return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "skewX", "float", tuple(angle))); 81 } 82 auto skewY()(float angle) { 83 return SVGMatrix(Serialize_Object_VarArgCall!Handle(this.handle, "skewY", "float", tuple(angle))); 84 } 85 } 86 87