that looks like the following:
\begin{verbatim}
-A KORD 41.979595 -087.904464 668 CYY Chicago O Hare International
-R 04L 41.989606 -087.905138 039.39 7500 150 AHYN NNNLYN NNNNNY
-R 04R 41.961618 -087.889594 041.40 8071 150 AHYN YNNNNY YNNNNY
-R 09L 41.983954 -087.903705 089.70 7967 150 AHYN YNNNNY YNNNNY
-R 09R 41.969040 -087.902380 089.88 10141 150 AHYN YNNNNY YNNNNY
-R 14L 41.991918 -087.903546 140.10 10003 150 AHYN YNNBYN YNNNNY
-R 14R 41.976778 -087.917774 140.08 13000 200 AHYN YNNBYN YNNNNY
-R 18 41.990086 -087.900410 180.00 5341 150 AMNN NNNNNN NNNNNN
+A KORD 41.979595 -087.904464 668 CCY Chicago O Hare International
+R 04L 41.989606 -087.905138 039.39 7500 150 AHYN NNNL 0 0 NNNO 0 0
+R 04R 41.961618 -087.889594 041.40 8071 150 AHYN YNNO 0 0 YNNO 0 0
+R 09L 41.983954 -087.903705 089.70 7967 150 AHYN YNNO 0 0 YNNO 0 0
+R 09R 41.969040 -087.902380 089.88 10141 150 AHYN YNNO 0 0 YNNO 0 0
+R 14L 41.991918 -087.903546 140.10 10003 150 AHYN YNNC 0 0 YNNO 0 0
+R 14R 41.976778 -087.917774 140.08 13000 200 AHYN YNNC 0 0 YNNO 0 0
+R 18 41.990086 -087.900410 180.00 5341 150 AMNN NNNN 0 0 NNNN 0 0
\end{verbatim}
For each airport, a bounding polygon is generated, and written as a
This includes height data (DEM, airport) and polygon data (airport,
hydro-data, land use data, etc.)
+For each tile create a fitted set of ``important height'' points from
+the original regular grid of data.
+
For each tile, run the generic clipper on each polygon in order from
highest to lowest incrementally building an accumulation ``super''
polygon that comprises a union of all polygons we've processed so far
features on a priority basis.
For each polygon on a tile we must determine a point inside. We need
-this for the triangulation step.
-
-For each polygon, triangulate all the height fields in the tile.
-Using the triangle library we can feed in all the polygon outlines
-with the corresponding interior points. We can tell the triangulator
-to start at every point except for the one we are working on and eat
-away all the triangles until a polygon border is encountered. This
-leaves us with the triangulation of each polygon.
-
-Now we have a pile of height data and the triangulation for each
-polygon. However, some of these hieght fields must be enforced
-(airports) and some of this can be adjusted (base terrain). We might
-also want to think about ensuring lakes are level, and rivers don't
-run up and down hills. Anyways, with a flurry of handwaving, we have
-adjusted all the heights.
+this for the triangulation step so we can assign a regional attribute
+to all triangles inside a polygon.
+
+Run the delauney triangulator for the tile. The triangulator code is
+very powerful and feature rich, but also very obfuscated to use. It
+is very robust and fast, but suffers a bit on the usability continuum.
+
+In preparation for the triangulation step we need to create the
+following items:
+
+\begin{itemize}
+\item A list of all unique vertices (nodes) in this tile, including
+ the corners
+
+\item A list of all the unique segments (edges of the polygons) in no
+ particular order. The triangulator doesn't really care how the
+ polygons connect together, it just cares about boundary edges.
+
+\item A list of ``holes'' (if any) to cut out of the tile. If an
+ airport overlaps multiple tiles we assign it one tile and leave a
+ hole in remaining tiles. A hole is specified by a single point.
+ When the triangulation step is finished, the triangulator will start
+ at each hole point and recursively eat away all neighboring
+ triangles until it encounters an edge.
+
+\item A list of regions with region attributes. These are specified
+ much the same way as holes. After the triangulation step is
+ finished, regional attributes are assigned. The procedure is
+ identical to cutting out a hole except that instead of removing a
+ triangle it is simply assigned the attribute for that region.
+\end{itemize}
+
+The result of the triangulation step is a list of triangles for the
+tile with each triangle assigned an attribute representing the polygon
+it lives inside.
+
+Now we have a pile of triangles. We are heading in the right
+direction! However, no we need to go through and assign the proper
+height to each of the verticies of the triangles. We must be aware of
+certain constraints. Airport elevations should have the highest
+priority, followed by the DEM elevations. We will also want to impose
+additional constraints such as ensuring lakes are level and rivers
+don't run up hill. Anyways, with a flurry of handwaving, we have now
+adjusted all the heights. :-)
The next thing we have to worry about is making sure each tile meshes
exactly with all it's neighbors. We do this by spliting the tile up
%------------------------------------------------------------------------
% $Log$
+% Revision 1.4 1999/03/21 15:12:51 curt
+% Updated to reflect current scenery progress.
+%
% Revision 1.3 1999/03/13 21:42:37 curt
% Updated to match current scenery generation tools progress.
%