OpenStreetMap Forum

The Free Wiki World Map

You are not logged in.

Announcement

A fix has been applied to the login system for the forums - if you have trouble logging in please contact support@openstreetmap.org with both your forum username and your OpenStreetMap username so we can make sure your accounts are properly linked.

#1 2012-05-24 14:47:04

marek kleciak
Member
Registered: 2010-10-11
Posts: 8,327

curves (splines) for drawing in OSM

I started discussion about using of splines in OSM maps.
First result (unfortunately description is mostly in german, but maybe vvoovv can find time to translate a few words in russian):

http://forum.openstreetmap.org/viewtopi … 55#p244255

Offline

#2 2012-05-24 18:10:30

Vovanium
Member
Registered: 2009-07-23
Posts: 1,094

Re: curves (splines) for drawing in OSM

О нет, сплайны...


Мне KekcuHa обещал подарить навигатор. Как жаль, у меня уже есть.

Offline

#3 2012-05-24 18:27:14

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

Re: curves (splines) for drawing in OSM

NO WAI.
/thread

Offline

#4 2012-05-24 18:34:34

marek kleciak
Member
Registered: 2010-10-11
Posts: 8,327

Re: curves (splines) for drawing in OSM

Vovanium, substantive arguments against this solution?
We should discuss about pros and cons. I think we don´t close our eyes for new solutions?
Pro:
1. more exactly micromaping possible: rendering of tiles in very high zoom level without "cheap" low poly look of the map.
Con:
1. more effort for programming.
2. No software support
3. higher entry barrier for beginners.

What else?

Last edited by marek kleciak (2012-05-24 18:35:46)

Offline

#5 2012-05-24 18:38:46

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

Re: curves (splines) for drawing in OSM

Offline

#6 2012-05-24 19:36:07

marek kleciak
Member
Registered: 2010-10-11
Posts: 8,327

Re: curves (splines) for drawing in OSM

Thanks Sergey, I dont´t know Russian Froum well.
There is no new posts. Also the wiki page: http://wiki.openstreetmap.org/wiki/Rela … d/Geometry is deleted.
Anyway. What is Your result from this discussion?

Offline

#7 2012-05-24 19:38:06

Vovanium
Member
Registered: 2009-07-23
Posts: 1,094

Re: curves (splines) for drawing in OSM

marek kleciak wrote:

Vovanium, substantive arguments against this solution?
We should discuss about pros and cons. I think we don´t close our eyes for new solutions?
Pro:
1. more exactly micromaping possible: rendering of tiles in very high zoom level without "cheap" low poly look of the map.

With straignt segments any precision is possible. The only pro is:
1. same precision with less nodes.

Con:
1. more effort for programming.

Much more. Cubic curve geometry on a geoid is not simple. Note, it is not only rendering, but also angle, length, area computation, hit tests, intersections...

2. No software support
3. higher entry barrier for beginners.

What else?

4. Compatibility loss.


Мне KekcuHa обещал подарить навигатор. Как жаль, у меня уже есть.

Offline

#8 2012-05-24 19:59:36

marek kleciak
Member
Registered: 2010-10-11
Posts: 8,327

Re: curves (splines) for drawing in OSM

Hello Vovanium,
thank You for objectively answer.
One point pro more:
1a. In 3D representation are such surfece definition helpful. Depend on the distance from observer is the rendering with different level of details possible.

Con. 1. I know, my wife did it succesful years ago (no joke). There is of course a lot to do but it is resonable. Good reason to fullfill "Geometry" wiki page with content again.

Con 4. - that´s true. But  that happens often with new standards.

Offline

#9 2012-05-25 03:43:28

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

Re: curves (splines) for drawing in OSM

А я бы рисовал сплайнами.

Offline

#10 2012-05-25 05:14:01

Fortress
Member
From: Russia, Saint-Petersburg
Registered: 2009-07-09
Posts: 1,109

