# クラス fk_Curve

曲線用純粋仮想クラス [詳細]

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

すべてのメンバ一覧

## Public メソッド
| fk_Curve (void)
| コンストラクタ
virtual | ~fk_Curve ()
| デストラクタ
virtual fk_Vector | pos (double t)=0
| 曲線点位置ベクトル算出関数
virtual fk_Vector | diff (double t)=0
| 曲線微分ベクトル算出関数
void | setDiv (int div)
| 曲線キャッシュ分割数設定関数
int | getDiv (void)
| 曲線キャッシュ分割数参照関数
## Protected 変数
bool | changeFlg
| 修正告知用フラグ

## 説明

曲線用純粋仮想クラス

このクラスは、自由曲線用の純粋仮想クラスです。 このクラスを継承することによって、 ユーザは任意の自由曲線形式を fk_Edge に追加することができます。 fk_BezCurve と fk_BSplCurve はこのクラスを継承しています。 自由曲線は、以下の条件を満たす必要があります。

- パラメータ空間が [0, 1] である。
- パラメータ空間中のあらゆるパラメータで曲線上の点を算出できる。
- パラメータ空間中のあらゆるパラメータで曲線上の微分ベクトルを算出できる。
- 曲線の始点と終点の位置ベクトルが、稜線 (fk_Edge) の始点、終点と一致している。

参照:
  fk_Edge, fk_BezCurve, fk_BSplCurve, fk_Surface

意見:
  本クラスは現在ベータ機能としての位置づけであり、 ユーザーズマニュアルには記載されていません。 また、今後のバージョンアップにおいて仕様が変更される可能性があります。

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

fk_Curve::fk_Curve | ( | void |  | ) |

コンストラクタ

virtual fk_Curve::~fk_Curve | ( |  | ) | `[virtual]`

デストラクタ

## 関数

virtual fk_Vector fk_Curve::pos | ( | double | t | ) | `[pure virtual]`

曲線点位置ベクトル算出関数

曲線上の点の位置ベクトルを算出する純粋仮想関数です。 派生クラスにおいて実際に実装する必要があります。

引数:

  `[in]` | t | 曲線パラメータ

戻り値:
  曲線点の位置ベクトル

fk_BezCurve, と fk_BSplCurveで実装されています。

virtual fk_Vector fk_Curve::diff | ( | double | t | ) | `[pure virtual]`

曲線微分ベクトル算出関数

曲線上の点の微分ベクトルを算出する純粋仮想関数です。 派生クラスにおいて実際に実装する必要があります。

引数:

  `[in]` | t | 曲線パラメータ

戻り値:
  曲線点の微分ベクトル

fk_BezCurve, と fk_BSplCurveで実装されています。

void fk_Curve::setDiv | ( | int | div | ) |

曲線キャッシュ分割数設定関数

描画する際の曲線の分割数を設定します。 本関数は、派生クラスにおいて再定義する必要はありません。

引数:

  `[in]` | div | 分割数。

int fk_Curve::getDiv | ( | void |  | ) |

曲線キャッシュ分割数参照関数

描画する際の曲線の分割数を参照します。 本関数は、派生クラスにおいて再定義する必要はありません。

戻り値:
  分割数

## 変数

bool fk_Curve::changeFlg`[protected]`

修正告知用フラグ

この変数は、派生クラスにおいて曲線形状を変更した状況となったとき、 値を true に変更して下さい。 描画データキャッシュが生成された時点で再び false に戻されます。