Share Posted September 28, 2011 Hello, I am trying to scale a rectangle, based on it's initial transformation matrix and on it's final one. The scaling phase is done using the scaleSelection() function from the TransformManager.as file. It is working fine for all cases, except the one when the rectangle is initially rotated, and only after that the scaling applies. Here are my input data: initial transformation matrix: a = 0.85 b = -0.51 c = 0.51 d = 0.85 tx = 75 ty = 124.05 width = 140 height = 116 final transformation matrix (after the rectangle is scaled): a = 1.48 b = 0.88 c = 0.90 d = 1.52 tx = 196.45 ty = 113 width = 243 height = 203 The modified scaleSelection() function looks like this: //I added two more parameters (the initial matrix- initialMatrix and the final matrix- sMatrix) //After the scaling phase I added a translation to place the rectangle in the right position. This is not working when the rectangle is rotated before public function scaleSelection($sx:Number, $sy:Number, $dispatchEvents:Boolean = true, sMatrix:Object = null, initialMatrix:Object = null) { //same as before var tx:Number = sMatrix.matrix.tx - (sMatrix.width - initialMatrix.width)/2; var ty:Number = sMatrix.matrix.ty - (sMatrix.height - initialMatrix.height)/2; moveSelection(sMatrix.matrix.tx - tx, sMatrix.matrix.ty - ty); } I belive that the tx and ty are not properly computed. I don't know where to add the rotation angle for the tx and ty computation. Thanks, Danut Link to comment Share on other sites More sharing options...
Share Posted September 28, 2011 I'm having a hard time understanding the issue - could you post a very simple FLA that demonstrates the issue? Please don't post your production files or the TransformManager classes; just a very simple FLA with the necessary code to show what's going on. That would be super helpful in terms of understanding the question and identifying the issue. Feel free to PM me if you don't want to post it here. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now