GraphicLibrary
0.5.0
|
曲線描画用関数 [詳解]
関数 | |
void | StrokeFergusonCoonsSpline (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, const std::vector< Coord< double > > &dp, double rate) |
Ferguson/Coons曲線を描画する [詳解] | |
void | StrokeCatmullRomSpline (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, double d, double rate) |
Catmull-Rom曲線を描画する [詳解] | |
void | StrokeBezierSpline (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate) |
任意の次数のベジェ曲線によるスプライン曲線描画 [詳解] | |
void | StrokeDeCasteljauSpline (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate) |
任意の次数のベジェ曲線によるスプライン曲線描画 ( De Casteljau のアルゴリズムを使用 ) [詳解] | |
void | StrokeBSpline (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, const std::vector< double > &knot, size_t n, double rate) |
任意のノット列を使った非一様 B-スプライン曲線描画 [詳解] | |
void | StrokeDeBoorCox (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, const std::vector< double > &knot, size_t n, double rate) |
任意のノット列を使った非一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用) [詳解] | |
void | StrokeUniformBSpline (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate) |
一様 B-スプライン曲線描画 [詳解] | |
void | StrokeUniformDeBoorCox (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate) |
一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用) [詳解] | |
void | StrokeOpenUniformBSpline (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate) |
開一様 B-スプライン曲線描画 [詳解] | |
void | StrokeOpenUniformDeBoorCox (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate) |
開一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用) [詳解] | |
void | StrokeNurbs (DrawingArea_IF &draw, GPixelOp &pixelOp, const std::vector< Coord< int > > &p, const std::vector< double > &knot, const std::vector< double > &w, size_t n, double rate) |
Nurbs 曲線描画 [詳解] | |
曲線描画用関数
void GCurve::StrokeBezierSpline | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
size_t | n, | ||
double | rate | ||
) |
任意の次数のベジェ曲線によるスプライン曲線描画
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p が未定義の場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeBSpline | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
const std::vector< double > & | knot, | ||
size_t | n, | ||
double | rate | ||
) |
任意のノット列を使った非一様 B-スプライン曲線描画
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p、ノット列 knot が未定義の場合は assert を実行する。
ノット列 knot は点列 p のサイズ + 次数 + 1 以上のサイズでなければならない。この条件を満たしていない場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
knot | ノット列 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeCatmullRomSpline | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
double | d, | ||
double | rate | ||
) |
Catmull-Rom曲線を描画する
p の最初と最後の要素は描画対象の点には含まれない(微分係数の計算のみに使用)
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p が未定義の場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画領域 |
pixelOp | 描画処理関数オブジェクト |
p | 描画する曲線上の点の座標 |
d | 微分係数計算時の補正係数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeDeBoorCox | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
const std::vector< double > & | knot, | ||
size_t | n, | ||
double | rate | ||
) |
任意のノット列を使った非一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用)
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p が未定義の場合は assert を実行する。
ノット列 knot は点列 p のサイズ + 次数 + 1 以上のサイズでなければならない。この条件を満たしていない場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
knot | ノット列 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeDeCasteljauSpline | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
size_t | n, | ||
double | rate | ||
) |
任意の次数のベジェ曲線によるスプライン曲線描画 ( De Casteljau のアルゴリズムを使用 )
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p が未定義の場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeFergusonCoonsSpline | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
const std::vector< Coord< double > > & | dp, | ||
double | rate | ||
) |
Ferguson/Coons曲線を描画する
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p、微分係数列 dp が未定義の場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画領域 |
pixelOp | 描画処理関数オブジェクト |
p | 描画する曲線上の点の座標 |
dp | 各点に対する微分係数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeNurbs | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
const std::vector< double > & | knot, | ||
const std::vector< double > & | w, | ||
size_t | n, | ||
double | rate | ||
) |
Nurbs 曲線描画
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p、ノット列 knot、重み値 w が未定義の場合は assert を実行する。
ノット列 knot は点列 p のサイズ + 次数 + 1 以上のサイズでなければならない。この条件を満たしていない場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
knot | ノット列 |
w | 重み値 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeOpenUniformBSpline | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
size_t | n, | ||
double | rate | ||
) |
開一様 B-スプライン曲線描画
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p が未定義の場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeOpenUniformDeBoorCox | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
size_t | n, | ||
double | rate | ||
) |
開一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用)
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p が未定義の場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeUniformBSpline | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
size_t | n, | ||
double | rate | ||
) |
一様 B-スプライン曲線描画
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p が未定義の場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |
void GCurve::StrokeUniformDeBoorCox | ( | DrawingArea_IF & | draw, |
GPixelOp & | pixelOp, | ||
const std::vector< Coord< int > > & | p, | ||
size_t | n, | ||
double | rate | ||
) |
一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用)
ピクセル操作領域 draw、ピクセル操作関数オブジェクト pixelOp が未定義の場合は assert を実行する。
点列 p が未定義の場合は assert を実行する。
内点の位置 rate は 1 より小さい正数である必要がある。そうでない場合は assert を実行する。
draw | 描画オブジェクト |
pixelOp | 描画用関数オブジェクト |
p | 描画する曲線上の点の座標 |
n | 次数 |
rate | 再帰的に内点を描画するときの内点の位置(比率) |