Silverlight - как реализовать карту - PullRequest
1 голос
/ 16 апреля 2010

Как бы вы реализовали карту такого типа в Silverlight? Карта будет интерактивной, а станции будут активными.

http://www.afn.org/~alplatt/tube.html

Вы бы нарисовали это в смеси? Импортировать векторное изображение? Я думаю, что выбор очень важен, потому что алгоритмы нахождения пути должны иметь возможность рассчитывать расстояния / тарифы между станциями (основываясь на их XY-расположении, предположительно, еще не определились).

Просто ищу разные идеи и мнения.

Спасибо

1 Ответ

1 голос
/ 16 апреля 2010

Я бы выбрал векторный подход. Захватите координаты x, y станций и контрольных точек для путей рельсовых линий в статические данные в коде. Создайте легкие объекты (не UserControls) для каждого сегмента железнодорожной линии и станции, и пусть они визуализируют себя и обрабатывают свои собственные щелчки мыши. Определите железнодорожную линию как совокупность железнодорожных сегментов и станций.

Для поиска пути последнее, что вам нужно, это использовать пиксели, чтобы выяснить, как добраться от А до Б. Вам нужно только дерево связанных узлов, представляющих соединения между станциями, а затем использовать обход дерева, чтобы найти все пути между двумя станций. Для ограниченного количества станций и маршрутов вы также можете предварительно рассчитать действительные комбинации станций и пути, как в таблицах расписаний поездов.

...