static void affineTransformCompose(AffineTransform& m, const double sr[9]) { m.setA(sr[3]); m.setB(sr[4]); m.setC(sr[5]); m.setD(sr[6]); m.setE(sr[7]); m.setF(sr[8]); m.rotate(rad2deg(sr[2])); m.scale(sr[0], sr[1]); }
static void cAttrSetter(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::AccessorInfo& info) { INC_STATS("DOM.SVGMatrix.c._set"); V8SVGPODTypeWrapper<AffineTransform>* wrapper = V8SVGPODTypeWrapper<AffineTransform>::toNative(info.Holder()); AffineTransform impInstance = *wrapper; AffineTransform* imp = &impInstance; double v = static_cast<double>(value->NumberValue()); imp->setC(v); wrapper->commitChange(*imp, V8Proxy::svgContext(wrapper)); return; }