← ControlPoint Manual

ControlPoint Manual — versioned with the code; every worked example below is a REAL corpus job and its numbers are pinned by the test suite.

2 — Heights

What it does

The Heights panel shows every setup's instrument height (HI) and each target height (HT). Heights of 0 or 0.240 m mean forced centring (pillar/prism on a stud); a measured tripod height (say 1.765) means set up over a nail, which costs about ±1 mm of centring accuracy — the weighting knows this. Setups whose HI can't be trusted can be trig heighted: reciprocal vertical angles solve the true HI, with a significance gate so a correction is only applied when the evidence clears 2σ.

Worked example — 2HR19, setup N27

N27's booked HI was wrong by about 5 mm. Trig heighting solved a correction of +4.9 ± 1.1 mm; applying it took the network's error factor from 0.632 to 0.462 and cleared all eight reciprocal-zenith failures. The report's HI history block shows recorded value, applied value, correction and sigma — nothing is overwritten silently.

The heights doctrine (the permanent contract)

1) DBX defaults populate every HI and HT on import (X12 setup events joined by the earliest-substantial rule — a boundary straggler can't claim an event, a later setup's bleed can't outvote it). 2) The Set up Heights card confirms or changes them — a check, not data entry. 3) No height known → trig-solve where the geometry allows, presented with ±σ and significance and visibly flagged (card, stepper, report). On 2HR19 this reproduces the surveyor's manual repair to 0.1 mm with no human input: S6 1.7735 / S7 1.7355 / S8 1.7659, σ ≈ 1.1 mm, provenance "recorded: none — solved absolutely". 4) Trig impossible → axis fallback: the station's verticals stay in the network under the free-station axis convention (information kept — better than dropping to 2D), its mark height is honestly unknown and labelled everywhere its coordinates appear. Typed corrections are never clobbered: they become the trig base and near-true values verify as TRIG-CHECKED, clearing the warnings. Recorded, user-edited and solved values are stored as three separate fields, forever.

Theory in one paragraph

A wrong HI shifts every vertical observation from that setup by the same amount, and reciprocal observations see it with opposite sign. That asymmetry is what lets least squares solve for the HI as an unknown — and why the check is trustworthy: other setups' pairs must agree before the software blames the HI.

Screenshot pending capture (needs a browser session) — the worked-example numbers on this page are from the real job and are pinned in tests.