[Visual Basic] Public Function Outline(plane As Integer, mode As Integer, level As Integer) As Boolean
[C#] public bool Outline(int plane, int mode, int level);
パラメータ
- plane
- 処理するプレーン(0:Y,1:R,2:G,3:B)
- mode
- 行列変数のパターン(0:差分, 1:Roberts, 2:Sobel)
- level
- 輪郭線の明るさ(数が大きいほど明るい 0~100)
戻り値
成功の場合は true、失敗の場合は false を返します。
解説
通常は plane を 0
として輝度の違いを輪郭として認識しますが、1以上を設定することにより各プレーンの値の差を輪郭として認識することもできます。
輪郭抽出の効果は mode により異なります。
処理対象となるイメージを Image プロパティもしくは
Layer(LayerNumber).Image
プロパティに設定します。
(8ビットグレースケール,16,24,32ビットイメージが対象で LayerNumber
プロパティによって処理されるイメージが決まります)
イメージ全体に対して処理を行いたい場合は、SelectMode プロパティに EffectAll
を設定します。
マスクハンドルを基に処理を行いたい場合は、SelectMode プロパティに EffectMask を設定し
SourceMask
プロパティに有効な値を設定します。
選択した多角形に対して処理を行いたい場合には、SelectMode プロパティに EffectPolygon を設定し
Point プロパティに有効な値を設定します。
選択した円形に対して処理を行いたい場合には、SelectMode プロパティに EffectEllipse を設定し
Rect プロパティに有効な値を設定します。
SelectModeプロパティが EffectPolygon
と EffectEllipse の場合には Inside
プロパティに値の設定が必要です。
成功した場合、処理後のイメージは DestinationAsImageKitImage
プロパティが True の場合は LayerNumber プロパティの示すプロパティ(Image もしくは Layer(LayerNumber).Image)に、False
の場合は DestinationImage
プロパティに設定されます。
参照
ImageKit.Effect メンバ | Newtone.ImageKit.WPF.ImageKit