RoundedRect function
Creates a D2D1_ROUNDED_RECT structure.
Syntax
D2D1_ROUNDED_RECT RoundedRect(
_In_ const D2D1_RECT_F &rect,
FLOAT radiusX,
FLOAT radiusY
);
Parameters
- rect [in, ref]
-
Type: const D2D1_RECT_F
The size and position of the rectangle.
- radiusX
-
Type: FLOAT
The x-radius for the quarter ellipse that is drawn to replace every corner of the rectangle.
- radiusY
-
Type: FLOAT
The y-radius for the quarter ellipse that is drawn to replace every corner of the rectangle.
Return value
Type: D2D1_ROUNDED_RECT
The new rounded rectangle.
Examples
The following example uses the DrawRoundedRectangle and FillRoundedRectangle methods to outline and fill a rounded rectangle. This example produces the output shown in the following illustration.

// Called whenever the application needs to display the client // window. HRESULT DrawAndFillRoundedRectangleExample::OnRender() { HRESULT hr; // Create the render target and brushes if they // don't already exists. hr = CreateDeviceResources(); if (SUCCEEDED(hr)) { // Retrieve the size of the render target. D2D1_SIZE_F renderTargetSize = m_pRenderTarget->GetSize(); m_pRenderTarget->BeginDraw(); m_pRenderTarget->SetTransform(D2D1::Matrix3x2F::Identity()); m_pRenderTarget->Clear(D2D1::ColorF(D2D1::ColorF::White)); // Paint a grid background. m_pRenderTarget->FillRectangle( D2D1::RectF(0.0f, 0.0f, renderTargetSize.width, renderTargetSize.height), m_pGridPatternBitmapBrush ); // Define a rounded rectangle. D2D1_ROUNDED_RECT roundedRect = D2D1::RoundedRect( D2D1::RectF(20.f, 20.f, 150.f, 100.f), 10.f, 10.f ); // Draw the rectangle. m_pRenderTarget->DrawRoundedRectangle(roundedRect, m_pBlackBrush, 10.f); // Apply a translation transform. m_pRenderTarget->SetTransform(D2D1::Matrix3x2F::Translation(200.f, 0.f)); // Draw the rounded rectangle again, this time with a dashed stroke. m_pRenderTarget->DrawRoundedRectangle(roundedRect, m_pBlackBrush, 10.f, m_pStrokeStyle); // Apply another translation transform. m_pRenderTarget->SetTransform(D2D1::Matrix3x2F::Translation(0.f, 150.f)); // Draw, then fill the rounded rectangle. m_pRenderTarget->DrawRoundedRectangle(roundedRect, m_pBlackBrush, 10.f, m_pStrokeStyle); m_pRenderTarget->FillRoundedRectangle(roundedRect, m_pSilverBrush); // Apply another translation transform. m_pRenderTarget->SetTransform(D2D1::Matrix3x2F::Translation(200.f, 150.f)); // Fill, then draw the rounded rectangle. m_pRenderTarget->FillRoundedRectangle(roundedRect, m_pSilverBrush); m_pRenderTarget->DrawRoundedRectangle(roundedRect, m_pBlackBrush, 10.f, m_pStrokeStyle); hr = m_pRenderTarget->EndDraw(); if (hr == D2DERR_RECREATE_TARGET) { hr = S_OK; DiscardDeviceResources(); } } return hr; }
Requirements
|
Minimum supported client |
Windows 7, Windows Vista with SP2 and Platform Update for Windows Vista [desktop apps | Windows Store apps] |
|---|---|
|
Minimum supported server |
Windows Server 2008 R2, Windows Server 2008 with SP2 and Platform Update for Windows Server 2008 [desktop apps | Windows Store apps] |
|
Minimum supported phone |
Windows Phone 8.1 [Windows Phone Silverlight 8.1 and Windows Runtime apps] |
|
Header |
|
|
Library |
|
|
DLL |
|