Cara Menerjemahkan Objek

Untuk menerjemahkan objek 2-D adalah memindahkan objek di sepanjang sumbu x, sumbu y, atau keduanya. Anda dapat memanggil salah satu dari dua metode berikut untuk membuat transformasi terjemahan.

Kode berikut membuat matriks transformasi terjemahan yang memindahkan 20 unit persegi ke kanan di sepanjang sumbu x dan 10 unit ke bawah di sepanjang sumbu y.

    // Create a rectangle.
    D2D1_RECT_F rectangle = D2D1::Rect(126.0f, 80.5f, 186.0f, 140.5f);

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

    // Apply the translation transform to the render target.
    m_pRenderTarget->SetTransform(D2D1::Matrix3x2F::Translation(20, 10));

    // Paint the interior of the rectangle.
    m_pRenderTarget->FillRectangle(rectangle, m_pFillBrush);

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

Ilustrasi berikut menunjukkan efek menerapkan transformasi terjemahan ke persegi, di mana persegi asli adalah kerangka putus-putus dan persegi yang diterjemahkan adalah kerangka yang solid.

ilustrasi persegi memindahkan 20 unit ke kanan sepanjang sumbu x dan 10 unit ke bawah di sepanjang sumbu y

Referensi Direct2D

Gambaran Umum Transformasi Direct2D