개체를 번역하는 방법
2차원 개체를 변환하려면 x축, y축 또는 둘 다를 따라 개체를 이동하는 것입니다. 다음 두 가지 방법 중 하나를 호출하여 번역 변환을 만들 수 있습니다.
- Translation(D2D1_SIZE_F 크기): x축과 y축을 따라 변환할 거리를 정의하는 정렬된 쌍을 사용합니다.
- Translation(float x, float y): x축을 따라 변환하는 거리와 y축을 따라 변환할 거리를 사용합니다.
다음 코드는 x축을 따라 제곱 20단원을 오른쪽으로, y축을 따라 아래쪽으로 10단원을 이동하는 변환 변환 매트릭스를 만듭니다.
// 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);
다음 그림에서는 원래 사각형이 점선 윤곽선이고 번역된 사각형이 단색 윤곽선인 사각형에 변환 변환을 적용하는 효과를 보여 줍니다.
관련 항목