GraphicLibrary  0.5.0
gl_drawing_method.h ファイル

描画ルーチン定義用ヘッダ [詳解]

クラス

class  tadah_fussy::gl::pen::GEllipsePen
 楕円形のペン [詳解]
 
class  tadah_fussy::gl::pen::GCircleBrush
 円形のブラシ [詳解]
 

名前空間

 tadah_fussy::gl::shape::box
 矩形描画用関数
 
 tadah_fussy::gl::shape::line
 線分描画用関数
 
 tadah_fussy::gl::shape::ellipse
 楕円描画用関数
 
 tadah_fussy::gl::shape::circle
 真円描画用関数
 
 tadah_fussy::gl::shape::arc
 円弧描画用関数
 
 tadah_fussy::gl::draw
 描画機能用名前空間
 
 tadah_fussy::gl::draw::paint
 ペイント用関数
 
 tadah_fussy::gl::shape::polygon
 スキャン・ライン・コンバージョンによるポリゴン描画用クラス
 
 tadah_fussy::gl::shape::curve
 曲線描画用関数
 

列挙型

enum  tadah_fussy::gl::shape::polygon::METHOD { tadah_fussy::gl::shape::polygon::CROSSING_NUMBER , tadah_fussy::gl::shape::polygon::WINDING_NUMBER }
 描画領域の判定方法 [詳解]
 

関数

void tadah_fussy::gl::shape::box::Stroke (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c0, Coord< int > c1)
 矩形描画関数 [詳解]
 
void tadah_fussy::gl::shape::box::Fill (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c0, Coord< int > c1)
 矩形の塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::box::Draw (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const Coord< int > &c0, const Coord< int > &c1, bool filled=false)
 矩形の描画/塗りつぶし関数 [詳解]
 
int tadah_fussy::gl::shape::line::Clipping (Coord< int > drawSize, Coord< int > *c0, Coord< int > *c1)
 線分描画用クリッピング処理 [詳解]
 
void tadah_fussy::gl::shape::line::Draw (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c0, Coord< int > c1, bool needClipping=true, bool connect4=false)
 線分描画関数 [詳解]
 
void tadah_fussy::gl::shape::line::DrawMultiple (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &vertexList)
 複数のラインを描画する [詳解]
 
void tadah_fussy::gl::shape::line::DrawH (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c0, int ex)
 水平線分を描画する [詳解]
 
void tadah_fussy::gl::shape::line::DrawV (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c0, int ey)
 垂直線分を描画する [詳解]
 
bool tadah_fussy::gl::shape::ellipse::GetParamByRectangle (Coord< int > c1, Coord< int > c2, Coord< int > *o, int *r, Coord< int > *k)
 二点を対角線とする長方形の頂点を通る楕円のパラメータを求める [詳解]
 
void tadah_fussy::gl::shape::ellipse::Stroke (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, Coord< int > k)
 楕円描画関数 [詳解]
 
void tadah_fussy::gl::shape::ellipse::Fill (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, Coord< int > k)
 楕円塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::ellipse::Draw (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, Coord< int > k, bool filled=false)
 楕円描画/塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::ellipse::Stroke_2p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c1, Coord< int > c2)
 二点を対角線とする長方形の頂点を通る楕円を描画する [詳解]
 
void tadah_fussy::gl::shape::ellipse::Fill_2p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c1, Coord< int > c2)
 二点を対角線とする長方形の頂点を通る楕円を塗りつぶす [詳解]
 
void tadah_fussy::gl::shape::ellipse::Draw_2p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const Coord< int > &c1, const Coord< int > &c2, bool filled=false)
 二点を対角線とする長方形の頂点を通る楕円を描画または塗りつぶす [詳解]
 
Coord< int > tadah_fussy::gl::shape::circle::CalcOrigin (Coord< int > c1, Coord< int > c2, Coord< int > c3, int *r)
 三角形の外心と外接円の半径を求める [詳解]
 
Coord< int > tadah_fussy::gl::shape::circle::CalcOrigin (Coord< int > c1, Coord< int > c2, Coord< int > c3)
 三角形の外心のみを求める ( 外接円の半径は求めない ) [詳解]
 
void tadah_fussy::gl::shape::circle::Stroke (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r)
 真円描画関数 [詳解]
 
void tadah_fussy::gl::shape::circle::Fill (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r)
 真円塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::circle::Draw (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, bool filled=false)
 真円描画/塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::circle::Stroke_3p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c1, Coord< int > c2, Coord< int > c3)
 円周上の三点から中心と半径を決定して描画する [詳解]
 
