Let the map brightness reach the map, and put the options in groups

The map brightness setting could not make the map visible on a vector
theme, which is the one place it was needed.  Those themes want the ground
well out of the way -- a tinted photograph of a county behind the vectors is
the one thing that stops a vector display looking like one -- and that was
done by multiplying the setting by about a quarter.  A multiplier is a
ceiling: turned the whole way up, the setting still gave a map at a tenth
the brightness the default theme gives, which is to say invisible, and no
amount of turning it up did anything about that.

It is a curve now rather than a ceiling.  The theme raises the setting to a
power, so the middle of the range is still quiet -- seventy per cent lands
where the old quarter did, which is the look these themes are for -- and the
top of the range is a full-brightness map on every theme there is.  On the
green phosphor the setting now spans a luminance of six to seventy where it
used to stop at twenty-one.

And the options are in six groups rather than one list: receiver, listening,
aircraft, animation, the map, labels.  Thirty-three of them on one screen is
a wall rather than a menu.  A number opens a group and a number inside it
changes an option, with the numbers still being each option's place in the
whole list so that the same number means the same option wherever it is
typed -- which meant reordering the list so that every group is contiguous,
and there is a test that says so.

A group menu makes a known option harder to reach than a flat list did, so
the name works too: typing "map brightness" at the top goes straight to it,
and part of a name lists everything it could mean.  A name that matches
exactly wins outright, so "speed" reaches the setting called speed rather
than that one and every other whose description happens to mention the word.

One thing to know: a bare number at the top of the menu now opens a group
where it used to edit the option of that number.  The tests that drove the
menu that way would have gone on silently editing whatever option shared the
number, so they ask by name now, and one of them checks that a group number
changes nothing.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PsWPTweCT6pwxKngvVxcg
This commit is contained in:
The Dust Council 2026-09-06 12:26:00 -07:00
parent 2da1d1f245
commit 6d2436cde1
10 changed files with 540 additions and 250 deletions

View file

@ -1125,11 +1125,30 @@ tried, since distributions disagree about which to package. Without any of
them you lose this window and nothing else, and the program says how to get
one rather than failing.
**Or from the menus: `bandsaunter` → 5, Aircraft (ADS-B).** Every option is
on one screen with what it does beside it, `?N` explains any of them at
length, `p` starts a passive capture, `r` opens the realtime window and `m`
draws a map from a log — no flags to remember, and the options can be saved
as the default.
**Or from the menus: `bandsaunter` → 5, Aircraft (ADS-B).** `p` starts a
passive capture, `r` opens the realtime window and `m` draws a map from a log
— no flags to remember, and the options can be saved as the default.
The options are in six groups rather than one list, because thirty-three of
them on one screen is a wall rather than a menu:
| | | |
| --- | --- | --- |
| **receiver** | the dongle, and where it is standing | device, gain, sample rate, position, the simulated sky |
| **listening** | what one session does | how long, the log, KML, how long an aircraft stays up, draw when finished |
| **aircraft** | who they are | the registers, the schedule services, rechecking positions |
| **animation** | the moving picture | kind, length, speed, frame rate, width, trails, fading |
| **the map** | what is under and around them | tiles, theme, brightness, radius, aerodromes, range rings |
| **labels** | what is written beside them | the labels themselves, and the unit |
A number opens a group; inside it, a number changes an option and `?N`
explains any of them at length. The numbers are the option's place in the
whole list, so the same number means the same option wherever it is typed.
**Or type the name.** `map brightness` at the top of the menu goes straight to
that option, and part of a name lists everything it could mean. A name that
matches exactly wins outright, so `speed` reaches the setting called speed
rather than that one and every other whose description mentions the word.
> **This is not a scan, and the band plan's `adsb` preset will not do it.**
> Sweeping 1090 MHz records the bursts as clicks in a WAV file and decodes
@ -1542,7 +1561,15 @@ a thousand tiles from for one picture. A smaller `--radius` buys the detail
back, since the same budget then covers less ground.
`--map-brightness PERCENT` (70 by default) is how far up its range the map is
drawn. The ground has to stay dark enough that the aircraft are the brightest
drawn, and **the vector themes bend the middle of that range down hard**
because a tinted photograph of a county behind the vectors is the one thing
that stops a vector display looking like one. It is a curve, not a ceiling:
the top of the setting is a full-brightness map on every theme. It used to be
a plain multiplier, which meant that on a phosphor theme the setting could not
reach a visible map at all — turned the whole way up it still came out at a
tenth of what the default theme gives, which is to say invisible. So if the
ground is too faint to make out, this is the setting that fixes it, and on a
vector theme it takes rather more turning up than on the default one. The ground has to stay dark enough that the aircraft are the brightest
thing on the picture and light enough that a coastline can be made out at all,
and which way to err depends on the screen you are looking at. In the window,
`[` and `]` change it while it runs.