ID2D1Geometry::Wide 方法

按指定的笔划扩大几何图形,并将结果写入 ID2D1SimplifiedGeometrySink

重载列表

方法 说明
wide (FLOAT,ID2D1StrokeStyle*,D2D1_MATRIX_3X2_F*,ID2D1SimplifiedGeometrySink*) 按指定的笔划扩大几何图形,并将结果写入 ID2D1SimplifiedGeometrySink 后,由指定的矩阵转换,并使用默认容差平展。
Wide (FLOAT,ID2D1StrokeStyle*,D2D1_MATRIX_3X2_F&,ID2D1SimplifiedGeometrySink*) 按指定的笔划扩大几何图形,并将结果写入 ID2D1SimplifiedGeometrySink 后,由指定的矩阵转换,并使用默认容差平展。
Wide (FLOAT,ID2D1StrokeStyle*,D2D1_MATRIX_3X2_F*,FLOAT,ID2D1SimplifiedGeometrySink*) 按指定的笔划扩大几何图形,并将结果写入 ID2D1SimplifiedGeometrySink 后,由指定的矩阵转换,并使用指定的容差平展。
wide (FLOAT,ID2D1StrokeStyle*,D2D1_MATRIX_3X2_F&,FLOAT,ID2D1SimplifiedGeometrySink*) 按指定的笔划扩大几何图形,并将结果写入 ID2D1SimplifiedGeometrySink 后,由指定的矩阵转换,并使用指定的容差平展。

示例

下面的代码示例演示如何使用 Wide 通过指定的笔划扩大几何图形,然后将结果写入 ID2D1SimplifiedGeometrySink 对象。

 ID2D1GeometrySink *pGeometrySink = NULL;
 hr = pPathGeometry->Open(&pGeometrySink);
 if (SUCCEEDED(hr))
 {
     hr = pGeometry->Widen(
             strokeWidth,
             pIStrokeStyle,
             pWorldTransform,
             pGeometrySink
             );

     if (SUCCEEDED(hr))
     {
         hr = pGeometrySink->Close();
         if (SUCCEEDED(hr))
         {
             ID2D1Mesh *pMesh = NULL;
             hr = m_pRT->CreateMesh(&pMesh);
             if (SUCCEEDED(hr))
             {
                 ID2D1TessellationSink *pSink = NULL;
                 hr = pMesh->Open(&pSink);
                 if (SUCCEEDED(hr))
                 {
                     hr = pPathGeometry->Tessellate(
                             NULL, // world transform (already handled in Widen)
                             pSink
                             );
                     if (SUCCEEDED(hr))
                     {
                         hr = pSink->Close();
                         if (SUCCEEDED(hr))
                         {
                             SafeReplace(&m_pStrokeMesh, pMesh);
                         }
                     }
                     pSink->Release();
                 }
                 pMesh->Release();
             }
         }
     }
     pGeometrySink->Release();
 }
 pPathGeometry->Release();

要求

要求

D2d1.lib
DLL
D2d1.dll

另请参阅

ID2D1Geometry