設定
Ketinit3d()
KeTCindy3Dの使用宣言.
説明
Cinderellaの画面を3Dモードにする.
Cinderellaの画面に視点移動のための2つのスライドを作る.
スライダーは初期位置が左端になる.
スライダーTHで角THETAを, スライダーFIで角PHIを内部変数として定義する.
引数に0を入れてKetinit3d(0)とすると, 副画面を表示しない.
この関数はInitializationスロットに置く.
Ketinit()も平面の場合と異なりInitializationスロットに置く.
KeTCindy3Dにおける変数の初期化などを行うStart3d()はDrawスロットに書く.
Setangle(TH, FI)
回転角の指定.
説明
スライダーで設定できる回転角(視点の位置)THとFIを度数法で指定する.
例えばSetangle(70, 40)とするとTH, FIがその位置になる.
スライダーは固定されるので再度スライダーを有効にしたい場合はコメント化して再実行する.
初期状態だけを決めたい場合は
if(!Ptselected(), Setangle(70, 40));
または
if(!Isangle(), Setangle(70, 40));
とすると, スライダーは有効となりスライダーのいずれかの点を選択した状態であればFigureボタンも有効である.
画面上の何もないところをクリックして,
点の選択状態を解除すると元に戻る
(回転角の取得については, Getangle()を参照).
Start3d(option)
3Dの画面設定と空間点の認識
説明
副画面を作り, 幾何点を3Dの点として認識する. この関数は必須で, Drawスロットの先端に書く.
Cinderellaの作図ツールで点・線分を作図すると, 内部関数のPtseg3data()
によってそれらを空間の点として認識し, 副画面上に対応する点をとる.
但し, 始めはz座標をを0とする.
点の名前がAであれば副画面上の点はAzとなる.
点をポイントとして選択すると副画面の上に座標が表示される.
作図した点の名称をインスペクタで変更した場合, 新しい名称に対応する点を副画面上に作成するが,
以前の点は消えないので要注意.
例えば点Aを作図した後, 主画面上の点Aをインスペクタで点Dに変えた場合,
副画面上に新たにDzができるが, 以前のAzも残る.
残ったAzは洗濯しておいて作図ツールの消去ボタンで 消すことができる.
optionに除外点のリストを与えるとその点は空間点としない(スライダーで視点を移動しても位置は変わらない).
Startsurf(options)
曲面描画の初期化と定数の設定.
説明
optionsで定数を設定する.
定数としては分割数, Cのサイズ, 誤差の限界を設定する.
optionsがないときは以下の初期設定を用いる.
- 分割数: [50, 50]
- Cのサイズ: [1500, 500, 200]
- 誤差の限界: [0.01, 0.1]
設定後に初期値にリセットするときは文字列resetを引数に与える.
これにより陰線処理を伴う面の描画手順は, 次のようになる.
Startsurf()で面描画の宣言をする.- 描画関数でプロットデータを作る.
ExeccmdC()でC言語を用いてまとめて描画する.
Xyzaz3data(name, range_x, range_y, range_z, options)
座標軸を描く.
説明
画面に座標軸を描き, プロットデータax3dを作成する.
nameは空文字列でよい.
optionsは次の2つ.
- 矢じり
an: nは数字で矢じりの大きさ(nはなくてもよい). - 原点
Onesw:neswは微小位置. 数字も付けられる(neswをつけない場合, 初期値はsw).
【例】初期設定の座標軸.
Xyzax3data("", "x=[-5, 5]", "y=[-5, 5]", "z=[-5, 5]");
矢じりをつける.
Xyzax3data("", "x=[-5, 5]", "y=[-5, 5]", "z=[-5, 5]", "a");
矢じりを大きくする.
Xyzax3data("", "x=[-5, 5]", "y=[-5, 5]", "z=[-5, 5]", ["a2"]);
原点を表示する.
Xyzax3data("", "x=[-5, 5]", "y=[-5, 5]", "z=[-5, 5]", ["O"]);
原点の位置を調整して右上に表示する. 矢じりもつける.
Xyzax3data("", "x=[-5, 5]", "y=[-5, 5]", "z=[-5, 5]", ["a", "Oe2n2"]);
Putaxes3d()で点を取ると原点に点が作成される.
この点の名前と表示が重複するのが煩わしい場合は,
作図後にこのoptionつけてから出力すればよい.