; source: b_euler.spi Bimal Rath Jan 2002 ; Purpose: make a model of axis for showing euler rotations ; ; make a 1st model volume with XYZ axes at the center. these axes are of ; different length and diameter MO 3 _1 125,125 125 C 0 X 1,100 63,63 63,255 Y 2,76 63,63 63,255 Z 3,54 63,63 63,255 Q ; make a 2nd model volume with Y axis at the center. MO 3 _2 125,125 125 C 0 Y 1,120 63,63 63,255 Q ; Make a 3rd model volume with Z axis at the center. MO 3 _3 125,125 125 C 0 Z 1,120 63,63 63,255 Q ; add a z-axis to the 1st model volume AD _1 _3 _4 * ; save a copy of the 1st model volume with Z-axis CP _4 vol_z_000 ; rotate around z-axis for 40 degrees in 10 steps. output from 1st ; step is fed as input for the 2nd step x10 = 4 x11 = 0 x12 = 0 DO LB1 I =1,10 RT 3D _4 vol_z_{***x0} x10,x11 x12 FS vol_z_{***x0} CP vol_z_{***x0} _4 LB1 ; Rotate the 1st model volume by 40 degrees around the z-axis in one step ; This is equivalent to the output obtained in 10 steps in the above loop RT 3D _1 vol_z_100 40,x11 x12 ; add a y-axis to the 1st model volume after being rotated by 40 degrees around ; z-axis AD vol_z_100 _2 _4 * ; rotate around y-axis for 50 degrees in 10 steps. x10 = 0 x11 = 5 x12 = 0 DO LB2 I =1,10 RT 3D _4 vol_y_{***x0} x10,x11 x12 FS vol_y_{***x0} CP vol_y_{***x0} _4 LB2 ; ROtate the 1st model volume by 40 degrees around the z-axis and 50 degrees ; around y-axis in one step. This is equivalent to the output obtained in ; 20 steps in the above 2 loops RT 3D _1 vol_y_100 40,50 x12 ; add a z-axis to the 1st model volume after being rotated by 40 degrees around ; z-axis and 50 degrees around y-axis AD vol_y_100 _3 _4 * ; Rotate around z-axis for 70 degrees in 10 steps x10 = 0 x11 = 0 x12 = 7 DO LB3 I =1,10 RT 3D _4 vol_zz_{***x0} x10,x11 x12 FS vol_zz_{***x0} cp vol_zz_{***x0} _4 LB3 RE