1
0
Fork 0
Commit graph

1011 commits

Author SHA1 Message Date
curt
238d87c2a2 Increase resource limits for the tile builder. 2005-09-28 16:40:32 +00:00
curt
25f1e2b22b Very slightly tweak clipping semantics to try to reduce artifacts and cracks
in the scenery.
2005-09-28 16:39:58 +00:00
curt
c131a2c572 Fix a small bug that left a missing triangle in airport skirts. 2005-09-28 16:38:50 +00:00
curt
d4ffe52562 Do all the numerical work for surface fitting around 0,0,0 to reduce problems
with floating point roundoff.
2005-09-09 20:47:04 +00:00
curt
3b879d29c2 Fix some bugs in my first attempt at a new airport surface fitting scheme.
The code is now workable but needs some fine tuning.
2005-09-09 20:16:10 +00:00
curt
b8948faf58 This is a first pass at removing the nurbs++ dependency from TerraGear (in
favor of newmat11 which is much simpler, and seems to compile well on modern
OS's.)  I need to do some further testing of genapts and until then, don't
assume the new mechanism is working perfectly.
2005-09-09 15:05:15 +00:00
curt
ade941fb6f Support Robin's new data field in the runway record that lists the glideslope
angle for each end of the runway (affects vasi/papi alignment.)
2005-04-20 18:20:15 +00:00
curt
a51e31d6c7 Remove a depricated option from the usage() display. 2005-01-31 21:54:44 +00:00
curt
0f3f0ef126 gcc-3.4 fix. 2005-01-22 12:55:45 +00:00
curt
168b41e4a2 Updates for 0.9.8 release. 2005-01-11 21:11:27 +00:00
curt
71c793f9b1 Handle Robin Peel's apt database with dos or unix line endings. 2004-12-10 17:58:18 +00:00
curt
fd8f816ee1 Fix a bug that could put the same airport object in the final .stg file twice,
doesn't affect rendering, but could affect render performance.
2004-12-06 22:25:56 +00:00
curt
650bbd7e51 Update my mailing address. 2004-11-19 22:25:49 +00:00
curt
cac8c6bda0 Various miscellaneous script and code tweaks. 2004-11-11 15:08:03 +00:00
curt
06978b3cc4 Fix a logical bug in the routine which strips out holes from a multi-contour
polygon.
2004-11-11 15:07:14 +00:00
curt
fb71b5876c - Chased down a bug that caused threshold lighting to be omitted in some
situations

- Made the code a bit more robust and able to handle the handful of rare
  occasions when the least squares nurbs interpolator fails.

- Add airport surface bases for towers, windsocks, beacons, and vasi/papi
  lighting so they never are buried and never float.  (I'm considering the
  idea of doing this for the approach lighting too ...)
2004-11-11 15:05:13 +00:00
curt
696fa632b4 A few tweaks to better handle newest airport data. 2004-11-09 15:17:52 +00:00
curt
2df4726f33 Do a least squares nurbs approximation to coarse grid when deriving airport
surface.  I think I have this working robustly.

A few miscellaneous tweaks to handle latest X-Plane data (with a few new
runway surface codes we hadn't seen before.)
2004-11-08 21:59:04 +00:00
curt
e711b18d20 Make sure taxiways get generated. 2004-10-15 20:38:56 +00:00
curt
27cfc32e4e First stab at code changes to support the X-Plane data format directly. 2004-10-15 20:14:38 +00:00
curt
86d985a131 Script tweaks. 2004-08-03 13:25:17 +00:00
curt
f69c072f3a Most recent changes. 2004-07-30 20:02:20 +00:00
curt
10a818e0ae Debugging ... 2004-05-19 18:47:25 +00:00
curt
d5689be4e7 Fix an "unfortunate" bug in the binary polygon partitioning scheme that
caused missing output (and thus missing scenery features.)  This could
also lead to cracks in the scenery because of the nature of the underlying
edge matching system.
2004-05-19 18:47:00 +00:00
curt
08f9a12765 Various changes to match changes in supporting Lib API(s). 2004-05-17 20:43:31 +00:00
curt
7de22d8ef2 tgChopPolygon() called a really simplistic polygon partitioner for large
polygons.  This was to bail us out of the overwhelming memory requirments
when using the default polygon clipping routines on really large polygons.
However, the simplistic polygon partitioner did not handle holes.
Unfortunately, several TG utilities were calling this function with polygons
that did contain holes with potentially mixed results.

I renamed this function tgChopBigSimplePolygon() and created a new
tgChopNormalPolygon() which should be used by most utilities unless you
really know what you are doing.

This has some performance implications, but achieves more correct results.
2004-05-17 20:42:42 +00:00
curt
7358eb3f09 Don't use a parameter with a default value, calling code is clearer when the
value is specified explicitely.
2004-05-17 20:39:29 +00:00
curt
d723504e94 Curt's script for processing VMAP0 data. 2004-05-17 20:12:19 +00:00
curt
cd7ee31c7e Frequently our beloved polygon clipper will generate polygons with a wierd
branch.  Kind of an out and back.  node[n] == node[n+2] where there is some unique point in between.  Our triangulator is usually robust to this, but not in
100% of all cases.  So I had some code to catch and eliminate this weirdness.
However, a key piece of code was commented out (?!?) rendering it a no-op.
I fixed this and tile building is more robust now.
2004-05-13 21:34:25 +00:00
curt
341079f103 Fiddle with some debugging output temporarily.
Remove some #ifdef'd out code.
Reduce verbosity.
2004-05-13 21:29:17 +00:00
curt
a25776b4a6 Update for new scenery version. 2004-05-13 21:28:34 +00:00
curt
80a1b1ef23 A couple small tweaks to the airport generator to try to eliminate
surface artifacts.
2004-05-12 20:08:55 +00:00
curt
ae939e2e44 Fix a small (but potentially confusing) spelling error. 2004-04-26 16:22:21 +00:00
curt
de27ab5bf7 Change corresponding to a change in simgear. 2004-04-26 16:17:45 +00:00
curt
fd0a6e29fc Ok, this change seems to help a lot.
There are quite a few difficult cases where an airport is located on top
of a hill, or in a bowl, or has a significant elevation change near by.
I take the average elevation of the area and clamp the outlyers.  However
these difficult cases "bias" the average elevation because the airport
surface may include much of the surrounding area.

This change to the code computes the airport elevation *only* based on the
actual airport geometry node and ignores all the surrounding nonsense that
might exist.  This doesn't make things perfect, but is a *big* step forward
for airports in areas with significant elevation change nearby.
2004-04-21 17:03:59 +00:00
curt
ac461bda55 - Switch to using doubles for the nurbs library. We were running out of
precision with floats.

- Restructure how the airport surface is sampled just a bit.

- Solving for X,Y given U,V on a nurbs surface is a little bit tricker than
  I first thought.  If you change one demension of U or V, you can change
  both X and Y.  We need to solve for each X, Y axis independently, and
  then iterate in case moving in the other axis has taken us away from the
  solution in the first axis.

- Add a slope constraint on airport surfaces.
2004-04-20 01:14:15 +00:00
curt
29c57d3ff5 Yet another round of airport surface debugging and shuffling. Anyone want
to take bets on whether or not I got it right this time? :-)
2004-04-19 18:45:06 +00:00
curt
f3db2e778c Skip short towers or we end up with way too many. 2004-04-18 17:28:41 +00:00
curt
d77acbd863 Doh! 2004-04-14 20:57:34 +00:00
curt
2e93d6c7a6 Add a script to preprocess a USA radio tower database into something we
can use.
2004-04-14 18:16:25 +00:00
curt
eea57f81b8 Add some end time estimation code to keep myself entertained while I wait
for the program to finish.
2004-04-14 14:35:09 +00:00
curt
9c43f4785e Add a routine to place a "shared" object into the Work tree so the tile
builder can pick it up later in the final assembly process.
2004-04-14 14:34:13 +00:00
curt
35f324ddaa Some of the prep tools can define objects to go into the final .stg files.
Enhance the build tiles utility to handle a larger variety of cases.
2004-04-14 14:33:22 +00:00
curt
66cf156a77 Pass along beacon, control tower, and windsock data. 2004-04-14 14:32:22 +00:00
curt
b5894d473f Track and position beacons, windsocks, and towers. 2004-04-14 14:31:44 +00:00
curt
92650b6ded Need to #include <stdio.h> if we are using printf() 2004-04-10 14:22:08 +00:00
curt
e779c45679 Output a % done periodically. 2004-04-09 15:55:07 +00:00
curt
1399eb9de3 Rename tgSplitPolygon() -> tgChopPolygon() which is slightly more descriptive
and doesn't sound so much like the split long edges function.
2004-04-08 19:47:39 +00:00
curt
b6be77e5da Add an option to subdivide polygon edges so that no single edge segment is
longer than the specified length (in meters).  Defaults to no edge subdividing.
2004-04-08 19:36:43 +00:00
curt
65ea77978f Make a couple function calls a bit more "name space friendly".
Expose a polygon function that will split up long edge lines to keep the
  max edge distance below some threshold.  This could be used for instance
  to reduce long lines in polygon area shapes so they can better follow
  the underlying terrain changes.
2004-04-08 19:20:19 +00:00
curt
f6a4951f36 Next attempt to get rid of grass. 2004-04-07 04:34:00 +00:00
curt
87cedc6fdb Oops, revert last change, displaced thresholds are included in overall
reported runway length.
2004-04-07 04:25:35 +00:00
curt
1a69225101 This patch *should* fix the "open grassy" areas at the centers of runways
with displaced thresholds.  (Not fully tested yet.)
2004-04-07 04:05:39 +00:00
curt
c8ded2eda1 Towards better airport surface simplification and smoothing. There were
several bugs in the previous try.  These changes should correct them.
2004-04-06 22:50:00 +00:00
curt
c75fa83c15 Airport lighting arrangement now factors in displaced thresholds. 2004-04-06 16:01:10 +00:00
ehofman
791b1bb4fc David Luff:
The patches deal with three separate issues, all rolled up into one
tarball:

Currently, arrayfit always appends .arr.gz onto the name passed on the
command line, meaning that only tile names can be passed.  The patch strips
off .arr or .arr.gz if present prior to it's appending, meaning that tile
names or filenames can be passed on the command line.

The interface to the OSGB36 conversion functions is cleaned up a lot.  I
can't believe I originally wrote it in such an ugly manner!

A lot of console output (> 5000 lines per tile) is removed from the final
construction process, meaning that the output left can actually be read.
2004-03-08 09:47:42 +00:00
ehofman
a71d62c859 David Luf:
The attached patches significantly quieten the output from genapts, which in it's current form resembles the universe flying by on a bad hair day   Remember chaps, console output on Windows is slooowwwwww...  Normal service may be resumed using --verbose or -v.  I've also added a short help, obtainable with --help or -h.  I've also added a couple of extra options, --airport=abcd for just generating a particular airport, and --tile=<[we]xxx[ns]xx> for generating a 1x1 degree tile.  We currently have --chunk=<[we]xxx[ns]xx> for generating a 10x10 degree chunk, and I'd like to eventually add --tile as an option to all tools that take --chunk.

This one adds the tile option to
tgvpf.

Erik Hofman:

Some small code changes for IRIX.
2004-02-26 15:33:32 +00:00
ehofman
0ec77c12c5 Make sure both TaxiDraw generated airport files and Robin Peels default database can be used without any problems. 2004-01-30 20:07:29 +00:00
curt
d0c14eef21 Tweak error thresholds. 2004-01-08 21:36:18 +00:00
curt
da71823a3e Tweak to build with latest simgear cvs. 2004-01-08 21:35:56 +00:00
curt
8214fa2ccc Tweaks to build scripts. 2004-01-08 21:35:38 +00:00
curt
3fa11a9348 Fix to build with latest simgear cvs. 2004-01-08 21:35:23 +00:00
curt
9eec038f19 Bevan Anderson:
Add support for generating Calvert-I/II approach lighting schemes.

Curt Olson: a couple tweaks to compile with latest simgear cvs.
2004-01-08 21:34:44 +00:00
curt
b635ee443d (running tgvpf --chunk=e020n40 --work-dir=Lakes --material=Lake /home/romosan/scenery/vmaplv0 eurnasia hydro inwatera).
It looks like the program gets into an infinite loop while findind
edges for a contour (inserting the same edge over and over until the
program runs out of memory). i am not quite sure i understand the code
but the following patch solved the problem for me:
2003-12-18 17:38:05 +00:00
curt
a27a7d9367 Updated to track a minor file naming change. 2003-12-15 16:44:27 +00:00
curt
a4ae777cf2 Add an example usage: 2003-12-15 16:34:09 +00:00
curt
ee4451de4d Initial revision. 2003-12-15 16:30:04 +00:00
david
30de6cb81a Get a little smarter about guessing what's an apron:
Before:

- if it's a concrete taxiway over 150 ft wide, assume it's an apron
  (confusingly called "tiedown")

After:

- if it's an asphalt or concrete taxiway over 150 ft wide, *or* if
  it has no blue taxiway lights, assume it's an apron
2003-11-30 22:03:06 +00:00
curt
e8bcdaa4d0 Updates to track recent changes in simgear. 2003-11-12 22:16:22 +00:00
curt
f2382f77a1 Various changes and updates. 2003-11-12 22:16:03 +00:00
curt
d64f5bdf87 Tweak to taxiway lighting names. 2003-09-23 23:08:26 +00:00
david
c4a3dbd26d Ignore generated files. 2003-09-20 11:06:14 +00:00
curt
467e70faa0 Updates. 2003-09-16 19:32:11 +00:00
curt
56dfd0985d Fix a small bug in handling of x-plane data. 2003-09-05 21:03:27 +00:00
curt
53d6419b43 Give sea plane bases and heliports their proper identification. 2003-09-05 20:14:04 +00:00
curt
ff685ced13 - Add support for displaced thresholds on runways with nonprecision and visual
markings.
- Fix a couple very small alignment/sizing problems.
- Use a different texture (similar to rest) before aim points on nonprecision
  runways.  This will potentially make things easier if we want to add
  skid marks to the textures.
- Fix a couple bugs (el stupido) in precision marking generation.
2003-09-05 20:13:29 +00:00
curt
2538ac773f Added support for generating displaced thresholds (finally) :-) 2003-09-05 01:37:04 +00:00
curt
9a7173d85e For smoothing things like rivers or roads we need to allow some slope.
Originally I through together a really cheap/ugly hack for estimating
distance between two points, but that really started to stink when throwing
a lot of new situations at it.  So now I calculate spherical distances between
two points in meters which is plenty accurate for these purposes.  This gives
us much better control over smoothing.  For instance we could establish a
maximum 10% grade for all roads if we wanted to.
2003-09-04 18:53:53 +00:00
curt
4f2528e8f7 Initial revision. 2003-09-04 02:53:40 +00:00
curt
8f5bc3579a Debugging output tweak. 2003-09-03 22:46:04 +00:00
curt
2c45b3ce5d Do some flattening of intermittent streams as well as roads, railroads, and
freeways.
2003-09-03 22:45:50 +00:00
curt
400db7c3a9 Oops a previous change (thought to be harmless) turned out to be harmful.
This could cause tile edges to no longer match up becuase this routine would
adjust node elevations which it shouldn't have.  Hopefully this change fixes
the problem.
2003-09-03 22:12:45 +00:00
curt
b3e0d4b5f3 Slightly tweak size of grass area surrounding airports. 2003-09-03 22:10:51 +00:00
curt
d33d445cce Add the Utils directory to the build tree. 2003-09-03 22:10:06 +00:00
curt
028c9af689 Fix a bug that could lead to improperly positioned airports in some cases. 2003-09-03 17:09:05 +00:00
curt
5a84f39f83 Allow additional or non-standard terrain source directories to be specified
on the command line with the --terrain= option.  You can specify as many as you like.  Directories specified on the command line will take precidence over
the default directories and the directories will be searched in the order
specified.
2003-09-03 16:38:50 +00:00
curt
473c4d9b94 - Added support for generating green taxiway center lighting (when called for
in Robin's data.)
- Code adjusted to work with slightly modified input data format (part of
  our move away from metakit.)
- Eliminate some debugging output.
2003-08-29 20:34:46 +00:00
curt
bd02f2548c Eliminate some debugging output.
Fix some warnings.
2003-08-29 20:32:41 +00:00
ehofman
52ef60a056 Reorginize the configure script to math the one from FLightGear more closely. Add checks for the presence of GLIB and GTS. 2003-08-29 18:32:28 +00:00
curt
812ab94975 Initial revision of runway.dat generator (tweaks to basic.dat generator) 2003-08-29 13:27:20 +00:00
curt
b8a4a97785 Initial revision of script to generate simple.apt from x-plane's latest
airport database.
2003-08-28 21:14:07 +00:00
curt
5717e1df5f Patch from Norman to fix a slight oversite in file date querying. 2003-08-28 14:54:32 +00:00
ehofman
3ffd52820c Check whether the creatin time of the output file is after the creation time of the input file. If so, skip to next file 2003-08-28 14:44:31 +00:00
ehofman
a9ec1ccdb6 Fix some mistakes 2003-08-28 14:09:05 +00:00
ehofman
703fc67636 Make reads() more robust and easier to follow 2003-08-28 12:36:31 +00:00
ehofman
0599f873dc Don't forget to terminate the string 2003-08-28 12:03:15 +00:00
ehofman
da7d172d37 Convert \r to \n while reading the file 2003-08-28 09:40:50 +00:00
ehofman
6aaec038f8 Solve a dependancy problem 2003-08-28 09:17:19 +00:00
ehofman
fc9f7069ca Allow for header files that are generated on machines with non UNIX like line endings 2003-08-28 09:01:31 +00:00
curt
0a4cc36775 Use <simgear/compiler.h> functionality to make STL includes more portable. 2003-08-27 14:02:29 +00:00
david
20dc0cf8a0 Ignore generated files. 2003-08-25 19:35:50 +00:00
curt
e93197d1b5 David Luff:
Attached are patches to Terragear to enable it to compile out of the box on
Cygwin (once all the relavent libraries have been compiled).  Specifically
they fix a conflict with another version of min/max somewhere on the
system.
2003-08-25 19:12:20 +00:00
david
ced60ae2e2 Remove IOSTREAMH macro -- it turned out to be something specific to
SGI headers, rather than a program-specific compilation macro.  Always
assume that the iostream library is present.
2003-08-25 18:18:58 +00:00
ehofman
4516c4a9d6 Make it somewhat IRIX/MipsPro compliant again. We still need to resolve the IOSTREAMH declaration issue 2003-08-25 17:52:42 +00:00
david
631c9ab968 Fixed to compile and install using an ANSI C++ compiler like G++ 3.3.
Some conditionals may be required to build with other compilers.
2003-08-25 17:11:43 +00:00
ehofman
694bb7a4cc Satisfy a dependency 2003-08-24 19:02:29 +00:00
ehofman
bcb7d5f77f Fix a mistake 2003-08-24 18:59:33 +00:00
ehofman
8c6c0c480c Satisfy a dependency 2003-08-24 18:55:21 +00:00
ehofman
4e1da3cedf Compiler fix 2003-08-24 18:48:18 +00:00
ehofman
e0bc55edd2 Add the simgear debug library because of dependency issues 2003-08-24 18:37:13 +00:00
ehofman
ac2646a365 Also look for getline() in the std namespace 2003-08-24 18:29:08 +00:00
ehofman
23f08fd725 MSVC/MipsPro fix 2003-08-24 17:29:10 +00:00
ehofman
d8fcc7232a Don't bail out when not finding libnurbs++ but just don't create genairport and end with a warning 2003-08-24 17:27:25 +00:00
curt
47771c9bb4 Several changes related to [trying to] make more effective use of the global
land cover/land use raster data, but there seem to be some very significant
issues no matter how you cut it ....
2003-08-22 19:46:28 +00:00
curt
460d6349b0 Add a check for additional degeneracy. 2003-08-22 19:15:48 +00:00
curt
7a4f52e98b Fixes corresponding to slightly different terrafit output. 2003-08-22 19:13:02 +00:00
curt
38bb74f339 Add a routine to catch/remove some addition degeneracy our polygon clipper
can produce.
2003-08-22 17:34:56 +00:00
curt
0dc39b1911 Try to be just a bit smarter about how to assign an area type to a triangle. 2003-08-20 17:18:50 +00:00
curt
83ebd1eba7 Use the correct number of parameters when calling the gen_runway_area()
functions.
2003-08-20 16:52:43 +00:00
curt
5937926a0b Ok, big oops here. I was passing 3 parameters to a 4 parameter function,
but because of the use of default arguments, the compiler wasn't flagging
this as an error.  This caused a) much stupidity and b) additional stupidity.

