comet3d 3次元 comet アニメーションプロット

## 呼び出し手順

                comet3d(z)
                comet3d(x, y, z)
                comet3d(x, y, z, Lf)
                comet3d(x, y, fun)
                comet3d(x, y, fun, Lf)
                comet3d(...,"colors", c)

## パラメータ

x
  実数ベクトルまたは行列. 省略された場合, ベクトル `1:np` が指定されたと仮定されます. ただし,`np` は曲線の点の数(下記参照)です. 行列として、各列は別々の彗星の軌跡の水平座標を定義します.

y
  実数ベクトル（デフォルト値`=1：np`）または行列. 行列として、各列は、個々の彗星の痕跡のy座標を定義します.

z
  長さがnpの実数ベクトル、またはnp個の行を持つ行列. 行列として、各列は個々の彗星のトレースのz座標を定義します. `nc=size（z,"c"）` は、同時に描画される彗星の数です.

Lf
  範囲 `[0 1[` の実数スカラー. デフォルト値は 0.1です. これは、彗星の痕跡のLeading fractionを定義します。最近の点は太い線でプロットされています （`k=Lf*np`）。

fun
  呼び出し手順 `z=fun(x,y)` のScilab関数.

c
  `nc` colors of the `nc` comets traces. They may be specified as a vector of `nc` color indices or color names or "#RRGGBB" hexadecimal color codes. Or by a matrix (ncx3) of `[r,g,b]` vectors of Red-Green-Blue intensities in the [0,1] interval.

## 説明

`(x,y,z)`が要素数が同じ3つのベクトルの場合, この関数は3次元cometアニメーションプロットを描画します. このプロットは以下の3つの部分から構成されます:

ヘッド | カレントの位置`[x(i), y(i), z(i)]`を示すマーカ.
ボディ | 軌跡の最も最近の点である`k=round（Lf*np）` で構成され、トレースのより厚い部分として表示されます。
テール | 曲線の一部`[x(1:i-k), y(1:i-k), z(1:i-k)]` を示す.

`z` が行列, `(x, y)` がベクトルの場合, アニメーション表示される曲線は各`(x, y, z(:,j))` の組について描画されます.

`x,y,z` が同じ次元の行列の場合, アニメーション表示される曲線は, 各組 `(x(:,j), y(:,j), z(:,j))`について描画されます.

`comet3d(x, y, fun,...)` は, `z` ベクトルを `z(i)=fun(x(i),y(i))`により 計算します.

`comet3d(..., "colors", c)` は 各曲線の色を設定する際に使用できます.

## 例

    t = linspace(-%pi,%pi,500);
    clf
    comet3d(sin(5*t), sin(t), t.^2)

    t = linspace(-%pi,%pi,500)';
    clf
    comet3d(sin(5*t), sin(t), [t.^2,ones(t)])

    // Chosen colors:
    t = linspace(0, 10*%pi, 500)';
    clf, gca().rotation_angles = [26, 112];
    comet3d(t.*sin(t), t, [t.*sin(2*t) t.*sin(3*t)], "colors", ["orange" "red"])

    t = linspace(-%pi,%pi,500)';
    function z = traj(x,y), z = 1.5*sin(x^2)*cos(y), endfunction
    clf
    comet3d(cos(t),sin(t),traj)

## 参照

- comet
- paramfplot2d
- realtime
- colors names

## 履歴

5.3.2 関数 comet3d() が導入されました.
6.1.0 色は、名前、"#RRGGBB"の16進コード、または赤緑青の強度で指定することもできるようになりました。