画像オブジェクトからマスク領域への複写 (ビット指定)

Namespace: FVIL.Data
Assembly: FVILbasic (in FVILbasic.dll) Version: 3.1.0.0 (3.1.0.17)

Syntax

C#
public virtual void MaskCopyFrom(
	CFviImage image,
	MaskBit maskbit
)
Visual Basic
Public Overridable Sub MaskCopyFrom ( 
	image As CFviImage,
	maskbit As MaskBit
)

Parameters

image
Type: FVIL.Data..::..CFviImage
複写元画像
maskbit
Type: FVIL.Data.Pattern..::..MaskBit
対象マスクの指示

Remarks

複写元の画像オブジェクトの画素値が 0 か否かによって、 このインスタンスのマスク領域のビット(マスク情報)を OFF/ON します。 どのビット(マスク情報)を対象とするかは、引数 maskbit で指示します。

maskbit:
項目説明
MASK0x01マスク部分
ESSENTIAL0x02不可欠部分
ALL0x03すべての有効なビット

処理範囲を考慮しますので、予め Window プロパティにより処理範囲の設定を行ってください。
複写元に指定できる画像オブジェクトの条件は以下の通りです。

  • 複写先の処理範囲サイズと一致している事
    ※但し、複写先の処理範囲の縦と横のサイズがいずれも大きい場合は許容されます。
  • チャネル数が 1 である事
  • 画像種別が以下の何れかである事

処理に失敗した場合は例外を発行します。 例外の原因と発生位置を特定するには、発行された例外クラスの ErrorCode メンバと Function メンバを参照してください。

エラーコード:

ErrorCode メンバ内容
23FVIL.ErrorCode.NOT_ALLOCATEDマスク領域が確保されていません。
12FVIL.ErrorCode.INVALID_OBJECT引数に指定された画像オブジェクトの領域が確保されていません。
16FVIL.ErrorCode.INVALID_IMAGETYPE引数に指定された画像オブジェクトの画像種別が処理対象外です。
18FVIL.ErrorCode.NOMATCH_CHANNEL引数に指定された画像オブジェクトのチャネル数が処理対象外です。
19FVIL.ErrorCode.INVALID_PROCAREA処理範囲のサイズが一致していません。

Exceptions

ExceptionCondition
FVIL..::..CFviExceptionこの例外の原因については、上記のエラーコード表をご参照ください。

See Also