次の方法で共有


D2D1_MATRIX_3X2_F

3 対 2 の行列を表します。

typedef D2D_MATRIX_3X2_F D2D1_MATRIX_3X2_F;

注釈

D2D1_MATRIX_3X2 は、 D2D_MATRIX_3X2_F 構造体の新しい名前です。 マトリックスによって提供されるフィールドの一覧については、「 D2D_MATRIX_3X2_F」を参照してください。

一般的なマトリックス操作を簡略化するために、Direct2D には、D2D1_MATRIX_3X2構造体から派生した D2D1::Matrix3x2F クラスが用意されています。 Matrix3x2F クラスには、変換マトリックスやスキュー マトリックスの作成など、一般的なタスクを実行するための一連のヘルパー メソッドが用意されています。

次の例では 、D2D1::Matrix3x2F::Rotation メソッドを使用して、四角形の中心を中心に 45 度時計回りに回転し、マトリックスをレンダー ターゲットの SetTransform メソッドに渡す回転行列を作成します (m_pRenderTarget)。

次の図は、前の回転変換を正方形に適用した場合の効果を示しています。 元の四角形は点線で、回転した四角形は実線の輪郭です。

元の四角形の中心を中心に時計回りに 45 度回転した四角形の図

    // Create a rectangle.
    D2D1_RECT_F rectangle = D2D1::Rect(438.0f, 301.5f, 498.0f, 361.5f);

    // Draw the rectangle.
    m_pRenderTarget->DrawRectangle(
        rectangle,
        m_pOriginalShapeBrush,
        1.0f,
        m_pStrokeStyleDash
        );

    // Apply the rotation transform to the render target.
    m_pRenderTarget->SetTransform(
        D2D1::Matrix3x2F::Rotation(
            45.0f,
            D2D1::Point2F(468.0f, 331.5f))
        );

    // Fill the rectangle.
    m_pRenderTarget->FillRectangle(rectangle, m_pFillBrush);

    // Draw the transformed rectangle.
    m_pRenderTarget->DrawRectangle(rectangle, m_pTransformedShapeBrush);

この例では、コードは省略されています。 変換の詳細については「変換の概要」を参照してください。

要件

要件
サポートされている最小のクライアント
Windows 7、Windows Vista SP2 と Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー
Windows Server 2008 R2、Windows Server 2008 SP2 および Windows Server 2008 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小の電話
Windows Phone 8.1 [Windows Phone Silverlight 8.1 アプリと Windows ランタイム アプリ]
Header
D2d1.h

関連項目

D2D1::Matrix3x2F

変換の概要

オブジェクトを回転させる方法

オブジェクトをスケーリングする方法

オブジェクトを傾斜させる方法

オブジェクトを翻訳する方法

D2D_MATRIX_3X2_F