Professional Documents
Culture Documents
Automated Generation of Urban Town
Automated Generation of Urban Town
After the freeway has been scan-converted, for each Figure 3: Scan-Converting a freeway
fine grid cell that is assigned the freeway type, all fine grid
cells within four fine grid cells are assigned the ``freeway
reserved'' type, so that no minor street or building can be
built on these reserved cells. The scan-conversion process is
shown in Figure 3. An example of the final generated map
is shown in Figure 4, showing that fine grid cells are
undeveloped (green) around freeway cells. Minor roads and
building parcels are not allowed near freeways. Major roads
are allowed to intersect freeways via overpasses. Access
ramps can then be built from the major roads to the
freeways.
Figure 4: A freeway
5 Major Streets
In a city, there are major streets and minor streets.
Major streets are wider, carry more traffic, and have traffic
signal priority over minor streets. In a city, the total length
of minor streets is more than the length of major streets.
Our system first creates a network of major streets on the
coarse grid. First, the coarse grid is divided into a regular
grid of cells. Each cell has, say, 10 x 10 coarse grid points.
To create a regular pattern of major streets, the center point
of each cell is chosen as a seed point. To create an irregular
pattern, a random point is chosen within each cell. A path-
finding method is used to connect every chosen point with
its adjacent points. This algorithm is described in the
Autopolis [9] paper.
8 Building Parcels
After all the streets, major and minor, have been
created, each piece of land bounded by streets is considered
one parcel on which a building can be built. We first
determine the geometry of the parcels, and then optionally
split each parcel into multiple plots. One building can be Figure 8: The colored triangles are the remaining triangles
built on each plot. of a parcel after all the street segments have reserved their
triangles. All contiguous un-reserved triangles form one
Streets are represented as zero-width lines. To create parcel where a building can be built.
parcels for buildings, it is necessary that the parcels be
receded from the streets so that the buildings do not grow The next step is to find the outline of a parcel. The
on top of any street. We have designed a fast algorithm to outline of a parcel is a subset of all the edges of the
quickly find the parcels. The diagrams in Figure 7 show the triangles belonging to the parcel. First, set all edges to
steps. First, each fine grid cell is divided into equal four unmarked. Then, for each triangle belonging to the parcel,
triangles that meet at the center of the grid cell. Each toggle all its edges (from unmarked to marked, or from
triangle can either be reserved by a street or else be part of a marked to unmarked). After this, all edges that are marked
parcel. Next, each street is scan-converted to the triangles. form the outline of the parcel. In other words, these are all
Figure 7 shows how to scan-convert an axis-aligned street the edges that belong to only one triangle belonging to the
and a diagonal street. In each case, the triangles parcel.
surrounding the street are reserved for the street.
Once the outline of a parcel is found, the parcel can be
split up into multiple plots. A building is built on each plot.
To split a parcel into two plots, find the longest straight
edge of the parcel. Then, find the midpoint of the straight
edge. At this midpoint, split the parcel along the
perpendicular direction. An example is shown in Figure 9.
11 Conclusions
We have presented methods to quickly create streets
and building plots for a realistic procedurally-generated
virtual city.