AnglePath3D

AnglePath3D[{{α1,β1,γ1},{α2,β2,γ2},}]

{0,0,0}から始まり,それぞれがオイラー角 αiβiγiによるオブジェクトの連続的な回転の結果である 軸方向に単位長の一連のステップを取る,オブジェクトの経路の3D座標のリストを与える.

AnglePath3D[{{α1,β1},{α2,β2},}]

オイラー角 γiが0であると仮定する.

AnglePath3D[{mat1,mat2,}]

連続する回転が3D回転行列 matiで指定されるとみなす.

AnglePath3D[{{r1,rot1},{r2,rot2},}]

rotiで指定されたオイラー角あるいは回転行列で長さ riの連続するステップを取る.

AnglePath3D[{x0,y0,z0},steps]

{x0,y0,z0}から開始する.

AnglePath3D[{rot0},steps]

オイラー角または回転行列 rot0に従ってオブジェクトを回転させることで指定された 軸方向に進む.

AnglePath3D[{{x0,y0,z0},rot0},steps]

rot0で指定された 軸方向で点{x0,y0,z0}から開始する.

AnglePath3D[init,steps,form]

各ステップで,form で指定された形のデータを返す.

詳細とオプション

  • AnglePath3Dが連続的に取る方向は,連続する局所フレームの 軸で決定される.これは,3Dオブジェクの向きを定義すると考えることができる.
  • デフォルトで,初期フレームの向きは座標軸と揃っている.
  • 各ステップで,局所フレームは回転され,経路は新たなフレーム内で指定された距離だけ 軸に沿って進む.
  • 3つ一組の角度{αi,βi,γi}は,一般に,オイラーの回転行列EulerMatrix[{αi,βi,γi},{3,2,1}]に等しい.この表記法では,αiは経度角, βiは緯度角,γiは変位軸の周りの回転角である.
  • ステップ長は{{r1,rot1},{r2,rot2},}で,あるいは同様に{{r1,r2,},{rot1,rot2,}}で指定することができる.
  • 方向が matiで指定された長さ riのステップについては,次の位置 pi={xi,yi,zi}pi=pi-1+fi.{ri,0,0}で得ることができる.フレームの回転行列 fifi=fi-1.matiおよび f0=mat0で与えられる.
  • AnglePath3D[steps,form]AnglePath3D[{0,0,0},steps,form]に等しい.
  • AnglePath3D[,form]form は以下から選ぶことができる.
  • "Position"直交座標{xi,yi,zi}(デフォルト)
    "FrameMatrix"フレーム fif0に対する回転行列
    "EulerMatrix"フレーム fiのフレーム fi - 1に対する回転行列
    "FrameAngles"EulerAngles[fi,{3,2,1}]
    "EulerAngles"{αi,βi,γi}
    "Translation"TranslationTransform[{xi,yi,zi}]
    "Rotation"AffineTransform[fi]
    "RotationTranslation"AffineTransform[{fi,{xi,yi,zi}}]
    {form1,form2,}形のリスト
  • 引数 init および steps は記号的でもよく,Quantityオブジェクトでもよい.
  • AnglePath3DにはオプションWorkingPrecisionがある.このオプションは生成する数の精度を決定する.
  • デフォルト設定のWorkingPrecisionAutomaticでは,短いパスに対してのみ厳密な入力に対して厳密数が生成される.パスが長くなると機械精度が使われる.

例題

すべて開くすべて閉じる

  (6)

{0,0,0}から始め 軸に沿って単位ステップをいくつか動く.その際,各ステップで局所 軸について90°回転する:

局所フレームを局所の 軸についてオイラー角で30°,30°,90°回転させて,いくつかの単位ステップ分動く:

別々の長さのステップで動く.その際,局所フレームを局所 軸および 軸に対してオイラー角で90°回転させる:

20ステップ進む.常に局所フレームをすべての軸に対してオイラー角で100°回転させる:

螺旋を描く:

経路の変換関数を生成する:

これをトリケラトプスに適用する:

記号入力を使う:

スコープ  (22)

ステップ指定  (7)

軸の方向に位置{0,0,0}から始まる3つの角が1組みになったオイラー角で単位ステップの経路を生成する:

オイラー角のペアで単位ステップの経路を生成する:

