Add astrological houses to natal chart and daily transits

Every planet position now carries its whole-sign house (1-12); transits
report the natal house each transiting planet currently occupies rather
than a fresh "houses for right now" chart, matching how transits are
normally read. Surfaced in both text and HTML output, fully translated.
This commit is contained in:
ml
2026-07-04 12:41:03 +02:00
parent e4ea31270f
commit 57deb62b51
10 changed files with 64 additions and 15 deletions
+14 -11
View File
@@ -91,10 +91,13 @@ typedef struct {
```
- **`NatalChart`** (`astro.h`): `bodies[10]` (Sun..Pluto, each a sign +
degree-in-sign + raw ecliptic longitude), `ascendant_longitude`,
`houses[12]` (whole-sign: `houses[0]` is the Ascendant's sign).
degree-in-sign + raw ecliptic longitude + whole-sign `house` 1-12),
`ascendant_longitude`, `houses[12]` (whole-sign: `houses[0]` is the
Ascendant's sign).
- **`DailyTransits`** (`astro.h`): `bodies[10]` (today's positions, same
shape as above), `moon_phase` (one of 8 named phases), `aspects[]` +
shape as above `house` here is the natal chart's house the
transiting planet currently occupies, not a fresh "houses for right
now" chart), `moon_phase` (one of 8 named phases), `aspects[]` +
`aspect_count` (each aspect names a transiting planet, a natal planet,
an `AspectType` — conjunction/sextile/square/trine/opposition — and
the orb in degrees).
@@ -107,22 +110,22 @@ typedef struct {
### `--format text`
Four `=====`-delimited sections, in order: natal chart (each body's sign
+ degree, then the Ascendant), today's sky (Moon phase, then each body's
transiting position), today's aspects to the natal chart (one line per
aspect, with orb), and the Celtic Cross (one block per position: name,
card, `(Reversed)` if applicable, the position's meaning, then the
card's meaning).
+ degree + house, then the Ascendant), today's sky (Moon phase, then each
body's transiting position + the natal house it currently occupies),
today's aspects to the natal chart (one line per aspect, with orb), and
the Celtic Cross (one block per position: name, card, `(Reversed)` if
applicable, the position's meaning, then the card's meaning).
```
===== Natal Chart =====
Sun 23.5° Taurus
Moon 15.2° Capricorn
Sun 23.5° Taurus (House 3)
Moon 15.2° Capricorn (House 11)
...
Ascendant 18.4° Pisces
===== Today's Sky =====
Moon phase: Waning Gibbous
Sun 11.5° Cancer
Sun 11.5° Cancer (House 5)
...
===== Today's Aspects to Natal Chart =====