Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Нарисовать линию


Автор: GF 28.11.2006, 12:15
Нужно сделать что-то вроде http://www.maps.yandex.ru/russia. Возник вопрос: как с помощью JavaScript реализовать прорисовку линии когда меряешь расстояния на карте (клацаешь на пиктограмму линеечки а потом клацаешь по карте). Причём данная тема работает в FF, но в IE не прорисовывается, а выводятся только квадратики в тех местах где кликнул. Короче, у кого какие соображения по нарисованию линии, у кого какие ссылки, идеи и соображения, пишите. Я просто даже не знаю как подступиться к вопросу.

Автор: Ashen 28.11.2006, 13:44
Динамически генерещамися DIV'ами размером в 1 пиксель  smile 

Шучу конечно, есть мысль что сие построено на чем-нить типа AJAX'а, а линии - просто генерещиеся на серваке GIF'ы и динамически подставляемые на экран с помощью DOM... 
Хотя сие есть только мои измышлизмы  smile 

Автор: SelenIT 28.11.2006, 15:27
Цитата(Ashen @  28.11.2006,  13:44 Найти цитируемый пост)
линии - просто генерещиеся на серваке GIF'ы

Делать им больше нечего. в наш-то век SVG и ей подобных радостей)

Автор: skyboy 28.11.2006, 15:56
SelenIT, а под IE SVG обрабатывается ужо?

Автор: GF 28.11.2006, 16:02
вы посмотрите на яндекс! Слишком уж там всё быстро для AJAX, да и SVG плагин не надо загружать. А ещё там (если через FF зайти) можно двигать красные пимпочки, и линии соединяющие пимпочки тоже двигаются!!!! У кого ещё какие идеи по поводу линии?

Автор: SelenIT 28.11.2006, 17:07
GF, в FF и (по-моему) Opera 9 поддержка SVG встроенная, без плагина.

Автор: saymanski 28.11.2006, 19:01
В ИЕ это можно сделать с помощью элемента div/hr и фильтра Matrix, в остальных с помощью элемента canvas (Fx 1.5+, Opera 8+).
Как это делается на Яндекс.Картах можно посмотреть здесь: http://maps.yandex.ru/js/distance_line.js (есть баг, из-за которого функция не работает в некторых версия ИЕ (некорректно определяется переменная IE_FILTERS: см. в http://maps.yandex.ru/js/vars.js)).

Возможно вас так же заинтерисует: http://www.openjacob.org/draw2d.html

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)