Advertisement
Guest User

z_rotator

a guest
Mar 31st, 2020
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.68 KB | None | 0 0
  1. def z_rotator(solid: Solid, deg):
  2. rad = deg/360*2*np.pi
  3. rotMat = np.array([[np.cos(rad), -np.sin(rad), 0], [np.sin(rad), np.cos(rad), 0], [0, 0, 1]])
  4. for side in solid.get_sides():
  5. uaxisArray = np.array([float(side.uaxis.x), float(side.uaxis.y), float(side.uaxis.z)])
  6. uaxisArray = rotMat.dot(uaxisArray)
  7. side.uaxis.x, side.uaxis.y, side.uaxis.z = str(uaxisArray[0]), str(uaxisArray[1]), str(uaxisArray[2])
  8.  
  9. vaxisArray = np.array([float(side.vaxis.x), float(side.vaxis.y), float(side.vaxis.z)])
  10. vaxisArray = rotMat.dot(vaxisArray)
  11. side.vaxis.x, side.vaxis.y, side.vaxis.z = str(vaxisArray[0]), str(vaxisArray[1]), str(vaxisArray[2])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement