Up 計算の省略部分 作成: 2007-10-22
更新: 2007-10-25


    つぎの2つの回転を合成します:
        向き : q = (qx, qy, qz),回転 : θ
        向き : r = (rx, ry, rz),回転 : τ
    そして,この結果がつぎの回転であるとします:
        向き : t = (tx, ty, tz),回転 : ω

    (以下,簡単のため,cos(ξ/2), sin(ξ/2) をそれぞれ cξ, sξ と表記します)

    このとき
      M(r, τ) × M(q, θ)
      = (cτ + (rx sτ) i + (ry sτ) j + (rz sτ) k)
      × (cθ + (qx sθ) i + (qy sθ) j + (qz sθ) k)

      = cτ (cθ + (qx sθ) i + (qy sθ) j + (qz sθ) k)
      + (rx sτ) i (cθ + (qx sθ) i + (qy sθ) j + (qz sθ) k)
      + (ry sτ) j (cθ + (qx sθ) i + (qy sθ) j + (qz sθ) k)
      + (rz sτ) k (cθ + (qx sθ) i + (qy sθ) j + (qz sθ) k)

      = cθ cτ + (qx sθ cτ) i + (qy sθ cτ) j + (qz sθ cτ) k
      + (rx cθ sτ) i + (qx rx sθ sτ) ii + (qy rx sθ sτ) ij + (qz rx sθ sτ) ik
      + (ry cθ sτ) j + (qx ry sθ sτ) ji + (qy ry sθ sτ) jj + (qz ry sθ sτ) jk
      + (rz cθ sτ) k + (qx rz sθ sτ) ki + (qy rz sθ sτ) kj + (qz rz sθ sτ) kk

      = cθ cτ + (qx sθ cτ) i + (qy sθ cτ) j + (qz sθ cτ) k
      + (rx cθ sτ) i ー (qx rx sθ sτ) + (qy rx sθ sτ) k ー (qz rx sθ sτ) j
      + (ry cθ sτ) j ー (qx ry sθ sτ) k ー (qy ry sθ sτ) + (qz ry sθ sτ) i
      + (rz cθ sτ) k + (qx rz sθ sτ) j ー (qy rz sθ sτ) i ー (qz rz sθ sτ)

      = cθ cτ ー qx rx sθ sτ ー qy ry sθ sτ ー qz rz sθ sτ
      + ( qx sθ cτ + rx cθ sτ ー qy rz sθ sτ + qz ry sθ sτ ) i
      + ( qy sθ cτ + ry cθ sτ ー qz rx sθ sτ + qx rz sθ sτ ) j
      + ( qz sθ cτ + rz cθ sτ ー qx ry sθ sτ + qy rx sθ sτ ) k

    これが
      M(t, ω) = ( cω + (tx sω) i + (ty sω) j + (tz sω) k)
    に等しいので,

      cω = cθ cτ ー ( qx rx + qy ry + qz rz ) sθ sτ
        = cθ cτ ー (qr) sθ sτ
        = cθ cτ ー | q | | r | cosψ sθ sτ  (ψは,qr のなす角度)
        = cθ cτ ー cosψ sθ sτ
      tx sω = qx sθ cτ + rx cθ sτ ー qy rz sθ sτ + qz ry sθ sτ
      ty sω = qy sθ cτ + ry cθ sτ ー qz rx sθ sτ + qx rz sθ sτ
      tz sω = qz sθ cτ + rz cθ sτ ー qx ry sθ sτ + qy rx sθ sτ


    そこで,向き (tx, ty, tz) と回転角 ω が定義されるためには,つぎのことが成り立っていなければならない:

    1. | cθ cτ ー ( qx rx + qy ry + qz rz ) sθ sτ | ≦ 1

    2. さらにこのとき,
        tx2 + ty2 + tz2 = 1

    1 の証明:
      cθ cτ ー ( qx rx + qy ry + qz rz ) sθ sτ
      = cθ cτ ー (qr) sθ sτ

      (qr のなす角度を ψとすると)

      = cθ cτ ー | q | | r | cosψ sθ sτ
      = cθ cτ ー cosψ sθ sτ
      = (cθ) cτ + (ー cosψ sθ) sτ
      = ( cθ2 + (cosψ)2 sθ2 )1/2 sτ+α

      cθ2 + (cosψ)2 sθ2 ≦ cθ2 + sθ2 = 1 なので,これの絶対値は ≦ 1


    2 の証明:
      (tx2 + ty2 + tz2 ) × sω2
      = (qx sθ cτ + rx cθ sτ ー qy rz sθ sτ + qz ry sθ sτ )2
      + (qy sθ cτ + ry cθ sτ ー qz rx sθ sτ + qx rz sθ sτ )2
      + (qz sθ cτ + rz cθ sτ ー qx ry sθ sτ + qy rx sθ sτ )2

      = qx2 sθ2 cτ2 + rx2 cθ2 sτ2 + qy2 rz2 sθ2 sτ2 + qz2 ry2 sθ2 sτ2
      + 2 qx rx cθ sθ cτ sτ ー 2 qx qy rz sθ sθ cτ sτ + 2 qx qz ry sθ sθ cτ sτ
      ー 2 qy rx rz cθ sθ sτ sτ + 2 qz rx ry cθ sθ sτ sτ ー 2 qy qz ry rz sθ sθ sτ sτ

      + qy2 sθ2 cτ2 + ry2 cθ2 sτ2 + qz2 rx2 sθ2 sτ2 + qx2 rz2 sθ2 sτ2
      + 2 qy ry cθ sθ cτ sτ ー 2 qy qz rx sθ sθ cτ sτ + 2 qy qx rz sθ sθ cτ sτ
      ー 2 qz rx ry cθ sθ sτ sτ + 2 qx rz ry cθ sθ sτ sτ ー 2 qz qx rz rx sθ sθ sτ sτ

      + qz2 sθ2 cτ2 + rz2 cθ2 sτ2 + qx2 ry2 sθ2 sτ2 + qy2 rx2 sθ2 sτ2
      + 2 qz rz cθ sθ cτ sτ ー 2 qz qx ry sθ sθ cτ sτ + 2 qz qy rx sθ sθ cτ sτ
      ー 2 qx ry rz cθ sθ sτ sτ + 2 qy rx rz cθ sθ sτ sτ ー 2 qx qy rx ry sθ sθ sτ sτ

      qx2 sθ2 cτ2 + qy2 sθ2 cτ2 + qz2 sθ2 cτ2
      + rx2 cθ2 sτ2 + ry2 cθ2 sτ2 + rz2 cθ2 sτ2

      + qx2 rz2 sθ2 sτ2 + qy2 rx2 sθ2 sτ2 + qz2 ry2 sθ2 sτ2
      + qx2 ry2 sθ2 sτ2 + qy2 rz2 sθ2 sτ2 + qz2 rx2 sθ2 sτ2

      ー 2 qy qz ry rz sθ2 sτ2 ー 2 qz qx rz rx sθ2 sτ2 ー 2 qx qy rx ry sθ2 sτ2
      + 2 qx rx cθ sθ cτ sτ + 2 qy ry cθ sθ cτ sτ + 2 qz rz cθ sθ cτ sτ

      + 2 qx qy rz sθ sθ cτ sτ + 2 qy qz rx sθ sθ cτ sτ + 2 qz qx ry sθ sθ cτ sτ
      + 2 qx ry rz cθ sθ sτ sτ + 2 qy rz rx cθ sθ sτ sτ + 2 qz rx ry cθ sθ sτ sτ
      ー 2 qx qy rz sθ sθ cτ sτ ー 2 qy qz rx sθ sθ cτ sτ ー 2 qz qx ry sθ sθ cτ sτ
      ー 2 qx ry rz cθ sθ sτ sτ ー 2 qy rz rx cθ sθ sτ sτ ー 2 qz rx ry cθ sθ sτ sτ

      (qx2 + qy2 + qz2 ) sθ2 cτ2
      + (rx2 + ry2 + rz2 ) cθ2 sτ2

      + (qx2 (ry2 + rz2) + qy2 (rx2 + rz2) + qz2 (ry2 + rx2) ) sθ2 sτ2
      ー 2 ( qx qy rx ry + qy qz ry rz + qz qx rz rx ) sθ2 sτ2
      + 2 (qx rx + qy ry + qz rz ) cθ sθ cτ sτ

      sθ2 cτ2 + cθ2 sτ2
      + (qx2 (1 ー rx2) + qy2 (1 ー ry2) + qz2 (1 ー rz2) ) sθ2 sτ2
      ー 2 ( qx qy rx ry + qy qz ry rz + qz qx rz rx ) sθ2 sτ2
      + 2 (qx rx + qy ry + qz rz ) cθ sθ cτ sτ

      (1 ー cθ2) cτ2 + cθ2 (1 ー cτ2)
      + sθ2 sτ2 ー (qx2 rx2 + qy2 ry2 + qz2 rz2 ) sθ2 sτ2
      ー 2 ( qx qy rx ry + qy qz ry rz + qz qx rz rx ) sθ2 sτ2
      + 2 (qx rx + qy ry + qz rz ) cθ sθ cτ sτ

      cθ2 + cτ2 ー 2 cθ2 cτ2
      + (1 ー cθ2) (1 ー cτ2)
      ー ( qx2 rx2 + qy2 ry2 + qz2 rz2

      + 2 ( qx qy rx ry + qy qz ry rz + qz qx rz rx) ) sθ2 sτ2
      + 2 (qx rx + qy ry + qz rz ) cθ sθ cτ sτ

      = 1 ー cθ2 cτ2
      ー ( qx rx + qy ry + qz rz )2 sθ2 sτ2
      + 2 (qx rx + qy ry + qz rz ) cθ sθ cτ sτ

      = 1 ー ( cθ cτ ー ( qx rx + qy ry + qz rz ) sθ sτ )2
      = 1 ー cω2
      = sω2

      よって,

      tx2 + ty2 + tz2 = 1