SVG-obrázky map
/v1/render/* vrací mapu jako hotové SVG: natalní kolo, bi‑ a tri‑kolo, kompozit, védské mapy (severní, jižní, východní), mřížku aspektů, kosmogramu, fázi Měsíce, časovou osu, biorytmy, pás zatmění a hvězdnou mapu. Pošleš data narození, my spočítáme mapu a vykreslíme ji. Kompletní seznam endpointů a parametrů najdeš v API referenci.
Stejný kód pro vykreslování je publikován jako npm balíček @astroway/render: pokud už máš data mapy, můžeš kolo vykreslit v prohlížeči nebo na svém serveru a bude se shodovat s tím, co vrací API, byte‑for‑byte. Verzi vykreslování API vrací v hlavičce X-Render-Version.
Požadavek
Sekce “Požadavek”curl -X POST https://api.astroway.info/v1/render/wheel-western \ -H "X-Api-Key: $ASTROWAY_KEY" -H "Content-Type: application/json" \ -d '{"date":"1990-05-15","time":"14:30:00","timezoneOffset":3,"latitude":50.45,"longitude":30.52, "options":{"theme":"css","format":"svg"}}' > wheel.svgformat: "svg" vrací samotný soubor, typický json zabaluje řetězec SVG do běžné odpovědi API. Témata: light, dark, console a css.
Téma css: barvy tvého webu
Sekce “Téma css: barvy tvého webu”S theme: "css" je každá barva v SVG zapsána jako CSS proměnná s barvou světlého tématu jako záložní, například var(--aw-ring, #222). Vlož SVG do HTML stránek (ne do <img>: tam proměnné neprojdou) a nastav proměnné:
.chart { --aw-chart-bg: transparent; --aw-ring: #444; --aw-fg: currentColor; --aw-aspect-tense: crimson;}Bez jakékoli proměnné mapa vypadá přesně jako light. CSS pravidlo tvé stránky má přednost před proměnnou, takže jednotlivý prvek můžeš přebarvit pomocí třídy.
| Variable | Co barví |
|---|---|
--aw-chart-bg | pozadí mapy |
--aw-fg, --aw-muted | glyfy a popisky, sekundární text a značky |
--aw-ring | kruhy a čáry mřížky |
--aw-houses-fill | pole védské mapy, disk hvězdné mapy, mapa zatmění |
--aw-benefic | planety vnějšího kruhu, lagna ve védské mapě, události časové osy bez vlastní barvy |
--aw-malefic | znak retrográdnosti ℞, pás zatmění |
--aw-aspect-harmonious, --aw-aspect-tense, --aw-aspect-neutral, --aw-aspect-minor, --aw-aspect-quintile | čáry a symboly aspektů |
--aw-moon-shadow, --aw-moon-light | fáze Měsíce |
--aw-cycle-physical, --aw-cycle-emotional, --aw-cycle-intellectual | biorytmy |
Třídy a data‑atributy
Sekce “Třídy a data‑atributy”V tématu css mají západní kola (wheel-western, bi-wheel, tri-wheel, composite) a mřížka aspektů pevné třídy. Jména se jen přidávají, nikdy se nepřejmenovávají, takže na ně můžeš psát styly i skripty.
- Kolo:
aw-bg,aw-ring,aw-sign aw-sign-leo,aw-sign-line,aw-tick,aw-house-cusp,aw-house-number, osyaw-axis aw-asc(aw-dsc,aw-mc,aw-ic), jejich popiskyaw-label aw-axis-label, nadpisaw-title. - Planeta: skupina
<g class="aw-planet aw-planet-sun">, retrográdní má ještěaw-retrograde, planety vnějšího kruhuaw-layer-1. Uvnitřaw-glyph,aw-retro(znak ℞) aaw-planet-tick. - Aspekt: čára
aw-aspect aw-aspect-trine, čára mezi dvěma mapami takéaw-cross-aspect. - Mřížka aspektů:
aw-grid-header,aw-grid-cell,aw-aspect aw-aspect-square,aw-orb.
Skupina planety má data-planet (sun, north-node, lilith; na vnějším kruhu b-sun, na třetím c-sun) a data-label s názvem a pozicí: Mercury 8°00' Taurus, retrograde. Čára aspektu a buňka mřížky mají data-a a data-b. Tak se zvýrazní všechny aspekty planety při najetí:
svg.querySelectorAll('.aw-planet').forEach((g) => g.addEventListener('mouseenter', () => { const id = g.dataset.planet; svg.querySelectorAll('.aw-aspect').forEach((line) => line.classList.toggle('is-on', line.dataset.a === id || line.dataset.b === id));}));Vlastní popisky: labels
Sekce “Vlastní popisky: labels”Západní kola přijímají options.labels: tvá slova pro popisky os, pro <title> a <desc>, které čtou čtečky obrazovky, a pro názvy v data-label. Klíče, které chybí, zůstávají v angličtině; sami je nepřekládáme.
"options": { "theme": "css", "labels": { "asc": "Асц", "mc": "МС", "title": "Натальна карта", "bodies": { "Sun": "Сонце", "Moon": "Місяць" }, "signs": ["Овен","Телець","Близнюки","Рак","Лев","Діва","Терези","Скорпіон","Стрілець","Козеріг","Водолій","Риби"], "retrograde": "ретроградний" }}bodies má klíče v angličtině (Sun, North Node), signs je přesně dvanáct názvů, počínaje Beranem, každý popisek do 40 znaků.
Aspekty mezi dvěma mapami
Sekce “Aspekty mezi dvěma mapami”/v1/render/bi-wheel s options.crossAspects: true kreslí čárkovaně aspekty mezi vnitřní a vnější mapou, stejnou sadu, kterou POST /v1/synastry vrací jako crossAspects. Pár, kde jedno z těles není vykresleno, se přeskočí. Ve výchozím nastavení je vypnuto.
Hotová mapa místo dat narození
Sekce “Hotová mapa místo dat narození”Pokud už máš mapu, protože jsi právě zavolal POST /v1/chart, pošli její data do pole chart místo dat narození a my ji jen vykreslíme. Tak fungují wheel-western, aspect-grid a bi-wheel (tam natal.chart a outer.chart, obě musí být hotové mapy). Výstup bude byte‑for‑byte stejný jako z dat narození.
{ "chart": { "planets": [ ... ], "houses": { "cusps": [ ... ], "ascendant": 7.77, "mc": 277.12 }, "aspects": [ ... ] }, "options": { "theme": "css" } }Zbytečná pole v odpovědi můžeš nechat. Kontroluje se, co se vykresluje: od 1 do 30 těles, délky od 0 do 360, přesně 12 kuspidů. Těleso, kde je jak chart, tak data narození, vrací chybu 400.
Cena
Sekce “Cena”Volání /v1/render/* s daty narození stojí 10 kreditů, protože se mapa počítá. S hotovou mapou chart volání /v1/render/wheel-western, /v1/render/aspect-grid a /v1/render/bi-wheel stojí 1 kredit. Téma, třídy a popisky cenu nemění.