Re: curves (splines) for drawing in OSM

Сначала научите софт их понимать. Я не хочу видеть пустое место вместо дорог в навигаторе.

Offline

#11 2012-05-25 05:19:43

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

Re: curves (splines) for drawing in OSM

Fortress wrote:

Сначала научите софт их понимать.

Сначала курица или яйцо?

Offline

#12 2012-05-25 05:27:13

Fortress
Member
From: Russia, Saint-Petersburg
Registered: 2009-07-09
Posts: 1,109

Re: curves (splines) for drawing in OSM

Рисование сплайнами при отсутствии софта, способного их понимать уместно только в одном случае: при дублировании сплайнов полилиниями, которые в последующем будут удалены (когда софт научится понимать сплайны). Но это не правильно и все это понимают.

Offline

#13 2012-05-25 05:43:27

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

Re: curves (splines) for drawing in OSM

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

Offline

#14 2012-05-25 06:09:31

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

Re: curves (splines) for drawing in OSM

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

Не говоря уже о том, что математически идеальная кривая неуместна при отражении реальности (я говорю это, несмотря на то, что 3D-моделер со стажем). Многоугольник, накликанный по контурам, всего лишь страдает неполнотой, в то время как сплайн даёт ложную форму там, где на самом деле о ней ничего не известно. В графике это удобно, но в картографировании недопустимо.

Offline

#15 2012-05-25 07:47:55

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

Re: curves (splines) for drawing in OSM

Hind wrote:

Не говоря уже о том, что математически идеальная кривая неуместна при отражении реальности

Дороги состоят из прямых и дуг окружности, что легко можно задать кривыми Безье. Дома примерно так же строят.

Offline

#16 2012-05-25 09:17:15

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

Re: curves (splines) for drawing in OSM

Вы сначала пространственные функции для работы с этими кривыми предоставьте. Со всякими конвертациями проекций. И чтоб не тормозило. tongue

Offline

#17 2012-05-25 09:23:33

marek kleciak
Member
Registered: 2010-10-11
Posts: 8,327

Re: curves (splines) for drawing in OSM

Сначала научите софт их понимать. Я не хочу видеть пустое место вместо дорог в навигаторе.

I believe in the abilities of mathematicians from Russia. Take this part of the development in your hands. It would be an enrichment for OSM. Worldwide.
It would be great to be leading in the map develepment.

Offline

#18 2012-05-25 09:41:15

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

Re: curves (splines) for drawing in OSM

Marek, why not use a tool in josm (comand line) for creating curves (besier) with automatic approximation with simple polyline?

I think, use curves without backward compatibility is awful. It will kill mobile applications. With backward compatibility you can use line approximation for computations. But there is another problem:
For example:
You draw a river, with a straight riverbanks. Neva or something like this, they have straight concrete or granite embankment. And you draw a line for a clearway. It's smooth in real world, and you use curve. So you must check, that curve didn't intersects with embankment, and simple polyline didn't cross it too. I think many peoples will forget do this checks. If you use tool that draw polyline by bezier base points with a given precision you insuared that you didn't make a mistake.


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

Offline

#19 2012-05-25 10:01:20

Vovanium
Member
Registered: 2009-07-23
Posts: 1,094

Re: curves (splines) for drawing in OSM

marek kleciak wrote:

Hello Vovanium,
thank You for objectively answer.
One point pro more:
1a. In 3D representation are such surfece definition helpful. Depend on the distance from observer is the rendering with different level of details possible.

I wonder if any 3D software renders splines. Different level of details is possible just now, using polygon simplification algorithm.

Con. 1. I know, my wife did it succesful years ago (no joke). There is of course a lot to do but it is resonable. Good reason to fullfill "Geometry" wiki page with content again.

Spline on a geoid (or at least ellipsoid)? I wonder if it possible, to fit one to another.

Con 4. - that´s true. But  that happens often with new standards.

