3D rendering a building - An infinite small triangle is remaining

This is for 3D render nerds only. Example: Way: Vexierkapelle St. Nikolaus(121486088)

My new renderer showed this:


You see that grey standing plane in the center? It is a remaining of the outer/building way. The outer is replaced 100% by parts.
“Ganz Gallien?” No that small line remains. How, why? The part ways should use the same nodes as the building way. Check: Yes and no. See the corner at the left end of the shitty plane. There is a node in the outer, but it is not used by the parts! They don’t have this corner but just a straight line, crossing the position of the corner node. But not infinite exactly %-O

That’s why a really small triangle of the outer is left. Merde. Oh yes, I could shift a node lightly to fix this. Or I could add the corner node to the two crossing parts. But who will do that vor all the other 3D models in OSM? My renderer could draw an error popup? I am not sure. Or set a Note?

To subtract parts form ways, I use the Rust crate “i_overlay”. And it also offers a function “simplify_shape”. Just calling this without any specific settings solves the problem,
for now, you never know what side effects will show up.

If you zoom enough you can see that is 99.9999%

2 Likes

The parts are set to rectangles (by ID?) but obviously not correct rotated and positioned. I think, no editor will have features to help. Or to complain about the small delta.

imo not mapped correctly.

there is a node missing on the horizontal and a node on the vertical line of the two building:part=*. And the node should be merged with the corner-node of the outer building=*.

Basically the whole building is wrong and a mess. There are just some small oversights and missing pieces, nothing else. Should i correct it? I might be able to.

Also, iD and JOSM are perfectly capable of mapping this easy and quick. I’m using JOSM.

Well, Most off the edits are by me
to make it look as in reality.
But I am curious, so: yes,
take a sad thing
and make it better :notes:

So, to explain, i simply merged the north-eastern corner and the north-west corner of the building=* and the building:part=* together.
I then added node on the left side of this area Way: 1174306437 | OpenStreetMap where it intersects with Way: 1174306435 | OpenStreetMap this area and where these two intersected i merged the node as well with Node: 1359856323 | OpenStreetMap this point.

For a ‘why not’ i also marked the tower circles and pressed O so they get in a perfect circle :slight_smile:

I think this should solve the problems with the renderer - i hope i did not miss something.

EDIT: I was about to post like “If you want to check, some showed a nice renderer for individual building some time ago” and while looking for it i found its your tool lol All new 3D rendering ... an "OSM Building Inspector"
Seems to not work btw. - tried with firefox, chromium and edge. Far away render with no possibility to change view.

EDIT2: Found the other one OpenStreetMap Building 3D Render by @Beakerboy GitHub - Beakerboy/OSMBuilding: render an individual OSM building
Two cool projects! :slight_smile:

I don’t think so.
By adding nodes to way 1174306435, the longest side is now the other angle.
The “across” is not working without a exception code, I still have to add.

Yeah, thats always a problem with roof:orientation=across as far as i’m aware. What i got - its better to use roof:direction=* for the roof as its better and more easy for renderers to interpret? At least thats what i read somewhere.
At least it does not depend on a “shortest length” and “longest length” what often leads to problems when both are close and someone does small corrections for whatever reasons.

Also, the additional node in way 1174306435 might not even be neccessary if the outer lines cover the whole building=*.

If you are using Matrix i invite you the room #osm-3d:matrix.org :slight_smile: