Ratio = grazing-line slope (V + parapet) / D. For each additional foot of setback from the edge, the muzzle/eye must rise by this amount to keep the tent in view over the edge.
Each curve is a parapet height. A position plotting above its curve has a clear sightline to the tent; a position below it is blocked by the roof edge. The marker is your current inputs.
D defaults to source→tent distance; if the edge sits closer to the tent, reduce D — required heights rise.
Courtyard slope not modeled beyond the single tent point.
Formula: minimum height above roof h_min(s) = p + s·(V + p) / D, where p = parapet height, s = setback, V = vertical drop to tent, D = horizontal distance edge→tent. A position has a clear sightline when its height ≥ h_min. This is a geometric screening tool, not a certified survey.