6. 3次元関数一覧

1 関数名setEv3Mode
機能出力ファイルの形式を決める
宣言void setEv3Mode(int mode);
引数 mode : 0:テキスト, 1:バイナリ
備考 本関数を呼び出さないときは既定値(バイナリ)になります。
本関数はev3Pageより先に呼び出す必要があります。
2 関数名setEv3File
機能出力ファイルを指定する
宣言void setEv3File(const char *fn);
引数 fn : 出力ファイル名
備考 本関数を呼び出さないときは既定値(ev.ev3)になります。
本関数はev3Pageより先に呼び出す必要があります。
3 関数名ev3Page
機能ページを開始する
宣言void ev3Page(void);
引数 なし
備考 必須関数です。
4 関数名ev3Vertex1
機能多角形を頂点色で塗りつぶす(色番号指定)
宣言void ev3Vertex1(int nvtx, double (*vtx)[3], const int *col);
引数 nvtx:頂点の数(=2,3,4)
vtx:頂点のXYZ座標(配列の大きさはnvtx*3)
col:頂点の色番号(配列の大きさはnvtx)
備考 色番号の意味: 0:黒, 1-20:青-緑-赤, 100-120:白-灰-黒
5 関数名ev3Vertex2
機能多角形を頂点色で塗りつぶす(RGB指定)
宣言void ev3Vertex2(int nvtx, double (*vtx)[3], unsigned char (*rgb)[3]);
引数 nvtx:頂点の数(=2,3,4)
vtx:頂点のXYZ座標(配列の大きさはnvtx*3)
rgb:頂点のRGB因子(0-255, 配列の大きさはnvtx*3)
6 関数名ev3Polygon1
機能多角形を一色で塗りつぶす(色番号指定)
宣言void ev3Polygon1(int nvtx, double (*vtx)[3], int col);
引数 nvtx:頂点の数(=2,3,4)
vtx:頂点のXYZ座標(配列の大きさはnvtx*3)
col:多角形の色番号(ev3Vertex1の備考)
7 関数名ev3Polygon2
機能多角形を一色で塗りつぶす(RGB指定)
宣言void ev3Polygon2(int nvtx, double (*vtx)[3], const unsigned char rgb[3]);
引数 nvtx:頂点の数(=2,3,4)
vtx:頂点のXYZ座標(配列の大きさはnvtx*3)
rgb:多角形のRGB因子(0-255)
8 関数名ev3Line1
機能線分を描く(色番号指定)
宣言void ev3Line1(double x1, double y1, double z1, double x2, double y2, double z2, int col);
引数 x1:始点のX座標
y1:始点のY座標
z1:始点のZ座標
x2:終点のX座標
y2:終点のY座標
z2:終点のZ座標
col:線分の色番号(ev3Vertex1の備考)
9 関数名ev3Line2
機能線分を描く(RGB指定)
宣言void ev3Line2(double x1, double y1, double z1, double x2, double y2, double z2, const unsigned char rgb[3]);
引数 x1:始点のX座標
y1:始点のY座標
z1:始点のZ座標
x2:終点のX座標
y2:終点のY座標
z2:終点のZ座標
rgb:線分のRGB因子(0-255)
10 関数名ev3Index
機能選択表示用の番号を指定する
宣言void ev3Index(int id);
引数 id:指定する番号(0以上)
備考 図形表示のときキーボードm,lで表示を選択するための番号を割り当てます。 再設定されるまで同じ値が使用されます。既定値は0です。 ページを変えると0に初期化されます。
11 関数名ev3Rect
機能長方形を描く(RGB指定)
宣言void ev3Rect(int id, double c0, double p1, double q1, double p2, double q2, int fill, const unsigned char rgb[3]);
引数 id : 面の向き(1:X面, 2:Y面, 3:Z面)
c0 : 一定座標
p1:左下のY/Z/X(id=1/2/3)座標
q1:左下のZ/X/Y(id=1/2/3)座標
p2:右上のY/Z/X(id=1/2/3)座標
q2:右上のZ/X/Y(id=1/2/3)座標
fill : 塗りつぶし(0/1:なし/あり)
rgb:色のRGB因子(0-255)
12 関数名ev3Box
機能直方体を描く(RGB指定)
宣言void ev3Box(double x1, double y1, double z1, double x2, double y2, double z2, int fill, const unsigned char rgb[3]);
引数 x1:始点のX座標
y1:始点のY座標
z1:始点のZ座標
x2:終点のX座標
y2:終点のY座標
z2:終点のZ座標
fill : 塗りつぶし(0/1:なし/あり)
rgb:色のRGB因子(0-255)
13 関数名ev3Sphere
機能球を描く(RGB指定)
宣言void ev3Sphere(double x0, double y0, double z0, double r, int nth, int nph, const unsigned char rgb[3]);
引数 x0:中心のX座標
y0:中心のY座標
z0:中心のZ座標
r : 半径
nth:θ方向の分割数
nph:φ方向の分割数
rgb:色のRGB因子(0-255)
備考 分割数が大きいほど滑らかな球面になります。
14 関数名ev3Circle
機能球を描く(RGB指定)
宣言void ev3Circle(int id, double x0, double y0, double z0, double r, int n, const unsigned char rgb[3]);
引数 id : 中心軸の向き(1:X方向, 2:Y方向, 3:Z方向)
x0:中心のX座標
y0:中心のY座標
z0:中心のZ座標
r : 半径
n:分割数
rgb:色のRGB因子(0-255)
備考 分割数が大きいほど滑らかな円になります。
15 関数名ev3Func
機能極座標の関数面(r=r(θ,φ))を描く
宣言void ev3Func(int nth, double th1, double th2, int nph, double ph1, double ph2, const double *rdat, int iaxs);
引数 nth:θ方向の分割数
th1 : θ方向の始角[度]
th2 : θ方向の終角[度]
nph:φ方向の分割数
ph1 : φ方向の始角[度]
ph2 : φ方向の終角[度]
rdat:関数値の1次元配列(大きさは(nth+1)*(nph+1))。φ方向が内側のループ。
iaxs : XYZ軸を描くか(N/Y=0/1)
備考 中心からの距離は関数値に比例します。
色は中心が青、最大が赤になります。
X/Y/Z軸の色は赤/青/緑になります。