GraphicLibrary  0.5.0
ConvolutionKernel_Mitchell クラス

Mitchell-Netravali 補間関数 [詳解]

ConvolutionKernel_Mitchell の継承関係図
ConvolutionKernel_IF

公開メンバ関数

 ConvolutionKernel_Mitchell (double b=1/3, double c=1/3)
 関数の二つのパラメータを指定して構築 [詳解]
 
virtual void operator() (double t, std::vector< double > *phai) const
 Mitchell-Netravali 補間関数の t ± n での値を求める [詳解]
 
virtual int size () const
 ゼロ以外の値を持つピクセルの幅を返す [詳解]
 

詳解

Mitchell-Netravali 補間関数

下式で表されるミッチェル ( Mitchell-Netravali ) 補間関数を計算するための関数オブジェクト。 値を持つ範囲は t - 2 から t + 2 までとなる。

k(t) = (1/6)( ( 12 - 9B - 6C )|t|3 + ( -18 + 12B + 6C )|t|2 + ( 6 - 2B ) )            [ |t| < 1 ]
     = (1/6)( ( -B - 6C )|t|3 + ( 6B + 30C )|t|2 + ( -12B - 48C )|t| + ( 8B + 24C ) ) [ 1 <= |t| < 2 ]
     = 0                                                                              [ |t| >= 2 ]

構築子と解体子

◆ ConvolutionKernel_Mitchell()

ConvolutionKernel_Mitchell::ConvolutionKernel_Mitchell ( double  b = 1/3,
double  c = 1/3 
)

関数の二つのパラメータを指定して構築

引数
bパラメータ B
cパラメータ C

関数詳解

◆ operator()()

virtual void ConvolutionKernel_Mitchell::operator() ( double  t,
std::vector< double > *  phai 
) const
virtual

Mitchell-Netravali 補間関数の t ± n での値を求める

求められる範囲は phai のサイズに依存する ( 最低サイズ 4 は必要 )

引数
phai求めた値を保持する配列への参照
t変数 t

ConvolutionKernel_IFを実装しています。

◆ size()

virtual int ConvolutionKernel_Mitchell::size ( ) const
inlinevirtual

ゼロ以外の値を持つピクセルの幅を返す

値を持つ範囲は - 2 <= t <= 2 なので 2 固定

戻り値
ゼロ以外の値を持つピクセルの幅

ConvolutionKernel_IFを実装しています。


このクラス詳解は次のファイルから抽出されました: