Сделал "вьюер" для осма

http://latlon.org/~shadowjack/navigator/navigator.tgz
http://latlon.org/~shadowjack/navigator/data.tgz
http://latlon.org/~shadowjack/navigator/screenshot.png
http://latlon.org/~shadowjack/navigator/navigator.py
http://latlon.org/~shadowjack/navigator/navigator_async.py - экспериментальная версия

Это - прототип векторного оффлайн-рендерера. Для ускорения разработки написан на перле.
Конвертер требует перловского sqlite с r-tree (USE=extensions в gentoo)
У кого конвертер не пашет - прилагаю тестовые данные (Москва + подмосковье).
Склепано за пару вечеров, так что строго не судите.
Зума нет, генерализации нет.
Прошу помочь с названием для проги.

Как пользоваться:
0) tar xzf navigator.tgz
cd navigator

  1. ./import.sh mosobl.db mosobl.osm - перефигачиваем в промежуточное представление (минут 10)
  2. ./maketiles.pl mosobl.db - делаем векторые “тайлы”. кладутся в data. настроена на москву с окресностями (пару минут)
    1 и 2 можно пропустить, взять готовый data.tgz и распаковать в папку с навигатором
    3)./navigator.pl - ура, ура! Стили лежат в style.pm все параметры правятся в коде 8)
    Отмазка: пре-альфа версия, может сжевать вашу любимую майку.

UPD: добавил ссылку на скриншот
UPD2: подписей тоже нет
UPD3: сделал питоновский вариант. перловский, скорее всего, развиваться не будет. нужно перекачать данные
UPD4: перезалил данные под большее количество стилей
UPD5: обновился navigator.py - теперь корректно обрабатывается порядок отрисовки (добавлен параметр в стиль), добавлено удаление дубликатов (не знаю, стало ли от этого быстрее)
UPD6: выложил новую версию конвертера, совместимую с текущей версией вьюера
UPD7: немного переработал код, теперь подложка размером больше экрана. Насколько больше, можно конролировать параметром border

Скриншоты может приложишь?

добавил ссылку на скриншот

Название:
no_zoom_no_generalisation_vector_offline_render_prototype.pl :slight_smile:

OpenOSMViewer
OffLineOSMViewer
OSMVid

Хочу название “на вырост”.
Может, до навигатора дорастет 8)

Раз подписей нет, то Susanin :slight_smile:

а что, ништяк название

Поворота нет. Его дополнительным аффинным преобразованием предполагается делать?

shadowjack, название некоторым образом завязано на будущий функционал – что будет делать эта твоя программа В ИТОГЕ? Сам ты как видишь?
Под виндой не запустить это чудо инженерной мысли?..((

UPD: попробовал с готовыми данными – не находит некий Cairo.pm. Для меня это тёмный лес. Но в общем вот, под winxp не запускается)) а жаль.

UPD2:

это дело! Поищи по каким-нибудь географическим названиям, может какое зацепит. Исключая название этого “нового” вулкана)) а то больно непроизносимое. Попробуй… какое-нибудь несложное, но яркое и броское. Не особенно что бы прямые ассоциации вызывало… но всё равно яркое.
Просто я вспомнил аналогичный рендер Kosmos. И такие вот возникли мысли.

2asaw Повернуть-то не проблема. Нужно только определить набор “тайлов”, которые экран пересечет
2coolkaas пока что это полигон. будет скорее всего что-то типа навитагора. после пары перерождений 8)
на винде нужно вот это: http://gtk2-perl.sourceforge.net/win32/

shadowjack, http://www.dotomator.com/web20.html

Мне вот это надо? gimp.org/win32/ оно не открывается, почему-то…

Программа будет только под большие компы?

Не знаю - я под виндой не сижу. Похоже, действительно сдохло… попробуй это: http://www.lostmind.de/gtk2-perl/
Программа - прототип того, что будет под маленькие компы. Но там все будет переписано и на другом языке. В общем, то, что сейчас - это действующая модель.

OSMinog :slight_smile:

Реквест: код на питоне. :slight_smile:

Да, было бы классно.

код на питоне, как заказывали! обновил первый пост

Хе-хе.

Может, так оформлять?

Дополню:


self.style = [
None,
[undef, [6.0, [0,0,0]], [4.0, [0.8, 0.4, .3]]],    # motorway, trunk and primary
[undef, [4.5, [0,0,0]], [2.5, [0.8, 0.4, .3]]],    # links of them
[undef, [3.5, [0,0,0]], [2.5, [0.8, 0.4, .3]]],    # secondary
[undef, [3, [0,0,0]], [2.0, [0.75, 0.52, 0.4]]],   # residential
[undef, undef, [1.0, [0.75, 0.52, 0.41]]],         # service and unclassified?
[undef, [0, [0.6, 0.6, 0.6]], undef],              # building
[[1, [0.68, 0.9, 0.58]], undef, undef],            # forest, wood, park?
[undef, undef, [1, [0, 0, 0]]],                    # road, pedestrian?
[[0, [0.6, 0.6, 0.6]], undef, undef],              # industrial
[[0, [0, 0.52, 0.97]], undef, undef],              # water
[[0, [0.84, 0.76, 0.76]], undef, undef],           # residential landuse
[undef, [3.5, [0.4, 0.4, 1.0]], undef],            # waterway=river
[undef, [2, [0.4, 0.4, 1.0]], undef],              # waterway=stream
[[0, [0.72, 0.51, 0.32]], undef, undef],           # landuse=allotments
[[0, [1, 0.0, 0.0]], undef, undef]                 # неизвестный landuse (для того, чтобы было видно, что пропустил)
]