如何從2d變換矩陣中提取旋轉,縮放和平移值?我的意思是一款擁有2D轉換從2d變換矩陣中提取旋轉,縮放值
matrix = [1, 0, 0, 1, 0, 0]
matrix.rotate(45/180 * PI)
matrix.scale(3, 4)
matrix.translate(50, 100)
matrix.rotate(30/180 * PI)
matrix.scale(-2, 4)
現在我的矩陣具有值[A,B,C,d,TX,TY]
可以忘記上面的過程和想象,我們只有值A,b,C,d,TX,TY
我怎麼能找到通過A,b,C,d,德克薩斯州總旋轉和縮放值,TY
對不起,我的英語
謝謝您前進
編輯
我認爲這應該是一個答案的地方...
我只是想在Flash Builder(AS3)這樣
var m:Matrix = new Matrix;
m.rotate(.25 * Math.PI);
m.scale(4, 5);
m.translate(100, 50);
m.rotate(.33 * Math.PI);
m.scale(-3, 2.5);
var shape:Shape = new Shape;
shape.transform.matrix = m;
trace(shape.x, shape.y, shape.scaleX, shape.scaleY, shape.rotation);
,輸出爲:
x = -23.6
y = 278.8
scaleX = 11.627334873920528
scaleY = -13.54222263865791
rotation = 65.56274134518259 (in degrees)
此問題最適合http://math.stackexchange.com/ - 您將得到更快的響應:-) – Bojangles 2010-12-05 21:18:57
我剛纔在這裏:http://math.stackexchange.com/questions/13150/從2d轉換矩陣中提取旋轉縮放值謝謝 – 2010-12-05 21:25:13