Поделиться через


Интерфейс ID2D1Mesh (d2d1.h)

Представляет набор вершин, образующих список треугольников.

Наследование

Интерфейс ID2D1Mesh наследуется от ID2D1Resource. ID2D1Mesh также имеет следующие типы элементов:

Методы

Интерфейс ID2D1Mesh содержит следующие методы.

 
ID2D1Mesh::Open

Открывает сетку для заполнения.

Комментарии

Создание объектов ID2D1Mesh

Чтобы создать сетку, вызовите метод ID2D1RenderTarget::CreateMesh в целевом объекте отрисовки, с которым будет использоваться сетка. Сетку можно использовать только с целевым объектом отрисовки, который ее создал, и целевыми объектами, совместимыми с целевыми объектами.

Сетка — это ресурс, зависящий от устройства. Приложение должно создавать сетки после инициализации целевого объекта отрисовки, с которым будут использоваться сетки, и повторно создавать сетки всякий раз, когда требуется повторно создать целевой объект отрисовки. (Дополнительные сведения о ресурсах см. в разделе Общие сведения о ресурсах.)

Примеры

В следующем примере кода показано, как использовать ID2D1Mesh для представления набора вершин, образующих список треугольников.

 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();

Требования

Требование Значение
Минимальная версия клиента Windows 7, Windows Vista с пакетом обновления 2 (SP2) и обновлением платформы для Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header d2d1.h

См. также раздел

ID2D1Resource