Hopelijk zijn er wat mensen hier die wijzer zijn matrix wiskunde dan ik! Ik ben nu al een paar dagen me hoofd aan het breken over het volgende vraagstuk.
Ik heb een aantal transforms:
translate()
rotate()
scale()
Deze transform wil ik omzetten naar 1 enkele matrix die om zijn eigen center draait.
Ik pak het nu als volgt aan.
De eerste matrix translate het geheel naar het midden van het object.
De volgende matrix doet een scale een rotate en een translate naar de juiste plek op het scherm.
De laatste matrix translate de boel weer naar de top/left van het object.
Ik gebruik sylvester om de matrixen te vermenigvuldigen met elkaar.
Om het een en ander duidelijk te maken heb ik een jsfiddle gemaakt. http://jsfiddle.net/xYsHZ/3/
Het is dus de bedoeling dat de rode rect net zo draait als de groene rect. Er zit nu nogal een rare afwijking in die ik niet kan verklaren. Wat doe ik fout?
Ik heb een aantal transforms:
translate()
rotate()
scale()
Deze transform wil ik omzetten naar 1 enkele matrix die om zijn eigen center draait.
Ik pak het nu als volgt aan.
De eerste matrix translate het geheel naar het midden van het object.
De volgende matrix doet een scale een rotate en een translate naar de juiste plek op het scherm.
De laatste matrix translate de boel weer naar de top/left van het object.
Ik gebruik sylvester om de matrixen te vermenigvuldigen met elkaar.
Om het een en ander duidelijk te maken heb ik een jsfiddle gemaakt. http://jsfiddle.net/xYsHZ/3/
Het is dus de bedoeling dat de rode rect net zo draait als de groene rect. Er zit nu nogal een rare afwijking in die ik niet kan verklaren. Wat doe ik fout?

[ Voor 30% gewijzigd door msentinelb op 04-12-2012 09:19 ]
Specs van mijn bak Hier!