Рисование карты XAML в WPF

Я работаю над модулем, который отображает файлы DWG в WPF. Мне удалось использовать библиотеку CadLib, но она работает очень медленно, и я хочу сделать ее быстрее. Я обнаружил, что если я преобразую этот файл DWG в формат SVG, а затем распечатаю его на моем XPS-принтере и переименую файл в ZIP, я могу получить файл .page, который в основном представляет собой файл XAML, отображающий исходный объект SVG в XAML.

Я хочу отобразить этот код XAML в пользовательском элементе управления и иметь возможность панорамировать/масштабировать его. Я попытался поместить этот код XAML в Canvas, и ему удалось там отобразиться, но теперь я застрял, пытаясь панорамировать/масштабировать нарисованную там фигуру. Кроме того, события мыши запускаются только тогда, когда вы щелкаете по самому рисунку, а не по холсту, на который пользователю будет сложно щелкнуть...

Любая помощь будет высоко ценится :)


person Jonathan Perry    schedule 09.08.2011    source источник


Ответы (1)


Вы можете попробовать создать вложенные холсты: тот, который содержит векторы и перемещается по запросу, тот, который фиксирован и служит окном просмотра. Не пробовал, но должно быть возможно...

person Sebastian Edelmeier    schedule 09.08.2011
comment
Спасибо за быстрый ответ, мне удалось добавить это в другой объект холста, и теперь это работает. Я также добавил возможности масштабирования и панорамирования. - person Jonathan Perry; 10.08.2011