home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / graphics / visualiz / 1230 < prev    next >
Encoding:
Text File  |  1992-08-19  |  3.6 KB  |  72 lines

  1. Newsgroups: comp.graphics.visualization
  2. Path: sparky!uunet!snorkelwacker.mit.edu!think.com!mips!mips!kpc!hollasch
  3. From: hollasch@kpc.com (Steve Hollasch)
  4. Subject: Re: Rotation in nD space
  5. Message-ID: <1992Aug19.163710.5365@kpc.com>
  6. Summary: Brief answer and pointer to a bit more info.
  7. Sender: usenet@kpc.com
  8. Organization: Kubota Pacific Computer, Inc.
  9. References: <1992Aug19.100559.13778@fwi.uva.nl>
  10. Date: Wed, 19 Aug 1992 16:37:10 GMT
  11. Lines: 59
  12.  
  13. wijkstra@fwi.uva.nl (Marcel Wijkstra (AIO)) writes:
  14. | The question is: how do I 'rotate' an object in 4D? Or even: what is
  15. | rotation in 4D? I proved (I think) that true rotation of a 4D object
  16. | around one of the four principal axes is impossible. In other words:
  17. | there exists no matrix M ... that rotates a point (xyzt) around the X
  18. | axis over a certain angle A, such that applying MM is the same as
  19. | rotating over 2A.  Note: such an M could exist, if you use complex
  20. | numbers, but I doubt if that is allowed.
  21. |
  22. | The only thing I could come up with, is to use three matrices
  23. |       1  0  0  0              1  0  0  0              1  0  0  0
  24. |       0  C  S  0      ,       0  S  0  C      and     0  1  0  0
  25. |       0 -S  C  0              0  0  1  0              0  0  C  S
  26. |       0  0  0  1              0  C  0 -S              0  0 -S  C
  27. | for rotations around the XT, XZ and XY plane. Extended to an nD space,
  28. | this approach results in (n^2 + n)/2 different rotation (n-2 D) spaces.
  29.  
  30.     The problem lies in the fact that because we deal with three space,
  31. we've fallen into the notion that rotations occur "around an axis".  Think
  32. about the 2D case, where you can also rotate objects, but the "axis" of
  33. rotation doesn't lie anywhere in the two space.  A better way to think of
  34. it is that rotations all occur parallel to a given plane.  If you have an
  35. "axis" of rotation in three space, then the plane of rotation is the one
  36. perpendicular to the axis of rotation.
  37.  
  38.     As such, the rotation matrices for four space are given by the
  39. possible "Euler" plane combination for four space.  In other words, given
  40. basis vectors X,Y,Z and W, you can rotate parallel to the XY, XZ, XW, YZ,
  41. YW, and ZW planes - all possible pairs of the four coordinates.
  42.  
  43.     So, the six basis rotation matrices for four space are:
  44.  
  45.     +-            -+      +-            -+      +-            -+
  46.     |  C  S  0  0  |      |  1  0  0  0  |      |  C  0 -S  0  |
  47.     | -S  C  0  0  |      |  0  C  S  0  |      |  0  1  0  0  |
  48.     |  0  0  1  0  |      |  0 -S  C  0  |      |  S  0  C  0  |
  49.     |  0  0  0  1  |      |  0  0  0  1  |      |  0  0  0  1  |
  50.     +-            -+      +-            -+      +-            -+
  51.         XY Plane              YZ Plane              ZX Plane
  52.  
  53.  
  54.     +-            -+      +-            -+      +-            -+
  55.     |  C  0  0  S  |      |  1  0  0  0  |      |  1  0  0  0  |
  56.     |  0  1  0  0  |      |  0  C  0 -S  |      |  0  1  0  0  |
  57.     |  0  0  1  0  |      |  0  0  1  0  |      |  0  0  C -S  |
  58.     | -S  0  0  C  |      |  0  S  0  C  |      |  0  0  S  C  |
  59.     +-            -+      +-            -+      +-            -+
  60.         XY Plane              YZ Plane              ZX Plane
  61.  
  62.     My thesis on "Four Space Visualization of 4D Objects" is available
  63. via anonymous FTP from swedishchef.lerc.nasa.gov, and from
  64. wuarchive.wustl.edu  [128.252.135.4].  This goes into more detail for
  65. writing a wireframe 4D viewer and a 4D raytracer.
  66.  
  67. ______________________________________________________________________________
  68. Steve Hollasch                                   Kubota Pacific Computer, Inc.
  69. hollasch@kpc.com                                 Santa Clara, California
  70.