アタッチ (単一チャネル指定)
Namespace: FVIL.DataAssembly: FVILbasic (in FVILbasic.dll) Version: 3.1.0.0 (3.1.0.17)
Syntax
C# |
---|
public virtual void Attach( CFviImage image, int channel ) |
Visual Basic |
---|
Public Overridable Sub Attach ( image As CFviImage, channel As Integer ) |
Parameters
- image
- Type: FVIL.Data..::..CFviImage
対象の画像オブジェクト
- channel
- Type: System..::..Int32
対象のチャネル指標 [0~(image.Channel-1)]
Remarks
指定された画像オブジェクトの指定チャネルにアタッチします。
処理に失敗した場合は例外を発行します。 例外の原因と発生位置を特定するには、発行された例外クラスの ErrorCode メンバと Function メンバを参照してください。
エラーコード:
値 | ErrorCode メンバ | 内容 |
---|---|---|
11 | FVIL.ErrorCode.INVALID_PARAMETER | 引数に指定された値が不正です。 |
1 | FVIL.ErrorCode.NOT_ALLOCATED | 画像アドレスに IntPtr.Zero が指定されています。 |
17 | FVIL.ErrorCode.INVALID_IMAGESIZE | 画像サイズに 0 が指定されています。 |
16 | FVIL.ErrorCode.INVALID_IMAGETYPE | 画像種別が無効です。 |
18 | FVIL.ErrorCode.INVALID_CHANNEL | チャネル数が無効です。 |
Examples
ソースコード:
C# | Copy |
---|---|
using System; using System.Collections.Generic; using System.Text; using fvalgcli; // FvPluginXXXX attribute requires fvalgcli namespace User.SampleCode.Data { public partial class Image { [FvPluginExecute] public void Attach2() { try { using (var src = new FVIL.Data.CFviImage()) using (var act = new FVIL.Data.CFviImage()) using (var dst = new FVIL.Data.CFviImage()) { // (1) 画像生成. src.Load(Defs.TestImageDir + "/floppy_RGB.jpg"); var channels = src.Channel; for (int ch = 0; ch < channels; ch++) { // (2) 画像オブジェクトへのアタッチ. act.Attach(src, ch); // -) 何らかの処理. { act.Window = new System.Drawing.Rectangle(20, 30, 200, 120); var sobel = new FVIL.Filter.CFviSobelFilter(act, dst); sobel.CalcMode = FVIL.Filter.SobelCalcMode.SQRTMode; sobel.BorderMode = FVIL.BorderMode.Continuous; sobel.BorderValue = 0.0; sobel.Validate(); sobel.Execute(); } // -) 確認用. act.Save(Defs.ResultDir + string.Format("/Image.Attach2-act-{0}.png", ch)); dst.Save(Defs.ResultDir + string.Format("/Image.Attach2-dst-{0}.png", ch)); } } } catch (System.Exception ex) { Console.WriteLine(ex.Message); Console.WriteLine(ex.StackTrace); } } } } |
Exceptions
Exception | Condition |
---|---|
FVIL..::..CFviException | この例外の原因については、上記のエラーコード表をご参照ください。 |