立体の拡大と縮小

ここでは、モデルやポリゴンの拡大と縮小を扱います。

- 目次 -

モデルの拡大と縮小

モデルの拡大と縮小を行うには、scaleModel関数を使用します。

- 関数仕様 -

void scaleModel (
  int modelID,
  float sx, float sy, float sz
)

最初の引数modelIDでは、設定対象のモデルのIDを指定します。 続く引数sx、sy、szでは、それぞれX、Y、Z方向のスケーリング倍率を指定します。 倍率を1.0より大きくすると拡大に、小さくすると縮小になります。 倍率を変えたくない方向には1.0を指定します。

ポリゴンの拡大と縮小

ポリゴンの拡大と縮小を行うには、scalePolygon関数を使用します。

- 関数仕様 -

void scalePolygon (
  int polygonID,
  float sx, float sy, float sz
)

最初の引数polygonIDでは、設定対象のポリゴンのIDを指定します。 続く引数sx、sy、szでは、それぞれX、Y、Z方向のスケーリング倍率を指定します。 倍率を1.0より大きくすると拡大に、小さくすると縮小になります。 倍率を変えたくない方向には1.0を指定します。

プログラム例

実際に球モデルを配置し、Z軸方向へ2倍に引き伸ばしてみましょう。 以下のように記述し、実行してみてください。

Sample.vcssl

このプログラムを実行すると、黒い画面に白い球が表示されます。 白い球は、Z軸方向に2倍引き伸ばされています。

実行結果、引き伸ばされた球の図
実行結果
球モデルがZ軸まわりに拡大された様子が見て取れる。