Terracing Buildings
Following up from the previous article on addressing flats, in this article we deal with drawing buildings. The new area has lots of similarly looking buildings, and they're not exactly square. They do however all (broadly) share the same shape:
JOSM has a terracer plugin, which allows you to draw a rectangle, and then quickly convert it to a row of terraced houses and at the same time add house numbers to the generated houses.
You do the following steps with the plugin:
|
Image |
Action |
|
Find a spot that needs buildings added |
|
Draw the outline |
|
Add the |
|
Select road and outline, and press |
|
Select every other middle node at the back |
|
Use JOSM's Way Accuracy Tool |
|
Repeat for the other 5 buildings |
|
Select all buildings and use the Orthogonalise Shape tool |
Having to do step 6 and 7 for every building, especially when there are a lot of them, is a very tedious, and inaccurate process. It is sometimes even faster to draw all the building outlines by hand, select them all, and orthogonalise them.
But the terracer does already save a lot of work, so what if I could make it better and make it support the type of buildings that are common in my new neighbourhood?
I had a look into the plugin, and it seems that I have to use Java to update it. I don't really use Java, and hardly ever written any code in it. It also sadly lives on some SVN repository, so pull requests against it are difficult too. Instead, I pushed my version of the repository to https://github.com/derickr/josm-plugin-uberterrace — and called my version Überterrace. Oh, and I learned some Java.
After a while of figuring out some ... syntax issues, and figuring out how to build this stuff, I managed to improve the plugin with another option. The new option is "fancy outline" and automatically draws in the "extensions at the back". The new work flow is now:
|
Image |
Action |
|
Find a spot that needs buildings added |
|
Draw the outline, including the backends |
|
Add the |
|
Select road and outline, and press |
|
Drag the selected middle nodes to the right position. |
|
Press |
As you can see, this makes it much faster to draw such building outlines. When you look at it in 3D however, you can see there is still a problem though:
The 3D image that is being drawn does not take into account that the "extension" at the back, isn't part of the gabled roof nor that it is only two instead of three levels. There are various possibilities of building layouts:
So the next versions of Überterrace are going to support (some of) these as well!
Comments
Derek,
You're a hero. You can only imagine the amount of time I spent faffing around with the fancy outlines...
http://www.openstreetmap.org/#map=17/51.46055/-0.07277
Of course there are other configurations of 'fancy outline', such as the back extensions being on the 'outside' edge rather than meeting on the inside edge. See this area for a muddle of shapes:
http://www.openstreetmap.org/#map=19/51.41582/-0.07375
Tom
@Tom: I know! I'll get to these if I figure out how to make it draw buildings from a template that you draw first, or something.
Life Line
Updated a restaurant
Updated a pub
Updated 2 house buildings
Updated 2 estate_agent offices
I walked 8.2km in 1h37m13s
I'm excited about the PHP UK Conference on Friday!
I am speaking on @Xdebug, but the whole programme looks great:
https://www.phpconference.co.uk/scheduleTickets are still available, and you'll get 10% off with the code "PHPUK26".
Will I see you there?
RE: https://en.osm.town/@richardf/116086276801420468
For the UK #trains fans under us.
Missed a building outline
Added the Old Dairy House and Aston Mews buildings
More accurate Canterbury Road mapping
I walked 7.0km in 1h37m07s
I walked 8.4km in 1h21m36s
Put new open stretch of Canterbury Road on map
Created a bench and a crossing
Created 2 benches and a crossing; Updated 5 cushions, a post_box, and a crossing
Created a crossing; Updated a cushion
I walked 9.9km in 1h46m54s
If you were wondering whether the www.php.net & downloads.php.net services weren't responding very well in the last 6 hours — thousands of requests/sec to https://www.php.net/ 's root.
The server's load was 720, didn't die, but CDN connections to it timed out.
Now there is a caching strategy in place for a selected set of resources.
Updated a bench
Created 3 benches; Updated 10 benches
Updated a bench
Updated a bus_stop
Created a bench and a waste_basket; Updated 6 bus_stops and a crossing
Created 2 waste_baskets and a recycling; Updated 2 bicycle_parkings and a recycling
Updated a fast_food, a funeral_directors shop, and 2 other objects; Confirmed a fast_food and a hairdresser shop


Shortlink
This article has a short URL available: https://drck.me/bldngs-btn