マトリックス関数
Windows GDI+では、約 600 個の関数で構成されるフラット API が公開されています。これは、Gdiplus.dllで実装され、Gdiplusflat.h で宣言されています。 GDI+ フラット API の関数は、約 40 個の C++ クラスのコレクションによってラップされます。 フラット API で関数を直接呼び出さないでください。 GDI+を呼び出す場合は常に、C++ ラッパーによって提供されるメソッドと関数を呼び出して呼び出す必要があります。 Microsoft 製品サポート サービスは、フラット API を直接呼び出すコードのサポートを提供しません。 これらのラッパー メソッドの使用方法の詳細については、「GDI+ Flat API」を参照してください。
次のフラット API 関数は 、Matrix C++ クラスによってラップされます。
マトリックス関数と対応するラッパー メソッド
フラット関数 | Wrapper メソッド | 説明 |
---|---|---|
GpStatus WINGDIPAPI GdipCreateMatrix(GpMatrix **matrix) |
Matrix::Matrix |
ID 行列を表す Matrix::Matrix オブジェクトを作成して初期化します。 |
GpStatus WINGDIPAPI GdipCreateMatrix2(REAL m11, REAL m12, REAL m21, REAL m22, REAL dx, REAL dy, GpMatrix **matrix) |
Matrix::Matrix | アフィン変換を定義する 6 つの数値に基づいて Matrix::Matrix オブジェクトを作成および初期化します。 |
GpStatus WINGDIPAPI GdipCreateMatrix3(GDIPCONST GpRectF *rect, GDIPCONST GpPointF *dstplg, GpMatrix **matrix) |
Matrix::Matrix | 四角形と点に基づいて Matrix::Matrix オブジェクトを作成します。 |
GpStatus WINGDIPAPI GdipCreateMatrix3I(GDIPCONST GpRect *rect, GDIPCONST GpPoint *dstplg, GpMatrix **matrix) |
Matrix::Matrix | 四角形と点に基づいて Matrix::Matrix オブジェクトを作成します。 |
GpStatus WINGDIPAPI GdipCloneMatrix(GpMatrix *matrix, GpMatrix **cloneMatrix) |
Matrix::Clone |
Matrix::Clone メソッドは、この Matrix オブジェクトのコピーである新しい Matrix オブジェクトを作成します。 |
GpStatus WINGDIPAPI GdipDeleteMatrix(GpMatrix *matrix) |
~Matrix() |
Matrix::Matrix オブジェクトによって使用されるリソースをクリーンアップします。 |
GpStatus WINGDIPAPI GdipSetMatrixElements(GpMatrix *matrix, REAL m11, REAL m12, REAL m21, REAL m22, REAL dx, REAL dy) |
Matrix::SetElements |
Matrix::SetElements メソッドは、このマトリックスの要素を設定します。 |
GpStatus WINGDIPAPI GdipMultiplyMatrix(GpMatrix *matrix, GpMatrix* matrix2, GpMatrixOrder order) |
Matrix::Multiply |
Matrix::Multiply メソッドは、この行列をそれ自体と別の行列の積で更新します。 |
GpStatus WINGDIPAPI GdipTranslateMatrix(GpMatrix *matrix, REAL offsetX, REAL offsetY, GpMatrixOrder order) |
Matrix::Translate |
Matrix::Translate メソッドは、この行列をそれ自体と翻訳行列の積で更新します。 |
GpStatus WINGDIPAPI GdipScaleMatrix(GpMatrix *matrix, REAL scaleX, REAL scaleY, GpMatrixOrder order) |
Matrix::Scale |
Matrix::Scale メソッドは、それ自体とスケーリング マトリックスの積でこのマトリックスを更新します。 |
GpStatus WINGDIPAPI GdipRotateMatrix(GpMatrix *matrix, REAL angle, GpMatrixOrder order) |
マトリックス::回転 |
Matrix::Rotate メソッドは、それ自体と回転行列の積でこの行列を更新します。 |
GpStatus WINGDIPAPI GdipShearMatrix(GpMatrix *matrix, REAL shearX, REAL shearY, GpMatrixOrder order) |
Matrix::Shear |
Matrix::Shear メソッドは、この行列をそれ自体とせん断行列の積で更新します。 |
GpStatus WINGDIPAPI GdipInvertMatrix(GpMatrix *matrix) |
Matrix::Invert |
この行列が反転可能な場合、 Matrix::Invert メソッドは、この行列の要素を逆の要素に置き換えます。 |
GpStatus WINGDIPAPI GdipTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts, INT count) |
Matrix::TransformPoints |
Matrix::TransformPoints メソッドは、配列内の各ポイントにこの行列を乗算します。 各ポイントは行マトリックスとして扱われます。 乗算は、左側に行行列、右側にこの行列を使用して実行されます。 |
GpStatus WINGDIPAPI GdipTransformMatrixPointsI(GpMatrix *matrix, GpPoint *pts, INT count) |
Matrix::TransformPoints |
Matrix::TransformPoints メソッドは、配列内の各ポイントにこの行列を乗算します。 各ポイントは行マトリックスとして扱われます。 乗算は、左側に行行列、右側にこの行列を使用して実行されます。 |
GpStatus WINGDIPAPI GdipVectorTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts, INT count) |
Matrix::TransformVectors |
Matrix::TransformVectors メソッドは、配列内の各ベクトルにこの行列を乗算します。 この行列の平行移動要素 (3 番目の行) は無視されます。 各ベクトルは行行列として扱われます。 乗算は、左側に行行列、右側にこの行列を使用して実行されます。 |
GpStatus WINGDIPAPI GdipVectorTransformMatrixPointsI(GpMatrix *matrix, GpPoint *pts, INT count) |
Matrix::TransformVectors |
Matrix::TransformVectors メソッドは、配列内の各ベクトルにこの行列を乗算します。 この行列の平行移動要素 (3 番目の行) は無視されます。 各ベクトルは行行列として扱われます。 乗算は、左側に行行列、右側にこの行列を使用して実行されます。 |
GpStatus WINGDIPAPI GdipGetMatrixElements(GDIPCONST GpMatrix *matrix, REAL *matrixOut) |
Matrix::GetElements |
Matrix::GetElements メソッドは、このマトリックスの要素を取得します。 要素は、m11、m12、m21、m22、m31、m32 の順序で配列に配置されます。mij は行 i、列 j の要素を表します。 |
GpStatus WINGDIPAPI GdipIsMatrixInvertible(GDIPCONST GpMatrix *matrix, BOOL *result) |
Matrix::IsInvertible |
Matrix::IsInvertible メソッドは、この行列が反転可能かどうかを決定します。 |
GpStatus WINGDIPAPI GdipIsMatrixIdentity(GDIPCONST GpMatrix *matrix, BOOL *result) |
Matrix::IsIdentity |
Matrix::IsIdentity メソッドは、この行列が ID 行列であるかどうかを決定します。 |
GpStatus WINGDIPAPI GdipIsMatrixEqual(GDIPCONST GpMatrix *matrix, GDIPCONST GpMatrix *matrix2, BOOL *result) |
Matrix::Equals |
Matrix::Equals メソッドは、この行列の要素が別の行列の要素と等しいかどうかを決定します。 |
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示