[OSM-dev] Relation bounding boxes
Matt Amos
zerebubuth at gmail.com
Wed Nov 5 17:43:08 GMT 2008
what is the bounding box of a relation?
i ask because i'm trying to implement the last bit of the changeset
bounding box handling code. bounding boxes for nodes and ways are
simple, but there are several plausible and possibly useful ways of
dealing with relations:
1) adding or removing nodes or ways from a relation causes them to be
added to the changeset bounding box. adding a relation member or
changing tag values causes all node and way members to be added to the
bounding box. this is similar to how the map call does things and is
reasonable on the assumption that adding or removing members doesn't
materially change the rest of the relation.
2) any change to a relation causes all its members' bounding boxes to
be added to the changeset, recursively. this might be the case if we
consider tag values to "cascade" onto members recursively (superways).
3) any change to a relation causes all its *direct* members' bounding
boxes to be added to the changeset (i.e: like the relation/#id/full
call, relations of relations are ignored). this makes sense if
relations of relations are very large (e.g: whole country boundaries)
and we don't want to make a massive bbox just because we tweaked a
border node.
suggestions appreciated,
cheers,
matt
More information about the dev
mailing list