void tadah_fussy::gl::shape::circle::Fill_3p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c1, Coord< int > c2, Coord< int > c3)
 円周上の三点から中心と半径を決定して塗りつぶす [詳解]
 
void tadah_fussy::gl::shape::circle::Draw_3p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c1, Coord< int > c2, Coord< int > c3, bool filled=false)
 円周上の三点から中心と半径を決定して描画する/塗りつぶす [詳解]
 
void tadah_fussy::gl::shape::circle::Stroke_2p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c1, Coord< int > c2)
 二点を直径の両端として円を決定して描画する [詳解]
 
void tadah_fussy::gl::shape::circle::Fill_2p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c1, Coord< int > c2)
 二点を直径の両端として円を決定して塗りつぶす [詳解]
 
void tadah_fussy::gl::shape::circle::Draw_2p (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const Coord< int > &c1, const Coord< int > &c2, bool filled=false)
 二点を直径の両端として円を決定して描画する/塗りつぶす [詳解]
 
void tadah_fussy::gl::shape::arc::Stroke (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, double sa, double ea, bool isOut=false)
 円弧描画関数 [詳解]
 
void tadah_fussy::gl::shape::arc::Fill (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, double sa, double ea, bool isOut=false)
 円弧塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::arc::Draw (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, double sa, double ea, bool isOut=false, bool filled=false)
 円弧描画/塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::arc::Stroke (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, Coord< int > c1, Coord< int > c2, bool isOut=false)
 円弧描画関数 [詳解]
 
void tadah_fussy::gl::shape::arc::Fill (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, Coord< int > c1, Coord< int > c2, bool isOut=false)
 円弧塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::arc::Draw (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > o, int r, Coord< int > c1, Coord< int > c2, bool isOut=false, bool filled=false)
 円弧描画/塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::draw::paint::AreaPaint (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c)
 領域色による塗りつぶし処理 [詳解]
 
void tadah_fussy::gl::draw::paint::BorderPaint (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c, RGB rgb)
 境界色による塗りつぶし処理 [詳解]
 
void tadah_fussy::gl::shape::polygon::Fill (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &vertex, METHOD method=CROSSING_NUMBER)
 ポリゴン描画関数 [詳解]
 
void tadah_fussy::gl::shape::polygon::Triangle (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, Coord< int > c1, Coord< int > c2, Coord< int > c3)
 三角形の塗りつぶし関数 [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeFergusonCoonsSpline (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, const std::vector< Coord< double > > &dp, double rate)
 Ferguson/Coons曲線を描画する [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeCatmullRomSpline (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, double d, double rate)
 Catmull-Rom曲線を描画する [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeBezierSpline (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate)
 任意の次数のベジェ曲線によるスプライン曲線描画 [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeDeCasteljauSpline (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate)
 任意の次数のベジェ曲線によるスプライン曲線描画 ( De Casteljau のアルゴリズムを使用 ) [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeBSpline (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, const std::vector< double > &knot, size_t n, double rate)
 任意のノット列を使った非一様 B-スプライン曲線描画 [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeDeBoorCox (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, const std::vector< double > &knot, size_t n, double rate)
 任意のノット列を使った非一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用) [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeUniformBSpline (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate)
 一様 B-スプライン曲線描画 [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeUniformDeBoorCox (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate)
 一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用) [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeOpenUniformBSpline (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate)
 開一様 B-スプライン曲線描画 [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeOpenUniformDeBoorCox (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, size_t n, double rate)
 開一様 B-スプライン曲線描画 ( De Boor Cox のアルゴリズムを使用) [詳解]
 
void tadah_fussy::gl::shape::curve::StrokeNurbs (canvas::DrawingArea_IF &draw, pen::GPixelOp &pixelOp, const std::vector< Coord< int > > &p, const std::vector< double > &knot, const std::vector< double > &w, size_t n, double rate)
 Nurbs 曲線描画 [詳解]
 

詳解

描画ルーチン定義用ヘッダ

著者
tadah_fussy
日付
2018/02/25 DrawingMehod.h から分離
2021/02/25 ワーニング出力に対応
2021/03/29 名前空間の見直し
2021/03/30 tadah_fussy::gl::shape::polygon::Triangleのバグ修正など
2021/04/02 文字コードを UTF-8 に変更