You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#426 2012-01-30 17:25:00

Dinamik
Member
Registered: 2010-08-12
Posts: 1,096

Re: Трёхмерные здания в Mapnik

fserges wrote:

Тег consists_of_parts=yes как-то не звучит. Нет привязки к зданию. Уж лучше building:parts:vertical=yes

Предложение: если рядом с этим куском есть другие, расположенные сбоку - пишем building:parts:vertical=yes, если рядом с этим куском есть другие, расположенные сверху или снизу - пишем building:parts:horizontal=yes. Так или иначе даём информацию, что building состоит из building:parts. Пояснение для запоминания: building:parts:vertical - значит, здание порезано по вертикали, building:parts:horizontal - здание порезано по горизонтали. В каких-то случаях может быть нарезка и по горизонтали, и по вертикали. Тег, позволяющий отличить нарезку по вертикали от иной, даст возможность работать тем рендерерам, которые понимают вертикальную нарезку, тег, позволяющий отличить нарезку по горизонтали от иной, даст возможность работать тем рендерерам, которые понимают горизонтальную нарезку. Т. к. эти теги дополнительные, то не будут мешать (их добавление ничего не меняет для того ПО, которое не умеет с таким работать).

Last edited by Dinamik (2012-01-30 17:29:08)

Offline

#427 2012-01-31 06:04:39

xande almeida
Member
From: Tver
Registered: 2010-04-28
Posts: 256

Re: Трёхмерные здания в Mapnik

Danidin9 wrote:

И, кстати, не только пересекаться, но и касаться. Может быть случай, что building:part соседнего дома, стоящего встык, приведёт к тому что здание не отрендерится. Будьте бдительны !

Есть такое sad

Offline

#428 2012-02-01 10:52:53

Danidin9
Member
From: Санкт-Петербург
Registered: 2011-01-31
Posts: 589

Re: Трёхмерные здания в Mapnik

fserges wrote:

Давайте же уже придуем хоть что-то работающее (с примерами) а то список домов сложной конфигурации у меня стал что-то очень большим smile Уж больно любят современные архитекторы что-то переменно-этажное ... ну и здания на мощном стилобате (1-й этаж магазин) весьма распространены всегда были.

Тег consists_of_parts=yes как-то не звучит. Нет привязки к зданию. Уж лучше building:parts:vertical=yes
Ну и помнить что не все рендереры знают о таком теге, т.е. building=yes вешать на что-то нейтральное.

Может попробовать на примерах (картинках)? А то чего-то в споре упустим?

Пожалуйста, схема, учитывающая последние изменения в мапниковском рендере: http://fotki.yandex.ru/users/danidin/vi … 85/?page=0 :3

Offline

#429 2012-02-01 11:36:40

dkiselev
Member
Registered: 2010-02-09
Posts: 3,364

Re: Трёхмерные здания в Mapnik

Хорошая картинка, надо бы ее в вику засунуть.


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#430 2012-02-01 12:05:26

Danidin9
Member
From: Санкт-Петербург
Registered: 2011-01-31
Posts: 589

Re: Трёхмерные здания в Mapnik

Тогда наверное надо и вариант на английском сделать. Только пусть сначала заинтересованные лица выскажутся, со всем ли они согласны.
Я лично, например, был за отдельный тег этажности для building:part, но в последнее время всё больше сомневаюсь. Слишком уж относительная грань между зданием и частью, особенно если учесть что де-факто используется схема 1 адрес=1 здание. Если бы здания считались по архитектурным параметрам, ясности было бы больше. А так ситуация описана в комментарии ко 2 зданию на рисунке.

Offline

#431 2012-02-01 12:16:01

Komяpa
Member
From: Minsk
Registered: 2009-04-14
Posts: 1,323
Website

Re: Трёхмерные здания в Mapnik

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

Ещё, если "под рендеринг", то я рекомендовал бы резать здания по горизонтали - тогда на них не будет видно стыков. Вертикальные стыки я с такой лёгкостью пока не придумал, как убрать :3


