home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / disks / disk396.lzh / RoadRoute / Road_README < prev    next >
Text File  |  1990-10-29  |  6KB  |  131 lines

  1. RoadRoute1.6 - A start at a "trip planner"
  2.                 Jim Butterfield .. August 1990
  3.  
  4. Ya got this file of cities (Called "Cities") showing a lot of places in
  5. North America, but not all of 'em.  (Add the ones you want, using your
  6. favorite editor).
  7.  
  8. Ya got this file of road segments (Called "Routes") showing roads
  9. connecting the cities; most of the interstates, and quite a few
  10. others that seem handy.  (Add your own road segments if they are
  11. not already there).  The segments show mileage and driving time,
  12. this last worked out via conservative and legal spped framework.
  13. If you're a speed demon, try not to change the numbers .. just
  14. divide the time by two or whatever your thing is.  And when you
  15. add routes, keep 'em consistent, so that back roads don't start
  16. to look like throughways.
  17.  
  18. Program RoadRoute (compiled from Lattice C) reads the above files and
  19. sez how ya might get from one place to another.  The first version in
  20. Basic sorted out the logic flow but wasn't too quick; you'll like
  21. the speed of this C version much better.
  22.  
  23.  
  24. The 1.6 update is no major trauma ... but since RoadRoute was used
  25. in a Computer Fair environment, where the objective was to output
  26. the resulting itinerary on a piece of paper, and have the papaer
  27. ejected from the printer so as to allow it to be torn off and
  28. handed to the fair visitor .. I added the code to do this.
  29.  
  30. You've always been able to output to the printer by CLI command
  31. "RoadRoute >prt:" and can still do so.  The CLI method does NOT
  32. eject the paper after printing.  Your choice:  save paper or
  33. set up so as to produce handouts...
  34.  
  35. There is no limit to the number of cities or road links that may
  36. be put into RoadRoute.  I note, however, that a file set from
  37. West Germany that uses 911 cities and over 2000 roads generates
  38. a .l.o.n.g. pause before it asks the first question.  This time is
  39. spent linking roads to cities in an easily-trackable form; once
  40. that is done, the routing itself is calculated FAST.
  41.  
  42. I do NOT plan to do a regular revision of RoadRoute .. but new stuff
  43. floating in (esp from Germany) made it seem advisable .. this time.
  44.  
  45.  
  46. So .. you're interested in places not given in the original files?
  47. Say, you live in Erie, PA, and love to visit your auntie in
  48. Lake Havasu City, Arizona?  So you wanta add these?  No problem.
  49.  
  50. Step 1:  Add the city names to the Cities file using your favorite
  51. editor.  For someplace like Lake Havasu, you might like to slip
  52. in a few nearby cities, such as Needles and Kingman.
  53.  
  54. Step 2:  Start up your editor on the Routes file.  Don't worry
  55. about those numbers ahead of the city names .. the computer will
  56. know what to do if the numbers are not there.  Give road links
  57. hooking up to nearby points in all directions.  For Erie, this
  58. would be:  Buffalo to the east, Cleveland to the West, and
  59. Youngstown to the South (three new lines).
  60.    For Lake Havasu, you'd first want to hook up Kingman to
  61. Flagstaff, Las Vegas, and Needles; then Needles to Barstow.
  62. Finally, you can put in the details for Lake Havasu to Kingman
  63. and Needles; a total of six new lines.
  64.    Be sure to give for each line: two city names, distance,
  65. (sedate) driving time, and highway designation.
  66.  
  67.  
  68.  
  69.    No need to give state designation on the Routes file unless
  70. you have a city name that matches that of a city in another
  71. state.  More on that in a moment.
  72.    Some users have loaded up the data base with their local
  73. towns.  That's fine, but try to keep the information consistent.
  74. If my data sez Los Angeles to San Francisco is 7 hours, try not
  75. to supplement the list with LA-Bakersfield 30 minutes; Bksfield
  76. -SF 4 hours.  You might drive that way, but the data base would
  77. start to have inconsistencies.  See program RoadScan which helps
  78. to watch for this kind of thing.
  79.   If you want to add, say, Jacksonville, North Carolina, you'll
  80. need to think about the name:  there's also a Jacksonville,
  81. Florida, in the system.  No worry:  pop it in the Cities file
  82. anyway, and the computer will know what to do.  You can designate
  83. which Jacksonville you want by using a slash followed by the state
  84. name, e.g., Jacksonville/North Carolina.  If you don't do this,
  85. the computer will complain, showing you the Jacksonville entry in 
  86. the Routes file.  Athough it's finicky about file contents, it
  87. tries to show you the problem areas.
  88.  
  89.  
  90.   If programming stuff interests you:  this should be a simple
  91. program.  But "user friendliness", in the form of dialog on
  92. poorly identified places, takes up a little space.  A more
  93. important area is speed:  with hundreds of cities and many
  94. hundreds of routes in the system, linear searches become slow
  95. and painful.
  96.            As a result, you'll find several examples of "linked
  97. lists" here, one of them partly prioritized.  These help find
  98. duplicate city names; greatly speed the search for which routes
  99. apply to a given city; and direct the computer as to which
  100. city point should be searched next.
  101.              The program has no limit on the number of cities
  102. or routes that may be used; if your data base gets big you'll
  103. notice a hesitation when the program starts up.  To help with
  104. huge menu lists, which scrolled off the screen in version 1.0,
  105. the menu now comes in chunks of 15 items.  If you miss the
  106. desired city, you can roll the whole list again.
  107.             As I note with amazement that huge data bases are
  108. being built, I've expanded the max itinerary size to 100 lines.
  109.  
  110.  
  111.    Feel free to play with this.  If you want to rip out the
  112. existing map, and build a highly detailed map of your area,
  113. be my guest.  (Street maps, I suspect, wouldn't work too well
  114. because one-way streets are not allowed for here).
  115.    Building the files substantially bigger will cost you
  116. run time.  I agonized as to what should be left in and what
  117. taken out (Sorry if your city is not there .. but you can
  118. add it easily enough).
  119.    My data base is built from comparing a variety of sources:
  120. various maps, AAA data, and others.  Class of road, number of
  121. lanes, whether flat or hilly country; all are factored in.
  122. The information allows for "pit stops" - meals, gas, coffee -
  123. so that average speeds might seem lower than you would expect.  
  124. Hey - but you know your own countryside better than I possibly
  125. could - cut it to your own style.
  126.    A map?  It's quite possible, if you add "north/south,
  127. east/west" coordinates to the Cities file.  I did not do it
  128. here because it would be harder for you to add new cities...
  129. you'd have to know (and type in) the coordinates for each.
  130.  
  131.