AnglePath3D[{{α1,β1},{α2,β2},}]は,3番目のオイラー角が0であると仮定する:

ステップの長さを指定する:

ステップの長さと方向は,繋げて与えることも別々に与えることもできる:

オイラー角の代りに三次元回転行列を使う:

入力でQuantityオブジェクトを使う:

経路の初期化  (7)

指定の位置から始まる経路を生成する:

3つの角が1組みになったオイラー角を与えて初期フレームの向きを選択する:

オイラー角のペアで初期の向きを指定する:

三次元回転行列で初期の向きを指定する:

初期の位置と初期の向きの両方が指定されている経路を生成する:

初期フレームの向きは第1ステップで指定することもできる:

これらは2つの同等な経路である:

入力でQuantityオブジェクトを使う:

データの形式  (8)

デフォルトで,AnglePath3Dは各ステップで到達した点の位置を返す:

各局所フレームの前の局所フレームに対する向きを計算する:

各局所フレームの大域的フレームに対する向きを計算する:

大域的フレーム内の各局所フレームの向きを決定するオイラー角を計算する:

初期位置からの平行移動変換を生成する:

この変換を楕円体に適用する:

初期フレームに対する回転変換を生成する:

これを楕円体に適用する:

初期ステップからの回転平行移動変換を生成する:

これを楕円体に適用する:

1回のAnglePath3Dの呼出しでデータのさまざまな形を生成する:

3つ1組になったものの最初の要素は,前のフレームに対するオイラー回転である:

第2要素は位置である:

第3要素は初期フレームからの平行移動である:

オプション  (1)

WorkingPrecision  (1)

デフォルトで,AnglePath3Dはパスが短いときは厳密な入力に対しては厳密数を与え,パスが長くなると機械数を与える:

作業精度を無限大に指定すると厳密計算が行われるが,計算速度は遅くなる:

計算に任意の指定精度を使う:

アプリケーション  (7)

点様オブジェクトの経路の可視化  (5)

六角形を - 平面に描く:

八角形を - 平面に描く:

立方体のすべての頂点を一度に訪れる:

三次元の螺旋を描く:

連続するステップのそれぞれが最大オイラー角で20°方向を変えるランダムウォークを作る:

連続するステップのそれぞれがオイラー角で0から の間で方向を変えるランダムウォークを作る:

剛体の経路の可視化  (2)

同じ軸の周囲で連続的に回転した後の剛体の方向を可視化する:

軸の周りで:

各ステップで到達した位置を一度に生成する:

軸の周りで:

軸の周りで:

立方体のすべての頂点に向けて一度に飛ぶ:

進行方向は同じだが違う向きで進む:

特性と関係  (5)

AnglePath3D[{{θ1,0,0},{θ2,0,0},}]- 平面上の経路を返す:

生成された経路はAnglePath[{θ1,θ2,}]の経路と等しい:

オイラー角を指定することは -- オイラー行列を指定することに等しい:

初期オイラー角を指定することは,初期 -- オイラー行列を指定することに等しい:

大域的フレームの回転はそれまでのすべての相対オイラー回転の掛け算で求めることができる:

次の入力で経路の位置を計算する:

これらの経路を計算する別の方法に"FrameMatrix"を使うものがある:

インタラクティブな例題  (1)

おもしろい例題  (3)

- 平面でループするシャトルのアニメーションを作る:

Wolfram Research (2017), AnglePath3D, Wolfram言語関数, https://reference.wolfram.com/language/ref/AnglePath3D.html (2019年に更新).

テキスト

Wolfram Research (2017), AnglePath3D, Wolfram言語関数, https://reference.wolfram.com/language/ref/AnglePath3D.html (2019年に更新).

CMS

Wolfram Language. 2017. "AnglePath3D." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2019. https://reference.wolfram.com/language/ref/AnglePath3D.html.

APA

Wolfram Language. (2017). AnglePath3D. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/AnglePath3D.html

BibTeX

@misc{reference.wolfram_2024_anglepath3d, author="Wolfram Research", title="{AnglePath3D}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/AnglePath3D.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_anglepath3d, organization={Wolfram Research}, title={AnglePath3D}, year={2019}, url={https://reference.wolfram.com/language/ref/AnglePath3D.html}, note=[Accessed: 22-November-2024 ]}