world processing is what we do.
[OSMF BY Team] [http://komzpa.net/] [jabber: komzpa@gmail.com] [mobile/SMS: +375257407159]

Offline

#432 2012-02-01 13:21:52

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,110

Re: Трёхмерные здания в Mapnik

Komяpa wrote:

в частности, о том, что будет, если два здания с разной этажностью в навигаторе пересекутся.

Я думаю ничего хорошего, особенно если включен режим полупрозрачных зданий с окнами. Это можно попробовать. Хотя, скорее всего, это не так важно, потому что поддежка "частей зданий" так или иначе требует (или может требовать) некоторых изменений .

Намного важнее, чтобы "части зданий для рендеринга" не путались со "зданиями" . Здания же, очевидно, пересекаться друг с другом не могут. Ни в 3д (что очевидно), ни даже в 2д, за исключением редчайшего случая, когда один дом нависает над другим.

Вроде бы предложенная схема (на картинке) этому условию удовлетворяет.

Ещё, если "под рендеринг", то я рекомендовал бы резать здания по горизонтали - тогда на них не будет видно стыков. Вертикальные стыки я с такой лёгкостью пока не придумал, как убрать :3

У меня ровно наоборот. С тех пор как у меня нет обводки на зданиях, они неплохо стыкуются как в плоском, так и в объемном режиме.

Last edited by Zkir (2012-02-01 14:40:36)


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#433 2012-02-01 13:55:50

Ilis
Member
From: Екатеринбург
Registered: 2009-05-24
Posts: 5,970

Re: Трёхмерные здания в Mapnik

Про рендеринг этажности скажите что-нибудь! Реально сделать горизонтальные линии по количеству этажей, распределённые в зависимости от высоты здания? Чтобы на стоящих рядом жилых и промышленных девятиэтажках было видно что они девятиэтажки, несмотря на разницу в высоте в два раза.

Offline

#434 2012-02-01 14:15:23

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,950

Re: Трёхмерные здания в Mapnik

Zkir wrote:

ни даже в 2д, за исключением редчайшего случая, когда один дом нависает над другим.

building=* же по фундаменту обводится, а не по проекции, не? Так что вообще никогда не пересекаются.

Offline

#435 2012-02-01 14:35:54

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

Re: Трёхмерные здания в Mapnik

Вообще-то должны именно по проекции

Offline

#436 2012-02-01 14:38:50

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,110

Re: Трёхмерные здания в Mapnik

я думаю 60% зданий обведены по крыше big_smile


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#437 2012-02-01 14:40:45

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,950

Re: Трёхмерные здания в Mapnik

liosha wrote:

Вообще-то должны именно по проекции

Hо какой в этом смысл?

Я могу понять по незнанию. Но специально явно лучше делать по фундаменту, учитывая будущий пешероутинг.

Last edited by Hind (2012-02-01 14:41:52)

Offline

#438 2012-02-01 15:00:26

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 4,030

Re: Трёхмерные здания в Mapnik

Я вот как раз собирался рисовать 3-Д здания с переходами (корпуса с общими переходами на 2-3-м этаже). Ну типа такого например - http://maps.yandex.ru/-/CFdiMJyw

Тоже место но в виде панорамы - http://maps.yandex.ru/-/CFdiYL0E

Очевидно что такие здания обычно прорисовывают по крыше smile

Last edited by fserges (2012-02-01 15:02:40)


Бывший редактор ОСМ

Offline

#439 2012-02-01 15:40:13

Anton Khorev
Member
From: Санкт-Петербург
Registered: 2011-07-30
Posts: 177

Re: Трёхмерные здания в Mapnik

Можно так делать:
Тег для обозначения деления здания на части не нужен, так как что с ним, что без него придётся определять эти части из геометрии. Все building:part рисовать внутри building. Если building:part полностью не находится внутри building, то она не влияет на рисование building. Если нужно знать, где фундамент, то это building:part=base, либо если его нет, то building. Пешеходный роутинг - там где есть footway.

Offline

#440 2012-02-01 15:43:55

BushmanK
Member
Registered: 2011-05-03
Posts: 5,106

Re: Трёхмерные здания в Mapnik

Есть чудесное здание для экспериментов, из области "что бывает".  http://osm.org/go/0t2Mek71T-  МИРЭА (ТУ)

Стоит на склоне, потому цокольный этаж с одной стороны является первым от уровня грунта, с другой - уходит ниже уровня земли.
Корпуса Б,В,Г,Д соединены с корпусом "А" воздушными горизонтальными переходами, находящимися через этаж от цокольного (который лежит под ними). В корпусе А эти переходы приходят на этаж, считающийся вторым (не считая нулевой цокольный, который уже ушел под землю), но вход в корпус А (главный) находится на этом же "втором" этаже на уровне земли (улицы Коштоянца), при этом частично вися в воздухе на колоннах над внутренним проездом.


"Не умею" не значит "невозможно", "не видел" не значит "не бывает". "Нет проблемы", вероятнее всего, значит, что "нет мозгов".

Offline

#441 2012-02-01 15:57:43

Anton Khorev
Member
From: Санкт-Петербург
Registered: 2011-07-30
Posts: 177

Re: Трёхмерные здания в Mapnik

И ещё искать части здания в пределах одного с ним layer'а. Здесь в последнем примере семиэтажной части добавить layer=1.

Offline

#442 2012-02-01 16:06:59

suslikk
Member
From: Voronezh
Registered: 2010-03-03
Posts: 837
Website

Re: Трёхмерные здания в Mapnik

пора прикрутить "настоящее" 3D.... smile

Offline

#443 2012-02-01 16:10:59

Zkir
Member
From: Хрустальная Москва
Registered: 2009-02-21
Posts: 6,110

Re: Трёхмерные здания в Mapnik

suslikk wrote:

пора прикрутить "настоящее" 3D.... smile

Еще бы 2D не разломать окончательно.


Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.

Offline

#444 2012-02-01 16:22:33

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 4,030

Re: Трёхмерные здания в Mapnik

Псевдо 3-Д достаточно для большинства случаев. А настоящее 3-Д это всякие храмы и Сиднейские оперы. Но их гораздо меньше smile


Бывший редактор ОСМ

Offline

#445 2012-02-01 16:46:01

Dinamik
Member
Registered: 2010-08-12
Posts: 1,096

Re: Трёхмерные здания в Mapnik

Hind wrote:
Zkir wrote:

ни даже в 2д, за исключением редчайшего случая, когда один дом нависает над другим.

building=* же по фундаменту обводится, а не по проекции, не? Так что вообще никогда не пересекаются.

liosha wrote:

Вообще-то должны именно по проекции

Zkir wrote:

я думаю 60% зданий обведены по крыше big_smile

Hind wrote:
liosha wrote:

Вообще-то должны именно по проекции

Hо какой в этом смысл?

Я могу понять по незнанию. Но специально явно лучше делать по фундаменту, учитывая будущий пешероутинг.

А где-нибудь написано, как следует делать?

Если рисовать building по проекции, то это будет странно выглядеть там, где часть здания нависает над дорогой.

------------

Дополнение с учётом предлагаемых тегов, обозначающих принцип деления здания на части.
713b77c57dc8.gif

Anton Khorev wrote:

Можно так делать:
Тег для обозначения деления здания на части не нужен, так как что с ним, что без него придётся определять эти части из геометрии.

Если тег будет, то определять части не придётся: конвертер/рендерер будет знать, что здание состоит из частей с указанной этажностью. В противном случае может получиться, что отрисуются одновременно и всё здание параллелепипедом, охватывающим выпирающие части, и все его части.

------------

Как часто latlon.org обновляет данные?

Last edited by Dinamik (2012-03-13 12:54:54)

Offline

#446 2012-02-01 16:48:26

BushmanK
Member
Registered: 2011-05-03
Posts: 5,106

Re: Трёхмерные здания в Mapnik

Ну вот с упомнянутым зданием МИРЭА проблема как раз не в том, что его нельзя само по себе отобразить в псевдо-3D (оно является объединением нескольких фигур, образованных простым движением основания вдоль перпендикулярной направляющей), а в том, что оно стоит не на горизонтальной поверхности. Таких зданий не много, но они есть.


"Не умею" не значит "невозможно", "не видел" не значит "не бывает". "Нет проблемы", вероятнее всего, значит, что "нет мозгов".

Offline

#447 2012-02-01 18:12:04

Danidin9
Member
From: Санкт-Петербург
Registered: 2011-01-31
Posts: 589

Re: Трёхмерные здания в Mapnik

Anton Khorev wrote:

И ещё искать части здания в пределах одного с ним layer'а. Здесь в последнем примере семиэтажной части добавить layer=1.

Спасибо, верное замечание. И тогда ещё стоит упомянуть, что по крыше стилобатной части обычно возможна пешеходная (или даже авто) навигация, и в таком случае layer=1 относится и ко всем highway на такой крыше.

Offline

#448 2012-02-01 18:12:20

Sergey Astakhov
Member
From: St.Petersburg, Russia
Registered: 2009-11-13
Posts: 5,817

Re: Трёхмерные здания в Mapnik

IMHO, вместо building:parts:vertical=yes и building:parts:horizontal=yes логичнее задавать building:parts=vertical и building:parts=horizontal

Offline

#449 2012-02-01 18:20:45

Danidin9
Member
From: Санкт-Петербург
Registered: 2011-01-31
Posts: 589

Re: Трёхмерные здания в Mapnik

BushmanK wrote:

Ну вот с упомнянутым зданием МИРЭА проблема как раз не в том, что его нельзя само по себе отобразить в псевдо-3D (оно является объединением нескольких фигур, образованных простым движением основания вдоль перпендикулярной направляющей), а в том, что оно стоит не на горизонтальной поверхности. Таких зданий не много, но они есть.

Ну да, это скорее исключения. Пока стоит отмечать этажи по максимуму, а подобные факты писать в note.
Вообще сейчас есть тег ele=*, может в будущем он будет использоваться чаще, если повысится точность навигаторов в измерении вертикальных координат.

Offline

#450 2012-02-01 18:30:22

Dinamik
Member
Registered: 2010-08-12
Posts: 1,096

Re: Трёхмерные здания в Mapnik

Sergey Astakhov wrote:

IMHO, вместо building:parts:vertical=yes и building:parts:horizontal=yes логичнее задавать building:parts=vertical и building:parts=horizontal

А если здание собрано из множества "кирпичиков" и по вертикали, и по горизонтали?

Offline

Board footer

Powered by FluxBB