Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function rotateVector(%vector, %axis, %val) //Rotates a vector around the axis by an angleID.
- {
- if(%val < 0)
- %val += 4;
- if(%val > 3)
- %val -= 4;
- switch(%val)
- {
- case 1:
- %nX = getWord(%axis, 0) + (getWord(%vector, 1) - getWord(%axis, 1));
- %nY = getWord(%axis, 1) - (getWord(%vector, 0) - getWord(%axis, 0));
- %new = %nX SPC %nY SPC getWord(%vector, 2);
- case 2:
- %nX = getWord(%axis, 0) - (getWord(%vector, 0) - getWord(%axis, 0));
- %nY = getWord(%axis, 1) - (getWord(%vector, 1) - getWord(%axis, 1));
- %new = %nX SPC %nY SPC getWord(%vector, 2);
- case 3:
- %nX = getWord(%axis, 0) - (getWord(%vector, 1) - getWord(%axis, 1));
- %nY = getWord(%axis, 1) + (getWord(%vector, 0) - getWord(%axis, 0));
- %new = %nx SPC %nY SPC getWord(%vector, 2);
- default: %new = vectorAdd(%vector, %axis);
- }
- return %new;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement