Конвертировать XAML в форматы ShapeFile или SqlGeometry - PullRequest
1 голос
/ 25 июля 2011

У меня есть несколько диаграмм на основе XAML, которые состоят из путей, встроенных в объекты Canvas, например,

<Canvas x:Name="c1" Width="55.2533" Height="18.2933" Canvas.Left="194.606" Canvas.Top="194.131">
<Path x:Name="Path_5" Width="8.02666" Height="13.44" Canvas.Left="0" Canvas.Top="0.559998" Stretch="Fill" Fill="#FF000000" Data="......etc"/>
</Canvas>

Есть ли способ / инструмент для преобразования XAML в данные ShapeFile или SqlGeometry?Мне нужно конвертировать, так как я хочу отображать графику в стороннем элементе управления картой, который привязывается только к данным ShapeFiles или SqlGeometry.

Любая помощь будет принята.

1 Ответ

0 голосов
/ 26 июля 2011

Первое, что нужно сделать, это извлечь точки пути.Затем вам нужно создать свою форму.

ПОЛУЧЕНИЕ ТОЧКИ: этот ответ stackoverflow описывает изменение формы, но вы видите, как получить точки из траектории.

ФОРМА СТРОИТЕЛЬСТВА:

Не могу использовать SqlGeometry с Silverlight:

Я думаю, что часть ответа вы не можетеперейти к SqlGeometry прямо в серебряном свете.В вашем примере используется Microsoft.SqlServer.Types, который не был создан для среды выполнения Silverlight.Если бы вы собирались в службу, это не было бы проблемой, служба могла бы использовать полную платформу .NET, и вы можете использовать точки пути для построения хорошо известной текстовой строки, а затем перейти непосредственно к sqlGeometry, используя

SqlGeometry newGeom = SqlGeometry.STGeomFromText (wktstring, srid) .MakeValid ();

Лучше всего попытаться создать шейп-файл

Я боюсьЯ не могу помочь вам с созданием шейп-файла, извините.Я не использовал их много.

...