Расширенный поиск  

Новости:

Автор Тема: Ровные домики  (Прочитано 775 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Diman

  • Житель
  • ****
  • Оффлайн Оффлайн
  • Сообщений: 439
  • ОЗТ: 50486
Ровные домики
« : Декабрь 19, 2009, 22:11:23 »

Вот набрел на навителовском форуме на маленькую программку, которая из кривых полигонов делает все полигоны одинаковыми по любому образцу (применение возможно для редактирования частного сектора). Она была там немного не удобна и вот после ее переделки участником Stud стала более пригодна.
Результат работы программы смотрим на скрине.

Значение "Data 0=" берем в свойствах полигона-образца на вкладке "Источник"
В папке с программой должен лежать файл in.mp (исходник с кривыми домами), после применения этой программы появится файл out.mp. Затем ручками расставляем уже по гуглу ровные домики.


File: doma_v1.02.rar
« Последнее редактирование: Декабрь 19, 2009, 22:12:44 от dr »
Записан
 

SM

  • Administrator
  • Легенда
  • *****
  • Спасибо: 2 раз(а)
  • Оффлайн Оффлайн
  • Сообщений: 2.019
  • ОЗТ: 109077
  • г. Томск
Ровные домики
« Ответ #1 : Декабрь 20, 2009, 00:06:17 »

На рисунке "ДО" домики кривые не потому что рисовал их Фреди Крюгер или другой придурок лагерный а по совершенно объективным причинам. Изначально, при первом создании карты все домики достаточно прямы, потому что отрисовываются как правило при помощи инструмента "полигон: прямоугольник".

Кривыми они становятся потом, после многократного сохранения и открытия файла. Либо сразу же после генерализации. Потому что координаты углов полигона притводятся к узлам сетки. Наши карты нарисованы в 24 битности. Это, с одной стороны, позволяет существенно уменьшить объём файла карты и скорость её отрисовки на экране навигатора, но, с другой стороны, неизбежно приводит к искажениям прямых углов домиков.

Такое решение - определённый компромисс между красотой и скоростью работы навигатора.

Следовательно, воспользовавшись чудодейственной программой или исправив всё вручную, мы неизбежно придём к первоначальному варианту после первой же генерализации. Или после непродолжительного времени редактирования без привязки к сетке.

Периодически на форуме всплывает вопрос о переходе в 26 битность. Но каждый раз это так ничем и не заканчивается. Буквально пару недель назад в закрытой части форума по инициативе новосибирцев обсуждение возобновилось. Вполне возможно, что в ближайшее время, кривость домиков перестанет бросаться в глаза.
Записан
Ericsson T10s -> Nokia 3310 -> Siemens A52 -> Siemens M55 -> Siemens M65 -> Nokia 6630 -> Nokia N73 -> Samsung Galaxy SII -> Samsung Galaxy Note II
Автомобильная навигация: HP iPAQ hx4700 -> Mitac Mio C725
 

dr.b

  • Легенда
  • ******
  • Спасибо: 1 раз(а)
  • Оффлайн Оффлайн
  • Сообщений: 1.937
  • ОЗТ: 209797
  • Кемерово
Ровные домики
« Ответ #2 : Декабрь 20, 2009, 01:25:52 »

Генерализация - это удаление "лишних", с точки зрения программы точек из полигонов и полилиний. Не при делах... Вся неприятность от приведения к сетке, особенно в сочетании со сменой битности. Ну да Бог с ней, с высокой терминологией. :)

Программка и в самом деле не плоха, хотя и сыровата. Работать нужно на копии, поскольку линии она тоже скрючивает по шаблону... :) И понимает только не меньше 6 знаков после запятой. То есть входящий файл предварительно должен быть переведен в 26 бит.
Больше всего интересно, что с помощью этой же программки можно преобразовать в домики POI "Дом" или "Label". Только сперва в текстовом редакторе нужно автозаменить [POI] на [POLYGON] и соответственном тип поменять.
Поэксперементировал с точками Новосибирска - получилось занимательно...
 

Полноценные домики, с полным адресным набором. Осталось только номер дома в поле Label= скопировать. Не смог найти, где встречал готовый для этого скрипт... :(

PS: Автор программы Doozer, г.Тверь.
Записан
 
 

Страница сгенерирована за 0.802 секунд. Запросов: 21.