Beziex Ts (Home)
& ダウンロードへ
Beziex LG (Home)
& ダウンロードへ
マニュアル目次
Copyright 1999-2011 EISHIN
|
4章 サンプル・アプリケーション
1. 概要
このサンプル・アプリケーションは
というべきものである。モデラー(モデリングソフト)だと思ってダウンロードされると、必ず後悔するので御了承願いたい(サンプルとはあくまでも、そのソースコードを見せるためのもの)。
このソフトはサンプルと書くだけあって、元々、自由曲面関数ライブラリの検証用に作ったものである。よってユーザーインターフェイスの類いは、まったくと言っていいほど付いていない。サーフェイスの回転や変形をする際はすべて数値入力で行うので、作った本人でさえ使いにくくて困るほどである。
しかしサンプルといっても4000ステップを超えるプログラムであり、またOpenGLも使用している。またモデラーではないので、アプリケーション内でサーフェイスを作成することはできないが、10章で述べるサンプル・ベースファイルを新たに作ることで、新しい物体を表示変形できるようになる。
2. 起動時の操作
1) |
BeziexView???フォルダ内のBeziexView.exe(Release版)またはBeziexView_debug.exe(Debug版)をダブルクリック(???にはバージョンNoが入っている) |
2) |
「ファイルを開く」ダイアログが表示されるので、サンプル・ベースファイル(拡張子.bxb)を選択 |
3. メインウインドウ
メインウインドウは、左右2つの画面に分かれており
|
左側・・・ワイヤーフレーム画面
右側・・・シェーディング画面
|
となっている。
3-1. ワールド座標系とローカル座標系
当サンプルは右手座標系を採用している。そして常に固定されている座標系をワールド座標系、サーフェイスの回転に伴って一緒に回転する座標系をローカル座標系と呼んでいる。この2座標系の原点は常に同位置で、各画面の中央にある。
1) ワールド座標系
|
各画面の左右をX方向(右が正値)、上下をY方向(上が正値)、前後をZ方向(手前が正値)とする。各要素は(WX,WY,WZ)で表される。
|
2) ローカル座標系
|
起動時はワールド座標系と同じであるが、サーフェイスの回転に伴って一緒に回転する。各要素は(LX,LY,LZ)で表される。
|
3-2. ワイヤーフレーム画面
各要素を表示するための画面で、表示される要素は次のようになっている。
1) 境界曲線
|
メインとなる表示要素で、グレイのワイヤーフレームにて表される。
|
2) 選択頂点/ハンドル/コントロールバー
|
頂点、ハンドル、コントロールバーのうち、選択されたもの(必ず各1個)を表示する。実際には選択頂点は表示されていないが、選択ハンドルの根元が選択頂点である。そしてこれら選択要素に対して、変形等が行われることになる。選択ハンドル・・・赤。選択コントロールバー・・・青。
|
3) 選択周辺部
|
選択頂点/ハンドル/コントロールバーの周辺にある「頂点」、「ハンドル点」、「コントロールバー先端」等を繋ぎ、一部をシェーディングされた面にした部分。
3次元空間上でハンドル、コントロールバーが単独で描画されていると、どの向きに伸びているのか直感的に認識することが困難である。しかしシェーディング、隠面消去された面があると、3次元状態が理解しやすくなる。そこで補助的に選択周辺部も描画することにより、選択要素を認識しやすくしている。線・・・マゼンタ。面・・・青っぽいグレイ。
|
3-3. シェーディング画面
サーフェイスの形状をシェーディングして表示する画面である。
1) 物体
|
この画面のメインであり、表面は赤、裏面は青でシェーディングされている。
|
2) メッシュ
|
ローカル座標系を示している。ただしメッシュの中心はX=Y=0、Z≠0である(原点ではない)。メッシュ全体の3/4はグレイの線であるが、残り1/4は赤と青の線となっている。このうち赤の線はX方向を表しており、青の線はY方向を表す。またこの赤青の部分(全体の1/4)はXY共に正値であることを示す。
またメッシュの四隅から伸びている緑の線はZ方向を表している。そして緑線の根元(メッシュと接している点)から先端に向かう方向が、Z値の大きくなる方向である。
|
4. 操作法
4-1. ファイルメニュー
1) アプリケーションの終了
4-2. 表示メニュー
1) サーフェイスの回転
|
ワールド座標系の各軸を中心に、サーフェイスを回転させる。入力ダイアログが表示されるので、回転させたい角度(degree)を入力する。
|
2) サーフェイスの方向
|
サーフェイスの方向を基準方向に戻す。この基準方向は4種類あり、それぞれ
|
a) |
標準方向・・・初期方向 |
b) |
平面方向・・・上から眺める |
c) |
正面方向・・・手前から眺める |
d) |
側面方向・・・右から眺める |
3) 選択
|
頂点/ハンドル/コントロールバーを選択する。メニューを選ぶと入力ダイアログが開かれ、
|
a) |
頂点 |
・・・サーフェイス全体の各頂点に付けられた番号 |
b) |
ハンドル |
・・・ハンドル番号(共有頂点上) |
c) |
コントロールバー |
・・・コントロールバー番号(共有頂点内の基準ハンドル上) |
|
のいづれかについて、現在の番号が表示されるので、選択したい番号を入力する。ただしb、cの共有頂点はaであり、cの基準ハンドルはbである。
|
4-3. コントロールメニュー
1) 頂点の位置
|
選択頂点の位置(ローカル座標系)を変更する。メニューを選ぶと入力ダイアログが開かれ、そこに現在の位置が数値として表示される。ここで持っていきたい位置を数値で入力すると、選択頂点がその位置に動く(数値は-2〜2ぐらい)。
|
2) ハンドルの方向
|
選択ハンドルの方向(ベクトル)を変更する(ローカル座標系)。メニューを選ぶと入力ダイアログが開かれ、そこに現在のハンドルベクトルが数値として表示される。ここで変えたいベクトル値を入力すると、ハンドルベクトルを変更できる(数値は-1〜1ぐらい)。
このサンプルでは、ハンドル方向を変えるとレベル2要素の頂点平面/頂点法線も変更されるので、隣接曲面との滑らかさが保たれる。
|
3) コントロールバーの方向
|
選択コントロールバーの方向(ベクトル)を変更する(ローカル座標系)。メニューを選ぶと入力ダイアログが開かれ、そこに現在のコントロールバーベクトルが数値として表示される。ここで変えたいベクトル値を入力すると、コントロールバーベクトルを変更できる(数値は-1〜1ぐらい)。
このサンプルでは、コントロールバー方向を変えるとレベル2要素のハンドル点平面/ハンドル点法線も変更されるので、隣接曲面との滑らかさが保たれる。
|
4-4. 注意事項
1) |
コントロールバーの方向変更や、ハンドルやコントロールバーの長さ変更には、場合に応じて制限が設けられている。よって必ずしもその数値通りに変更されるとは限らない。 |
2) |
頂点位置やハンドル方向の変更により、ある曲面のねじれ等が極端に大きくなった場合、その曲面はシェーディング画面に表示されないことがある。 |
(C)1999-2012 EISHIN All Rights Reserved.
|