Полигоны - набор отрезков, следовательно к ним применим описанный мной алгоритм. Ну а куда их пихать в <path/> или <polygon/> или <line/> - не суесвенно.
Кроме того я не знаю хранятся данные у тебя уже в виде SVG и их надо доставать или SVG только взиализирует их. Из всех вариантов <path/> самый неудобный для парсинга.
Так как всё сводится к проверке пересекается ли отрезок от точки до центра с хотя бы одной из стен, то стены в виде набора отрезков предпочтительней в плане реализации этой самой проверки.
Ну а оптимизации по скорости стоит отложить на потом, они актуальны только когда карта значительно превышает область видимости.
|