I also found a case where I passed in a length and width extention parameters
but, used the length parameter twice ignoring the width parameter.  This
yields much more sensible and expected results when building the grass buffer
zone around a runway.
2003-08-20 16:52:04 +00:00
curt
9e9a13bbdf Do some additional processing on the airport surface grid to try to clip
out spikes and other wierdness and generally keep a reasonable bounds
on how much the surface can vary.
2003-08-20 16:49:12 +00:00
david
fafab4a3a0 Ignore another app. 2003-08-20 12:25:14 +00:00
curt
5943155bad Try an idea that is hopefully slightly more intelligent about what land
cover area to assign a "default cover" triangle to.
2003-08-19 02:51:08 +00:00
curt
4ff5acb28c Still support a minimum angle threshold for quality refinement in the
trangulator wrapper, but this isn't used by the calling layer any more.
2003-08-19 02:38:08 +00:00
curt
fe6ff15206 Remove --min-angle option. 2003-08-19 02:36:10 +00:00
curt
730c454320 - Test a different approach for assigning land cover attributes to "default'
cover" areas.  Rather than artificially cut in polygon areas, just lookup
  a land cover type for unassigned triangles.  I think this has potential, but
  it needs more work to eliminate some odd artifacts.

- Revove --min-angle= option.

- Don't re-fit() triangle array to try to achieve a particular range of
  node quantities ... this is all pre-computed with a much smarter, much
  more efficient algorithm.
