### Help Index

#### ABOUT

Welcome to Q-Cogo! Q-Cogo was developed as a free, accessible way of solving land survey computations.Anyone can use Q-Cogo. It is aimed at land surveying and geomatics engineering students, and others wanting to do surveying computations without expensive coordinate geometry software. Q-Cogo is web-based and does not require installation.

Q-Cogo is easy to use, and provides the practiced user with a faster way of performing calculations. For now, it is exclusively a calculator, but future versions may be capable of producing survey drawings.

For more information, contact us: NOTANADDRESS.

#### COPYRIGHT, TERMS

Copyright © 2017 Mark R. Mason, BCLS.Q-Cogo is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Q-Cogo is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details.

For more information, contact us: NOTANADDRESS.

#### VERSIONS

Q-Cogo v. 1.3 – Sept 1, 2017Overview:

- Update to HTML5 and modern standards
- Improved performance on mobile devices
- Added support for import of CSV as well as space separated points files
- Added support of DDD°MM'SS.SS..." style angle/azimuth input
- Sketches and reporting more user-friendly and complete
- Updated to SVG graphics for compatibility with future enhancements
- Added real-time input field checking, basic point name suggest
- Improved auto-complete behaviour
- Minor bug fixes

- Manipulation of sketches on touch devices is clumsy
- Not tested on many mobile platforms
- Zooming sketch far from active operation / near limits produces unpredictable results
- Tabbing far past end of form elements causes sketch controls to disappear
- Internet Explorer versions 11 and below struggle to render SVG graphics

Q-Cogo v. 1.2 (Beta) – Jan 1, 2010

Overview:

- Zooming and panning of all sketches
- Triangle and curve solver
- Shortcut keys for all major operations
- Input constants, distance and area units
- Input expressions / existing point expressions
- Improved auto-complete behaviour
- Bug fixes

- Removing focus from browser window while editing points record corrupts record behaviour in some browsers
- Zooming in on some curves produces nonsense sketch
- Meaningless "Charcode" JavaScript warning produced in some versions of Firefox

Q-Cogo v. 1.1 (Beta) – Sept 1, 2009

Overview:

- Capable of basic plane survey computations, area calculations, and point manipulations
- Point import and export possible
- Automatic sketches provided for cogo operations

- Improperly entered radial points produce confusing alerts and possible minor JavaScript error
- Improperly entered HA in traverse menu produces nonsense results
- Point sort does not work properly for mixed numbers and strings
- Point suggest disappears when scroll bar clicked in some browsers

Future Versions

Future versions of Q-Cogo MAY include: traditional traverse adjustments and least squares adjustments, Helmert's transformation, automatic error propagation, sketch image outputting, linework, labelling and point-and-click drafting facilities, clothoid and roading calculations, map projections, heighting, and pro-rata operations.

#### DOWNLOAD

Q-Cogo can be downloaded to your computer and used when you're not connected to the internet.Download the zipped folder and unzip it. The folder contains the current source code (HTML, CSS, and JavaScript), for reference and improvement. To run Q-Cogo, open "index.html" in an Internet browser.

Do not choose "Save Page As ..." in your browser. This method of saving Q-Cogo is unreliable, and may produce a large variety of errors.

On some mobile devices, adding Q-Cogo to your home screen will allow you to access Q-Cogo like an app instead of a web page.

#### GENERAL USE

All Q-Cogo operations have been extensively checked; however, the possibility of error (especially with erroneous input) still exists. Be sure to check that results make sense, and double-check important work.Leaving Q-Cogo or refreshing the page WILL RESULT IN ALL CURRENT POINTS BEING LOST. Save your points by choosing "Select", then copying the record into a text file. Load the points again later by choosing "Edit", then pasting the contents of your text file into the points record.

Each area in Q-Cogo includes pop-up help topics relevant to that area. Click on the nearest "?" icon to learn more about using a feature.

