2013-02-02 4 views
1

WPF 이미지에 여러 마커를 표시해야합니다. 마커는 선, 원, 사각형 등이 될 수 있으며 수백 개가 될 수 있습니다.WPF 이미지에 여러 마커를 효율적으로 표시

이미지 소스와 마커 데이터는 모두 몇 초마다 업데이트됩니다. 마커는 이미지의 특정 픽셀과 관련이 있으며 이미지의 크기는 화면과 관련하여 절대적이어야합니다 (즉, 이미지를 움직이면 마커도 함께 움직여야합니다.하지만 확대 할 경우 마커는 이전과 같이 화면).

현재는 AdornerLayer을 사용하여 구현했습니다. 이 솔루션에는 몇 가지 문제점이 있지만 가장 중요한 것은 120 개의 마커가 있어도 UI가로드에서 제대로 작동하지 않는다는 것입니다.

저는 이것을 구현하는 가장 좋은 방법이 무엇인지 물어보고 싶습니까? Canvas에서

  • 상속하고 모든 추가 된 마커하지 무효화되어 있는지 확인하지만, 한 번

  • 에서 마커의 범위에 대한 이미지 변화를 보유하고 컨트롤을 만들기 : 저는 두 솔루션의 생각 그 OnDraw 내가 비슷한 문제를 가진 경험이있는 사람으로부터 어떤 포인터를 감사하겠습니다 모든 마커

을 그립니다.

답변

0

유스 케이스가 상당히 전문화되어 있으므로 전문적인 솔루션이 순서대로 표시됩니다. 귀하의 두 번째 옵션 - Image을 변형하여 OnRender 메서드를 재정의 해 봅니다.

+0

이미지에서 상속을 종료했습니다. 이미지 렌더링 방법을 정의하고 이미지의 OnRender에서 이러한 모든 렌더링 함수를 호출하는 마커 목록을 추가했습니다. 이제 수백 개의 표식을 지원합니다. – Dina