2003-08-19 02:35:35 +00:00
curt
f5f961b8c0 Remove support for a "minimum triangle angle" quality constraint when
triangulating a tile.  A better strategy is to have better input that doesn't
need to hide behind this trick.
2003-08-19 02:32:11 +00:00
curt
eb3a3a4fa2 Update examples. 2003-08-19 02:30:05 +00:00
curt
efbe6af104 calc_tex_coords() -> sgCalcTexCoords() 2003-08-19 02:29:44 +00:00
curt
0b4b91c90f Unraise the verbosity level. 2003-08-19 02:27:08 +00:00
curt
b2d808f214 Tweak an output message. 2003-08-19 02:26:43 +00:00
curt
39222a737e Handle .zip'd SRTM data files directly. 2003-08-19 02:25:48 +00:00
curt
aec29df1c8 Working towards completely depricating the previous insanely stupid array fit
algorithm.
2003-08-19 02:24:38 +00:00
curt
af6dc9bb0d Various parameter tweaks. 2003-08-19 02:23:25 +00:00
curt
d0f17a2cd7 Fix for properly handling SRTM voids ... terrafit.py rescales the data range
so that all the values are positive this make things a little trickier inside
terra.
2003-08-16 16:28:55 +00:00
curt
9ab16521f4 Minor tweaks for better debugging/monitoring 2003-08-16 15:39:59 +00:00
curt
ad75df026d Ignore SRTM "void" values. 2003-08-16 14:53:00 +00:00
curt
a20d85ac0d Picky, picky :-) 2003-08-16 02:09:06 +00:00
curt
eb04a8771d Initial revision. 2003-08-16 01:59:37 +00:00
curt
bf32c9e447 Fix a compile error. 2003-08-16 01:58:15 +00:00
curt
df54cff836 The TerraGear version of Michael Garland's "Terra" program now supports
minnodes directly, so I have slightly tweaked the python wrapper script
in light of this.
2003-08-16 01:57:28 +00:00
curt
9e38f10dc6 Add src/Prep/Terra and src/Prep/TerraFit 2003-08-16 01:48:38 +00:00
curt
37d4e6f738 - Various tweaks to make the code build with gcc-2.95 under linux.
- added a -n <num> option to specify a minimum number of nodes to emit
  irregardless of the error threshold.
2003-08-16 01:38:22 +00:00
curt
1a3c24506b Original version of Michael Garlands terra program version 0.7 (public domain) 2003-08-16 01:35:54 +00:00
curt
d309a52bee Intial revision. 2003-08-16 01:18:39 +00:00
curt
170783ea73 The terrafit stuff is getting a much deserved and belated promotion ... 2003-08-16 01:18:01 +00:00
curt
533db6e82d Initial revision. 2003-06-12 20:05:01 +00:00
curt
c148689adc Fixes to match changes in SimGear-0.3.3 2003-06-12 20:02:08 +00:00
curt
05c765b397 - Make the bucket/dem coverage check slightly fuzzy in case of slight
numerical rounding errors.
- Convert several usages of int = 0 or 1 to bool = false or true
2003-06-12 20:01:34 +00:00
curt
f7a4a8bfa0 Rainer Emrich:
Updates to DEM parser to make it more compliant with the spec.
2003-04-02 17:39:46 +00:00
david
3169a0255f Roll out the last changes, since they were making far too narrow
polygons out of roads.
2003-04-02 16:39:52 +00:00
curt
07d17d2536 Initial revision of a scipt that leverages the "terra" utility to
impliment essentially the same thing as "ArrayFit".   Requires the terra
program, but the terrafit.py script should take care of the pre/post
processing.
2003-03-31 20:10:27 +00:00
david
51d5fe00ea Install arrayfit along with the other utilities. 2003-03-20 14:50:54 +00:00
david
67ea97f704 Oops -- the array wasn't being read when there was no *.fit file (my fault). 2003-03-20 14:50:33 +00:00
curt
0cbbe80488 Changes to track libArray api tweaks. 2003-03-19 22:52:04 +00:00
curt
bab9af52b3 Just ignore "void" data points when doing the surface fit. I think this
is probably better than guessing at a value and fitting to the guessed value.

For corner points (where we *need* a value to do the fit) use the elevation
of the "closest" euclidean-wise valid point.
2003-03-19 22:51:26 +00:00
curt
869f0412a3 Updates to match libArray api changes. 2003-03-19 22:49:13 +00:00
curt
f526985854 Update counter index names to make the code more explicite. 2003-03-19 22:48:35 +00:00
curt
123fb92d40 Updates to libArray and a few interface tweaks to allow more sensible
handling of void (non-data) in the original DEM/SRTM.
2003-03-19 22:47:45 +00:00
david
dbdc51696e Make sure fitted_in is always allocated, to avoid a segfault. 2003-03-19 01:59:02 +00:00
david
a0b4097f5d Fix iterator assignment. 2003-03-19 00:30:42 +00:00
david
077f32fc60 Ignore generated files. 2003-03-19 00:28:49 +00:00
curt
119d46058b I wrote arrayfit and it worked.
Then I needed to modify libArray code so that other portions of the code
could use the pre-computed fit data.
Today I discovered that arrayfit was messed up.  That is now fixed.
2003-03-17 17:25:11 +00:00
curt
3b6e96a06a Fix a problem for gcc-3.2 2003-03-17 16:31:40 +00:00
curt
06985ebabd Changes corresponding to API changes in libArray.a 2003-03-17 04:50:40 +00:00
curt
90152df81f Changes to support also loading a pre-computed best-fit surface to the
array data.
2003-03-17 04:49:47 +00:00
curt
b019a7d44a Initial revision of utility to fit a much reduced size terrain surface
to a higher res data set, attempting to preserve the most important
features in the original data set.  The user can specify a min and max
number of output nodes as well as a maximum error tolerance that should
not be exceeded (between the original and simplified surfaces.)
2003-03-17 04:48:50 +00:00
curt
cde416c9f3 Initial revision of a tool that uses Michael Garland's algorithm to fit
a simpler TIN surface to a regular array of height values.  The algorithm
is described here:

    http://graphics.cs.uiuc.edu/~garland/software/terra.html