To navigate around a sketch, zoom by using the scroll wheel or 'Page Up' / 'Page Down'. Pan by holding the left mouse button or using the arrow keys. Double-click the sketch or press 'Home' to refresh the sketch. A clickable navigation area is also provided.

Azimuths and angles must be entered in DMS, of the form DDD.MMSSSS... or DDD°MM'SS.SS..." (seconds decimals allowed). Entering two point names separated by two dots ('Pt1..Pt2') will retrieve the distance or azimuth inverse between those points. Simple mathematical expressions are allowed. Point names and descriptions may be up to 8 characters. Any spaces will be replaced with underscores ('_'). Point names must not include commas (',') asterisks ('*') or dashes ('-').

Please report bugs in detail: NOTANADDRESS.

#### PERFORMANCE

Q-Cogo was designed to be used in all modern browsers, but performance will vary depending on your choice of web browser and the capabilities of your computer. Q-Cogo uses JavaScript for all land survey calculations: to use Q-Cogo, you MUST enable JavaScript in your browser.Q-Cogo uses Scalable Vector Graphics (SVG) to sketch calculations. If you can't see sketches being generated automatically while you work, update your browser or switch to a browser that supports SVG.

Q-Cogo has no maximum number of points, but zooming and panning sketches with a very large number of points will result in laggy performance on slow computers. To improve performance, turn off point labeling or delete unnecessary points.

Q-Cogo was designed in Google Chrome. Using Q-Cogo in Chrome is highly recommended for fast, error-free performance.

Internet Explorer versions 11 and below render SVG graphics slowly, resulting in long lags and browser crashes.

Recent standards-compliant browsers should provide good performance. Because Q-Cogo uses modern web components, update your browser to the latest version. In any browser, refreshing or leaving the page WILL RESULT IN ALL CURRENT POINTS BEING LOST. Save your points to a local text file often.

Q-Cogo has not been tested with older browsers, many mobile devices, or obscure operating systems.

Please report bugs in detail: NOTANADDRESS.

#### TIPS AND TRICKS

Q-Cogo will sort and suggest points more effectively if point names are numeric. On mobile platforms, only numbers can be entered. For best results, don't include letters or symbols unless you absolutely need to.If default text is too small in your desktop browser, try zooming the page. Q-Cogo is scalable, and the components will adjust automatically to fit the screen.

#### POINTS RECORD

The Points Record displays a list of current points. Points are listed from left to right in the following columns:Pt:Point Name

N:Northing

E:Easting

Z:Elevation

Desc:Description

To sort the points record, click on the desired column header in the points record title.

To load points from a text file, click "edit", then paste the file contents into the text area. Points must be space or comma separated in PNEZD format with no special characters.

To expand the points record, double click inside it. Click outside the record to return to normal size.

#### POINTS ( p )

To store a point, enter its details as follows, then click "Store". Over-writing an existing point is not allowed:Pt:Point Name

N:Northing

E:Easting

Z:Elevation

Desc:Description

"Pt" and "Desc" may be up to 8 characters. Any spaces will be replaced with underscores ('_'). "Pt" must not must not contain simple mathematical characters, dots ('.'), or commas (',').

To delete a point, enter its name, then click "Delete". To delete a list of points, enter the point names separated by commas (','). Two points separated by a dash ('-') or dots ('..') indicate a range of points. Entering '*.*' indicates all current points.

#### TRAVERSE RECORD

The Traverse Record displays a history of all traverses performed, whether a point was stored or not. To see previous traverses, simply scroll through the text box.To expand the traverse record, double click inside it. Click outside the record to return to normal size.

#### TRAVERSE ( t )

To solve a traverse without storing a point, choose "Solve". To solve a traverse and store a point, choose "Trav" or "SS". ("Trav" will increment the "From" and "BS" inputs, while "SS" will not.) Over-writing an existing point is not allowed.Traverses can be performed by "Azimuth" (angle clockwise from North) or by "Angle" (angle clockwise from a backsight point). Switch between traverse types by clicking on the title.

Traverses can be performed in 2D (horizontal distance) or 3D (slope distance and zenith angle). Switch between traverse dimensions by clicking on the title. If traversing in 3D, click on the HI and HT titles to edit.

Azimuths and angles must be entered in DMS, of the form DDD.MMSSSS... or DDD°MM'SS.SS..." (seconds decimals allowed). Entering two point names separated by two dots ('Pt1..Pt2') will retrieve the distance or azimuth inverse between those points. Simple mathematical expressions are allowed.

#### INVERSE RECORD

The Inverse Record displays a history of all inverses performed. To see previous inverses, simply scroll through the text box.To expand the inverse record, double click inside it. Click outside the record to return to normal size.

#### INVERSE ( i )

Inverses can be performed between two points or between a point and a line, the line being defined by two points. Switch between inverse types by clicking on the title.Inverses can be performed in 3D or, for simplicity, in 2D. Switch between inverse dimensions by clicking on the title.

#### INTERSECT RECORD

The Intersect Record displays a history of all intersections performed, whether a point was stored or not. To see previous intersections, simply scroll through the text box.To expand the intersect record, double click inside it. Click outside the record to return to normal size.

#### INTERSECT ( x )

To solve an intersection without storing a point, choose "Solve". To solve an intersection and store a point, choose "Store". Over-writing an existing point is not allowed.Intersections can be performed between any two points with a non-zero horizontal distance between them. The intersection may be "Brg-Brg" (two directions), "Brg-Dist" (a direction and a distance) or "Dist-Dist" (two distances). Switch between intersection types by clicking on the title.

Intersections may only be performed in 2D. Resulting points will be stored with an elevation of zero.

Azimuths must be entered in DMS, of the form DDD.MMSSSS... or DDD°MM'SS.SS..." (seconds decimals allowed). Entering two point names separated by two dots ('Pt1..Pt2') will retrieve the distance or azimuth inverse between those points. Simple mathematical expressions are allowed.

#### TRANSFORM RECORD

The Transform Record displays a history of all transformations performed (shifts, scales and rotations). To see previous transformations, simply scroll through the text box.To expand the transform record, double click inside it. Click outside the record to return to normal size.

#### TRANSFORM ( f )

To transform a list of points, enter the point names separated by commas (','). Two points separated by a dash ('-') or dots ('..') indicate a range of points. Entering '*.*' indicates all current points.Points may be shifted ("+N", "+E", or "+Z"), scaled by a scale factor ("SF"), or rotated ("Rot"). If scaling or rotating points, an "About" point must be entered.

"+N", "+E", "+Z", or "Rot" parameters default to 0 if left blank. "SF" defaults to 1. The transformation will preserve parallel lines and distance ratios: a transformed square will remain a square.

Angles must be entered in DMS, of the form DDD.MMSSSS... or DDD°MM'SS.SS..." (seconds decimals allowed). Entering two point names separated by two dots ('Pt1..Pt2') will retrieve the distance or azimuth inverse between those points. Simple mathematical expressions are allowed.

#### AREA RECORD

The Area Record displays a history of all area calculations performed. To see previous areas, simply scroll through the text box.To expand the area record, double click inside it. Click outside the record to return to normal size.

#### AREA ( a )

To calculate the area bounded by a list of points, enter the point names separated by commas (','). Two points separated by a dash ('-') or dots ('..') indicate a range of points. Entering '*.*' indicates all current points, in their current order.An asterisk ('*') after a point (eg: Pt*) indicates a radial point on a curve with the shorter of two possible arc lengths. An asterisk before a point (eg: *Pt) indicates the longer arc length.

Bounding points and curves may be entered in a clockwise or counter-clockwise manner. The bounding path will automatically close to the first point. The bounding path must not cross itself or use a non-radial point more than once.

Before accepting an area calculation, inspect the sketch of the operation to ensure that your path does not intersect or meet itself, and that any curves deflect in the correct direction.

