Win32 API 日本語リファレンス
ホームGraphics.Direct2D › D2D1_CONVOLVEMATRIX_PROP

D2D1_CONVOLVEMATRIX_PROP

列挙型
基底型i4

メンバー 11

名前10進16進説明
D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH00x0

カーネル内の 1 単位のサイズです。単位は (DIP/カーネル単位) で、カーネル単位とは畳み込みカーネル内の要素のサイズを指します。 1 (DIP/カーネル単位) は、96 DPI の画像における 1 ピクセルに相当します。

型は FLOAT です。

既定値は 1.0f です。

D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE10x1

エフェクトが画像を対応するカーネル単位長に合わせて拡大縮小する際に使用する補間モードです。品質と速度の異なる 6 つのスケールモードがあります。

型は D2D1_CONVOLVEMATRIX_SCALE_MODE です。

既定値は D2D1_CONVOLVEMATRIX_SCALE_MODE_LINEAR です。

D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X20x2

カーネル行列の幅です。単位はカーネル単位で指定します。

型は UINT32 です。

既定値は 3 です。

D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y30x3

カーネル行列の高さです。単位はカーネル単位で指定します。

型は UINT32 です。

既定値は 3 です。

D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX40x4

画像に適用するカーネル行列です。カーネルの各要素に範囲の制限はなく、float として指定します。

FLOAT[] の最初の KernelSizeX 個の数値がカーネルの 1 行目に対応します。 次の KernelSizeX 個の数値が 2 行目に対応し、以降 KernelSizeY 行まで同様です。

型は FLOAT[] です。

既定値は {0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f} です。

D2D1_CONVOLVEMATRIX_PROP_DIVISOR50x5

カーネル行列がピクセルに適用された後、その結果はこの値で除算されます。

0 は float のイプシロン値として扱われます。

型は FLOAT です。

既定値は 1.0f です。

D2D1_CONVOLVEMATRIX_PROP_BIAS60x6

エフェクトはカーネル行列と除数を適用し、その結果にバイアスを加算します。バイアスには範囲の制限がなく、単位もありません。

型は FLOAT です。

既定値は 0.0f です。

D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET70x7

畳み込みカーネルを、出力ピクセルを中心とする位置から、指定した左右および上下の位置へずらします。オフセットはカーネル単位で定義します。

オフセットとカーネルサイズの組み合わせによっては、畳み込みカーネルのサンプルがピクセル画像の中心に一致しないことがあります。カーネルサンプルのピクセル値は、バイリニア補間によって計算されます。

型は D2D1_VECTOR_2F です。

既定値は {0.0f, 0.0f} です。

D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA80x8

畳み込みカーネルをアルファチャネルに適用するか、カラーチャネルのみに適用するかを指定します。

TRUE を設定すると、畳み込みカーネルはカラーチャネルのみに適用されます。

FALSE を設定すると、畳み込みカーネルはすべてのチャネルに適用されます。

型は BOOL です。

既定値は FALSE です。

D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE90x9

画像の境界を計算する際に使用するモード (ソフトまたはハード) です。

型は D2D1_BORDER_MODE です。

既定値は D2D1_BORDER_MODE_SOFT です。

D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT100xA

エフェクトがグラフ内の次のエフェクトに値を渡す前に、カラー値を 0 から 1 の範囲にクランプするかどうかを指定します。エフェクトはアルファを事前乗算する前に値をクランプします。

TRUE を設定すると、エフェクトは値をクランプします。FALSE を設定すると、エフェクトはカラー値をクランプしませんが、 他のエフェクトや出力サーフェスの精度が十分でない場合は、それらが値をクランプすることがあります。

型は BOOL です。

既定値は FALSE です。

公式ドキュメント