2003-03-16 21:52:10 +00:00
curt
68a4ac7956 Added a small test program that builds a simplified surface approximation
based on the terrain simplification algorithm in Michael Garlands paper
located here:

   http://graphics.cs.uiuc.edu/~garland/software/terra.html

Essentially start with two triangles forming the bounding surface.
Then add the point that has the greatest error.  Retriangulate.
Recalcuate errors for each remaining point, add the one with the
greatest error.  Lather, rinse, repeat.
2003-03-16 13:33:04 +00:00
curt
9f73338a1f Minor tweaks for scenery building process. 2003-03-14 22:22:48 +00:00
curt
aa37052182 Check point ... 2003-03-14 01:51:18 +00:00
curt
d05fd4a8ff Big round of cascading FG -> TG name cleanups (once you get going it's hard
to stop.) :-)

Also save elevations of 3d polygons into a separate lookup list when they
are loaded by the clipper.
2003-03-13 21:20:46 +00:00
curt
4abf503817 Rewrite for loops with out iterators so they are more readable. 2003-03-13 20:47:58 +00:00
curt
b66f8ce695 Minor tweaks. 2003-03-13 20:47:31 +00:00
curt
ccde971251 Added support for loading 3d polygons. 2003-03-13 20:37:51 +00:00
curt
727e512fad Not that it should matter but change the thresholds a bit to be consistant
with what I do in other portions of the code.
2003-03-13 20:26:56 +00:00
curt
d70cd72fbd Don't automatically try to preserve polygon elevations, but instead provide
a method() to inherit elevations from another polygon.  This gives the calling
layer much more control over preserving or not preserving elevations.
2003-03-13 20:25:02 +00:00
curt
ba3114a8b5 Fixed a compile warning. 2003-03-13 20:23:15 +00:00
curt
c5ab6678f2 Added support for including height information in the intermediate polygon
format.  The big trick was that the polygon clipper is completely 2d.  So
I needed to add code to preserve the elevations in the clipped output and
fill in plausible elevations for any new points created as a result of the
clipping.
2003-03-12 21:25:35 +00:00
curt
9c85f16b5f Working towards the ability to specify elevations for a polygon in it's
intermediate mode.  The goal then is that these elevations would be
preserved throughout the tile construction process and the surrounding
geometry would fill in without gaps.  This has potential applications for
airports and runways of course as well as roads, rivers, streams, railroads,
or any other object where we might want to control the final elevation in
advance.
2003-03-12 18:23:31 +00:00
curt
af89a8a205 Add a utility to reassemble all the array files for a 1x1 degree area and
write them out in a dumb ascii array format.
2003-03-11 20:22:16 +00:00
curt
7c3f6dd15d Dohhh, I knew I would screw it up the first time. But no, I doubly screwed
it up.  Read the rows from bottom to top rather than top to bottom and
flipped row/col ...
2003-03-11 20:21:30 +00:00
curt
c9757cb753 Add the ability to extract out an individual elev by array position rather
than only by lat/lon.
2003-03-11 20:20:04 +00:00
curt
b3935db989 Add back code to clip polygons against land mass. This temporarily breaks
the ability for roads/railways to bridge ocean, but I hope to get that fixed
soon.
2003-03-11 20:19:09 +00:00
curt
ea58728f5c With the latest version of the libnurbs++, the include file extension has
changed from .hh -> .h
Generate a complete enclosing area around the airport including taxiways,
  not just runways.
2003-03-11 20:17:57 +00:00
curt
1bfc2da8ee Fix a compile problem for some platforms/compilers. 2003-03-11 16:04:49 +00:00
curt
6c26352508 Avoid telling the nurbs library to do something it can't do (resulting
in a segfault.)
2003-03-10 15:01:08 +00:00
curt
4bb5decbcb A simple perl::GD script to convert .hgt to a .png for visualization purposes.
The explicite draw each pixel method is inefficient, but used anyway to make
it utterly clear what the data order is in the original .hgt file.
2003-03-10 14:56:12 +00:00
curt
266772ee39 Add a routine to dump out the .hgt data in a simplistic ascii format. 2003-03-10 14:54:42 +00:00
curt
bf96033516 Tweaking parameters. 2003-03-10 03:00:59 +00:00
curt
c986802faa The resulting airport surfaces still had too much undulation from the noise
in the DEM data.  Coarsen the nurbs grid and average some surrounding data
to hide the noise.
2003-03-09 19:19:19 +00:00
curt
846473a424 Make each representative grid point the average of a larger set of points. 2003-03-09 18:51:00 +00:00
curt
c170e77854 Switch to calculating node elevations based on the nurbs surface rather
than raw dem data.
2003-03-09 18:13:53 +00:00
curt
abd30e0352 Initial revsion of testnurbs.cxx which exercises some basic capabilities of
the nurbs++ library.
2003-03-09 18:12:25 +00:00
curt
15ae058d4a First stab at code to build a nurbs surface that approximates the surface
of an airport.
2003-03-09 18:11:29 +00:00
curt
83388f0c38 Switch to bool return types. 2003-03-09 17:27:07 +00:00
curt
0d53ec0be0 Fill in "void" data with surrounding data. 2003-03-09 17:22:22 +00:00
curt
e55881e063 More informative output. 2003-03-09 17:21:47 +00:00
curt
887297d8d0 A slightly more flexible way to find the best elevation data. 2003-03-08 03:25:05 +00:00
curt
e7d08d90d1 A couple minor changes to this helper script. 2003-03-08 01:44:28 +00:00
curt
e6c1dc4c0c Rewrite the line to polygon making routine to (hopefully) make the
line widths consistant and accurate always.
2003-03-08 01:43:47 +00:00
curt
1a741df940 Remove an unneeded define. 2003-03-08 01:42:46 +00:00
curt
1a46456fbd Use .arr as the intermediate height field rather than .dem since .dem
implies a different format.
2003-02-27 21:19:00 +00:00
curt
e483bf0a34 Switch to using .arr as the intermediate height elevation array file extension. 2003-02-27 21:13:17 +00:00
curt
15ba15538b Output file is written with a ".arr" (Array) extension since it's no longer
in .dem format.  The .arr format is a much simpler (and a bit less flexible)
specifically for use as an intermediate format when building scenery.  Any
number of various raw terrain formats could be translated into the common
.arr format which then greatly simplifies life for the build tiles util.
2003-02-27 21:06:57 +00:00
curt
d11e7c7b3f First crack at a Prep utility to process SRTM "hgt" data into TerraGear's
intermediate format.
2003-02-26 21:39:27 +00:00
curt
61764b286d Renamed FGTexParms -> TGTexParams. 2003-02-26 21:20:43 +00:00
curt
0e4f17ad51 Rename FGRunway -> TGRunway. 2003-02-26 21:16:43 +00:00
curt
62a3a1936c Rename FGSuperPoly -> TGSuperPoly 2003-02-26 21:09:39 +00:00
curt
bd1b254506 Rename: FGPolygon to TGPolygon 2003-02-26 20:59:34 +00:00
curt
7709953518 Rename: FGGenFans -> TGGenFans 2003-02-26 20:36:15 +00:00
curt
61445e9af6 Renaming:
- FGContourNode -> TGContourNode
 - FGTriNodes    -> TGTriNodes
 - FGTriSeg      -> TGTriSeg
 - FGTriSegments -> TGTriSegments
2003-02-26 20:25:29 +00:00
curt
d2206e9214 Rename: FGDem -> TGDem 2003-02-26 20:04:12 +00:00
curt
0a1108e494 Rename: FGArray -> TGArray 2003-02-26 19:59:25 +00:00
curt
698fb1b869 Add HGT subdir 2003-02-26 19:57:04 +00:00
curt
f048b73a9a Clean up various accumulated cruft. 2003-02-26 19:56:39 +00:00
curt
1d71909929 Initial revision of code to read SRTM "hgt" format data. 2003-02-26 19:30:25 +00:00
curt
38c42b34fb Additional tweaks for 0.0.5 release. 2003-02-25 19:16:13 +00:00
curt
f56af62248 Various pre-0.0.5 release tweaks. 2003-02-25 17:58:40 +00:00
curt
927540c8b1 One more Irix tweak. 2003-01-08 16:29:04 +00:00
curt
8b269dc000 Erik Hofman:
A big honkin' set of minor tweaks to bring TerraGear into Irix compliance.
2003-01-07 22:46:51 +00:00
curt
27a068f721 Various fixes and tweaks. 2003-01-07 19:48:32 +00:00
curt
bb4c4f6b13 First stab at a utility to fetch scenery based on the current flightgear
position.

Terrasync runs as a separate process and accepts the --atlas=port format.
The fgfs output tells the terrasync util where FlightGear is currently flying.
Terrasync will then issue the appropriate commands to rsync the surrounding
areas to your local scenery directory.

As you fly, terrasync will periodically refresh and pull any new scenery tiles
in the vicinity.

This also works if the scenery on the scenery server is update.  Rsync will
pull any missing files, or any updated files.

There is a chicken/egg problem when you first start up in a brand new area.
FlightGear is expecting the scenery to be there *now* but it hasn't been
fetched yet.  I suppose without making a more complex protocol, the user
will need to be aware of this.  The user could restart flightgear after the
initial rsync completes, and then after that everything should be good,
assuming the user has the necessary bandwidth to keep up with flight speeds.

Final notes:

At the moment Alex Perry has a partial rsync server, but I don't know it's
status.  I hope to have a full server up and running at some point soon.

Currently the terragear utility just echos the commands it would run to
rsync the data, it doesn't actually run the commands.  This is a work in
progress.
2002-11-23 03:17:47 +00:00
curt
58bd28bb03 Make centerline light generation more robust for ultra short runways.
This keeps us from generation a bogus output file that could crash fgfs.
2002-11-22 22:00:08 +00:00
curt
8c992abfa4 Julian Foad:
- In runway error message, say which runway.
2002-11-11 15:19:56 +00:00
curt
5bb24ff286 Julian Foad:
- Put a space between arguments and redirection operator: looks nicer
  and may be necessary in some circumstances.
- Add missing option "--min-angle" to help text.
2002-11-11 15:19:34 +00:00
curt
ec83d7a39b Julian Foad:
- Remove redundant "const" from return-by-value type.
- Rearrange function to avoid sometimes-unused variables (compiler warning).
2002-11-11 15:19:04 +00:00
curt
c76dff0abf Fix a stupid bug in flattening approach lighting (used "i" rather than "j"
for the indexing variable.)
2002-11-09 17:02:10 +00:00
curt
1ecf81c25b Make the superpoly flag a string rather than an int so we can use it to
convey a wider range of information.
2002-11-09 16:40:20 +00:00
curt
ab5ae52e7d Force each light in an approach lighting groups to have the same elevation
equal to the elevation of the highest light.
Approach lighting systems don't rise and fall with the prevailing terrain.
This prevents portions of the approach lighting system from dipping below
ground level in cases where the surrounding terrain is simplified and doesn't
perfectly match the DEM data.
2002-11-08 20:36:18 +00:00
curt
5f502fc76b This falls under the oops category or perhaps I was uncharacteristically
confused by the alphabet soup.

- Forgot to impliment the SALS(F) version of SALS approach configuration.
- Was generating SSALS when the system was requesting SALSF.
2002-11-04 20:04:24 +00:00
curt
00f4c61073 - Implimented ODALS.
- Added threshold lights to runways that have edge lights but no other
  approach configuration that would have caused threshold lights to be
  created.
2002-11-04 16:30:26 +00:00
david
9af342a033 Patch from Frederic Bouvier:
I had a segfault in case result.size() is 0 because result[i] is used
before knowing it exists. I inverted the test and it now goes well.
2002-11-01 10:49:49 +00:00
curt
276ad45d0e Fix runway "0" problem.
Fix problem with skirt node not being found in node list.
Other various tweaks.
2002-11-01 04:44:26 +00:00
curt
9f6fdee612 Use wgs_84 math to layout runways. My original method was a little backwards,
it involved creating a 2d runway object of the right size, rotating it and then
trying to back solve for the actual lon/lat.  This and a few other problems was
causing problems with subsequent texture coordinate calcs for the runway
surface textures.  It also could have contributed to runways/lighting being
slightly misaligned with the ILS's.  Then lots of minor cascading changes as a
result.
2002-10-31 19:59:37 +00:00
david
9d44a4ae64 Commented out unqualified cout statement. 2002-10-26 16:54:07 +00:00
david
2b660877a3 Don't generate a DEM tile when all elevations are zero. This should
save about 70% worldwide with the GTOPO30 (less with the USGS DEM-3).
2002-10-26 16:50:50 +00:00
curt
cb30b2d474 Oops, missed a needed change. 2002-10-26 01:22:44 +00:00
curt
51287d6785 Taxiways look a bit better if we insert them in sorted order from larger
to smaller.
2002-10-25 17:17:34 +00:00
curt
53a2f9c347 Simplify runway texture coordinate generation. 2002-10-25 16:52:01 +00:00
curt
8817ba7454 First pass at new runway layout. 2002-10-25 14:46:09 +00:00
curt
7368effd9e First crack at generating taxiway lights (with a normal vector of up.) 2002-10-22 03:56:12 +00:00
curt
a20c93b301 Added support of SALS (being phased out, but there are still a few
installations around in the US and Europe.)
2002-10-22 01:57:12 +00:00
curt
37f5d14616 Caution, check point, alsf 1/2 airport generation may not work correctly at the moment. 2002-10-22 01:14:54 +00:00
david
a240a50954 Corrected a typo. 2002-10-19 15:46:12 +00:00
david
aaaa59235b Added --chunk argument to simplify generating airports for a specific
chunk (like w130n30).
2002-10-19 15:42:50 +00:00
david
3a4ee63f3f Fix cout and endl not in the std:: namespace. 2002-10-18 22:26:13 +00:00
david
b659705c95 Update ignored files. 2002-10-18 19:27:09 +00:00
david
8f9fd4137d Avoid shadowing parameter. 2002-10-18 19:26:38 +00:00
curt
b2ee8d6fa3 Add ALSF-1, MALS, MALSF, and MALSR. 2002-10-18 18:29:18 +00:00
curt
c2f620744a Added support for generating SSALS, SSALF, and SSALR approach lighting schemes. 2002-10-18 02:55:41 +00:00
curt
e58523db01 Make ALSF-II lighting scheme. 2002-10-17 23:09:44 +00:00
curt
6ebfa5d3b7 Threshold lights. 2002-10-17 15:52:00 +00:00
curt
1e15eae599 Added touchdown zone lights and reil lights. 2002-10-17 02:46:47 +00:00
curt
49ba2555d9 The center line lights are packed closer together so they look brighter.
I'm going to make them less intense than the edge lighting.
2002-10-16 22:38:47 +00:00
curt
5e9e89596a Update edge lighting so last 2000' are yellow.
Impliment center line lighting.
2002-10-16 22:23:34 +00:00
curt
c9584384d3 Better fix reciprical runway heading for vasi too. 2002-10-09 16:46:16 +00:00
curt
66bacda3ba Added support for PAPI, and oh yeah, definitely smoking crack on the
reciprical runway heading calculation.
2002-10-09 16:40:12 +00:00
curt
21153db715 Various tweaks. 2002-10-09 03:39:20 +00:00
curt
69c741fd64 Added necessary infrastructure to manage runway light generation. 2002-10-09 03:37:35 +00:00
curt
4fb0ca1e2b Beginning work on generating/placing VASI lights.
Ooops, I noticed my light infrastructure is insufficient, I need to add
support for creating multiple groups of lights with different types.
2002-10-08 22:25:01 +00:00
curt
9b63deeb03 Updated dem libs to support z units == 1 (feet).
This is not tested since I do not have data in feet to work with.
2002-10-08 15:28:53 +00:00
curt
fbb232280e Frederic Bouvier:
Well, I found a bug in VpfTile that prevents the function getTileSubdir
to return the correct value.

In that case getTileSubdir was returning the content of a local
variable (subdir) that is destroyed before used outside. Usually,
it generates a segfault with MSVC but here, the returned string
was "". The patch returns the value of the string and tgpvf is
going well so far.
2002-10-07 15:36:26 +00:00
curt
43a271c396 Fixed a horrendous bug with generating runway lighting direction vectors. 2002-10-06 03:45:43 +00:00
david
374bca92c7 Replaced strtof with ANSI C strtod as suggested by Frederic Bouvier. 2002-08-31 17:40:00 +00:00
david
ee66876d21 Patch from Julian Foad to reduce debugging output. 2002-08-31 17:31:16 +00:00
curt
8c35817530 Clean up some old remnants of HAVE_ZLIB_H 2002-08-30 03:00:21 +00:00
curt
65d6f9c623 Tweaks to bring the automake/conf scripts into compliance. 2002-08-29 22:12:43 +00:00
david
fe95a6aab4 Moved the Rectangle and Line classes and the geometry utility
functions into the "tg" namespace to avoid conflicts with Windows
headers.
2002-08-14 15:41:54 +00:00
david
232d51333c Make min/max area work more reliably. 2002-08-03 14:10:35 +00:00
david
8ab0a45ad7 Renamed the --area option to --material.
Added --min-area and --max-area options to specify the minimum and
maximum area of a polygon's bounding rectangle in meters square.  This
option will make it possible to use different textures for big lakes
and small ponds, or for large cities and smaller towns.
2002-08-03 14:01:48 +00:00
david
79d653b597 Added a makeBounds function to get a bounding rectangle for a polygon. 2002-08-03 14:00:26 +00:00
david
8b990aa02a Changed exception to a warning when building skirt. 2002-08-03 12:45:23 +00:00
david
9d7b4e94b8 Modified to add the new cleared area around airports. 2002-08-02 20:52:21 +00:00
david
7e959be9e8 Modified to clip a runway clearing against water, so that extra land
isn't created.
2002-08-02 20:52:04 +00:00
david
3357337946 Modified to add a cleared area around every runway, 200ft to each side
and 500ft off each end.
2002-08-02 20:51:40 +00:00
david
3dff29e8cf Added missing copy constructor that prevented tgvpf from working properly. 2002-07-31 20:36:22 +00:00
david
f37bdfd43d Corrected error in the sample. 2002-07-23 14:38:49 +00:00
david
7f957c2269 Added tguserdef, a utility for adding user-defined points, lines, and
polygons to scenery.  It uses the regular XML property format, which
users can create easily in a text editor.  See
src/Prep/UserDef/sample.xml for examples.
2002-07-23 14:33:53 +00:00
david
0349ab6241 Removed more duplicate code. 2002-07-23 14:32:52 +00:00
david
598500edb0 Added a parseChunk function for parsing chunk strings like w080n40. 2002-07-23 14:32:34 +00:00
david
14488cda6a Added toPoly method (this should probably be a makePolygon in utils). 2002-07-23 14:32:01 +00:00
david
881fc4ad73 Removed duplicate code and use the new classes and functions in
Lib/Geometry instead.
2002-07-23 01:33:10 +00:00
david
4d37243a5b Added a convenience constructor, non-const accessors, and an
isOverlapping method to test for overlap with another rectangle.
2002-07-23 01:32:40 +00:00
david
1f2d16fe6c Added a getBounds() method to get the bounding rectangle for the line. 2002-07-23 01:31:58 +00:00
david
f30ffc0d1f Added new independent classes for a bounding rectangle and a
multi-segment line, then pulled some local code out of tgvpf into
util.[ch]xx so that it can be used by other modules.
2002-07-22 22:01:39 +00:00
curt
6bd8a08f8b Additional tweaks to runway lighting (these have been sitting around
for a couple weeks ... I must have forgotten to commit.)
2002-06-15 13:39:45 +00:00
curt
3ace596df0 Cameron Moore:
polygon.cxx.diff
- Fixed an incorrect delete[] call that could fail on a non-Linux
  platform during genapts

