Street Generation From Edges

Street Generation From Edges

With the addon called Street generation from edges, we can make geometry like a street from just edges. You could add a vertex in the scene, extrude it a few times and run this addon. It will show a redo-panel (left bottom) where you can adjust the bevels.

How the Street generation from edges work

The addon is fairly simple. Here are the steps how I got it to work.

  • Go in Top-view, orthographic mode. (Press 5, then 7 on the numeric keypad).
  • Add a vertex into the scene with Shift+A > Add Mesh > Single Vert > Add Single vert. If you don’t see this, then enable the build in addon called Extra Objects.
  • Press 1 to select Vertex Select Mode
  • Select the vertex.
  • Zoom out a bit until you see Meters (top left). Or in other words zoom out until you can make streets on realistic scale a bit. Otherwise the bevel might overshoot, and then you need to adjust that. So you have to think in terms of a least 15 meters or so, for one extrusion. That’s still very short, if you realise that the road itself has a width or around 8.5 meters (two way).
  • Once finished with extrusion, press the button: generate street from edges.
  • Now the redo-panel shows up on the left-bottom.

The redo-panel

Yes, that is called the redo-panel on the left bottom it seems. And here an explanation of the settings with a few tips:

  • Street width, is to specify the width of the Street. A street with two lanes, without parking is approximately 6 meters (20 feet) for emergency, but more commonly accepted is 8.5 meters (28 feet).
  • Bevel Size: the lower the value the sharper the corners of your street. I guess, to make the street more natural, set this as high as possible. But so that the bevels don’t overshoot.
  • Beveled dead ends. Is a checkbox, turn it on if you want rounded ends on your street.
  • Bevel Size Dead Ends. With this you can define how sharp the corners have to be of the rounded ends of the street.
  • And other settings like: Angle based, Edge length based, and settings for subdivision.

If you got all that done, you can select all faces and extrude up a bit. Mind, that not all normals are pointing outwards. So an important step is to go in Edit mode, select all faces and press Shift+N. This will calculate the normals outwards the mesh. Here a screenshot of what we got so far:

Redo Panel - Street generation from Edges
Redo Panel – Street from Edges

Where to download Street generation from edges

You can download the addon on Github. The easiest way to do it, is as follows (Chrome): On Github, click on StreetGenFromEdges.py. Then, click on the button Raw (a bit in the top right). Right Click and select: Save As..

Relevant addons

B.slicer

B.slicer

Slice 3D objects into sections

Dimension Tools

Dimension Tools

Tools for architectural drawings

Sliceform Popup Tools

Sliceform Popup Tools

Convert models into sliceform structures

Array