	The enclosed programs are offered to the public for free.  Under no 
circumstances are they to be exchanged for profit.  These files may be 
reproduced, but please keep them together in the file DIZZY.ZIP.  Any 
questions regarding this material may be referred to the author, Paul Kunkel, 
by writing, by calling at a reasonable hour (Seattle), or by sending an 
e-mail message.

	Paul Kunkel
	3909 1st Av NE, #2
	Seattle, WA  98105
	(206) 632-6757
	kunkel@u.washington.edu

OVERVIEW OF DIZZY

	The function of this program is to compute and record coordinated
points on stations along a previously defined baseline.  It will compute
any horizontal offset, left or right.  It also will compute profile
elevations.  The profile can be offset vertically using a constant offset,
a constant superelevation slope, or a variable superelevation.

	Dizzy also has the ability to create TDS point lists and road files
using a simplified format.  Use of precomputed coordinate points eliminates
the need to enter horizontal dimensions.  The vertical profile is also
simplified, being based on PVI elevations rather than slopes.

	Roadline files used by Geodimeter can be generated in Dizzy.  These
horizontal alignment files can only be used with Geodimeter instruments.

	Dizzy uses up to four different types of files:

	1) A coordinate file containing the coordinates of those points that
define the alignment    of the baseline.  Any new computed points will be
stored in this file.

	2) A sequence file defining the sequence of the points that define
the baseline.

	3) A PVI file defining the profile of the baseline.

	4) A Superelevation file defining the superelevation transitions
along each side of the  baseline.

	The Coordinate file and the sequence file are necessary running this
program.  The PVI and superelevation file are optional.
COORDINATE FILE

	The coordinate file must be in this generic ASCII format:

	(point number), (northing), (easting), (elevation), (descriptor)

	The fields may be of any length, but they must be separated by
commas.  Point numbers must be integers less than 1000000 and greater than
zero.

	The coordinate file may have any valid name and may have any
extension other than .SEQ.  The file is transferred from ASCII into a new
format when the program is initialized.  When the program is exited, the
coordinates are transferred into a new ASCII file having a the same name as
the original.  The new file will have twenty-character descriptors and will
carry northings and eastings to eight decimal places.  Naturally, the
significance of these figures depends on the controlling coordinates in the
original file.
SEQUENCE FILE

	The sequence file must have the same name as its corresponding
coordinate file, but with an .SEQ extension.  The sequence file may be used
to define any number of horizontal baseline alignments.  any ASCII text
editor may be used to create or edit a sequence file using point numbers
with these codes:

.  (period)     This indicates the beginning of a baseline.  The number of
		the first point on each baseline must be preceded by a
		period.

-  (minus)      Radius point.  To define a circular curve, the PC must be
		entered first.  Then the RP is entered as a negative, and
		followed by the PT.  If the PT is entered as a negative,
		the curve will be given a delta greater than 180 degrees.

*  (asterisk)   Consecutive points.  The asterisk may be used to abbreviate
		consecutive points in ascending order.  5*8 is the
		equivalent of   5 6 7 8.

@               Note.  If the program encounters this symbol in the sequence
		file, it will ignore the rest of the line, so the user can
		insert a note here.

	Each of the point numbers in the sequence must be separated by a
space or a comma.  It is necessary to keep track of the line numbers for
each baseline.  Keep each line less than 80 characters.  That way it will
fit onto a monitor screen or a line printer.  A single baseline may occupy
any number of lines in the sequence file.
PVI FILE

	The PVI (point of vertical intersection) file contains all of the
baseline profile information.  It can have any valid name, but must have a
.PVI extension.  The PVI file can be created and edited in a text editor.
Each record must have this simple format:

	(PVI station), (PVI elevation), (length of vertical curve)

	Grade breaks have a vertical curve length of zero.  PVI stations
must be in ascending order and must be expressed without the us of a "+"
sign (e. g., 400, not 4+00).  Consecutive entries may have the same station.
This is common in the case of a manhole with a vertical drop.  The first
and last entries must have a vertical curve length of zero, otherwise it is
a vertical curve with the grade defined in only one direction.  Overlapping
vertical curves are geometrically impossible and will not be accepted.
SUPERELEVATION FILE

	The purpose of this file is to define the cross slope of a road.
Many roads, especially high-speed roads, have a variable superelevation.
It will slope right or left, depending on the direction of the curves.  On
the tangents it will normally have a centerline crown.  There will also be
transition zones to avoid any sudden change in the cross slope.

	The superelevation file is directly tied to a PVI file.  It must
have the same name, but with an .SUP extension.  The PVI file does not need
to have a superelevation file to work, but the superelevation file is
useless without a PVI file to define the profile.  The superelevation file
may be created and edited in a text editor. Each record must adhere to this
format:

	(transition station), (cross slope), (direction)

	The transition station must be expressed without the use of a "+"
sign (e. g., 400, not 4+00).  The cross slope is the slope, not the percent
slope (e. g., 0.02, not 2%).  For direction, enter 1 for right, or -1 for
left.  Transition stations must be entered in ascending order on each side.
4+00 right may precede 2+00 left, but it may not precede 2+00 right.  To
make superelevation files easier to read and edit, it is best to enter all
of one side, then the other.  If the road slopes downward from the
centerline, remember to enter the cross slope as a negative.
A WALK-THROUGH

	Answer these prompts as they appear:

Coordinate file >

	Enter the coordinate file name.  Be sure to include the extension.
The program will        search for a sequence file with the same name and
the .SEQ extension.

First line of sequence file >

	Enter the line where the baseline sequence begins.

Last line in sequence file >

	Enter the line where the baseline ends.  If it ends on the same line
as the beginning, this  entry can be defaulted.

PVI file >

	Enter the PVI file name.  If this prompt is answered by hitting
ENTER with no file name, the program will assume that there is no PVI file,
and no elevations will be computed.  If a PVI file is entered, the program
will search for a file with the same name and the .SUP extension.  If none
is found, the program will continue, but no automatic superelevations will
be computed.

First new point number >

	The default number is the end of the file, but any valid point
number may be entered.  The program has a point protection feature.  Before
overwriting a point, you will be given an option to search for the next
available point.  There is no way to disable this point protection.

Input station of point #... (default = 0+00.00) >

	The point number displayed will be the first number in the baseline
sequence.  The baseline may begin at any station.

Horizontal offset (default = 0) >

	See OFFSET RULES

Vertical offset (default = 0) >

	See OFFSET RULES
MAIN MENU

The main menu offers these options:

A - All stations:

	You will be prompted for a station interval, and the beginning and
ending stations.  All   stations in that range which are multiples of the
interval will be computed.  In addition,        all PC, PT, PRC, PCC and AP
stations will be computed in the given range.

O - Odd stations:

	The stations will be computed one at a time as you enter them.

C - Change parameters:

	The parameters that were set at the start of the program can be
changed.  Exiting the parameters menu will return you to the main menu.

T - TDS files:

	Create a TDS point list or road file from the baseline and profile
that are currently being used.

G - Geodimeter roadline:

	Create a Geodimeter roadline file from the current baseline.

E - Exit:

	The data will be saved and the program terminated.
OFFSET RULES

	Horizontal _ Left offsets are entered as negative numbers or
expressions.  Right offsets are positive.  Arithmetic expressions are valid,
so long as only the four basic operators (+,-,*,/) are used.  Variables,
exponents, parentheses, and trigonometric functions are invalid.  The
standard algebraic rules apply, with multiplication and division having
seniority over addition and subtraction.

	These horizontal offsets are valid:

	-10-12          22.00 left

	3*12+5          41 right (three 12-foot lanes and a 5-foot shoulder)

	18+4/12         18.33 right (a useful way to express inches)

	These are not valid:

	2*(4+12)        No parentheses allowed.

	17' 8"		Foot and inch notations are not recognized.

	Vertical _ If the vertical offset has the letter "S" at the
beginning, the centerline elevation is offset at a slope interpolated from
the superelevation file.  Another offset can be added to that.  If the
vertical offset begins with a number and a "%" symbol, all stations will be
offset at that slope, and the superelevation file will be disregarded.
Cross slopes will be applied at the horizontal offset distance.  It is also
possible to enter a constant vertical offset, with no cross slope.

	These vertical offsets are valid:

	S-8/12          8" below the superelevation

	6%-2            2 below a +6% cross slope

	-2.5-3/12       2.75 below the centerline elevation

	These are not valid:

	-2+S            "S" must be the first character in the expression.

	S+2%-1.5        No more than one cross slope is allowed.

	For advanced applications see REMOTE VERTICAL OFFSETS.
REMOTE VERTICAL OFFSETS

	If a cross slope (variable or fixed) is being employed, the offset
point can be graded to an offset distance other than the one specified by
the horizontal offset.  Just put the remote offset distance in parentheses
immediately following the cross slope.  This best explained with an
example:

	You are staking the curbing on the left side of a road.  The face of
curb is 15 feet from centerline.  The curb is 6" high and 6" wide.  You are
setting your offsets 3 feet from the back of curb, and grading them to top
of curb.

	horizontal offset:      -18.5

	vertical offset S(-15)+.5

	The horizontal offset includes 15 feet for the lane width, 0.5 feet
for the curb width, and 3 feet for the offset.  It is negative because you
are working the left side.

	The vertical offset takes the finish surface elevation at 15 feet
