Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re: two-dimensional coordinate transformation

by thor (Priest)
on Nov 02, 2005 at 22:17 UTC ( #505140=note: print w/replies, xml ) Need Help??


in reply to two-dimensional coordinate transformation

It's too bad that Q isn't a whiz with linear algebra (or matrix multiplications as you put it). Rotations and scaling are linear transformations. For the following examples, assume that A is a 2xn matrix (that is 2 columns and n rows; n is the number of points that you're dealing with).
Rotation by an angle t: A' = A * [ [cos t, -sin t][sin t, cos t] ]; Scaling by a factor of x: A' = A * [ [x, 0][0, x] ]; Translation by dx in the x direction and dy in the y direction (not actually linear transform, but easily accomplished with matricies +): A' = A + [ [dx, dy] ]; ( add dx to each value in the first column and +dy to each in the second column)
I would help you with skew, but I don't know *how* you want to accomplish this. In colloquial terms, I'd imagine a stretch of some description, but I don't know what kind of parameters you've got.

thor

Feel the white light, the light within
Be your own disciple, fan the sparks of will
For all of us waiting, your kingdom will come

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://505140]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (6)
As of 2017-12-11 00:51 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    What programming language do you hate the most?




















    Results (285 votes). Check out past polls.

    Notices?