Convolve matrix エフェクトのプロパティの識別子です。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum D2D1_CONVOLVEMATRIX_PROP : int {
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH = 0,
    D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE = 1,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X = 2,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y = 3,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX = 4,
    D2D1_CONVOLVEMATRIX_PROP_DIVISOR = 5,
    D2D1_CONVOLVEMATRIX_PROP_BIAS = 6,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET = 7,
    D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA = 8,
    D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE = 9,
    D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT = 10
} D2D1_CONVOLVEMATRIX_PROP;
public enum D2D1_CONVOLVEMATRIX_PROP : int
{
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH = 0,
    D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE = 1,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X = 2,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y = 3,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX = 4,
    D2D1_CONVOLVEMATRIX_PROP_DIVISOR = 5,
    D2D1_CONVOLVEMATRIX_PROP_BIAS = 6,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET = 7,
    D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA = 8,
    D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE = 9,
    D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT = 10,
}
Public Enum D2D1_CONVOLVEMATRIX_PROP As Integer
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH = 0
    D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE = 1
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X = 2
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y = 3
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX = 4
    D2D1_CONVOLVEMATRIX_PROP_DIVISOR = 5
    D2D1_CONVOLVEMATRIX_PROP_BIAS = 6
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET = 7
    D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA = 8
    D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE = 9
    D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT = 10
End Enum
import enum

class D2D1_CONVOLVEMATRIX_PROP(enum.IntEnum):
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH = 0
    D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE = 1
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X = 2
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y = 3
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX = 4
    D2D1_CONVOLVEMATRIX_PROP_DIVISOR = 5
    D2D1_CONVOLVEMATRIX_PROP_BIAS = 6
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET = 7
    D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA = 8
    D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE = 9
    D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT = 10
// D2D1_CONVOLVEMATRIX_PROP
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH: i32 = 0;
pub const D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE: i32 = 1;
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X: i32 = 2;
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y: i32 = 3;
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX: i32 = 4;
pub const D2D1_CONVOLVEMATRIX_PROP_DIVISOR: i32 = 5;
pub const D2D1_CONVOLVEMATRIX_PROP_BIAS: i32 = 6;
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET: i32 = 7;
pub const D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA: i32 = 8;
pub const D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE: i32 = 9;
pub const D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT: i32 = 10;
// D2D1_CONVOLVEMATRIX_PROP
const (
	D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH int32 = 0
	D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE int32 = 1
	D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X int32 = 2
	D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y int32 = 3
	D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX int32 = 4
	D2D1_CONVOLVEMATRIX_PROP_DIVISOR int32 = 5
	D2D1_CONVOLVEMATRIX_PROP_BIAS int32 = 6
	D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET int32 = 7
	D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA int32 = 8
	D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE int32 = 9
	D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT int32 = 10
)
const
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH = 0;
  D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE = 1;
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X = 2;
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y = 3;
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX = 4;
  D2D1_CONVOLVEMATRIX_PROP_DIVISOR = 5;
  D2D1_CONVOLVEMATRIX_PROP_BIAS = 6;
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET = 7;
  D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA = 8;
  D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE = 9;
  D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT = 10;
// D2D1_CONVOLVEMATRIX_PROP
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH: i32 = 0;
pub const D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE: i32 = 1;
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X: i32 = 2;
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y: i32 = 3;
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX: i32 = 4;
pub const D2D1_CONVOLVEMATRIX_PROP_DIVISOR: i32 = 5;
pub const D2D1_CONVOLVEMATRIX_PROP_BIAS: i32 = 6;
pub const D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET: i32 = 7;
pub const D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA: i32 = 8;
pub const D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE: i32 = 9;
pub const D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT: i32 = 10;
const
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH* = 0
  D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE* = 1
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X* = 2
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y* = 3
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX* = 4
  D2D1_CONVOLVEMATRIX_PROP_DIVISOR* = 5
  D2D1_CONVOLVEMATRIX_PROP_BIAS* = 6
  D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET* = 7
  D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA* = 8
  D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE* = 9
  D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT* = 10
enum D2D1_CONVOLVEMATRIX_PROP : int {
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH = 0,
    D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE = 1,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X = 2,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y = 3,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX = 4,
    D2D1_CONVOLVEMATRIX_PROP_DIVISOR = 5,
    D2D1_CONVOLVEMATRIX_PROP_BIAS = 6,
    D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET = 7,
    D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA = 8,
    D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE = 9,
    D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT = 10,
}
#define global D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH 0x0
#define global D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE         0x1
#define global D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X      0x2
#define global D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y      0x3
#define global D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX      0x4
#define global D2D1_CONVOLVEMATRIX_PROP_DIVISOR            0x5
#define global D2D1_CONVOLVEMATRIX_PROP_BIAS               0x6
#define global D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET      0x7
#define global D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA     0x8
#define global D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE        0x9
#define global D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT       0xA