It will make useless most of already written software. Nobody will say ok to you for this.

UPD: Marek, is i wrote below, if you really want curves, you would better adopt circular arcs, which are much more useful. Introduce additional attribute to way node/segment, so old software could just ignore it and treat it as straight line.

Last edited by Vovanium (2012-05-25 10:16:35)


Мне KekcuHa обещал подарить навигатор. Как жаль, у меня уже есть.

Offline

#20 2012-05-25 10:08:17

Vovanium
Member
Registered: 2009-07-23
Posts: 1,094

Re: curves (splines) for drawing in OSM

Ilis wrote:
Hind wrote:

Не говоря уже о том, что математически идеальная кривая неуместна при отражении реальности

Дороги состоят из прямых и дуг окружности, что легко можно задать кривыми Безье. Дома примерно так же строят.

Ну так зачем же компромиссы? Есть кривые, которые гораздо точнее аппроксимируют дуги и проще в обсчёте: это дуги. smile

Для того, чтобы из прямого отрезка (хорошо, геодезической прямой) сделать дугу, надо ему добавить только один параметр... ну например, угол загиба (который автоматически равен нулю для прямой). Таким образом, если не задавать сильно большие углы, вполне можно будет работать со старым софтом, который легко научить сначала просто игнорировать дополнительный параметр, «аппроксимируя» дугу отрезком.

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


Мне KekcuHa обещал подарить навигатор. Как жаль, у меня уже есть.

Offline

#21 2012-05-25 10:25:15

Vovanium
Member
Registered: 2009-07-23
Posts: 1,094

Re: curves (splines) for drawing in OSM

Hind wrote:

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

Не говоря уже о том, что математически идеальная кривая неуместна при отражении реальности (я говорю это, несмотря на то, что 3D-моделер со стажем). Многоугольник, накликанный по контурам, всего лишь страдает неполнотой, в то время как сплайн даёт ложную форму там, где на самом деле о ней ничего не известно. В графике это удобно, но в картографировании недопустимо.

А один отрезок с концами на расстоянии километра на самом деле что угодно, хоть спираль архимеда? smile

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


Мне KekcuHa обещал подарить навигатор. Как жаль, у меня уже есть.

Offline

#22 2012-05-25 10:33:37

marek kleciak
Member
Registered: 2010-10-11
Posts: 8,327

Re: curves (splines) for drawing in OSM

Spline on a geoid (or at least ellipsoid)? I wonder if it possible, to fit one to another.

We´re working on that. Of course, it is not trivial.

It will make useless most of already written software. Nobody will say ok to you for this.

You´re right. Unless we make implementation in the most important software and inform other developers what they have to do. It´s not impossible

adopt circular arcs, which are much more useful

You´re right.

Offline

#23 2012-05-25 12:10:38

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

Re: curves (splines) for drawing in OSM

Vovanium wrote:

Ну так зачем же компромиссы? Есть кривые, которые гораздо точнее аппроксимируют дуги и проще в обсчёте: это дуги. smile

Как раз дуги — это компромисс, а сплайны — универсальный инструмент.

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

Софт для начала может просто игнорировать параметры каждого узла кривой Безье. А конвертеры могут нарезать длинные кривые на более мелкие прямые сегменты. Математический аппарат для этого уже давно есть.

Про то, что новички что-то там наломают, вообще не аргумент. Давайте релейшены сначала запретим чтобы не ломали.

Offline

#24 2012-05-25 12:52:52

s777n
Member
Registered: 2012-03-04
Posts: 315

Re: curves (splines) for drawing in OSM

Вопрос. Чем плох текуший вариант - т.е отдать все на откуп рендеру? Пусть рендер и скругляет углы.

Offline

#25 2012-05-25 12:59:43

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

Re: curves (splines) for drawing in OSM

Осмарендер скруглял углы. Делал он это, мягко говоря, хреново.

Offline

Board footer

Powered by FluxBB