left of centerline and adds 0.5 feet for the curb height.  Remember that
minus sign.  Otherwise it would have been graded to the elevation on the
right side.

	These vertical offsets are valid:

	-2%(10)         This feature works with fixed superelevations also.

	-2%(10*2+8)-8/12        Arithmetic expressions are okay.  This one
			carries a -2% cross slope for 28 feet and then
			subtracts 8 inches for subgrade.

	These are not valid:

	S(12)+(8)               Only one set of parentheses is allowed.

	6%+1.5(10)              The remote offset distance most immediately 
				follow the cross slope.
TDS POINT LIST

	Users of TDS field computer software should be familiar with TDS
point lists which enable the surveyor to perform certain operations such as
station/offset staking, slope staking, and inverse by station.  It is
possible to generate a TDS point list from the TDS option in the main menu.

	You will be prompted for a point list name.  Do not enter an
extension.  It will automatically be given a .PL5 extension, which is what
TDS requires.

	Next you will be asked, "Is this point list to be transferred using
TDS file transfer?"  This is important.  For HP-48 users the answer is
always yes.  The TDS transfer screen appears to be the only practical
method for transferring a point list to or from an HP-48.  However, there
are several DOS field computers that can bypass TDS and transfer files
using other software.  TDS reformats point lists as they are received, so
if you are not using the TDS transfer screen,  you should answer "no," and
the point list will be written in the proper format.  Failure to heed this
warning could result in a data loss.

	A point list will be generated with each of the new points having
the descriptor "Baseline Point."  If a PVI file is being used, the profile
will be included with the point list.  No spiral curves can be generated
with this program.  Remember, the point list by itself is useless.  The new
coordinate points must be transferred too.

	TFR is ineffective for transferring these point lists.  If you
sending the point list to a field computer using the TDS transfer screen,
run Kermit in the PC.
TDS ROAD FILE

	The TDS road layout package uses road files in place of point lists
for the staking functions.  Point lists are still used for inversing by
station and for screen plots, so it would be prudent to create one of each.
The same name may be used because they have different extensions.

	Many road files created in this program will require editing.  No
templates are created.  TDS_LT and TDS_RT are assigned to the beginning
station.  the superelevations, if any, will be included, but the
superelevation on the first templates must be adjusted to fit.  The profile
must begin on or before the first station.  Unlike point lists, road files
will not tolerate  a straight vertical drop or rise in the profile.  No
widenings will be included, but they can be inserted in TDS.

	When the road file is created, a starting point is coordinated.  It
is important to save this point and log the point number somewhere.  It will
be needed when the road file is solved by TDS.
CREATING GEODIMETER ROADLINE FILES

	Surveyors using Geodimeter equipment may be familiar with Geodimeter
roadline files that store horizontal alignments.  The roadline file will be
generated from the sequence lines you already named.  Since roadline files
are two-dimensional, the PVI file will be of no use.  Coordinates are
stored in the roadline file itself, so no new points will be added to the
coordinate file.

	This new file is in the same format stored in Geodimeter instruments.
It is not the same as the GSP format, and as of this printing, GSP software
will not transfer it into Geodimeter instruments.  See TRANSFERRING
GEODIMETER FILES.
TRANSFERRING GEODIMETER FILES

	PC _ To transfer a roadline file into a Geodimeter instrument from a
PC, use the program ROADOUT.EXE.  The instrument serial port must be set to
COM=1.8.0.9600.  The end of transmission (F79) must be set to END=4.  These
are probably the same settings you have been using for GSP or GSS.  Attach
the cables in the same way used for the Geodimeter transfer programs.  Type
"ROADOUT".  The first prompt will ask you for the file name.  Enter the
name of the file created in Dizzy.  Next you will be prompted for the file
name to be stored in the instrument.  Unlike DOS, Geodimeter accepts as many
as fifteen characters for the file name.  Enter the name and wait for the
transfer.  the program will end when the transfer is complete.

	FIELD COMPUTER _ To transfer roadline files or coordinates from a
DOS field computer, to the Geodimeter instrument, use the program GEO.EXE.
The instrument serial port must be set to COM=1.7.2.1200.  The end of
transmission must be END=4.  These are the same settings used by TDS for
Geodimeter communication.

	Type "GEO".  The menu will give you options to transfer a roadline
file, coordinates, or a job file.  Just follow the prompts.

	If coordinates are transferred, they must come from a TDS file.  They
can be added to an existing Geodimeter file, or a new file can be created.
This program will not overwrite points without overwriting the entire file.
If new points are added to an existing file, be careful not to duplicate
point numbers.  Transferring descriptors with the coordinates is optional.
Points with elevations less than or equal to zero will be considered two-
dimensional and no elevation will be transferred.  The points will be
transferred at a rate of about 120 per minute.

