# クラス fk_Block

直方体を生成、管理するクラス [詳細]

fk_Blockに対する継承グラフ
[凡例]
fk_Blockのコラボレーション図
[凡例]

すべてのメンバ一覧

## Public メソッド
| fk_Block (double x=1.0, double y=1.0, double z=1.0)
| コンストラクタ
| ~fk_Block ()
| デストラクタ
void | setSize (double x, double y, double z)
| 各辺長設定関数
void | setSize (double length, fk_Axis axis)
| 個別辺長設定関数
void | setScale (double scale)
| 全体拡大縮小関数
void | setScale (double scale, fk_Axis axis)
| 軸方向拡大縮小関数
void | setScale (double x, double y, double z)
| 軸方向個別拡大縮小関数

## 説明

直方体を生成、管理するクラス

このクラスは、形状として直方体を制御する機能を提供します。 直方体は、原点の物体の中心が来るように配置されます。 従って、(x, y, z) という大きさで直方体を生成した場合、 各頂点の位置ベクトルは以下のようになります。

- (x/2, y/2, z/2)
- (-x/2, y/2, z/2)
- (-x/2, -y/2, z/2)
- (x/2, -y/2, z/2)
- (x/2, y/2, -z/2)
- (-x/2, y/2, -z/2)
- (-x/2, -y/2, -z/2)
- (x/2, -y/2, -z/2)

このクラスは、実質的には fk_IndexFaceSet クラスの派生クラスであり、 生成後に fk_IndexFaceSet クラスの機能によって頂点を移動することが可能です。

参照:
  fk_IndexFaceSet, fk_Shape, fk_Model

## コンストラクタとデストラクタ

fk_Block::fk_Block | ( | double | x = `1.0`,
|  | double | y = `1.0`,
|  | double | z = `1.0` |
| ) |  |  |

コンストラクタ

引数として、各軸方向の幅を入力できます。 引数を省略した場合は、辺長が 1 の立方体を生成します。

引数:

  `[in]` | x | x方向の辺長
  `[in]` | y | y方向の辺長
  `[in]` | z | z方向の辺長

fk_Block::~fk_Block | ( |  | ) |

デストラクタ

## 関数

void fk_Block::setSize | ( | double | x,
|  | double | y,
|  | double | z |
| ) |  |  |

各辺長設定関数

直方体の各軸方向の辺長を一括して設定します。

引数:

  `[in]` | x | x方向の辺長
  `[in]` | y | y方向の辺長
  `[in]` | z | z方向の辺長

void fk_Block::setSize | ( | double | length,
|  | fk_Axis | axis |
| ) |  |  |

個別辺長設定関数

直方体の辺長を個別に設定します。

引数:

  `[in]` | length | 辺長
  `[in]` | axis | 軸方向。以下のいずれかを指定します。 fk_X x方向 fk_Y y方向 fk_Z z方向

void fk_Block::setScale | ( | double | scale | ) |

全体拡大縮小関数

直方体全体を、指定された倍率で拡大・縮小します。

引数:

  `[in]` | scale | 倍率

void fk_Block::setScale | ( | double | scale,
|  | fk_Axis | axis |
| ) |  |  |

軸方向拡大縮小関数

直方体を、指定された軸方向についてのみ拡大・縮小します。

引数:

  `[in]` | scale | 倍率
  `[in]` | axis | 軸方向。以下のいずれかを指定します。 fk_X x方向 fk_Y y方向 fk_Z z方向

void fk_Block::setScale | ( | double | x,
|  | double | y,
|  | double | z |
| ) |  |  |

軸方向個別拡大縮小関数

直方体を、各軸方向に対し個別の倍率で拡大・縮小します。

引数:

  `[in]` | x | x方向の倍率
  `[in]` | y | y方向の倍率
  `[in]` | z | z方向の倍率