#### SOLVER RECORD

The Solver Record displays a history of all solver calculations performed. To see previous triangle or curve solutions, simply scroll through the text box.To expand the solver record, double click inside it. Click outside the record to return to normal size.

#### SOLVER ( l )

Use the solver to solve triangles or circular curves. Switch between solver shapes by clicking on the title.To solve a triangle, enter three values, leave the other three blank, and choose "Solve". At least one of the values must be a side length.

To solve a circular curve, enter a value for "Delta" and one other value, leave the other three blank, and choose "Solve".

Angles must be entered in DMS, of the form DDD.MMSSSS... or DDD°MM'SS.SS..." (seconds decimals allowed). Entering two point names separated by two dots ('Pt1..Pt2') will retrieve the distance or azimuth inverse between those points. Simple mathematical expressions are allowed.

#### PRECISION

To change the display precision for a particular value type, simply pick it from the appropriate drop down list. Settings will be reflected immediately in the points record. Other records will reflect the change in the results of the next operation.Changing display precision will not affect stored point precision. Stored points always carry ten decimal places to minimize rounding errors.

#### HI, HT

To change the current Height of Instrument ("HI") or Height of Target ("HT") settings, simply enter the new values. These values may also be changed in the traverse area.#### INPUT CONSTANTS

To apply a scale factor to entered distances, enter a value other than 1 for "SF". The scale factor will not be applied to coordinates, other scale factors, or HI / HT.To apply a rotation angle to entered azimuths, enter a non-zero value for "Rot". The angle will not be applied to other rotations, interior angles, or zenith angles.

Angles must be entered in DMS, of the form DDD.MMSSSS... or DDD°MM'SS.SS..." (seconds decimals allowed). Entering two point names separated by two dots ('Pt1..Pt2') will retrieve the distance or azimuth inverse between those points. Simple mathematical expressions are allowed.

#### UNITS

To change the working units, simply select a new value from the drop-down list. Changing units only changes the displayed units and does NOT apply a scale factor. To scale existing values, use "Transform". To scale input values, use "Input Constants" (above).Mixing metric and imperial units is not allowed. For example, selecting "Feet" as a distance unit will automatically change the area unit to "Acre". Changing "Disp?" changes the unit output visibility.

#### HELP ( h )

To get help on a topic, choose the appropriate link from the list. The help content box will scroll to the topic. Scroll through the help content box to browse all help topics.Each area in Q-Cogo includes pop-up help topics relevant to that area. Click on the nearest "?" icon learn more about using a feature.

#### SHORTCUT KEYS

For quick access, each menu item has a shortcut key – to find it, hover over the menu link. The following is a list of current menu shortcut keys:Points:p

Traverse:t

Inverse:i

Intersect:x

Transform:f

Area:a

Solver:l

Settings:s

Help:h

The following keys may be used to navigate through the sketches:

Pan:Arrow Keys

Zoom:Page up / Page Down

Refresh:Home

#### ABBREVIATIONS

The following is a complete index of technical abbreviations used in Q-Cogo:':Feet

+E:Easting Shift

+N:Northing Shift

+Z:Elevation Shift

BC:Beginning of Curve

Ang:Angle

Az:Azimuth

Brg:Bearing

BS:Backsight

Desc:Description

Disp:Display

Dist:Distance

DMS:Degrees Minutes Seconds

E:Easting

EC:End of Curve

ft:Feet

Grd:Grade

Ha:Hectare

HA:Horizontal Angle

HD:Horizontal Distance

HI:Height of Instrument

HT:Height of Target

Len:Length

m:Metres

MO:Mid-Ordinate

N:Northing

Pt:Point Name

Rad:Radius

Rot:Rotation

SD:Slope Distance

SF:Scale Factor

sq:Square

SS:Sideshot

Stn:Stationing

Tang:Tangent

Trav:Traverse

VD:Vertical Distance

Z:Elevation

ZA:Zenith Angle