![]() |
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]() ![]() ![]() |
|
artellab |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 17.11.2007 Репутация: нет Всего: нет |
Так, ввод в тему…
Я делаю векторную карту для нашего города. Использую С++, GD. Все это дело на платформе FreeBSD. Обратился именно в форум PHP, т.к. думаю здесь наиболее быстрее получу ответ, да и проблемы переписать с php на с++ нету, функции GD для С++ и php почти не отличаются. Теперь к делу.. Ниже я опишу свои предположения, если есть более оптимальный путь, или уже имеются какие-либо готовые библиотеки, скрипты, дайте пожалуйста ссылочки.. (скриншоты сделаны с сайта maps.google.ru) 1) отрисовка жд полосы. (См. 1 картинку, отметка 2) При рисовании обычной пунктирной линии, получается чушь. Возможно нужно рисовать полигонами? 2) Отрисовка толстых линий с закруглением (См. 1 картинку, отметка 1, левый нижний угол). На конце линии, она закруглена. Я предполагаю так, что эти линии рисуются полигонами а в конце отрисовывается круг. Причем, сначала рисуется круг, потом окружность(цвета = цвету границы) потом рисуются полигоны с белой заливкой, а потом поверх всего, полигон без заливки цвета границ. 3) Подпись шрифтами. (См. 1 картинку, отметки 1 и 2 картинку, отметка 3) Итак, на втором рисунке, отметка 3, текст рисуется белым цветом, потом применяем к нему blur и поверх рисуем нужным цветом. (буду признателен если еще дадите ссылочку на реализацию blur'a на php, ну или С/С++) Судя по первому рисунку, дороги подписываются так: берется каждый символ и наклоняется под определенным углом. (да, и тут еще вопрос, как вычислить длину и ширину текста в пикселах, если используется ttf шрифт?) Более, после того как я вкл. отрисовку текста, генерация картинки на сервере увеличивается разв 7-8. (простой текст с заданным углом на прозрачном фоне) Это самая проблемная точка. А если добавить и bblur, то вобще незнаю что будет.. Я предполагаю, что время генерации картинки увеличивается из-за того, что система пытается каждый раз загрузить шрифт в буфер. Хоть он и весит немного, 100кб, но др. вариантов не приходит в голову... Картинки находятся в архиве.. Присоединённый файл ( Кол-во скачиваний: 4 ) ![]() |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Графика | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |