Golden Hour Calculator
Konumunuz ve tarihiniz temelinde altın saat ve mavi saat fotoğrafçılık pencerelerini bulun.
Bu araç hakkında
Altın saat, güneşin alçakta durduğu ve her şeyi yumuşak, sıcak bir ışıkla kapladığı, gün doğumundan hemen sonra ve gün batımından hemen önceki kısa zaman dilimidir; mavi saat ise gün doğumundan önce ve gün batımından sonra gelen, gökyüzünü dengeli ve serin mavi tonlarıyla dolduran daha derin alacakaranlıktır. İkisi de fotoğrafçılar tarafından çok değer görür, çünkü öğle vaktinin sert ışığının asla yakalayamayacağı, etkileyici ve atmosferik görüntüler üretirler. Bu hesaplayıcı, herhangi bir tarih ve yer için bu pencerelerin tam olarak ne zaman açılıp kapandığını belirlemek üzere astronomik formüller kullanır.
Kullanmak için tarihinizi ve konumunuzu girmeniz yeterlidir; araç, gün doğumu ve gün batımı çevresindeki altın saat ile mavi saatin başlangıç ve bitiş saatlerini gösterir. Bir çekimi dakikası dakikasına planlamak ve ışık hâlâ mükemmelken oraya varmak isteyen fotoğrafçılar, videograflar ve gezginler için tasarlanmıştır.
Bu saatlerin mevsime ve enleminize göre belirgin biçimde kaydığını unutmayın; bu yüzden kaba bir tahmine güvenmek yerine her zaman tam tarihinize ait değerleri kontrol edin. Her şey tarayıcınızda yerel olarak hesaplanır, dolayısıyla hiçbir konum verisi cihazınızdan dışarı çıkmaz.
Sıkça Sorulan Sorular
Kod Uygulaması
import math
from datetime import datetime, timedelta, timezone
def sun_times(lat: float, lon: float, date: datetime) -> dict:
"""Calculate sunrise, sunset and golden hour times."""
# Day of year
N = date.timetuple().tm_yday
# Mean longitude and anomaly
L = (280.460 + 0.9856474 * N) % 360
g = math.radians((357.528 + 0.9856003 * N) % 360)
# Ecliptic longitude
lam = math.radians(L + 1.915 * math.sin(g) + 0.020 * math.sin(2 * g))
# Declination
decl = math.asin(math.sin(math.radians(23.439)) * math.sin(lam))
# Hour angle for sunrise/sunset (sun altitude = -0.833°)
cos_ha = (math.sin(math.radians(-0.833)) - math.sin(math.radians(lat)) * math.sin(decl)) / (math.cos(math.radians(lat)) * math.cos(decl))
if abs(cos_ha) > 1:
return {"error": "Midnight sun or polar night"}
ha = math.degrees(math.acos(cos_ha))
# Equation of time correction (simplified)
B = math.radians(360 / 365 * (N - 81))
eot = 9.87 * math.sin(2 * B) - 7.53 * math.cos(B) - 1.5 * math.sin(B)
# Solar noon in minutes from midnight UTC
solar_noon = 720 - 4 * lon - eot
sunrise_min = solar_noon - 4 * ha
sunset_min = solar_noon + 4 * ha
# Golden hour bounds: sun at 6° above horizon
cos_gh = (math.sin(math.radians(6)) - math.sin(math.radians(lat)) * math.sin(decl)) / (math.cos(math.radians(lat)) * math.cos(decl))
gh_ha = math.degrees(math.acos(max(-1, min(1, cos_gh))))
golden_end_morn = solar_noon - 4 * gh_ha
golden_start_eve = solar_noon + 4 * gh_ha
def mins_to_str(m):
h, mn = divmod(int(m), 60)
return f"{h:02d}:{mn:02d}"
return {
"sunrise": mins_to_str(sunrise_min),
"golden_hour_morning_end": mins_to_str(golden_end_morn),
"solar_noon": mins_to_str(solar_noon),
"golden_hour_evening_start": mins_to_str(golden_start_eve),
"sunset": mins_to_str(sunset_min),
}
# New York City
result = sun_times(40.7128, -74.0060, datetime(2024, 6, 21))
for k, v in result.items():
print(f"{k}: {v}")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.