2013-07-31 1 views
0

내 Windows Store 애플리케이션에서 C++의 Direct2D를 사용하여 Path 지오메트리를 그립니다. 내 시나리오에서는 기본 Polyline 개체를 사용하는 대신 Direct2D를 사용하여 응용 프로그램의 성능을 향상시킵니다. 따라서 C# 응용 프로그램은 Direct2D 드로잉을위한 C++ 구성 요소와 통신합니다.Windows 스토어를 사용하여 윈도우 핸들을 사용하지 않고 경로 지오메트리를 렌더링하는 방법

ThisPathGeometry에 대한 Direct2D 드로잉에 대한 자세한 정보를 얻을 수있는 링크입니다. 그러나 그것은 창 핸들에 형상을 그립니다 만, Window 핸들을 사용하는 대신 일반 UIElement 렌더링과 같이 수행 할 도면이 필요합니다. 내 문제를 해결하기 위해 인터넷을 통해 사용할 수있는 샘플이 있습니까?

답변

0

SurfaceImageSource를 생성 한 팩토리를 사용해야합니다. 우리는 새로운 공장을 만들어서는 안됩니다. 따라서 우리는 다음과 같은 코드를 갖게 될 것입니다 :

ID2D1Factory *pFactory=nullptr; 
d2dDevice->GetFactory(&pFactory); 
ID2D1GeometrySink *pSink = NULL; 
ID2D1PathGeometry *pPathGeometry=NULL; 
// Create a path geometry. 
HRESULT hr = pFactory->CreatePathGeometry(&pPathGeometry); 

마지막으로 내 문제를 해결했습니다.

1

DirectX/XAML 통합을위한 샘플이 있으며 Direct2D 코드가 포함 된 VS 프로젝트 템플릿이 있을지도 모릅니다. 단일 프로젝트 natice C++ 응용 프로그램에서도 가능하지만 네이티브 WinRT 응용 프로그램에 C++/CX API를 제공하여 SwapChainPanel (최상의 옵션이지만 Windows 8.1 필요), SwapChainBackgroundPanel (좋은 옵션이지만 전체 화면 만 해당) 또는 SurfaceImageSource을 넣을 수 있습니다.

+0

SurfaceImageSource를 사용하여 PathGeometry를 그릴 수있는 샘플을 얻을 수 있습니까? –

+0

기본 또는 SharpDX? –

+0

네이티브. Mr.Filip. –

관련 문제