split-bin.cxx.diff
- Fixed uninitialized z() values that were being printed during tgvpf
2002-06-15 13:31:51 +00:00
david
6e5f833cc3 ANSI C++ fixes; use SimGear logging instead of iostream. 2002-05-21 17:05:10 +00:00
curt
14a58f9bdf Changes to track updates in simgear. 2002-05-13 15:12:51 +00:00
david
58634b2dfc - use SG_LOG throughout instead of cout/cerr
- in main.cxx, make the default log level SG_INFO rather than SG_DEBUG
  (developers can easily change it back during testing)

- replace all instances of exit() with an exception throw, caught in
  main.cxx, so that the program can go on processing the rest of the
  airports; to restore the old behaviour, just add an exit() to the
  catch clause

(Unfortunately, this still does not guarantee a full processing run,
because triangle.c in the library can invoke exit() when it gets
hopelessly confused.)
2002-03-22 15:05:54 +00:00
david
f42cdc4578 Added --min-lat, --max-lat, --min-lon, and --max-lon arguments to
build airports for a limited area.
2002-03-20 22:52:26 +00:00
curt
82f409ba67 Oops, fixed some 'typo' type bugs I missed in the first go around. 2002-03-13 05:08:21 +00:00
curt
a22b83516b More incremental work towards automatically generating runway lights. 2002-03-13 03:51:39 +00:00
david
5c19f61da1 Fixed namespace bugs that kept G++ 3.0 from compiling (mostly improper
use of namespaces with cout/cerr/endl).
2002-02-28 15:34:12 +00:00
curt
750437b242 Extremely *alpha* start at generating sample runway lights. 2002-02-27 23:08:15 +00:00
curt
8f07f918ae Roughing in some initial structure to facilitate runway lighting. 2002-02-27 18:58:06 +00:00
curt
5cbacb4a7a Misc tweaks. 2002-02-27 18:53:10 +00:00
curt
645abd08c1 Minor tweaks from last round of photo inserting. 2002-02-27 18:52:40 +00:00
curt
c5f9e48267 Add a skirt around airport as a first line defense against pixel
wide border gaps.
2002-02-25 15:22:32 +00:00
curt
0c7c478ce2 Split 'close_enough() function into 2d and 3d versions. 2002-02-25 15:18:57 +00:00
curt
4346b42897 Add hole flag to output 2002-02-25 15:18:06 +00:00
curt
af24dc6d24 Did a bit of code restructuring. Hopefully to open things up to add
runway lighting.
2002-02-25 05:11:55 +00:00
david
90fe08a7c0 Cygwin patches from Dave Luff. 2002-01-30 14:10:00 +00:00
david
d2b2afc33d Cleaned up errors and warnings, mostly namespace problems with cout
and cerr, but also some SimGear linking problems.
2002-01-30 13:52:37 +00:00
david
bb4f7ffdfb Ignore more autogenerated files. 2001-12-30 02:24:10 +00:00
david
d3515ccc03 Bug fixes and improvements. 2001-12-30 02:22:11 +00:00
david
bc882d259d Added new area types Bog, Sand, Lava, FloodLand, IntermittentStream,
and PackIce, to support vmap0.
2001-12-30 02:21:23 +00:00
david
2b8ef0e7ae Removed autogenerated file from CVS. 2001-12-30 02:18:17 +00:00
david
a4e1215761 Ignore files for autogenerated files. 2001-12-30 02:16:03 +00:00
curt
c0b4508955 - fixes to support clamping to a small grid (improves triangulation)
(These are not yet enabled by default because we haven't addressed what
  happens when snapping a hole boundary, but not the original object to
  fit in the hole.)
2001-09-18 21:51:24 +00:00
curt
d1424d75c7 - add --height and --width options to build an area less than 10x10 2001-09-18 21:50:18 +00:00
curt
d8dc110d99 - don't clip against landmass (no longer suitable with new poly types)
- reduce the minimum area for a non-sliver by two orders of magnitude,
  to allow small road, river, and railroad segments
2001-09-18 21:50:06 +00:00
curt
bc0e84e259 - yet more bug-fixes to deal with padding IFO records to 80
characters; now works with DCW ponet files
- fixed another minor bug
- compatibility fixes
2001-09-18 21:28:47 +00:00
curt
e5028b5637 - added snap() function to snap a polygon to a grid 2001-09-18 21:27:54 +00:00
curt
afbe4fccbd - added Town area type for future use
- moved Town below Urban in priority list
- give freeways, roads, and railroads priority over lakes of various
  sorts
2001-09-18 21:27:33 +00:00
curt
c69d333d32 - added new program, tgvpf, to generate polygons from Vector Product
Format databases.
2001-09-18 21:24:14 +00:00
curt
3050aca5c7 - new library to support NIMA's Vector Product Format 2001-09-18 21:17:48 +00:00
curt
4e43a03fcb Shuffling. 2001-09-18 19:41:46 +00:00
curt
4f82e609e4 Rearranging tools. 2001-09-18 19:40:49 +00:00
curt
0bf8231029 Removed ... 2001-09-18 18:07:59 +00:00
curt
7a4bac978e Various Irix fixes. Thanks Erik! 2001-07-31 20:14:54 +00:00
curt
e03579349b Updated color scheme. 2001-07-31 20:14:36 +00:00
curt
f4d1b34776 Added support for tie down areas (width > 150 feet) and support for lakebed
taxiway types.
2001-07-31 20:13:56 +00:00
curt
fd2fc30ef5 - added support for points coverages -- can generate rectangular area
from points (i.e. villages)
2001-07-30 19:58:46 +00:00
curt
343dd022d0 - fixed bug that caused character-field (20-1) IFO fields to fail if they
straddled record boundaries; it appears the the E00 format expects
  all records to be right-padded with spaces to a length of 80 including
  the final newline (!!!)
- added some comments in case anyone is ever foolish enough to try to
  extend this library
2001-07-30 19:58:32 +00:00
curt
8506a3f4d5 - modified landcover code to borrow a cover type from an adjoining
tile if it ends up as default -- this will help avoid resolution
  errors near rivers, urban areas, etc.
2001-07-30 19:58:10 +00:00
curt
f9a8370433 Tweak size of grass area surrounding taxiways. 2001-07-16 01:57:46 +00:00
curt
19d9392863 Renamed libgpc to libgenpolyclip to avoid a conflict with the gnu pascal
compiler.
2001-07-11 00:43:55 +00:00
curt
502b396259 Initial revision. 2001-06-23 02:14:37 +00:00
curt
9c9feac1e8 Tweaks to work with the .stg / .btg naming convention. 2001-06-22 19:29:59 +00:00
curt
5023d2e581 Added a general purpose int field for various uses. Currently used to
differentiate between runway and taxiway polygons so we can handle their
  texturing needs differently.
2001-06-22 19:29:32 +00:00
curt
a812248191 Modified to use the master .stg file standard.
Fixed a bug in triangulating that was potentially overwriting other
  memory when creating the hole list to pass to the triangulator.  This
  fixes a lot of glitches!
