mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-05 19:04:02 +00:00
A deterministic WebGL film of God's Eye View coming online: a seed on Null Island grows into a culture that draws the planet, indexes the surface tile by tile, ingests the live feeds and outgrows its dish, ending on the logo. Renders 16:9 and 9:16 frame by frame in headless Chromium; the procedural score is locked to the same clock. Data and imagery are fetched by the scripts in tools/ and are not committed. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01KqP857pippaUs6konSDfe8
21 lines
918 B
Python
21 lines
918 B
Python
"""Deliverable 2: earth_night.jpg (8192x4096) + earth_night_4k.jpg (4096x2048).
|
|
|
|
NASA Black Marble (layer VIIRS_Black_Marble, 2016 annual composite) from GIBS
|
|
EPSG:4326 level 4 (20x10 tiles of 512px = 10240x5120), Lanczos-downsampled.
|
|
Colour kept as served.
|
|
"""
|
|
import os
|
|
from PIL import Image
|
|
from common import OUT, gibs_mosaic
|
|
|
|
Image.MAX_IMAGE_PIXELS = None
|
|
LAYER = os.environ.get("NIGHT_LAYER", "VIIRS_Black_Marble")
|
|
TIME = os.environ.get("NIGHT_TIME", "2016-01-01")
|
|
EXT = "png" if LAYER == "VIIRS_Black_Marble" else "jpg"
|
|
|
|
m = gibs_mosaic(LAYER, TIME if LAYER == "VIIRS_Black_Marble" else None, "500m", 4, 10, 20, EXT)
|
|
big = m.resize((8192, 4096), Image.LANCZOS)
|
|
big.save(os.path.join(OUT, "earth_night.jpg"), quality=92, optimize=True, progressive=True)
|
|
big.resize((4096, 2048), Image.LANCZOS).save(os.path.join(OUT, "earth_night_4k.jpg"), quality=92, optimize=True, progressive=True)
|
|
print("done", LAYER, TIME)
|