On Thu, Jul 16, 2009 at 10:41 AM, Chris Browet<[email protected]> wrote:
> 2009/7/16 Frederik Ramm <[email protected]>
>> Chris Browet wrote:
>>>
>>> I'd be curious to know how the api calculates the bounding box of such a
>>> relation
>>
>>
>> http://wiki.openstreetmap.org/wiki/OSM_Protocol_Version_0.6#Bounding_box_computation
>>
>>> assuming the api definition is "the smallest bbox containg all
>>> children bbox'es".
>>
>> It isn't.
>>
>
> Ok. If I understand well, it adds to a relation bbox all the nodes and ways
> of children relations (+ the "pure" ways and nodes, of course).
>
> That won't remove the problem of infinite recursion: R1 -> R2 -> R1; it will
> add to R1 all ways/nodes of R2, which itself will add all ways/nodes of R1,
> which will...
>
> Bottomline question is: How does the api handle the case?

short answer: it doesn't.

long answer: the position taken by the API for both map calls and
changeset bboxes is that relations don't have physical extent - only
their node and way members do. bboxes are calculated only from the
immediate members of the relation, so recursion is necessary.

(there is a bug, which means something is recursing, but it's not supposed to)

cheers,

matt

_______________________________________________
dev mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/dev

Reply via email to