2001-06-22 19:28:29 +00:00
curt
6c28c81180 Add support for generating taxiways.
Airport area is no longer the convex hull, but is instead just the area that
surrounds the runway and taxiways.
2001-06-22 19:26:09 +00:00
curt
2272a29287 Minor tweaks to track changes in simgear. 2001-05-16 12:27:48 +00:00
curt
edd192597b Initial revision. 2001-05-15 02:03:19 +00:00
curt
abf4e0ad08 Tweaks for Photo inserter util. 2001-05-15 02:03:00 +00:00
curt
472ac57338 More work on photo inserter. 2001-05-03 22:20:38 +00:00
curt
b452149e06 Working on a utility for inserting some simple photo-real scenery into
terragear scenery.
2001-05-03 02:00:50 +00:00
curt
d517af9042 Initial revision. 2001-04-28 13:24:04 +00:00
curt
483708977a Various reshufflings of directory layout. 2001-04-25 18:55:19 +00:00
curt
587763000e Small tweaks. 2001-04-25 15:06:17 +00:00
curt
0283cdf05b Added support (contributed by David Luff) for UK OSBG36 coordinate systems as
it impacts texture coordinates.
2001-04-24 21:10:27 +00:00
curt
522bff9911 Initial revision. 2001-04-24 21:09:49 +00:00
curt
f6e553a1b6 SGD_PI. 2001-03-25 12:10:21 +00:00
curt
56745955f3 FG_ to SG_ changees. 2001-03-25 12:07:07 +00:00
curt
9acc48acce SG-ified logstream. 2001-03-24 05:06:35 +00:00
curt
f92570b07b SG_ namespace. 2001-03-24 03:56:19 +00:00
curt
0e8b7763b1 SG_ name space additions. 2001-03-24 03:34:04 +00:00
curt
29f155ae4a Teaks ... 2001-03-24 02:55:07 +00:00
curt
7ad217b1f1 FG_ to SG_ namespace changes. 2001-03-23 23:18:18 +00:00
curt
0b31b493d3 FG_ to SG_ namespace changes. 2001-03-23 21:59:33 +00:00
curt
17ca0ad2ea FG_HAVE_STD_INCLUDES -> SG_HAVE_STD_INCLUDES 2001-03-23 21:15:17 +00:00
curt
bafe3c969f Initial revision. 2001-02-03 01:02:46 +00:00
curt
528c12a682 These add a --min-angle options to fgfs-tools-client,
and make the E00 support a lot more robust.
2001-01-29 04:30:31 +00:00
curt
1190702047 Add libplibul support (plib >= 1.3.x) 2001-01-22 16:00:15 +00:00
curt
234e707b2d Tweaks to eliminate gaps between runway sections. 2001-01-13 22:41:09 +00:00
curt
9ceccae99c Tweaks. 2001-01-12 22:22:00 +00:00
curt
c702807a9b Tweaks for new SGBinObject interface. 2001-01-06 04:31:57 +00:00
curt
ff9e9d4783 Don't include scenery_version.hxx 2001-01-05 00:06:10 +00:00
curt
23c60b8b54 Write only the binary object. 2001-01-05 00:05:49 +00:00
curt
2b8f7a2135 Write out binary objects rather than ascii. 2001-01-05 00:05:02 +00:00
curt
8743f4591c Moved higher level output routines to simgear. Created a binary format. 2001-01-04 20:37:45 +00:00
curt
d794b0b117 Updated comments. 2001-01-04 20:36:36 +00:00
curt
f19229540c Removed some debugging output. 2001-01-04 20:36:18 +00:00
curt
688a82fc97 Added Lib/Output/ 2001-01-04 20:33:47 +00:00
curt
77ef53bd83 Initial revision. 2001-01-04 20:33:14 +00:00
curt
78368f7c38 Endianess tweaks. 2001-01-03 18:06:34 +00:00
curt
43f544d7df Tweaks/fixes for building airports. 2000-12-22 19:17:02 +00:00
curt
d44401402e Chasing down a bug in building the contour tree. Also tweaked the remove_dups()
routine in the process.
2000-12-22 02:33:37 +00:00
curt
583af21f9f Renamed FGBucket -> SGBucket. 2000-12-13 20:06:36 +00:00
curt
698ca7b1a6 Fixed a problem with dividing the tile up into land use areas (original scheme
left really tiny slivers on the edges.)
2000-11-29 20:17:27 +00:00
curt
ebd254dae0 Contributions from David Megginson: Added a new option, --cover, to
fgfs-construct and fgfs-tools-client.  The option takes an argument giving
the location of the land-cover raster file; if it is not specified,
land-cover is not built.

Curt tweaked the code that divides up the tile into land use squares but there
are still a couple slightly fishy things going on there.Z
2000-11-28 20:45:10 +00:00
curt
c8cc7e2a61 Contributed by Bruce Finney:
The following files have been changed to enable the latest Terragear CVS
to compile with MSVC++ 5.0

