cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Help us improve the PTC Community by taking this short Community Survey! X

Can someone explain the 3d transform command for Cad Process?

TimSharp
6-Contributor

Can someone explain the 3d transform command for Cad Process?

I'm wondering how you use the 3d transform command within macros.

I want to let users set a rotation angle and then click on x, y or z icons to rotate that amount on a 3d drawing.

Problem is that macro help doesn't explain how it's used.

The syntax is just:

3D TRANSFORM 3d-matrix

and the example is:

#stretching the drawing to double size

#along the y-axis
3D TRANSFORM 1 0 0 0 0 2 0 0 0 0 1 0 0 0 0 0

I can't find any reference to this 3d-matrix - how are we to know what each number represents?

I've recorded some macros setting the Y angle rotation to 90 degrees but this hasn't helped me understand the matrix any better as it comes up with:

3D Transform 0 0 (-1) 0 0 1 0 0 1 0 0 0 0 0 0 1

No record of 90 degrees in that matrix, so I guess one of the numbers - "1" or "(-1)" must refer to the 90 degrees.

2 REPLIES 2

You can read the 16 values as the four rows of a 4x4 transformation matrix.
Here you can find a nice short description how to get such a matrix from rotation values:

http://planning.cs.uiuc.edu/node104.html


E.g.:

Macro Rotate_3d_y
Define beta as Float
beta = Get Float "Rotation angle around y "
3D Transform \
cos(beta) 0 sin(beta) 0 \
0 1 0 0 \
(-sin(beta)) 0 cos(beta) 0 \
0 0 0 1
End Macro

TimSharp
6-Contributor
(To:bgraffmann)

Thanks for that.

I won't pretend to understand it, but at least it explains that the numbers all represent something and I'll work on your example - much appreciated.

Top Tags