GraphicLibrary  0.5.0
tadah_fussy::gl::image_processing 名前空間

画像処理用汎用ルーチン集 [詳解]

関数

int Mirror (int c0, int sz)
 座標 c0 が境界 sz 外だった場合、鏡像 ( 折り返し ) の座標を返す [詳解]
 
int Move (int c0, int d, int sz)
 座標 c0 から d 進んだ座標値を返す [詳解]
 
template<class T >
void CopyRGBtoMatrix (const canvas::DrawingArea_IF &draw, Matrix< T > *r, Matrix< T > *g, Matrix< T > *b)
 RGB 成分を描画領域から行列にコピーする [詳解]
 
template<class T >
void CopyRGBtoDraw (const Matrix< T > &r, const Matrix< T > &g, const Matrix< T > &b, canvas::DrawingArea_IF *draw)
 RGB 成分を行列から描画領域にコピーする [詳解]
 
template<class T >
void ConvYUVtoMatrix (const canvas::DrawingArea_IF &draw, Matrix< T > *y, Matrix< T > *u, Matrix< T > *v)
 YUV 成分を描画領域から行列にコピーする [詳解]
 
template<class T >
void ConvYUVtoDraw (const Matrix< T > &y, const Matrix< T > &u, const Matrix< T > &v, canvas::DrawingArea_IF *draw)
 YUV 成分を行列から描画領域にコピーする [詳解]
 

詳解

画像処理用汎用ルーチン集

関数詳解

◆ ConvYUVtoDraw()

template<class T >
void tadah_fussy::gl::image_processing::ConvYUVtoDraw ( const Matrix< T > &  y,
const Matrix< T > &  u,
const Matrix< T > &  v,
canvas::DrawingArea_IF draw 
)

YUV 成分を行列から描画領域にコピーする

描画領域 draw が NULL の場合は assert を実行する。 y, u, v 各行列のサイズが等しくない場合は assert を実行する。

引数
y,u,vYUV 各成分を持つ行列
draw描画領域
戻り値
なし

◆ ConvYUVtoMatrix()

template<class T >
void tadah_fussy::gl::image_processing::ConvYUVtoMatrix ( const canvas::DrawingArea_IF draw,
Matrix< T > *  y,
Matrix< T > *  u,
Matrix< T > *  v 
)

YUV 成分を描画領域から行列にコピーする

引数
draw対象の描画領域
y,u,vYUV 各成分を取得する行列へのポインタ(NULLの場合は無視される)
戻り値
なし

◆ CopyRGBtoDraw()

template<class T >
void tadah_fussy::gl::image_processing::CopyRGBtoDraw ( const Matrix< T > &  r,
const Matrix< T > &  g,
const Matrix< T > &  b,
canvas::DrawingArea_IF draw 
)

RGB 成分を行列から描画領域にコピーする

描画領域 draw が NULL の場合は assert を実行する。 r, g, b 各行列のサイズが等しくない場合は assert を実行する。

引数
r,g,bRGB 各成分を持つ行列
draw描画領域
戻り値
なし

◆ CopyRGBtoMatrix()

template<class T >
void tadah_fussy::gl::image_processing::CopyRGBtoMatrix ( const canvas::DrawingArea_IF draw,
Matrix< T > *  r,
Matrix< T > *  g,
Matrix< T > *  b 
)

RGB 成分を描画領域から行列にコピーする

引数
draw対象の描画領域
r,g,bRGB各成分を取得する行列へのポインタ(NULLの場合は無視される)
戻り値
なし

◆ Mirror()

int tadah_fussy::gl::image_processing::Mirror ( int  c0,
int  sz 
)
inline

座標 c0 が境界 sz 外だった場合、鏡像 ( 折り返し ) の座標を返す

例)

c0 = -3 のとき、3 を返す。 sz = 3, c0 = 4 のとき、( sz - 1 ) x 2 - c0 = 0 を返す。 鏡像も範囲外だった場合は、再度鏡像を求める。

引数
c0対象の座標
sz描画領域のサイズ
戻り値
折り返しを行った結果 ( 領域内なら c0 をそのまま返す )

◆ Move()

int tadah_fussy::gl::image_processing::Move ( int  c0,
int  d,
int  sz 
)
inline

座標 c0 から d 進んだ座標値を返す

結果が領域外だった場合は GraphLib::Mirror を使って鏡像 ( 折り返し ) の座標を返す。

引数
対象の座標
進む長さ
sz描画領域のサイズ
戻り値
計算結果