.\construct\clipper\clipper.cxx
        for( int i - lots of places

.\construct\genoutput\genobj.cxx
        fix directory logic for windows, line 320 and following

.\construct\main\main.cxx
        windows does not have an opendir function
        added code for windows directory functions
        disabled the mem allocation limit code - windows does not
        have similar functions
        for ( int i - several places

.\construct\match\match.cxx
        moved the definition of file and command outside of the ifdef line 420

.\lib\e00\e00.cxx
        for( int i  - several places

.\lib\e00\e00.cxx
        use simgear/compiler.h constructs

.\lib\geometry\contour_tree.hxx
        removed a cout statement

.\lib\geometry\poly_support.cxx
        added float.h  changed 1.0e+999 to DBL_MAX, windows doesn't go that big
        lots of for ( int i changes
        lines 193 and 208 no != operator defined - changed logic
        line 801 flag should be int, not bool, get_hole_flag returns int

.\lib\landcover\landcover.cxx
.\lib\landcover\landcover.hxx
        add include simgear/compiler.h
        see comments

.\lib\optimize\genfans.cxx
        function canonify added return at end, windows complains
        added using std  for cout and endl

.\lib\optimize\genstrips.cxx
        function tgGenStrips no return value, moved by_node into outer scope
        fix for ( int i ...

.\lib\poly2tri\construct.c
        added include <memory.h> for windows
        remove unused variables lines 435 & 437

.\lib\poly2tri\misc.c
        added HAVE_SYS_TIME_H logic for sys/time.h include file
        added logic to uses windows functions for time and rand

.\lib\poly2tri\monotone.c
        added include <memory.h> for windows
        lines 286-288 remove unused variables

.\lib\poly2tri\tri.c
        remove sys/time.h - no time functions called
        added include <memory.h> for windows

.\lib\polygon\polygon.cxx
        function polygon_to_tristrip will not compile I don't think the
        logic is complete, no returned data  added if else endif around
        function and polygon_to_tristrip_old, renamed _old function.
        Search of code reveals that function is not called by anyone.

.\lib\polygon\superpoly.cxx
        changed include <superpoly.hxx> to "superpoly.hxx"

.\lib\polygon\superpoly.hxx
        add include <windows.h> for windows before include <gl.h>
        needed for definitions used in Microsoft version of opengl

.\lib\shapelib\dbfopen.c
        added include files for windows
        lines 195-197 271-272 515-517 removed unused variables

.\lib\shapelib\shpopen.c
        added #include <stdlib.h> for malloc() and friends
        added include files for windows
        line 279 527 813 1127 removed unused variables
        line 827 cast result to int

.\lib\win32\mkdir.cpp
        documented function, remove debug lines

.\prep\demraw2ascii\main.c
        lines 46-50 remove unused variables

.\prep\demraw2ascii\rawdem.c
        line 47 changed logic to compile with MSVC
        line 244-256 set real constants to float, windows complains with
                double constants

.\prep\genairports\build.cxx
        lots of for ( int i  changes

.\prep\genairports\main.cxx
        fix mkdir logic for windows

.\prep\genairports\output.cxx
        added  using std  cout endl
        lots of for ( int i  changes
        fix mkdir logic for windows

.\prep\genairports\runway.cxx
        for ( int i  changes
        lines 117-118 161-162  remove default values for function parameters

.\prep\gshhs\main.cxx
        added using std cout

.\prep\shapefile\noaa_decode.cxx
.\prep\shapefile\shape_decode.cxx
        added using std  for cout
        lines 45-49 moved unused variables inside #if 0 block
2000-11-25 19:39:46 +00:00
curt
e08b755290 Contributions from David Megginson.
- increased maximum areas to 128 (for future growth), and added Road
  and Railroad areas
- changed the method of calculating the triangle centre in
  poly_support.hxx
- added a has_holes() method to polygon.hxx
- added a new library, e00, for reading ArcInfo e00 files (i.e. the
  free online ones from DCW and GeoGratis); it needs more work
- added a new prep utility, e00lines, for creating textured polygons
  out of e00 line data (with user-specified width and area type); this
  is useful for roads, railroads, rivers, and utility lines
2000-11-22 22:19:44 +00:00
curt
8a82c389ec Initial revision. 2000-11-22 22:17:58 +00:00
curt
a115f756c7 Added a routine to calculate triangle area.
Cleaned up some debugging output.
2000-11-22 20:42:18 +00:00
curt
59a35fbe8a Cleaned up some debugging output.
Added adjacent triangle area weighting for calculating vertices of nodes.
Check for super small or degenerate triangles which could blow up our face
  normal calculations.
2000-11-22 20:41:22 +00:00
curt
80062e205e Oops, fixed a typo in match.cxx. 2000-11-20 21:28:08 +00:00
curt
41733cf6cc This code does a lot of malloc()'ing of space, and in some cases blindly
expects the results to be zero'd out, even though this may not be gauranteed.
So I (Curt Olson, curt@flightgear.org) have added some code here
to explicitely zero out the space after it is malloc()'ed.
2000-11-20 17:01:13 +00:00
curt
e189a03b47 Added a test program for the triangulator. 2000-11-20 16:56:03 +00:00
curt
71ec8159a5 Added a print_tri_data() routine to dump complete triangulator data
structure to screen.
Added a zero_triangulateio() routine to zero a struct before use.
2000-11-20 16:55:23 +00:00
curt
b524989da4 Debugging tweak. 2000-11-20 16:53:52 +00:00
curt
4d530656ed Cleanups relating to how we prepair the data to pass to the Shewchuk
triangulator.
2000-11-20 16:53:32 +00:00
curt
5e5f43e0eb Fixed a bug with corner matching when an airport hole sits on top of a corner.
Then fixed a follow up bug in corner handling that was introduced by the
first fix.
2000-11-20 16:44:29 +00:00
curt
f90cffd10d In the process of trying to track down bugs in the construct process I
redid slightly how the land cover squares are calculated.
2000-11-20 16:43:30 +00:00
curt
97a83fb03c Fixed a bug that occured when an airport was located on a tile corner. The
first tile to build that corner gets to define the shared point, but since
it was clipped out by the airport hole, the value defaulted to randomness.
This was then propogated on to adjacent tiles.  I now calculate the corner
value in advance so the code is not dependent on finding the corner in the
resulting point set.
2000-11-16 16:09:05 +00:00
curt
231af62823 Cleaned up a bit of debugging trash. 2000-11-15 23:10:11 +00:00
curt
1388ea146f Changes to try to track down some "point in a contour" bugs. The terrain
was stressing this code more that airports (which was where the code was
developed.)
2000-11-15 22:36:40 +00:00
curt
6767777246 Avoid a warning. 2000-11-15 20:23:54 +00:00
curt
fdd4bd6864 Tweak area names and orders. 2000-11-15 20:23:32 +00:00
curt
d280af2cea Change method of calculating a triangle center point. 2000-11-15 20:23:10 +00:00
curt
e7930a49fe Fix a comment. 2000-11-15 20:22:40 +00:00
curt
8d99adeda2 Up max node count to 4000
Temporarily disable land cover for testing purposes.
2000-11-15 20:22:22 +00:00
curt
84e7866b35 Minor tweaks to clipping rules. 2000-11-15 20:21:47 +00:00
curt
5982e567fd Initial revision. 2000-11-13 19:15:09 +00:00
curt
9162b789f5 Landcover/landuse changes by david megginson to group like chunks together into a single polygon.
Additional degeneracy and bad polygon screening.
Updates to ShapeDecode to handle NOAA landuse/cover shape files.
2000-11-13 15:19:39 +00:00
curt
48b8c986bb Moved simple split over to Lib/Polygon. 2000-11-10 19:39:57 +00:00
curt
0e3238d24a Initial revision. 2000-11-08 15:28:46 +00:00
curt
687af305b8 Cygwin changes.
Attempt to use new point inside poly routine.
2000-11-06 18:02:46 +00:00
curt
5619a6b473 Updates from David Megginson to support the USGS global land use/cover raster
data.
2000-11-02 21:21:49 +00:00
curt
25034ea180 Tweaks to track some minor naming changes in simgear. 2000-10-13 16:33:27 +00:00
curt
1f57a4bd06 Changed builddir -> srcdir for out of source tree builds. 2000-09-20 21:45:25 +00:00
curt
79d86a25ac Many changes to support airport modeling approach. 2000-09-20 21:44:59 +00:00
curt
08166715b3 Command line interface tweaks. 2000-09-20 21:44:16 +00:00
curt
683325ae42 Switched how textures were applied a bit (rotated by 90 degrees) since this
is a more sensible alignment.
2000-09-13 01:28:04 +00:00
curt
c1c1b59fae Updated runway texture layout in designator block. 2000-09-11 00:36:59 +00:00
curt
5606d93796 Fixed "rest" texture application. 2000-09-11 00:35:59 +00:00
curt
c9930e784e Whups, write out the AirportArea that has been segmented so it fits the
airport to go in the hole.
2000-08-30 14:04:34 +00:00
curt
3802a0385f Updates ... 2000-08-29 21:16:54 +00:00
curt
ef22db9c3a More tweaks as I work through the airport database. 2000-08-27 16:22:26 +00:00
curt
a72efe39c6 More updates and tweaks to make the genairport tools more robust. 2000-08-27 04:47:12 +00:00
curt
373ed3990d Ironing out bugs ... 2000-08-26 01:23:58 +00:00
curt
b6fc19c0bc Handle too-short visual runways for now by converting them to simple runways. 2000-08-26 01:19:13 +00:00
curt
e2ab3bff48 Ahh, there is a runway type "G" ... 2000-08-26 01:02:30 +00:00
curt
de4f235115 Tweaked to handle concrete textures as well as turf and dirt runways. 2000-08-26 00:52:07 +00:00
curt
4a68b387df Does proper runway designators now. 2000-08-25 21:55:30 +00:00
curt
11a577a079 Added non-precision and visual runway markings as well. 2000-08-24 22:15:25 +00:00
curt
05dd9aa7b3 Added more precision runway sections. 2000-08-24 16:09:49 +00:00
curt
33ea616de8 Added debugging output ... on the hunt of a T intersection problem. 2000-08-24 13:15:15 +00:00
curt
18d67137a3 Added a total_size() method ... for rough debugging. 2000-08-24 04:39:04 +00:00
curt
de2a9a21a8 A bit more debugging ... 2000-08-24 04:38:39 +00:00
curt
c2c4feb872 More work on runway markings. 2000-08-24 03:49:05 +00:00
curt
29910a6fe3 Initial revision. 2000-08-23 22:07:30 +00:00
curt
3d4c9c9c25 Started work on precision runway markings. 2000-08-23 22:07:14 +00:00
curt
d70c4eca1c Added code to chop up extra long line segments. 2000-08-22 22:06:47 +00:00
curt
e6f361eb80 Initial revision. 2000-08-22 21:26:32 +00:00
curt
b1b465c0fd Work begins on "superpoly". 2000-08-22 21:24:55 +00:00
curt
c490afd971 Modifications towards doing more sensible runway surfaces and markings. 2000-08-22 21:23:07 +00:00
curt
e46696de86 David Megginson's patches allowing specification of an arbitrary list of
input directories.
2000-08-11 19:05:30 +00:00
curt
e2c3b06d59 More bug fixes for airport generation. 2000-06-09 03:25:47 +00:00
curt
7e7fe8347c Updates and bug fixes; first complete pass through data set. 2000-06-07 02:33:33 +00:00
curt
1fcaf3b7fd Progress: we are now generating really crude airports. 2000-06-05 22:34:36 +00:00
curt
a6675a1d5a Initial revision. 2000-06-05 22:34:12 +00:00
curt
43491f4ec0 Progress, we are now generating really crude airports. 2000-06-05 22:34:00 +00:00
curt
3095364857 Initial revision. 2000-06-05 11:54:56 +00:00
curt
e96928e8ba Continued work on polygon tesselation. 2000-06-05 11:26:22 +00:00
curt
5364692178 Working on generalized polygon tesselation. 2000-06-05 04:01:19 +00:00
curt
b7d76af6c1 Minor rearrangements. 2000-05-31 01:34:44 +00:00
curt
c54e5e8adc MSVC5 combatibility tweaks contributed by Bruce Finney. 2000-05-30 21:11:15 +00:00
curt
66dbea0aaa Initial revision. 2000-05-30 20:44:17 +00:00
curt
f6392100ac More work on triangulation and finding a point inside of each contour/hole
of a polygon.
2000-05-09 12:07:24 +00:00
curt
7e21f8b28f Working on polygon triangulation/tesselation. 2000-05-09 00:24:41 +00:00
curt
3c914ac718 Minor reorgs. 2000-05-08 17:25:09 +00:00
curt
665f663043 Initial revision. 2000-05-08 17:17:43 +00:00
curt
16ef7b7bbc Code reorg. 2000-05-08 17:17:21 +00:00
curt
c963e6304a Minor code reorg. 2000-05-08 17:04:23 +00:00
curt
34db12893e Added support for GSHHS lakes, islands, and ponds. 2000-05-06 20:01:58 +00:00
curt
3c558ab7e6 Working on adding "Shewshunk triangle" support for triangulating polygons
and for reliably determining "a" point inside a polygon.
2000-05-06 20:01:34 +00:00
curt
07e2840980 Clip all land use data to GSHHS land mask so that lower res data won't
mess up our coast lines.
Changed some default names of Work directories ...
Add in support for GSHHS lakes, islands, and ponds.
Updated stats for parallel scenery build server.
2000-05-06 19:55:30 +00:00
curt
082eb13225 Recovered these files from old source. 2000-05-05 14:29:48 +00:00
curt
4268764049 More configuration updates. 2000-04-06 19:37:37 +00:00
curt
9b59736ebc Updates to get a working compile/configuration. 2000-04-06 18:44:37 +00:00
curt
58ee35bb4c Configuration tweaks. 2000-04-06 18:25:52 +00:00
curt
398ce1d3d4 Removed some mat3.h dependencies and other tweaks. 2000-04-06 18:00:14 +00:00
curt
bc72af0689 Updates. 2000-04-06 17:53:52 +00:00
curt
21d4dc49c8 Added. 2000-02-17 03:24:13 +00:00
curt
13cbdf7ecc More reorg. 2000-02-16 22:01:47 +00:00
curt
c687e7563b Restructuring directories/layout. 2000-02-14 17:38:44 +00:00
curt
71927623cd Added a missing file. 2000-02-09 20:10:17 +00:00
curt
b20be51d65 Initial revision 2000-02-09 19:51:45 +00:00