İçeriğe geç
AstroWay/api v2.254.12 · tr
tüm sistemler normal

SVG harita görselleri

/v1/render/* bir haritayı hazır bir SVG olarak döndürür: natal çark, bi- ve tri-çark, kompozit, Vedik haritalar (kuzey, güney, doğu), açı ızgarası, kozmogram, Ay fazı, zaman çizelgesi, biyoritimler, tutulma bandı ve yıldız haritası. Sen doğum verilerini gönderirsin, biz haritayı hesaplar ve çizeriz. Rotaların ve parametrelerin tam listesi için API referansına bak.

Aynı çizim kodu, @astroway/render adlı bir npm paketi olarak yayınlanmıştır: eğer harita verilerine zaten sahipsen, çarkı tarayıcıda veya kendi sunucunda çizebilirsin ve API’nin döndürdüğüyle bayt baytına eşleşecektir. API, çizim sürümünü X-Render-Version başlığında döndürür.

Terminal window
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.svg

format: "svg" dosyanın kendisini döndürür, varsayılan json ise SVG dizesini standart bir API yanıtına sarar. Temalar: light, dark, console ve css.

theme: "css" ile SVG’deki her renk, açık tema rengi yedek olarak, örneğin var(--aw-ring, #222) gibi bir CSS değişkeni olarak kaydedilir. SVG’yi HTML sayfasına ekle (<img> etiketine değil: değişkenler oradan geçmez) ve değişkenleri tanımla:

.chart {
--aw-chart-bg: transparent;
--aw-ring: #444;
--aw-fg: currentColor;
--aw-aspect-tense: crimson;
}

Hiçbir değişken olmadan harita tam olarak light gibi görünür. Sayfanızın CSS kuralı değişkenden daha güçlüdür, bu nedenle ayrı bir öğe bir sınıf ile yeniden renklendirilebilir.

DeğişkenNe renklendirir
--aw-chart-bgharita arka planı
--aw-fg, --aw-mutedglifler ve etiketler, ikincil metin ve işaretler
--aw-ringdaireler ve ızgara çizgileri
--aw-houses-fillVedik harita alanı, yıldız haritası diski, tutulma haritası
--aw-beneficdış çemberdeki gezegenler, Vedik haritada lagna, kendi rengi olmayan zaman çizelgesi olayları
--aw-maleficretrograd işareti ℞, tutulma bandı
--aw-aspect-harmonious, --aw-aspect-tense, --aw-aspect-neutral, --aw-aspect-minor, --aw-aspect-quintileaçı çizgileri ve sembolleri
--aw-moon-shadow, --aw-moon-lightAy fazı
--aw-cycle-physical, --aw-cycle-emotional, --aw-cycle-intellectualbiyoritimler

css temasında, Batı çarkları (wheel-western, bi-wheel, tri-wheel, composite) ve açı ızgarası sabit sınıflara sahiptir. İsimler sadece eklenir, asla yeniden adlandırılmaz, bu nedenle üzerlerine stil ve betikler yazılabilir.

  • Çark: aw-bg, aw-ring, aw-sign aw-sign-leo, aw-sign-line, aw-tick, aw-house-cusp, aw-house-number, eksenler aw-axis aw-asc (aw-dsc, aw-mc, aw-ic), etiketleri aw-label aw-axis-label, başlık aw-title.
  • Gezegen: <g class="aw-planet aw-planet-sun"> grubu, retrograd olanın ayrıca aw-retrograde sınıfı vardır, dış çemberdeki gezegenler aw-layer-1. İçinde aw-glyph, aw-retro (℞ işareti) ve aw-planet-tick.
  • Açı: aw-aspect aw-aspect-trine çizgisi, iki harita arasındaki çizgi ayrıca aw-cross-aspect sınıfına sahiptir.
  • Açı ızgarası: aw-grid-header, aw-grid-cell, aw-aspect aw-aspect-square, aw-orb.

Gezegen grubu data-planet (sun, north-node, lilith; dış çemberde b-sun, üçüncüde c-sun) ve adı ve konumu ile data-label’a sahiptir: Mercury 8°00' Taurus, retrograde. Açı çizgisi ve ızgara hücresi data-a ve data-b’ye sahiptir. Böylece fareyle üzerine gelindiğinde gezegenin tüm açıları vurgulanır:

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));
}));

Batı çarkları options.labels kabul eder: eksen etiketleri için kendi kelimeleriniz, ekran okuyucuların okuduğu <title> ve <desc> için ve data-label içindeki isimler için. Olmayan anahtarlar İngilizce kalır; biz kendimiz hiçbir şeyi çevirmeyiz.

"options": {
"theme": "css",
"labels": {
"asc": "Асц", "mc": "МС", "title": "Натальна карта",
"bodies": { "Sun": "Сонце", "Moon": "Місяць" },
"signs": ["Овен","Телець","Близнюки","Рак","Лев","Діва","Терези","Скорпіон","Стрілець","Козеріг","Водолій","Риби"],
"retrograde": "ретроградний"
}
}

bodies İngilizce anahtarlara sahiptir (Sun, North Node), signs Koç’tan başlayarak tam on iki isimdir, her etiket 40 karaktere kadar.

/v1/render/bi-wheel ile options.crossAspects: true iç ve dış harita arasındaki açıları noktalı çizgiyle çizer, bu POST /v1/synastry’nin crossAspects olarak döndürdüğü aynı settir. Vücutlardan birinin çizilmediği çift atlanır. Varsayılan olarak kapalıdır.

Eğer harita zaten sizde varsa, çünkü az önce POST /v1/chart’ı çağırdınız, doğum verileri yerine data’sını chart alanına gönderin, biz de sadece onu çizeriz. wheel-western, aspect-grid ve bi-wheel bu şekilde çalışır (orada natal.chart ve outer.chart, her ikisi de hazır haritalar olmalıdır). Görüntü, doğum verileriyle aynı, bayt baytına çıkacaktır.

{ "chart": { "planets": [ ... ], "houses": { "cusps": [ ... ], "ascendant": 7.77, "mc": 277.12 }, "aspects": [ ... ] },
"options": { "theme": "css" } }

Yanıtın fazla alanlarını kesmenize gerek yok. Çizilen şey kontrol edilir: 1 ila 30 vücut, boylamlar 0 ila 360 arası, tam 12 cusp. Hem chart hem de doğum verileri olan bir vücut 400 ile reddedilir.

Doğum verileriyle /v1/render/* çağrısı 10 kredi tutar, çünkü harita hesaplanır. Hazır chart ile /v1/render/wheel-western, /v1/render/aspect-grid ve /v1/render/bi-wheel çağrıları 1 kredi tutar. Tema, sınıflar ve etiketler fiyatı etkilemez.

Yardımcı oldu mu?
Düzenleme öner

Son güncelleme: