From 36f99cabacf48519505f729ceaf300f9f7a95bea Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 25 Oct 2026 05:17:43 +0000 Subject: [PATCH] tools: add Cosmos 2612 / ICEYE-X36 RPO replay renderer (v1) Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_0187rSCa4AKJPGw6uiuPSGyX --- tools/rpo-replay/README.md | 79 +++ tools/rpo-replay/build_models.py | 399 ++++++++++++++ tools/rpo-replay/cosmos-2612.glb | Bin 0 -> 218384 bytes tools/rpo-replay/data.json | 1 + tools/rpo-replay/iceye-x36.glb | Bin 0 -> 171692 bytes tools/rpo-replay/logo.svg | 43 ++ tools/rpo-replay/model.py | 445 +++++++++++++++ tools/rpo-replay/render.mjs | 140 +++++ tools/rpo-replay/scene.html | 130 +++++ tools/rpo-replay/scene.js | 914 +++++++++++++++++++++++++++++++ tools/rpo-replay/tles.txt | 6 + 11 files changed, 2157 insertions(+) create mode 100644 tools/rpo-replay/README.md create mode 100644 tools/rpo-replay/build_models.py create mode 100644 tools/rpo-replay/cosmos-2612.glb create mode 100644 tools/rpo-replay/data.json create mode 100644 tools/rpo-replay/iceye-x36.glb create mode 100644 tools/rpo-replay/logo.svg create mode 100644 tools/rpo-replay/model.py create mode 100644 tools/rpo-replay/render.mjs create mode 100644 tools/rpo-replay/scene.html create mode 100644 tools/rpo-replay/scene.js create mode 100644 tools/rpo-replay/tles.txt diff --git a/tools/rpo-replay/README.md b/tools/rpo-replay/README.md new file mode 100644 index 000000000..afd78e755 --- /dev/null +++ b/tools/rpo-replay/README.md @@ -0,0 +1,79 @@ +# RPO replay: Cosmos 2612 → ICEYE-X36 (Sep 30 – Oct 21, 2026) + +A 45-second, physics-grounded reconstruction of the Russian military satellite +Cosmos 2612 (NORAD 68762) maneuvering to within a few hundred meters of the +U.S.-registered ICEYE-X36 SAR satellite (NORAD 59103), rendered in CesiumJS +over Esri World Imagery and exported as 16:9 and 9:16 video. + +```sh +python3 tools/rpo-replay/model.py # orbit reconstruction -> data.json +python3 tools/rpo-replay/build_models.py # procedural GLBs +node tools/rpo-replay/render.mjs --format 16x9 --stills 2,24,32 # spot checks +node tools/rpo-replay/render.mjs --format 16x9 # all frames (resumable) +node tools/rpo-replay/render.mjs --format 16x9 --encode # -> MP4 +``` + +Formats: `16x9` (1920×1080), `9x16` (1080×1920), and `preview` / `preview-v` +at half size. Output goes to `output/rpo-replay//`. Requires +`pip install sgp4 numpy scipy pillow`, Playwright's Chromium (SwiftShader, no +GPU), and ffmpeg. + +## What is measured and what is modeled + +**ICEYE-X36** is propagated with SGP4 from its public CelesTrak element set +(`tles.txt`). X36 did not maneuver in this window. + +**Cosmos 2612** has no public element-set history without an account, so its +path is a relative-orbit reconstruction about X36: + +- Quasi-nonsingular relative orbital elements (δa, δλ, δe, δi), advanced + with Keplerian along-track drift and the differential J2 node drift. The + 47 km "high park" is what swings Cosmos 2612's orbit plane into X36's. + The model needs a 0.27° initial plane offset; published analysis gives + ~0.22°. +- Burns are impulses through Gauss's variational equations. SMA changes are + two half-orbit-apart tangential impulses. Each burn is timed inside the + element-set window that KeepTrack, LeoLabs, and Marco Langbroek published. +- Solved checkpoints: + - Oct 12 overhead pass, then 480 km behind. + - ~400 km on Oct 15. + - 3 km behind after the Oct 16 braking burn. + - 2.0 / 0.99 / 0.72 / 0.60 km on Oct 17. + - 5.1 km behind and 140 m higher at 07:38 Oct 18. + - 293 km on Oct 19. + - Matched SMA, 477–479 km behind, from Oct 21. This matches today's Cosmos + 2612 element set. +- The model gives ~60 m/s total Δv (KeepTrack estimates ~67 m/s). The + closest approach comes out at **~325 m, 01:28 UTC Oct 18**, in Earth's + shadow. Published estimates range 150–650 m. Langbroek gives ~01:35 UTC. + +The 26 m and 25 m figures some outlets quoted come from element sets taken +after the departure burn, and KeepTrack rejects them. This replay does not +use them. + +## Rendering conventions + +- Camera and Earth ride with X36 on a slower "backdrop" clock during + time-lapse to avoid strobing. Relative motion runs at the on-screen rate. + Around closest approach the two clocks are identical, so lighting, shadow, + and the following orbital sunrise are true to time. +- Up close, the spacecraft are drawn enlarged (the factor is on screen, capped + at 150×). At closest approach they are at true scale. +- In Earth's shadow the models get a dim blue fill so their shapes stay + readable. +- ICEYE-X36 is modeled to ICEYE's published Gen-3 dimensions: 3.2 × 0.4 m + antenna, ~3.25 m span. No public imagery of Cosmos 2612's design exists, so + its model is illustrative. + +## Sources + +- CelesTrak GP element sets for 59103 and 68762. +- KeepTrack, "Cosmos 2612 / ICEYE-X36 rendezvous" deep dive: burn windows, + separations, SMA offsets. +- LeoLabs event report via Via Satellite, Oct 19, 2026. +- Marco Langbroek (SatTrackCam Leiden), quoted by Space.com, Aerospace Global + News, and TWZ. +- Vantor image of the pair, Oct 17 (~1.02 km), published by Axios Oct 22. +- Imagery: Esri World Imagery; NASA GIBS VIIRS Black Marble (night side). +- Sky: Yale Bright Star Catalogue and ESO/S. Brunier Milky Way (see + `src/data/local_data/sky/README.md`). diff --git a/tools/rpo-replay/build_models.py b/tools/rpo-replay/build_models.py new file mode 100644 index 000000000..db12d02d2 --- /dev/null +++ b/tools/rpo-replay/build_models.py @@ -0,0 +1,399 @@ +#!/usr/bin/env python3 +"""Procedural GLB models for the RPO replay. + +ICEYE-X36: ICEYE Gen-3 class SAR microsatellite. Dimensions follow ICEYE's +fleet documentation (3.2 m x 0.4 m phased-array antenna, ~3.25 m span, +two deployable solar arrays, ~0.7 x 0.5 m bus). + +Cosmos 2612: no public imagery of the design exists. The model is an +illustrative small military bus (box body, two three-panel wings, a forward +optical sensor and a rear propulsion module) sized like its launch cohort. + +Axes (glTF, Y-up): +X along-track (velocity), +Y zenith, +Z = -orbit normal. +""" + +import io +import json +import math +import struct + +import numpy as np +from PIL import Image, ImageDraw, ImageFilter + +HERE = __file__.rsplit('/', 1)[0] +RNG = np.random.default_rng(7) + + +# --------------------------------------------------------------------------- +# Textures +# --------------------------------------------------------------------------- + +def png_bytes(img): + b = io.BytesIO() + img.save(b, 'PNG', optimize=True) + return b.getvalue() + + +def solar_texture(cols=8, rows=6, size=(512, 384)): + w, h = size + img = Image.new('RGB', size, (18, 22, 40)) + d = ImageDraw.Draw(img) + cw, ch = w / cols, h / rows + for i in range(cols): + for j in range(rows): + x0, y0 = i * cw + 3, j * ch + 3 + x1, y1 = (i + 1) * cw - 3, (j + 1) * ch - 3 + shade = int(RNG.integers(-6, 6)) + d.rectangle([x0, y0, x1, y1], fill=(28 + shade, 40 + shade, 92 + shade)) + # clipped corners like triple-junction cells + c = 6 + for cx, cy in [(x0, y0), (x1, y0), (x0, y1), (x1, y1)]: + d.polygon([(cx, cy), (cx + (c if cx == x0 else -c), cy), (cx, cy + (c if cy == y0 else -c))], + fill=(18, 22, 40)) + for k in range(1, 6): + yy = y0 + (y1 - y0) * k / 6 + d.line([x0 + 2, yy, x1 - 2, yy], fill=(70, 82, 130), width=1) + d.line([x0, (y0 + y1) / 2, x1, (y0 + y1) / 2], fill=(150, 155, 170), width=2) + return img + + +def mli_texture(base, size=256): + n = RNG.normal(0, 1, (size // 8, size // 8)) + n = np.kron(n, np.ones((8, 8))) + img = Image.fromarray(np.uint8(np.clip(128 + n * 30, 0, 255))).filter(ImageFilter.GaussianBlur(3)) + a = np.asarray(img, dtype=float) / 255 + rgb = np.stack([np.clip(base[c] * (0.78 + 0.45 * a), 0, 255) for c in range(3)], -1) + # seams / tape + out = Image.fromarray(np.uint8(rgb)) + d = ImageDraw.Draw(out) + for x in (0, size // 2): + d.line([x, 0, x, size], fill=tuple(int(c * 0.65) for c in base), width=2) + return out + + +def mli_normal(size=256): + n = RNG.normal(0, 1, (size // 6 + 1, size // 6 + 1)) + n = np.kron(n, np.ones((6, 6)))[:size, :size] + h = np.asarray(Image.fromarray(np.uint8(np.clip(128 + n * 40, 0, 255))).filter(ImageFilter.GaussianBlur(2)), + dtype=float) / 255 + gx = np.roll(h, -1, 1) - np.roll(h, 1, 1) + gy = np.roll(h, -1, 0) - np.roll(h, 1, 0) + s = 3.0 + nx, ny, nz = -gx * s, -gy * s, np.ones_like(h) + l = np.sqrt(nx ** 2 + ny ** 2 + nz ** 2) + rgb = np.stack([(nx / l + 1) / 2, (ny / l + 1) / 2, (nz / l + 1) / 2], -1) + return Image.fromarray(np.uint8(rgb * 255)) + + +def sar_texture(size=(1024, 128)): + w, h = size + img = Image.new('RGB', size, (34, 36, 40)) + d = ImageDraw.Draw(img) + nx, ny = 64, 8 + for i in range(nx): + for j in range(ny): + cx, cy = (i + 0.5) * w / nx, (j + 0.5) * h / ny + r = 4.5 + d.rectangle([cx - r, cy - r, cx + r, cy + r], fill=(150, 112, 70)) + d.rectangle([cx - r + 2, cy - r + 2, cx + r - 2, cy + r - 2], fill=(118, 88, 56)) + for k in range(1, 5): + x = w * k / 5 + d.line([x, 0, x, h], fill=(10, 10, 12), width=3) + return img + + +def panel_texture(color, size=128, lines=4): + img = Image.new('RGB', (size, size), color) + d = ImageDraw.Draw(img) + for k in range(1, lines): + p = size * k / lines + d.line([p, 0, p, size], fill=tuple(int(c * 0.8) for c in color), width=1) + return img + + +# --------------------------------------------------------------------------- +# Minimal glTF builder +# --------------------------------------------------------------------------- + +class Gltf: + def __init__(self): + self.bin = bytearray() + self.j = dict(asset=dict(version='2.0', generator='gods-eye-view rpo-replay'), + scenes=[dict(nodes=[0])], scene=0, nodes=[dict(name='root', children=[])], + meshes=[], materials=[], accessors=[], bufferViews=[], buffers=[], + images=[], textures=[], samplers=[dict(magFilter=9729, minFilter=9987, wrapS=10497, wrapT=10497)]) + self.prims = [] + + def _view(self, data, target=None): + while len(self.bin) % 4: + self.bin.append(0) + off = len(self.bin) + self.bin += data + v = dict(buffer=0, byteOffset=off, byteLength=len(data)) + if target: + v['target'] = target + self.j['bufferViews'].append(v) + return len(self.j['bufferViews']) - 1 + + def _acc(self, arr, typ, target): + arr = np.ascontiguousarray(arr) + comp = 5126 if arr.dtype == np.float32 else 5125 + view = self._view(arr.tobytes(), target) + a = dict(bufferView=view, componentType=comp, count=int(arr.shape[0]), type=typ) + if typ == 'VEC3' and comp == 5126: + a['min'] = arr.min(0).tolist() + a['max'] = arr.max(0).tolist() + self.j['accessors'].append(a) + return len(self.j['accessors']) - 1 + + def texture(self, img): + view = self._view(png_bytes(img)) + self.j['images'].append(dict(bufferView=view, mimeType='image/png')) + self.j['textures'].append(dict(sampler=0, source=len(self.j['images']) - 1)) + return len(self.j['textures']) - 1 + + def material(self, name, color=(1, 1, 1), metal=0.0, rough=0.6, tex=None, normal=None, emissive=None, + double=False): + m = dict(name=name, pbrMetallicRoughness=dict(baseColorFactor=[*color, 1.0], metallicFactor=metal, + roughnessFactor=rough)) + if tex is not None: + m['pbrMetallicRoughness']['baseColorTexture'] = dict(index=tex) + if normal is not None: + m['normalTexture'] = dict(index=normal, scale=0.6) + if emissive: + m['emissiveFactor'] = list(emissive) + if double: + m['doubleSided'] = True + self.j['materials'].append(m) + return len(self.j['materials']) - 1 + + def add(self, name, pos, nrm, uv, idx, mat, translation=(0, 0, 0), rotation=None): + p = dict(attributes=dict(POSITION=self._acc(np.float32(pos), 'VEC3', 34962), + NORMAL=self._acc(np.float32(nrm), 'VEC3', 34962), + TEXCOORD_0=self._acc(np.float32(uv), 'VEC2', 34962)), + indices=self._acc(np.uint32(idx).ravel(), 'SCALAR', 34963), material=mat) + self.j['meshes'].append(dict(name=name, primitives=[p])) + node = dict(name=name, mesh=len(self.j['meshes']) - 1, translation=list(map(float, translation))) + if rotation is not None: + node['rotation'] = list(map(float, rotation)) + self.j['nodes'].append(node) + self.j['nodes'][0]['children'].append(len(self.j['nodes']) - 1) + + def save(self, path): + while len(self.bin) % 4: + self.bin.append(0) + self.j['buffers'] = [dict(byteLength=len(self.bin))] + js = json.dumps(self.j, separators=(',', ':')).encode() + while len(js) % 4: + js += b' ' + out = struct.pack(' 0 else tri[::-1]) + P = np.array(P, float) + N = np.array(N, float) + if axis == 'y': + P, N = P[:, [1, 0, 2]] * [1, 1, 1], N[:, [1, 0, 2]] + I = [t[::-1] for t in I] + elif axis == 'z': + P, N = P[:, [1, 2, 0]], N[:, [1, 2, 0]] + return P.tolist(), N.tolist(), U, I + + +def dish(r, depth, seg=32, rings=6): + """Paraboloid dish opening toward +X.""" + P, N, U, I = [], [], [], [] + for i in range(rings + 1): + rr = r * i / rings + x = depth * (rr / r) ** 2 + for k in range(seg + 1): + a = 2 * math.pi * k / seg + P.append((x, rr * math.cos(a), rr * math.sin(a))) + n = np.array([-1.0, 2 * depth * rr / r ** 2 * math.cos(a), 2 * depth * rr / r ** 2 * math.sin(a)]) + n = -n / np.linalg.norm(n) + N.append(tuple(n)) + U.append((k / seg, i / rings)) + for i in range(rings): + for k in range(seg): + a = i * (seg + 1) + k + b = a + seg + 1 + I += [(a, a + 1, b), (a + 1, b + 1, b)] + return P, N, U, I + + +def quat(axis, deg): + axis = np.array(axis, float) / np.linalg.norm(axis) + h = math.radians(deg) / 2 + return [*(axis * math.sin(h)), math.cos(h)] + + +# --------------------------------------------------------------------------- +# ICEYE-X36 +# --------------------------------------------------------------------------- + +def build_iceye(): + g = Gltf() + t_sar = g.texture(sar_texture()) + t_sol = g.texture(solar_texture(cols=6, rows=4, size=(384, 256))) + t_gold = g.texture(mli_texture((214, 168, 72))) + t_n = g.texture(mli_normal()) + t_rad = g.texture(panel_texture((226, 228, 232))) + + m_sar = g.material('sar-face', tex=t_sar, metal=0.55, rough=0.42) + m_back = g.material('antenna-back', color=(0.82, 0.83, 0.86), metal=0.2, rough=0.55, tex=t_rad) + m_gold = g.material('mli-gold', tex=t_gold, normal=t_n, metal=0.85, rough=0.32) + m_sol = g.material('solar', tex=t_sol, metal=0.4, rough=0.25) + m_frame = g.material('frame', color=(0.55, 0.56, 0.6), metal=0.9, rough=0.35) + m_black = g.material('black', color=(0.05, 0.05, 0.06), metal=0.1, rough=0.6) + m_white = g.material('white', color=(0.9, 0.9, 0.92), metal=0.0, rough=0.5) + + # SAR antenna: five hinged segments, 3.25 m along-track x 0.40 m, face tilted + # 25 deg off nadir toward -Z (right-looking). + seg_len, gap = 0.638, 0.015 + tilt = quat((1, 0, 0), -25) + for k in range(5): + x = (k - 2) * (seg_len + gap) + P, N, U, I = box(seg_len, 0.035, 0.40) + # face (-Y) UVs map into 1/5 of the antenna texture + U = [(u * 0.2 + 0.2 * k, v) for (u, v) in U] + P = np.array(P) + [x, 0, 0] + g.add(f'sar-seg-{k}', P, N, U, I, m_sar if True else m_back, rotation=tilt) + Pb, Nb, Ub, Ib = box(seg_len - 0.04, 0.012, 0.36) + g.add(f'sar-back-{k}', np.array(Pb) + [x, 0.022, 0], Nb, Ub, Ib, m_back, rotation=tilt) + # Bus behind the antenna + P, N, U, I = box(0.62, 0.42, 0.46) + g.add('bus', P, N, U, I, m_gold, translation=(0, 0.25, 0.06)) + P, N, U, I = box(0.6, 0.02, 0.44) + g.add('bus-top-radiator', P, N, U, I, m_white, translation=(0, 0.47, 0.06)) + # Solar wings off the bus, canted toward the sun-side + for side in (1, -1): + P, N, U, I = box(0.58, 0.02, 0.78) + g.add(f'solar-{side}', P, N, U, I, m_sol, translation=(0, 0.42, 0.06 + side * 0.66), + rotation=quat((1, 0, 0), side * 14)) + P, N, U, I = cylinder(0.012, 0.012, 0.16, seg=8, axis='z') + g.add(f'hinge-{side}', P, N, U, I, m_frame, translation=(0, 0.42, 0.06 + side * 0.20 - (0.16 if side < 0 else 0))) + # Star trackers, X-band downlink horn, GNSS patch + for k, z in enumerate((-0.12, 0.12)): + P, N, U, I = cylinder(0.035, 0.05, 0.08, seg=16, axis='y') + g.add(f'star-tracker-{k}', P, N, U, I, m_black, translation=(-0.2, 0.48, 0.06 + z)) + P, N, U, I = cylinder(0.05, 0.02, 0.09, seg=16, axis='y') + g.add('x-band', P, N, U, I, m_frame, translation=(0.2, 0.04, 0.2), rotation=quat((1, 0, 0), 180)) + P, N, U, I = box(0.08, 0.012, 0.08) + g.add('gnss', P, N, U, I, m_white, translation=(0.18, 0.485, 0.06)) + g.save(f'{HERE}/iceye-x36.glb') + + +# --------------------------------------------------------------------------- +# Cosmos 2612 (illustrative) +# --------------------------------------------------------------------------- + +def build_cosmos(): + g = Gltf() + t_sol = g.texture(solar_texture(cols=8, rows=6)) + t_mli = g.texture(mli_texture((178, 182, 186))) + t_dark = g.texture(mli_texture((64, 62, 58))) + t_n = g.texture(mli_normal()) + t_rad = g.texture(panel_texture((210, 212, 205))) + + m_mli = g.material('mli-silver', tex=t_mli, normal=t_n, metal=0.9, rough=0.28) + m_dark = g.material('mli-dark', tex=t_dark, normal=t_n, metal=0.6, rough=0.4) + m_sol = g.material('solar', tex=t_sol, metal=0.4, rough=0.25) + m_rad = g.material('radiator', tex=t_rad, metal=0.0, rough=0.55) + m_frame = g.material('frame', color=(0.6, 0.6, 0.62), metal=0.9, rough=0.3) + m_black = g.material('black', color=(0.03, 0.03, 0.035), metal=0.2, rough=0.4) + m_lens = g.material('lens', color=(0.05, 0.08, 0.12), metal=1.0, rough=0.05, emissive=(0.02, 0.05, 0.08)) + m_nozzle = g.material('nozzle', color=(0.35, 0.3, 0.28), metal=0.95, rough=0.4) + + P, N, U, I = box(0.95, 0.72, 0.72) + g.add('bus', P, N, U, I, m_mli) + P, N, U, I = box(0.5, 0.74, 0.74) + g.add('bus-band', P, N, U, I, m_dark, translation=(-0.12, 0, 0)) + P, N, U, I = box(0.8, 0.02, 0.6) + g.add('radiator-top', P, N, U, I, m_rad, translation=(0.02, 0.375, 0)) + # Three-panel wings along +/-Z + for side in (1, -1): + P, N, U, I = cylinder(0.018, 0.018, 0.32, seg=10, axis='z') + g.add(f'yoke-{side}', P, N, U, I, m_frame, translation=(0, 0, side * 0.36 - (0.32 if side < 0 else 0))) + for k in range(3): + P, N, U, I = box(0.62, 0.02, 0.5) + z = side * (0.36 + 0.32 + 0.26 + k * 0.52) + g.add(f'wing-{side}-{k}', P, N, U, I, m_sol, translation=(0, 0, z), rotation=quat((0, 0, 1), 10)) + # Forward optical sensor (faces +X: toward a target ahead along-track) + P, N, U, I = cylinder(0.13, 0.13, 0.24, seg=32, axis='x') + g.add('sensor-barrel', P, N, U, I, m_black, translation=(0.475, 0.12, 0.0)) + P, N, U, I = cylinder(0.145, 0.16, 0.06, seg=32, axis='x', caps=False) + g.add('sensor-hood', P, N, U, I, m_frame, translation=(0.70, 0.12, 0.0)) + P, N, U, I = cylinder(0.1, 0.1, 0.01, seg=32, axis='x') + g.add('sensor-lens', P, N, U, I, m_lens, translation=(0.715, 0.12, 0.0)) + # Proximity radar / laser rangefinder block + P, N, U, I = box(0.12, 0.12, 0.16) + g.add('ranging', P, N, U, I, m_dark, translation=(0.53, -0.18, 0.18)) + # Rear propulsion + P, N, U, I = cylinder(0.16, 0.16, 0.12, seg=24, axis='x') + g.add('prop-module', P, N, U, I, m_dark, translation=(-0.595, 0, 0)) + P, N, U, I = cylinder(0.035, 0.09, 0.16, seg=24, axis='x', caps=False) + g.add('nozzle', P, N, U, I, m_nozzle, translation=(-0.76, 0, 0), rotation=quat((0, 0, 1), 180)) + for k, (y, z) in enumerate(((0.3, 0.3), (0.3, -0.3), (-0.3, 0.3), (-0.3, -0.3))): + P, N, U, I = cylinder(0.012, 0.025, 0.05, seg=10, axis='x', caps=False) + g.add(f'rcs-{k}', P, N, U, I, m_nozzle, translation=(-0.48, y, z), rotation=quat((0, 0, 1), 180)) + # S-band dish on a short mast (zenith) + P, N, U, I = cylinder(0.012, 0.012, 0.22, seg=8, axis='y') + g.add('mast', P, N, U, I, m_frame, translation=(-0.25, 0.37, 0.18)) + P, N, U, I = dish(0.14, 0.05) + g.add('dish', P, N, U, I, m_rad, translation=(-0.25, 0.6, 0.18), rotation=quat((0, 0, 1), 90)) + g.save(f'{HERE}/cosmos-2612.glb') + + +if __name__ == '__main__': + build_iceye() + build_cosmos() diff --git a/tools/rpo-replay/cosmos-2612.glb b/tools/rpo-replay/cosmos-2612.glb new file mode 100644 index 0000000000000000000000000000000000000000..cfbc33c5e777ea3bb9ab66eca4e56cbe71407271 GIT binary patch literal 218384 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

3R2}!+ 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∾T1$4Vrf^K!7?vOcdS*OQE8TfJNYF(;fWWMa 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%0DJ%@F5wHyLWr7;(I)i<2keG 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

6rv)U~l*gFKeQYrvM< zYK)DgcmZpC2`i7Y@;j@pv*t6zc$+`-bpGZk|29Ys#W^o$ov*XjA@Z|6&YTl9G#}Q} znKhsWan{Dxh_`Ix%YWaq?IGpwK>C;e?qTl)OFPo8G_E^rlpm39lTJ!^NvEXzoksuC z&z>`+Go{B$ThfKn#nL6xj&zxHg><3^;c1AbDZ-4roitI^bCclyyKmQq}>_I-slr+Lf{nc-8@B9nhZCTY?^8ADH^SF!g;w+{O}b zNjuW6v?uj_VdF;ReP57A-uH$1DS6))=E=?B`@+=sg{kig)0Q1P?)$>j_l2qN3)7Ar zJns9#)c1v{?+eqe9X#&)!qoSLsqYKZo*g{ypFu&{2gIfH1Af3>H?$?~NW0RWlzw2` zh?IW7PfFvM=ycQuYOYzz&psfwC`9_66FKvM=!L3zU6!Q)u2bOXc09^IR>8C6QQJKJ z7(81ZwTAY`;5qVWCvi(2Jwr_2)8lWEzBMsDjz`Z-JSdNzm6#sKqd%3HzQ&_(OH7aB z(PfG0Ydm^(V)`17zCAI0jYrQ(OpoKy<%#KQJbG?odK{1bbYl7%kG>-@J&s3LB&M(N z=+7jk$MNWSiRp1X`m>4YYdm^>VtO2pzB4gBjz@nkF+Gk)FGx&}2W;z^NHzk zJo*cX>2W-IVPg6kkG?B0eT_$dF>xV}u1Z|Wqwh{k&*RZ<;*LCeQDS-?kN%RFzNg3E zBfU5=J !IWawsM=wcCkK@rx6Vu~(^s>bCI3E3##Pm2G{nf&^fwaI<9PHp6Vvl}bZugK z9*_Q3VtO2p_7ZpH(cex?kK@q~CZ^}{=!eAgJw3io`r*X%I38V}m>$QY8xqswc=Y$QYf0&pa$D=nVrpNK=4% zCZ@;n=xvGVaXk9RiRp1X`X`C$aXfl^VtO2pZca>(3KXlCZ_M{@jIn=C8o#m=-r9waXflYVtO2p{%K-*9FKlHF+Gk)w2W;zsl@a+9^ICh9>=49o|qoTqxUAJ$MNW2B&Nsl=zWRlaXk9z#Pm2G zy+1KMjz>R}m>$QYpG{1U=5o#Pm2GtrFAYc(hJTkK@sa z#Pm2GolHC;kA6NeJ&s2oOiYjC(Jv&X$MNVF6Vvl}bi0_or^g?X?nq3J$QYf0vjZ$D@Crm>$QY T-$+c4@HFfLN5YpeWKI-3>|) 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

S>Jp^t2Ued9Zfifg-pyF@dUo* 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 + God's Eye View + + + + + + + + diff --git a/tools/rpo-replay/model.py b/tools/rpo-replay/model.py new file mode 100644 index 000000000..970fd8d6a --- /dev/null +++ b/tools/rpo-replay/model.py @@ -0,0 +1,445 @@ +#!/usr/bin/env python3 +"""Reconstruct the Cosmos 2612 / ICEYE-X36 rendezvous (Sep 30 - Oct 22, 2026). + +ICEYE-X36 is propagated with SGP4 from its public CelesTrak element set. +Cosmos 2612 is carried as quasi-nonsingular relative orbital elements (ROE) +about X36 and advanced with linearised Keplerian drift plus the differential +J2 node drift. Manoeuvres are tangential / normal impulses applied through +Gauss's variational equations, timed inside the element-set windows that +KeepTrack, LeoLabs and Marco Langbroek published. The final state is pinned +to Cosmos 2612's own current element set (479 km behind, matched SMA). + +Output: data.json (60 s samples) consumed by scene.html. +""" + +import json +import math +from datetime import datetime, timedelta, timezone + +import numpy as np +from scipy.optimize import least_squares +from sgp4.api import Satrec, jday + +HERE = __file__.rsplit('/', 1)[0] +MU = 398600.4418 +RE = 6378.137 +J2 = 1.08262668e-3 + +lines = open(f'{HERE}/tles.txt').read().split('\n') +cosmos_tle = Satrec.twoline2rv(lines[1], lines[2]) +x36 = Satrec.twoline2rv(lines[4], lines[5]) + +A = (MU / (x36.no_kozai / 60) ** 2) ** (1 / 3) # km +N_RAD_S = math.sqrt(MU / A ** 3) +N_DAY = N_RAD_S * 86400 +INC = x36.inclo +V = N_RAD_S * A * 1000 # m/s orbital speed +# Differential node rate per unit da/a: dOmegadot = -3.5 * Omegadot * da/a +OMEGA_DOT = -1.5 * N_RAD_S * J2 * (RE / A) ** 2 * math.cos(INC) # rad/s + +T0 = datetime(2026, 9, 29, 12, 0, tzinfo=timezone.utc) +T1 = datetime(2026, 10, 22, 12, 0, tzinfo=timezone.utc) +DT = 60 + + +def utc(s): + return datetime.fromisoformat(s.replace('Z', '+00:00')) + + +def secs(d): + return (d - T0).total_seconds() + + +def x36_state(t): + d = T0 + timedelta(seconds=t) + jd, fr = jday(d.year, d.month, d.day, d.hour, d.minute, d.second + d.microsecond / 1e6) + e, r, v = x36.sgp4(jd, fr) + assert e == 0 + return np.array(r), np.array(v) + + +def frame(r, v): + R = r / np.linalg.norm(r) + Nn = np.cross(r, v) + Nn /= np.linalg.norm(Nn) + return R, np.cross(Nn, R), Nn + + +def arg_lat(r, v): + R, T, Nn = frame(r, v) + node = np.cross([0, 0, 1], Nn) + node /= np.linalg.norm(node) + return math.atan2(np.dot(np.cross(node, R), Nn), np.dot(node, R)) + + +# --------------------------------------------------------------------------- +# ROE dynamics. roe = [da, dl, dex, dey, dix, diy] (dimensionless, / a) +# --------------------------------------------------------------------------- + +def drift(roe, dt): + out = roe.copy() + out[1] += -1.5 * N_RAD_S * roe[0] * dt + out[5] += -3.5 * OMEGA_DOT * roe[0] * math.sin(INC) * dt + return out + + +def impulse(roe, u, dvr=0.0, dvt=0.0, dvn=0.0): + k = 1 / (N_RAD_S * A * 1000) + out = roe.copy() + out[0] += 2 * k * dvt + out[1] += -2 * k * dvr + out[2] += k * (math.sin(u) * dvr + 2 * math.cos(u) * dvt) + out[3] += k * (-math.cos(u) * dvr + 2 * math.sin(u) * dvt) + out[4] += k * math.cos(u) * dvn + out[5] += k * math.sin(u) * dvn + return out + + +def rtn(roe, u): + da, dl, dex, dey, dix, diy = roe + return A * 1000 * np.array([ + da - dex * math.cos(u) - dey * math.sin(u), + dl + 2 * dex * math.sin(u) - 2 * dey * math.cos(u), + dix * math.sin(u) - diy * math.cos(u), + ]) + + +def dv_for_da(da_km): + return V * da_km / A / 2 # m/s total, split into two half-orbit impulses + + +PERIOD = 2 * math.pi / N_RAD_S +U_CACHE = {} + + +def u_at(t): + key = round(t) + if key not in U_CACHE: + U_CACHE[key] = arg_lat(*x36_state(t)) + return U_CACHE[key] + + +def build(params): + """Return (burns, simulate) from a parameter dict.""" + p = params + burns = [] + + def hohmann(t, da_km, label, de_vec=None): + """Two tangential impulses half an orbit apart -> pure SMA change. + + de_vec optionally re-targets the relative eccentricity vector by + splitting the impulses unevenly (a small radial-tangential trim).""" + dv = dv_for_da(da_km) + burns.append(dict(t=t, dvt=dv / 2, label=label)) + burns.append(dict(t=t + PERIOD / 2, dvt=dv / 2, label=label, second=True, de=de_vec)) + + hohmann(p['t_sep30'], p['da_sep30'], 'Phasing raise') + burns.append(dict(t=p['t_oct7'], dvn=p['dvn_oct7'], label='Plane trim')) + hohmann(p['t_oct12'], p['da_oct12'], 'Descent to X36 orbit') + hohmann(p['t_oct15'], p['da_oct15'], 'Closing burn') + hohmann(p['t_oct16'], p['da_oct16'], 'Braking burn', de_vec=p['de_prox']) + burns.append(dict(t=p['t_oct18a'], dvt=dv_for_da(p['da_oct18a']), label='Back-off')) + hohmann(p['t_oct18'], p['da_oct18'], 'Departure burn') + hohmann(p['t_oct19'], p['da_oct19'], 'Re-match orbit') + burns.sort(key=lambda b: b['t']) + return burns + + +def simulate(params, times): + burns = build(params) + roe = np.array(params['roe0'], dtype=float) + t = 0.0 + bi = 0 + out = [] + roe_out = [] + for tt in times: + while bi < len(burns) and burns[bi]['t'] <= tt: + b = burns[bi] + roe = drift(roe, b['t'] - t) + t = b['t'] + u = u_at(t) + roe = impulse(roe, u, dvt=b.get('dvt', 0), dvn=b.get('dvn', 0)) + if b.get('de') is not None: + roe[2], roe[3] = b['de'][0] / (A * 1000), b['de'][1] / (A * 1000) + bi += 1 + roe = drift(roe, tt - t) + t = tt + out.append(rtn(roe, u_at(tt))) + roe_out.append(roe.copy()) + return np.array(out), np.array(roe_out), burns + + +# --------------------------------------------------------------------------- +# Timeline (UTC). Windows are the published element-set gaps. +# --------------------------------------------------------------------------- +OCT12_OVERHEAD = secs(utc('2026-10-12T00:10:00Z')) +LAP_DA = 47.0 # km, KeepTrack: "raised orbit by 47 km in total" +lap_rate = 1.5 * N_RAD_S * LAP_DA / A # rad/s +t_sep30 = secs(utc('2026-09-30T11:00:00Z')) + +params = dict( + t_sep30=t_sep30, da_sep30=LAP_DA - 1.0, + t_oct7=secs(utc('2026-10-07T10:30:00Z')), dvn_oct7=4.0, + t_oct12=secs(utc('2026-10-12T01:30:00Z')), da_oct12=-(LAP_DA + 0.2), + t_oct15=secs(utc('2026-10-15T03:00:00Z')), da_oct15=-2.3, + t_oct16=secs(utc('2026-10-16T05:30:00Z')), da_oct16=2.48, + de_prox=(0.0, 800.0), + t_oct18a=secs(utc('2026-10-18T02:00:00Z')), da_oct18a=0.13, + t_oct18=secs(utc('2026-10-18T12:26:00Z')), da_oct18=2.40, + t_oct19=secs(utc('2026-10-19T20:00:00Z')), da_oct19=-2.45, + roe0=[1.0 / A, 0.0, 0.0, 0.0, -0.032 * math.pi / 180, 0.0], +) + + +def sep_at(p, iso_list): + ts = [secs(utc(s)) for s in iso_list] + r, roe, _ = simulate(p, ts) + return np.linalg.norm(r, axis=1) / 1000, r, roe + + +def dl_at(p, iso): + _, _, roe = sep_at(p, [iso]) + return roe[0][1] + + +# 1) Initial along-track phase so the Oct 12 overhead pass (dl = -2 pi) is hit. +def f_phase(x): + p = dict(params, roe0=[params['roe0'][0], x[0]] + params['roe0'][2:]) + return [dl_at(p, '2026-10-12T00:10:00Z') + 2 * math.pi] + + +params['roe0'][1] = least_squares(f_phase, [-0.5]).x[0] +# Undo the lap so dl is near zero afterwards (wrap): handled by subtracting 2 pi. +params['roe0'][1] += 2 * math.pi +# Wrap: overhead at Oct 12 is now dl=0. + +# 1b) Initial relative inclination vector: the 47 km "high park" lets +# differential J2 node drift close the plane; the Oct 7 normal burn +# trims the rest. Fit so the plane angle is ~0.002 deg by Oct 16. +def f_plane(x): + p = dict(params, roe0=params['roe0'][:4] + [x[0], x[1]]) + _, _, roe = sep_at(p, ['2026-10-16T12:00:00Z']) + target = 0.002 * math.pi / 180 / math.sqrt(2) + return [(roe[0][4] - target) * 1e5, (roe[0][5] - target) * 1e5] + + +params['roe0'][4:6] = list(least_squares(f_plane, [0.0, -0.002]).x) +plane0 = math.degrees(math.hypot(*params['roe0'][4:6])) + +# 2) Oct 12 descent timing -> ~480 km behind once the drift stops. +def f_desc(x): + p = dict(params, t_oct12=x[0]) + return [dl_at(p, '2026-10-12T06:00:00Z') * A + 480.0] + + +params['t_oct12'] = least_squares(f_desc, [params['t_oct12']]).x[0] + +# 3) Oct 15 closing burn timing so drift is arrested ~3 km behind by the Oct 16 braking burn. +def f_close(x): + p = dict(params, t_oct15=x[0]) + t16 = params['t_oct16'] + PERIOD + d = (T0 + timedelta(seconds=t16)).isoformat() + return [dl_at(p, d) * A + 3.0] + + +params['t_oct15'] = least_squares(f_close, [params['t_oct15']]).x[0] + +# 4) Proximity phase: fit the residual SMA offset, relative e / i vectors to +# published separations (Oct 17) and a sub-km closest approach early Oct 18. +CHECK = [ + ('2026-10-17T07:45:00Z', 2.1), + ('2026-10-17T17:18:00Z', 0.85), + ('2026-10-17T20:29:00Z', 0.64), + ('2026-10-17T23:40:00Z', 0.64), +] + + +DE_PROX_M = 800.0 # KeepTrack: relative loops ~1.6 km tall after the braking burn + + +def prox_params(x): + t16, da16, phi = x + return dict(params, t_oct16=t16, da_oct16=da16, + de_prox=(DE_PROX_M * math.cos(phi), DE_PROX_M * math.sin(phi))) + + +def window(start, end, step_min): + t, out = utc(start), [] + while t < utc(end): + out.append(t.isoformat()) + t += timedelta(minutes=step_min) + return out + + +ca_window = window('2026-10-17T23:30:00Z', '2026-10-18T02:00:00Z', 1) +pre_window = window('2026-10-16T08:00:00Z', '2026-10-17T23:30:00Z', 4) +T_CA_TARGET = 75 # minutes after 00:00 -> 01:15 UTC (Langbroek ~01:35, KeepTrack ~01:10) + + +def f_prox(x): + p = prox_params(x) + d, _, roe = sep_at(p, [c[0] for c in CHECK] + ['2026-10-16T12:00:00Z']) + res = [(d[i] - c[1]) / 0.5 for i, c in enumerate(CHECK)] + res.append((roe[-1][1] * A + 3.0) / 0.3) + dw, _, _ = sep_at(p, ca_window) + k = int(np.argmin(dw)) + res.append((dw[k] - 0.20) / 0.02) + res.append((k - 30 - T_CA_TARGET) / 15) + dp, _, _ = sep_at(p, pre_window) + res.append(max(0.0, 0.55 - dp.min()) / 0.02) + return res + + +best = None +for phi0 in np.linspace(0, 2 * math.pi, 8, endpoint=False): + f = least_squares(f_prox, [params['t_oct16'] - 1800, 2.49, phi0], x_scale=[600, 0.01, 0.3], + diff_step=[1e-4, 1e-4, 1e-3]) + if best is None or f.cost < best.cost: + best = f +fit = best +params.update(prox_params(fit.x)) +print('prox fit residuals', np.round(fit.fun, 2), 'x', fit.x) + +# 5) Post-CA back-off so Oct 18 07:38 is ~5.1 km behind. +def f_back(x): + p = dict(params, da_oct18a=x[0]) + d, r, _ = sep_at(p, ['2026-10-18T07:38:00Z']) + return [d[0] - 5.1] + + +params['da_oct18a'] = least_squares(f_back, [0.13]).x[0] + +# 6) Re-match burn so the state lands on the current element sets +# (Oct 24: 479 km behind, SMA offset +0.017 km). +def pair_phase(iso): + d = utc(iso) + jd, fr = jday(d.year, d.month, d.day, d.hour, d.minute, d.second) + _, rc, _ = cosmos_tle.sgp4(jd, fr) + r, v = x36_state(secs(d)) + R, T, Nn = frame(r, v) + return math.atan2(np.dot(np.cross(r, rc), Nn), np.dot(r, rc)) + + +A_COSMOS = (MU / (cosmos_tle.no_kozai / 60) ** 2) ** (1 / 3) +END_DA = A_COSMOS - A +target_dl = pair_phase('2026-10-21T12:00:00Z') + + +def f_rematch(x): + p = dict(params, t_oct19=x[0], da_oct19=END_DA - (params['da_oct18a'] + params['da_oct18'] + params['roe0'][0] * 0 + 0)) + return [(dl_at(p, '2026-10-21T12:00:00Z') - target_dl) * A] + + +# SMA bookkeeping: total offset after Oct 18 burns. +def sma_after(p, iso): + _, _, roe = sep_at(p, [iso]) + return roe[0][0] * A + + +da_before_rematch = sma_after(params, '2026-10-19T12:00:00Z') +params['da_oct19'] = END_DA - da_before_rematch +params['t_oct19'] = least_squares( + lambda x: [(dl_at(dict(params, t_oct19=x[0]), '2026-10-21T12:00:00Z') - target_dl) * A], + [params['t_oct19']], +).x[0] + +# --------------------------------------------------------------------------- +# Sample and export +# --------------------------------------------------------------------------- +times = np.arange(0, secs(T1) + 1, DT) +rel, roe, burns = simulate(params, list(times)) +x36_pos = np.array([x36_state(t)[0] for t in times]) + +dist_km = np.linalg.norm(rel, axis=1) / 1000 +# Chord distance for large phases: the ROE map is linear, so use the +# curvilinear placement for the true separation. +def true_sep(i): + r, v = x36_state(times[i]) + R, T, Nn = frame(r, v) + th = rel[i][1] / 1000 / np.linalg.norm(r) + Rp = R * math.cos(th) + T * math.sin(th) + pc = (np.linalg.norm(r) + rel[i][0] / 1000) * Rp + rel[i][2] / 1000 * Nn + return np.linalg.norm(pc - r) + + +sep = np.array([true_sep(i) for i in range(len(times))]) +ica = int(np.argmin(np.where(times > secs(utc('2026-10-17T12:00:00Z')), sep, 1e9))) + +events = [ + dict(t='2026-09-30T11:00:00Z', key='raise'), + dict(t='2026-10-12T00:10:00Z', key='overhead'), +] + +burn_list = [] +for b in burns: + if b.get('second'): + continue + dv = abs(b.get('dvt', 0)) * (1 if b['label'] == 'Back-off' else 2) + abs(b.get('dvn', 0)) + burn_list.append(dict(t=(T0 + timedelta(seconds=b['t'])).isoformat().replace('+00:00', 'Z'), + label=b['label'], dv=round(dv, 2))) + +total_dv = sum(b['dv'] for b in burn_list) +ca_t = (T0 + timedelta(seconds=float(times[ica]))).isoformat().replace('+00:00', 'Z') +# Refine CA with 2 s sampling +fine = list(np.arange(times[ica] - 120, times[ica] + 120, 2.0)) +relf, _, _ = simulate(params, fine) +dfine = np.linalg.norm(relf, axis=1) +j = int(np.argmin(dfine)) +ca_t = (T0 + timedelta(seconds=float(fine[j]))).isoformat().replace('+00:00', 'Z') +ca_m = float(dfine[j]) +ca_rtn = relf[j].tolist() + +# Vantor image: Oct 17, ~1.02 km. Pick the Oct 17 sample nearest 1.02 km in the afternoon. +# Vantor imaged optically, so the pair must be sunlit at capture. +def sun_dir(t): + n = (T0 + timedelta(seconds=float(t)) - datetime(2000, 1, 1, 12, tzinfo=timezone.utc)).total_seconds() / 86400 + L = math.radians((280.46 + 0.9856474 * n) % 360) + g = math.radians((357.528 + 0.9856003 * n) % 360) + lam = L + math.radians(1.915) * math.sin(g) + math.radians(0.02) * math.sin(2 * g) + eps = math.radians(23.439) + return np.array([math.cos(lam), math.cos(eps) * math.sin(lam), math.sin(eps) * math.sin(lam)]) + + +def sunlit(t): + r = x36_state(t)[0] + s = sun_dir(t) + p = np.dot(r, s) + return p > 0 or np.linalg.norm(r - p * s) > RE + + +lit = np.array([sunlit(t) for t in times]) +mask = (times > secs(utc('2026-10-17T06:00:00Z'))) & (times < secs(utc('2026-10-17T23:59:00Z'))) & lit +iv = int(np.argmin(np.where(mask, np.abs(sep - 1.02), 1e9))) + +out = dict( + t0=T0.isoformat().replace('+00:00', 'Z'), + dt=DT, + a_km=A, + x36=np.round(x36_pos, 4).ravel().tolist(), + rel=np.round(rel, 2).ravel().tolist(), + sep_km=np.round(sep, 4).tolist(), + burns=burn_list, + total_dv=round(total_dv, 1), + ca=dict(t=ca_t, m=round(ca_m, 1), rtn=[round(v, 1) for v in ca_rtn]), + vantor=dict(t=(T0 + timedelta(seconds=float(times[iv]))).isoformat().replace('+00:00', 'Z'), + km=round(float(sep[iv]), 2)), + lit=''.join('1' if v else '0' for v in lit), + sma_offset_km=np.round(roe[:, 0] * A, 3).tolist()[::10], +) +json.dump(out, open(f'{HERE}/data.json', 'w'), separators=(',', ':')) + +print(f'a = {A:.3f} km, period = {PERIOD/60:.2f} min') +print('burns:') +for b in burn_list: + print(' ', b) +print('total dv', total_dv) +print('CA', ca_t, f'{ca_m:.0f} m', 'RTN', np.round(ca_rtn, 0)) +print('Vantor', out['vantor']) +for iso in ['2026-10-05T12:00:00Z', '2026-10-12T00:10:00Z', '2026-10-12T06:00:00Z', '2026-10-15T00:00:00Z', + '2026-10-15T12:00:00Z', '2026-10-16T06:00:00Z', '2026-10-16T12:00:00Z', '2026-10-17T07:45:00Z', + '2026-10-17T17:18:00Z', '2026-10-17T20:29:00Z', '2026-10-17T23:40:00Z', '2026-10-18T07:38:00Z', + '2026-10-19T07:32:00Z', '2026-10-21T12:00:00Z', '2026-10-22T12:00:00Z']: + i = int(secs(utc(iso)) // DT) + print(f' {iso} sep {sep[i]:9.2f} km rtn(km) {np.round(rel[i]/1000, 2)} dSMA {roe[i][0]*A:7.3f}') +print('plane angle at T0 deg', plane0) +print('target dl (Oct 21 from TLEs) km', target_dl * A, 'END_DA', END_DA) diff --git a/tools/rpo-replay/render.mjs b/tools/rpo-replay/render.mjs new file mode 100644 index 000000000..8fc4b0cd6 --- /dev/null +++ b/tools/rpo-replay/render.mjs @@ -0,0 +1,140 @@ +#!/usr/bin/env node +/** + * render.mjs — deterministic frame capture for the Cosmos 2612 / ICEYE-X36 replay. + * + * node tools/rpo-replay/render.mjs --format 16x9 --stills 2,9,24,32 + * node tools/rpo-replay/render.mjs --format 9x16 --from 0 --to 675 + * node tools/rpo-replay/render.mjs --format 16x9 --encode + * + * Frames are written to output/rpo-replay//frames/NNNNN.jpg; existing + * frames are skipped, so interrupted renders resume. --encode muxes them to MP4. + * Uses Playwright's Chromium with SwiftShader (no GPU needed). + */ +import { createServer } from 'node:http'; +import { readFile, mkdir, access } from 'node:fs/promises'; +import { extname, join, normalize } from 'node:path'; +import { fileURLToPath } from 'node:url'; +import { spawnSync } from 'node:child_process'; +import { createRequire } from 'node:module'; + +const require = createRequire(import.meta.url); +const { chromium } = require('playwright'); + +const HERE = fileURLToPath(new URL('.', import.meta.url)); +const ROOT = process.env.GEV_PROJECT_ROOT || join(HERE, '../..'); +const CESIUM = join(ROOT, 'node_modules/cesium/Build/Cesium'); +const SKY = join(ROOT, 'src/data/local_data/sky'); + +const args = Object.fromEntries( + process.argv.slice(2).reduce((acc, a, i, all) => { + if (a.startsWith('--')) acc.push([a.slice(2), all[i + 1] && !all[i + 1].startsWith('--') ? all[i + 1] : true]); + return acc; + }, []), +); +const FORMATS = { '16x9': [1920, 1080], '9x16': [1080, 1920], preview: [960, 540], 'preview-v': [540, 960] }; +const format = args.format || '16x9'; +const [W, H] = FORMATS[format]; +const FPS = Number(args.fps || 30); +const DUR = 45; +const total = Math.round(DUR * FPS); +const outDir = join(ROOT, 'output/rpo-replay', format); +const frameDir = join(outDir, 'frames'); + +const MIME = { + '.html': 'text/html', '.js': 'application/javascript', '.css': 'text/css', '.json': 'application/json', + '.png': 'image/png', '.jpg': 'image/jpeg', '.svg': 'image/svg+xml', '.wasm': 'application/wasm', + '.glb': 'model/gltf-binary', '.xml': 'application/xml', '.ktx2': 'image/ktx2', '.webp': 'image/webp', +}; + +function serve() { + const server = createServer(async (req, res) => { + const url = new URL(req.url, 'http://localhost'); + const p = decodeURIComponent(url.pathname); + const file = p.startsWith('/cesium/') + ? join(CESIUM, normalize(p.slice('/cesium/'.length))) + : p.startsWith('/sky/') + ? join(SKY, normalize(p.slice('/sky/'.length))) + : join(HERE, normalize(p === '/' ? 'scene.html' : p.slice(1))); + if (!file.startsWith(CESIUM) && !file.startsWith(SKY) && !file.startsWith(HERE)) { + res.writeHead(403).end(); + return; + } + try { + const body = await readFile(file); + res.writeHead(200, { 'Content-Type': MIME[extname(file)] || 'application/octet-stream' }); + res.end(body); + } catch { + res.writeHead(404).end(); + } + }); + return new Promise((r) => server.listen(0, '127.0.0.1', () => r(server))); +} + +async function exists(p) { + try { + await access(p); + return true; + } catch { + return false; + } +} + +function encode() { + const out = join(outDir, `cosmos2612-iceye-x36-${format}.mp4`); + const r = spawnSync('ffmpeg', [ + '-y', '-framerate', String(FPS), '-i', join(frameDir, '%05d.jpg'), + '-c:v', 'libx264', '-preset', 'slow', '-crf', '16', '-pix_fmt', 'yuv420p', '-movflags', '+faststart', + '-vf', 'format=yuv420p', out, + ], { stdio: 'inherit' }); + if (r.status !== 0) process.exit(r.status || 1); + console.log(out); +} + +if (args.encode) { + encode(); + process.exit(0); +} + +const server = await serve(); +const port = server.address().port; +const browser = await chromium.launch({ + args: ['--use-gl=angle', '--use-angle=swiftshader', '--enable-unsafe-swiftshader', '--ignore-gpu-blocklist', + '--disable-gpu-sandbox', '--enable-webgl'], +}); +const page = await browser.newPage({ viewport: { width: W, height: H }, deviceScaleFactor: 1 }); +page.on('console', (m) => { + if (m.type() === 'error' || m.type() === 'warning') console.log(`[page ${m.type()}]`, m.text()); +}); +page.on('pageerror', (e) => console.log('[pageerror]', e.message)); +await page.goto(`http://127.0.0.1:${port}/scene.html?w=${W}&h=${H}`); +await page.waitForFunction(() => window.rpo?.ready, null, { timeout: 180000 }); + +if (args.stills) { + const dir = join(outDir, 'stills'); + await mkdir(dir, { recursive: true }); + for (const s of String(args.stills).split(',').map(Number)) { + const t0 = Date.now(); + const info = await page.evaluate((x) => window.rpo.frame(x), s); + await page.screenshot({ path: join(dir, `s${s.toFixed(2).padStart(5, '0')}.jpg`), type: 'jpeg', quality: 92 }); + console.log(`still ${s}s sep=${(info.sep / 1000).toFixed(3)} km mag=${info.mag.toFixed(1)} ${Date.now() - t0} ms`); + } +} else { + await mkdir(frameDir, { recursive: true }); + const from = Number(args.from || 0); + const to = Math.min(Number(args.to || total), total); + const t0 = Date.now(); + let done = 0; + for (let f = from; f < to; f++) { + const path = join(frameDir, `${String(f).padStart(5, '0')}.jpg`); + if (await exists(path)) continue; + await page.evaluate((x) => window.rpo.frame(x), f / FPS); + await page.screenshot({ path, type: 'jpeg', quality: 94 }); + done++; + if (done % 25 === 0) { + const per = (Date.now() - t0) / done; + console.log(`${format} frame ${f}/${to} ${(per / 1000).toFixed(2)} s/frame eta ${(((to - f) * per) / 60000).toFixed(1)} min`); + } + } +} +await browser.close(); +server.close(); diff --git a/tools/rpo-replay/scene.html b/tools/rpo-replay/scene.html new file mode 100644 index 000000000..d16b5f5b2 --- /dev/null +++ b/tools/rpo-replay/scene.html @@ -0,0 +1,130 @@ + + + + +Cosmos 2612 / ICEYE-X36 replay + + + + + + +

+
+
+
+
+ +
+
+

+
+
SEPARATION
+
+
+
+
+
+ + + + diff --git a/tools/rpo-replay/scene.js b/tools/rpo-replay/scene.js new file mode 100644 index 000000000..8e2fb17de --- /dev/null +++ b/tools/rpo-replay/scene.js @@ -0,0 +1,914 @@ +/* global Cesium */ +// Deterministic frame renderer for the Cosmos 2612 / ICEYE-X36 replay. +// window.rpo.frame(seconds) sets every piece of state for one video instant, +// renders, and resolves once imagery and models have settled. + +const params = new URLSearchParams(location.search); +const W = Number(params.get('w') || 1920); +const H = Number(params.get('h') || 1080); +const PORTRAIT = H > W; +const U = PORTRAIT ? W / 1080 : W / 1920; +document.documentElement.style.setProperty('--u', `${U}px`); +if (PORTRAIT) document.body.classList.add('portrait'); + +const D = await (await fetch('data.json')).json(); +const T0 = Date.parse(D.t0); +const DT = D.dt; +const NS = D.sep_km.length; +const sec = (iso) => (Date.parse(iso) - T0) / 1000; +const DUR = 45; + +// --------------------------------------------------------------------------- +// Interpolation +// --------------------------------------------------------------------------- +function cr(arr, t, out, scale = 1) { + const x = Math.min(Math.max(t / DT, 1), NS - 3); + const i = Math.floor(x); + const u = x - i; + const u2 = u * u; + const u3 = u2 * u; + for (let k = 0; k < 3; k++) { + const p0 = arr[(i - 1) * 3 + k]; + const p1 = arr[i * 3 + k]; + const p2 = arr[(i + 1) * 3 + k]; + const p3 = arr[(i + 2) * 3 + k]; + out[k] = + 0.5 * scale * + (2 * p1 + (-p0 + p2) * u + (2 * p0 - 5 * p1 + 4 * p2 - p3) * u2 + (-p0 + 3 * p1 - 3 * p2 + p3) * u3); + if (out.length > 3) { + out[3 + k] = (0.5 * scale * ((-p0 + p2) + 2 * (2 * p0 - 5 * p1 + 4 * p2 - p3) * u + 3 * (-p0 + 3 * p1 - 3 * p2 + p3) * u2)) / DT; + } + } + return out; +} +const v3 = Cesium.Cartesian3; +const tmp6 = new Float64Array(6); +function x36Teme(t) { + cr(D.x36, t, tmp6, 1000); + return { r: new v3(tmp6[0], tmp6[1], tmp6[2]), v: new v3(tmp6[3], tmp6[4], tmp6[5]) }; +} +const tmp3 = new Float64Array(3); +function relAt(t) { + cr(D.rel, t, tmp3, 1); + return [tmp3[0], tmp3[1], tmp3[2]]; +} +function sepAt(t) { + const x = Math.min(Math.max(t / DT, 0), NS - 2); + const i = Math.floor(x); + return D.sep_km[i] + (D.sep_km[i + 1] - D.sep_km[i]) * (x - i); +} +function litAt(t) { + return D.lit[Math.round(Math.min(Math.max(t / DT, 0), NS - 1))] === '1'; +} +function basis(r, v) { + const R = v3.normalize(r, new v3()); + const N = v3.normalize(v3.cross(r, v, new v3()), new v3()); + const T = v3.cross(N, R, new v3()); + return { R, T, N }; +} +// Curvilinear placement: along-track offset is an arc on the anchor orbit. +function place(anchor, B, rel) { + const rm = v3.magnitude(anchor); + const th = rel[1] / rm; + const c = Math.cos(th); + const s = Math.sin(th); + const Rp = new v3(B.R.x * c + B.T.x * s, B.R.y * c + B.T.y * s, B.R.z * c + B.T.z * s); + const out = v3.multiplyByScalar(Rp, rm + rel[0], new v3()); + return v3.add(out, v3.multiplyByScalar(B.N, rel[2], new v3()), out); +} + +// --------------------------------------------------------------------------- +// Time maps. tau(s): simulation clock. b(s): backdrop/anchor clock (Earth and +// lighting), equal to tau around closest approach. +// --------------------------------------------------------------------------- +const CA_T = sec(D.ca.t); +const VANTOR_T = sec(D.vantor.t); +const TAU_KEYS = [ + [0.0, '2026-09-30T07:30:00Z'], + [4.0, '2026-09-30T10:20:00Z'], + [7.0, '2026-09-30T13:00:00Z'], + [12.5, '2026-10-11T23:20:00Z'], + [15.0, '2026-10-12T03:20:00Z'], + [17.0, '2026-10-15T01:30:00Z'], + [18.6, '2026-10-15T04:40:00Z'], + [20.6, '2026-10-16T04:40:00Z'], + [22.2, '2026-10-16T07:40:00Z'], + [25.8, '2026-10-17T15:40:00Z'], + [27.6, '2026-10-17T18:10:00Z'], + [29.8, D.ca.t, -14 * 60], + [35.0, D.ca.t, 11 * 60], + [36.4, '2026-10-18T07:00:00Z'], + [40.6, '2026-10-21T10:00:00Z'], + [45.0, '2026-10-21T13:00:00Z'], +].map(([s, iso, off = 0]) => [s, sec(iso) + off]); + +function monotone(keys) { + const n = keys.length; + const xs = keys.map((k) => k[0]); + const ys = keys.map((k) => k[1]); + const d = []; + for (let i = 0; i < n - 1; i++) d.push((ys[i + 1] - ys[i]) / (xs[i + 1] - xs[i])); + // Geometric-mean slopes keep huge rate swings smooth in log-space. + const m = [d[0]]; + for (let i = 1; i < n - 1; i++) m.push(Math.sqrt(d[i - 1] * d[i])); + m.push(d[n - 2]); + for (let i = 0; i < n - 1; i++) { + const a = m[i] / d[i]; + const b = m[i + 1] / d[i]; + const h = a * a + b * b; + if (h > 9) { + const t = 3 / Math.sqrt(h); + m[i] = t * a * d[i]; + m[i + 1] = t * b * d[i]; + } + } + const f = (s) => { + let i = 0; + while (i < n - 2 && s > xs[i + 1]) i++; + const hh = xs[i + 1] - xs[i]; + const t = Math.min(Math.max((s - xs[i]) / hh, 0), 1); + const t2 = t * t; + const t3 = t2 * t; + return ( + (2 * t3 - 3 * t2 + 1) * ys[i] + (t3 - 2 * t2 + t) * hh * m[i] + (-2 * t3 + 3 * t2) * ys[i + 1] + (t3 - t2) * hh * m[i + 1] + ); + }; + return f; +} +const tau = monotone(TAU_KEYS); +const rate = (s) => (tau(s + 0.01) - tau(s - 0.01)) / 0.02; + +const S_SYNC0 = 29.8; +const S_SYNC1 = 35.0; +function hermite(s, s0, y0, m0, s1, y1, m1) { + const h = s1 - s0; + const t = (s - s0) / h; + const t2 = t * t; + const t3 = t2 * t; + return (2 * t3 - 3 * t2 + 1) * y0 + (t3 - 2 * t2 + t) * h * m0 + (-2 * t3 + 3 * t2) * y1 + (t3 - t2) * h * m1; +} +const BG_RATE = 110; +function bclock(s) { + if (s >= S_SYNC0 && s <= S_SYNC1) return tau(s); + if (s < S_SYNC0) { + const y1 = tau(S_SYNC0); + return hermite(s, 0, y1 - S_SYNC0 * BG_RATE * 1.15, BG_RATE, S_SYNC0, y1, rate(S_SYNC0)); + } + const y0 = tau(S_SYNC1); + return hermite(s, S_SYNC1, y0, rate(S_SYNC1), DUR, y0 + (DUR - S_SYNC1) * BG_RATE * 1.2, BG_RATE); +} +function sOfTau(t) { + let lo = 0; + let hi = DUR; + for (let k = 0; k < 50; k++) { + const mid = (lo + hi) / 2; + if (tau(mid) < t) lo = mid; + else hi = mid; + } + return lo; +} + +// --------------------------------------------------------------------------- +// Story: captions, events, camera +// --------------------------------------------------------------------------- +const fmtKm = (km) => (km >= 100 ? `${Math.round(km).toLocaleString('en-US')}` : km >= 10 ? km.toFixed(0) : km.toFixed(1)); + +const CAPTIONS = [ + { + s0: 0.2, s1: 4.3, + kicker: 'Low Earth orbit · 540 km · Sep 30 – Oct 21, 2026', + title: 'Hunting a radar satellite', + body: 'Over three weeks, Russia\'s military satellite Cosmos 2612 stalked ICEYE-X36, a U.S.-registered radar imager whose pictures help Ukraine — and closed to a few hundred meters.', + }, + { + s0: 4.5, s1: 12.3, + kicker: '1 · Phasing', + title: 'Climb high, fall behind', + body: 'Two burns lift Cosmos 2612 47 km above its target. A higher orbit is slower, so it drifts back ~6,500 km a day and laps X36 — while Earth\'s equatorial bulge slowly swings its orbit plane into line.', + }, + { + s0: 12.6, s1: 21.9, + kicker: '2 · Descent', + title: 'Drop into the same orbit', + body: 'Directly overhead on Oct 12, it drops 47 km into X36\'s orbit, 480 km behind. On Oct 15 a 2 km dip makes it slightly faster: it closes ~350 km a day — then brakes 3 km behind.', + }, + { + s0: 22.1, s1: 29.6, + kicker: '3 · Proximity', + title: 'Close enough to inspect', + body: 'For two days it holds station behind X36, its path looping 1.6 km each orbit as it creeps forward. These are the maneuvers of an inspector: they need fuel, planning, and sensors that can find the target.', + }, + { + s0: 29.8, s1: 35.6, + kicker: '3 · Closest approach', + title: 'In Earth\'s shadow', + body: 'Early on Oct 18, during orbital night, it passes about %CA% m behind X36 at under 1 m/s. Published estimates range from 150 to 650 m. Nine minutes later, the sun comes up.', + }, + { + s0: 35.8, s1: 41.0, + kicker: '4 · Departure', + title: 'Back off, and wait', + body: 'A 1.3 m/s burn lifts it 2.4 km and it falls away at ~350 km a day. On Oct 19 it matches orbits again — and today it is still parked 480 km behind.', + }, +]; + +const BURNS = D.burns.map((b) => ({ ...b, t: sec(b.t) })); +const BURN_NOTES = { + 'Phasing raise': '+46 km', + 'Plane trim': 'out-of-plane', + 'Descent to X36 orbit': '−47 km', + 'Closing burn': '−2.3 km', + 'Braking burn': '+2.5 km', + 'Back-off': '+0.13 km', + 'Departure burn': '+2.4 km', + 'Re-match orbit': '−2.6 km', +}; +const EVENTS = [ + ...BURNS.map((b) => ({ t: b.t, kind: 'burn', title: `BURN · Δv ${b.dv < 1 ? b.dv.toFixed(2) : b.dv.toFixed(1)} m/s`, sub: `${b.label} · ${BURN_NOTES[b.label] || ''}`, at: 'cosmos' })), + { t: sec('2026-10-05T11:55:00Z'), kind: 'note', title: 'OVERHEAD PASS', sub: '~50 km above X36', at: 'cosmos' }, + { t: sec('2026-10-12T00:10:00Z'), kind: 'note', title: 'OVERHEAD PASS', sub: '47 km directly above', at: 'cosmos' }, + { t: VANTOR_T, kind: 'vantor', title: 'VANTOR IMAGES THE PAIR', sub: `from orbit · ~${D.vantor.km.toFixed(1)} km apart · Oct 17`, at: 'mid' }, + { t: CA_T, kind: 'ca', title: `CLOSEST APPROACH · ~${Math.round(D.ca.m / 5) * 5} m`, sub: `${D.ca.t.slice(11, 16)} UTC Oct 18 · est. range 150–650 m`, at: 'mid' }, +].map((e) => ({ ...e, s: sOfTau(e.t) })); +// Two burns that land in the same instant only show once. +EVENTS.sort((a, b) => a.s - b.s); + +// Camera keys, in X36's local frame (R up, T velocity, N orbit normal). +// dist: metres (or auto = f * separation, floored at min). az: 0 = behind X36 +// looking forward. look: 0 = X36, 1 = Cosmos. earth: pull aim to Earth centre. +const WIDE = { f: 0, look: 0, earth: 0.86, fov: 40, mag: 0, sun: 0.55 }; +const CAM = [ + { s: 0.0, ...WIDE, dist: 5.4e7, az: 82, el: 36, trail: 2 }, + { s: 6.0, ...WIDE, dist: 4.6e7, az: 96, el: 34, trail: 20 }, + { s: 12.5, ...WIDE, dist: 4.4e7, az: 118, el: 30, trail: 30 }, + { s: 12.5, cut: true, dist: 6.0e5, f: 2.8, az: 50, el: 38, look: 0.5, earth: 0, fov: 34, mag: 0, trail: 3 }, + { s: 15.4, dist: 1.6e6, f: 2.8, az: 32, el: 36, look: 0.5, earth: 0, fov: 34, mag: 0, trail: 8 }, + { s: 18.0, dist: 1.4e6, f: 2.8, az: 26, el: 34, look: 0.5, earth: 0, fov: 34, mag: 0, trail: 12 }, + { s: 20.4, dist: 4.0e4, f: 2.8, az: 40, el: 32, look: 0.5, earth: 0, fov: 34, mag: 0, trail: 10 }, + { s: 22.4, dist: 6.5e3, f: 0, az: 58, el: 34, look: 0.45, earth: 0, fov: 36, mag: 1, trail: 9 }, + { s: 26.0, dist: 4.6e3, f: 0, az: 76, el: 30, look: 0.5, earth: 0, fov: 36, mag: 1, trail: 9 }, + { s: 28.8, dist: 2.2e3, f: 0, az: 100, el: 22, look: 0.4, earth: 0, fov: 36, mag: 1, trail: 4 }, + { s: 29.9, dist: 12, f: 0, az: 96, el: 16, look: 0.0, earth: 0, fov: 40, mag: 0, trail: 0.3 }, + { s: 30.8, dist: 13, f: 0, az: 122, el: 14, look: 0.0, earth: 0, fov: 40, mag: 0, trail: 0.3 }, + { s: 31.6, dist: 18, f: 0, az: 168, el: 9, look: 0.0, earth: 0, fov: 40, mag: 0, trail: 0.3, aimRel: [0, -60, 0] }, + { s: 32.6, dist: 1.0e3, f: 0, az: 112, el: 26, look: 0.5, earth: 0, fov: 36, mag: 1, trail: 1.2 }, + { s: 35.0, dist: 1.3e3, f: 0, az: 96, el: 18, look: 0.5, earth: 0, fov: 36, mag: 1, trail: 1.6 }, + { s: 36.6, dist: 1.2e4, f: 2.8, az: 110, el: 30, look: 0.4, earth: 0, fov: 36, mag: 1, trail: 4 }, + { s: 39.0, dist: 9.0e5, f: 2.8, az: 60, el: 30, look: 0.5, earth: 0, fov: 34, mag: 0, trail: 30 }, + { s: 41.2, dist: 2.0e6, f: 2.8, az: 44, el: 30, look: 0.5, earth: 0, fov: 34, mag: 0, trail: 60 }, + { s: 41.2, cut: true, ...WIDE, dist: 4.8e7, az: 80, el: 34, trail: 60 }, + { s: 45.0, ...WIDE, dist: 4.2e7, az: 96, el: 32, trail: 60 }, +]; +const CUTS = CAM.filter((k) => k.cut).map((k) => k.s); +const smooth = (x) => x * x * x * (x * (x * 6 - 15) + 10); +function camAt(s) { + // Keys are grouped into shots at cut keys; interpolation never crosses a cut. + let start = 0; + for (let k = 1; k < CAM.length; k++) if (CAM[k].cut && s >= CAM[k].s) start = k; + let end = CAM.length - 1; + for (let k = start + 1; k < CAM.length; k++) if (CAM[k].cut) { end = k - 1; break; } + let i = start; + while (i < end - 1 && s > CAM[i + 1].s) i++; + const a = CAM[i]; + const b = CAM[Math.min(i + 1, end)]; + const u = b === a ? 0 : smooth(Math.min(Math.max((s - a.s) / (b.s - a.s), 0), 1)); + const lerp = (x, y) => x + (y - x) * u; + const ar = a.aimRel || [0, 0, 0]; + const br = b.aimRel || [0, 0, 0]; + return { + dist: Math.exp(lerp(Math.log(a.dist), Math.log(b.dist))), + f: lerp(a.f, b.f), + az: lerp(a.az, b.az), + el: lerp(a.el, b.el), + look: lerp(a.look, b.look), + earth: lerp(a.earth, b.earth), + fov: lerp(a.fov, b.fov), + mag: lerp(a.mag, b.mag), + trail: Math.exp(lerp(Math.log(a.trail), Math.log(b.trail))), + aimRel: [0, 1, 2].map((k) => lerp(ar[k], br[k])), + sun: lerp(a.sun || 0, b.sun || 0), + }; +} + +// --------------------------------------------------------------------------- +// Cesium scene +// --------------------------------------------------------------------------- +const esri = await Cesium.ArcGisMapServerImageryProvider.fromUrl( + 'https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer', + { enablePickFeatures: false, maximumLevel: 11 }, +); +const viewer = new Cesium.Viewer('globe', { + baseLayer: new Cesium.ImageryLayer(esri, { brightness: 0.92, contrast: 1.08, gamma: 1.05 }), + animation: false, timeline: false, baseLayerPicker: false, geocoder: false, homeButton: false, + sceneModePicker: false, navigationHelpButton: false, fullscreenButton: false, infoBox: false, + selectionIndicator: false, useDefaultRenderLoop: false, shouldAnimate: false, + contextOptions: { webgl: { preserveDrawingBuffer: true, alpha: false } }, + msaaSamples: 1, +}); +const scene = viewer.scene; +// Night side: NASA Black Marble city lights (keyless GIBS tiles). +const nightLayer = viewer.imageryLayers.addImageryProvider(new Cesium.UrlTemplateImageryProvider({ + url: 'https://gibs.earthdata.nasa.gov/wmts/epsg3857/best/VIIRS_Black_Marble/default/2016-01-01/GoogleMapsCompatible_Level8/{z}/{y}/{x}.png', + maximumLevel: 8, credit: 'NASA Black Marble', +})); +nightLayer.dayAlpha = 0.0; +nightLayer.nightAlpha = 1.0; +nightLayer.brightness = 1.6; +viewer.imageryLayers.get(0).nightAlpha = 0.0; +// Sky: ESO Milky Way cube (stars removed) + Yale Bright Star Catalogue points. +scene.skyBox = new Cesium.SkyBox({ sources: Object.fromEntries( + [['positiveX', 'px'], ['negativeX', 'nx'], ['positiveY', 'py'], ['negativeY', 'ny'], ['positiveZ', 'pz'], ['negativeZ', 'nz']] + .map(([k, f]) => [k, `/sky/milkyway_${f}.webp`])) }); +const starData = await (await fetch('/sky/bright_stars.json')).json(); +const starArr = Array.isArray(starData) ? starData : starData.stars || starData.data; +const stars = scene.primitives.add(new Cesium.PointPrimitiveCollection({ blendOption: Cesium.BlendOption.TRANSLUCENT })); +const starDirs = []; +for (let i = 0; i + 3 < starArr.length; i += 4) { + const [ra, dec, vm, bv] = [starArr[i], starArr[i + 1], starArr[i + 2], starArr[i + 3]]; + const r = Cesium.Math.toRadians(ra); + const d = Cesium.Math.toRadians(dec); + const dir = new Cesium.Cartesian3(Math.cos(d) * Math.cos(r), Math.cos(d) * Math.sin(r), Math.sin(d)); + const b = Math.min(1, Math.sqrt(10 ** (-0.4 * ((Number.isFinite(vm) ? vm : 6.5) - 6.5))) / 9); + const t = Math.min(Math.max(((Number.isFinite(bv) ? bv : 0.6) + 0.3) / 2.0, 0), 1); + const col = new Cesium.Color(0.78 + 0.22 * t, 0.84 + 0.06 * (1 - Math.abs(t - 0.4)), 1.0 - 0.3 * t, 0.25 + 0.75 * b); + starDirs.push(dir); + stars.add({ position: dir, color: col, pixelSize: 0.9 + 2.6 * b }); +} + +const globe = scene.globe; +globe.enableLighting = true; +globe.dynamicAtmosphereLighting = true; +globe.dynamicAtmosphereLightingFromSun = true; +globe.showGroundAtmosphere = true; +globe.atmosphereLightIntensity = 9; +globe.lightingFadeOutDistance = 1; +globe.lightingFadeInDistance = 2; +globe.nightFadeOutDistance = 1e10; +globe.nightFadeInDistance = 1e10; +globe.maximumScreenSpaceError = 1.6; +globe.tileCacheSize = 1500; +globe.preloadSiblings = false; +globe.baseColor = Cesium.Color.fromCssColorString('#04070d'); +scene.fog.enabled = false; +scene.skyAtmosphere.show = true; +scene.skyAtmosphere.atmosphereLightIntensity = 10; +scene.highDynamicRange = false; +scene.sun.glowFactor = 1.6; +scene.moon.show = true; +scene.postProcessStages.fxaa.enabled = true; +scene.backgroundColor = Cesium.Color.BLACK; +scene.screenSpaceCameraController.enableInputs = false; +scene.camera.frustum.near = 0.5; +scene.camera.frustum.far = 1e9; +viewer.resolutionScale = 1; +const bloom = scene.postProcessStages.bloom; +bloom.enabled = false; +bloom.uniforms.contrast = 119; +bloom.uniforms.brightness = -0.42; +bloom.uniforms.glowOnly = false; +bloom.uniforms.delta = 1.0; +bloom.uniforms.sigma = 3.2; +bloom.uniforms.stepSize = 1.0; + +const COL_X36 = Cesium.Color.fromCssColorString('#5ce1e6'); +const COL_COS = Cesium.Color.fromCssColorString('#ff5a3c'); +const COL_BURN = Cesium.Color.fromCssColorString('#ffb547'); + +const modelOpts = { upAxis: Cesium.Axis.Z, forwardAxis: Cesium.Axis.X, shadows: Cesium.ShadowMode.DISABLED }; +const mX36 = await Cesium.Model.fromGltfAsync({ url: 'iceye-x36.glb', ...modelOpts }); +const mCos = await Cesium.Model.fromGltfAsync({ url: 'cosmos-2612.glb', ...modelOpts }); +scene.primitives.add(mX36); +scene.primitives.add(mCos); +for (const m of [mX36, mCos]) { + m.environmentMapOptions = { enabled: false }; + m.imageBasedLighting.sphericalHarmonicCoefficients = undefined; +} + +function glowCanvas(color, core = 0.18) { + const c = document.createElement('canvas'); + c.width = c.height = 128; + const g = c.getContext('2d'); + const grd = g.createRadialGradient(64, 64, 0, 64, 64, 64); + grd.addColorStop(0, 'rgba(255,255,255,1)'); + grd.addColorStop(core, color.withAlpha(1).toCssColorString()); + grd.addColorStop(0.45, color.withAlpha(0.28).toCssColorString()); + grd.addColorStop(1, color.withAlpha(0).toCssColorString()); + g.fillStyle = grd; + g.fillRect(0, 0, 128, 128); + return c; +} +const billboards = scene.primitives.add(new Cesium.BillboardCollection({ scene })); +const bX36 = billboards.add({ image: glowCanvas(COL_X36), scale: 0.3 * U, disableDepthTestDistance: 0 }); +const bCos = billboards.add({ image: glowCanvas(COL_COS), scale: 0.3 * U, disableDepthTestDistance: 0 }); +const bBurn = billboards.add({ image: glowCanvas(COL_BURN, 0.08), scale: 0, disableDepthTestDistance: 0 }); + +let dynamic = []; +function clearDynamic() { + for (const p of dynamic) scene.primitives.remove(p); + dynamic = []; +} +function polyline(positions, colors, width) { + if (positions.length < 2) return; + const p = new Cesium.Primitive({ + geometryInstances: new Cesium.GeometryInstance({ + geometry: new Cesium.PolylineGeometry({ + positions, colors, colorsPerVertex: true, width: width * U, arcType: Cesium.ArcType.NONE, + }), + }), + appearance: new Cesium.PolylineColorAppearance({ translucent: true }), + asynchronous: false, + }); + scene.primitives.add(p); + dynamic.push(p); +} + +// --------------------------------------------------------------------------- +// HUD +// --------------------------------------------------------------------------- +const $ = (q) => document.querySelector(q); +const capEl = $('#caption'); +const tagsEl = $('#tags'); +const leaders = $('#leaders'); +const callEl = $('#callouts'); +leaders.setAttribute('viewBox', `0 0 ${W} ${H}`); + +function fade(s, s0, s1, ramp = 0.45) { + return Math.min(1, Math.max(0, (s - s0) / ramp), Math.max(0, (s1 - s) / ramp)); +} + +function fmtRate(r) { + const p = 10 ** Math.floor(Math.log10(r) - 1); + const rr = Math.round(r / p) * p; + const real = rr; + let per; + if (real < 60) per = `${real.toFixed(0)} s`; + else if (real < 3600) per = `${(real / 60).toFixed(real < 600 ? 1 : 0)} min`; + else if (real < 86400) per = `${(real / 3600).toFixed(real < 36000 ? 1 : 0)} h`; + else per = `${(real / 86400).toFixed(1)} days`; + return `×${rr.toLocaleString('en-US')} · 1 s = ${per}`; +} + +// Separation chart (log scale), drawn once and revealed by a clip. +const CH = { t0: sec('2026-09-30T00:00:00Z'), t1: sec('2026-10-21T18:00:00Z'), lo: 0.1, hi: 20000 }; +const chartBox = $('#chart'); +function buildChart() { + const cw = chartBox.clientWidth; + const ch = chartBox.clientHeight; + const padL = 70 * U; + const padT = 34 * U; + const padB = 26 * U; + const x = (t) => padL + ((t - CH.t0) / (CH.t1 - CH.t0)) * (cw - padL); + const y = (km) => padT + (1 - (Math.log10(km) - Math.log10(CH.lo)) / (Math.log10(CH.hi) - Math.log10(CH.lo))) * (ch - padT - padB); + const cols = Math.round(cw - padL); + let lo = ''; + let hi = ''; + const ptsHi = []; + for (let c = 0; c <= cols; c++) { + const ta = CH.t0 + (c / cols) * (CH.t1 - CH.t0); + const tb = CH.t0 + ((c + 1) / cols) * (CH.t1 - CH.t0); + let mn = Infinity; + let mx = 0; + for (let i = Math.floor(ta / DT); i <= Math.ceil(tb / DT); i++) { + const v = D.sep_km[Math.min(Math.max(i, 0), NS - 1)]; + mn = Math.min(mn, v); + mx = Math.max(mx, v); + } + mn = Math.max(mn, CH.lo); + lo += `${c ? 'L' : 'M'}${(padL + c).toFixed(1)},${y(mn).toFixed(1)}`; + ptsHi.push(`${(padL + c).toFixed(1)},${y(mx).toFixed(1)}`); + } + hi = 'L' + ptsHi.reverse().join('L'); + const grid = [0.1, 1, 10, 100, 1000, 10000] + .map((v) => { + const lab = v < 1 ? '100 m' : v < 1000 ? `${v} km` : `${(v).toLocaleString('en-US')} km`; + return ` + ${lab}`; + }) + .join(''); + const days = []; + for (let d = 0; d <= 21; d++) { + const t = sec(`2026-${d < 1 ? '09-30' : `10-${String(d).padStart(2, '0')}`}T00:00:00Z`); + const major = d === 0 || d % (PORTRAIT ? 7 : 3) === 0; + days.push(``); + if (major) { + days.push(`${d === 0 ? 'SEP 30' : `OCT ${d}`}`); + } + } + const burns = BURNS.map( + (b) => ` + `, + ).join(''); + const caX = x(CA_T); + const caY = y(D.ca.m / 1000); + chartBox.innerHTML = ` + + DISTANCE BETWEEN THE SATELLITES · LOG SCALE + ▼ BURN + ${grid}${days.join('')}${burns} + + + + + + + + ~${Math.round(D.ca.m / 5) * 5} m + + + `; + return { x, y }; +} +const chart = buildChart(); + +function tag(id, cls) { + let el = document.getElementById(id); + if (!el) { + el = document.createElement('div'); + el.id = id; + el.className = `tag ${cls}`; + el.innerHTML = '
'; + tagsEl.appendChild(el); + } + return el; +} + +function project(world) { + const p = Cesium.SceneTransforms.worldToWindowCoordinates(scene, world); + if (!p) return null; + // Behind-camera / occluded test + const cam = scene.camera; + const d = v3.subtract(world, cam.positionWC, new v3()); + if (v3.dot(d, cam.directionWC) <= 0) return null; + const ray = v3.normalize(d, new v3()); + const hit = Cesium.IntersectionTests.rayEllipsoid(new Cesium.Ray(cam.positionWC, ray), Cesium.Ellipsoid.WGS84); + if (hit && hit.start * 1.0005 < v3.magnitude(d)) return { ...p, hidden: true }; + return p; +} + +// --------------------------------------------------------------------------- +// Frame +// --------------------------------------------------------------------------- +const M = new Cesium.Matrix3(); +function toWorld(teme, jd) { + return Cesium.Matrix3.multiplyByVector(M, teme, new v3()); +} + +function modelMatrix(pos, X, Y, scale) { + const Z = v3.cross(X, Y, new v3()); + const m = new Cesium.Matrix4( + X.x * scale, Y.x * scale, Z.x * scale, pos.x, + X.y * scale, Y.y * scale, Z.y * scale, pos.y, + X.z * scale, Y.z * scale, Z.z * scale, pos.z, + 0, 0, 0, 1, + ); + return m; +} + +function eclipseLight(worldPos, sunW) { + // Cylindrical shadow with a soft edge. + const p = v3.dot(worldPos, sunW); + if (p > 0) return 1; + const perp = v3.magnitude(v3.subtract(worldPos, v3.multiplyByScalar(sunW, p, new v3()), new v3())); + const e = (perp - 6.371e6) / 6e4; + return Math.min(1, Math.max(0, 0.5 + e)); +} + +async function frame(s) { + const t = tau(s); + const b = bclock(s); + const jd = Cesium.JulianDate.addSeconds(Cesium.JulianDate.fromIso8601(D.t0), b, new Cesium.JulianDate()); + Cesium.Transforms.computeTemeToPseudoFixedMatrix(jd, M); + const cam = camAt(s); + + // Anchor (X36 at backdrop time) and relative state at simulation time. + const A = x36Teme(b); + const B = basis(A.r, A.v); + const rel = relAt(t); + const x36W = toWorld(A.r); + const cosW = toWorld(place(A.r, B, rel)); + const RW = toWorld(B.R); + const TW = toWorld(B.T); + const NW = toWorld(B.N); + const sep = v3.distance(x36W, cosW); + + // Camera + const sunW = v3.normalize(Cesium.Simon1994PlanetaryPositions.computeSunPositionInEarthInertialFrame(jd, new v3()), new v3()); + Cesium.Matrix3.multiplyByVector(Cesium.Transforms.computeIcrfToFixedMatrix(jd) || M, sunW, sunW); + v3.normalize(sunW, sunW); + // Camera orbits a pivot on the X36 -> Cosmos line; aimRel only tilts the gaze. + const pivot = v3.lerp(x36W, cosW, cam.look, new v3()); + v3.lerp(pivot, v3.ZERO, cam.earth, pivot); + const aim = v3.clone(pivot); + v3.add(aim, v3.multiplyByScalar(RW, cam.aimRel[0], new v3()), aim); + v3.add(aim, v3.multiplyByScalar(TW, cam.aimRel[1], new v3()), aim); + v3.add(aim, v3.multiplyByScalar(NW, cam.aimRel[2], new v3()), aim); + const dist = Math.max(cam.dist, cam.f * sep); + const az = Cesium.Math.toRadians(cam.az); + const el = Cesium.Math.toRadians(cam.el); + const off = new v3(); + v3.add(off, v3.multiplyByScalar(TW, -Math.cos(el) * Math.cos(az), new v3()), off); + v3.add(off, v3.multiplyByScalar(NW, Math.cos(el) * Math.sin(az), new v3()), off); + v3.add(off, v3.multiplyByScalar(RW, Math.sin(el), new v3()), off); + if (cam.sun > 0) { + v3.normalize(v3.add(v3.multiplyByScalar(off, 1 - cam.sun, off), v3.multiplyByScalar(sunW, cam.sun, new v3()), off), off); + } + const camPos = v3.add(pivot, v3.multiplyByScalar(off, dist, new v3()), new v3()); + const minR = 6.371e6 + 1.2e5; + if (v3.magnitude(camPos) < minR) v3.multiplyByScalar(v3.normalize(camPos, camPos), minR, camPos); + const dir = v3.normalize(v3.subtract(aim, camPos, new v3()), new v3()); + const right = v3.normalize(v3.cross(dir, RW, new v3()), new v3()); + const up = v3.cross(right, dir, new v3()); + scene.camera.setView({ destination: camPos, orientation: { direction: dir, up } }); + scene.camera.frustum.fov = Cesium.Math.toRadians(PORTRAIT ? cam.fov * 1.55 : cam.fov); + { + const icrf = Cesium.Transforms.computeIcrfToFixedMatrix(jd) || M; + const tmp = new v3(); + for (let i = 0; i < starDirs.length; i++) { + Cesium.Matrix3.multiplyByVector(icrf, starDirs[i], tmp); + stars.get(i).position = v3.add(camPos, v3.multiplyByScalar(tmp, 3e8, tmp), new v3()); + } + } + scene.camera.frustum.near = Math.max(0.2, Math.min(dist * 0.02, 1000)); + + // Models: attitude, magnification, lighting + const camDistX = v3.distance(camPos, x36W); + const camDistC = v3.distance(camPos, cosW); + const pxPerRad = (PORTRAIT ? W : W) / (2 * Math.tan(scene.camera.frustum.fov / 2)); + const targetPx = 110 * U; // magnified apparent size + const magFor = (d, size) => Math.max(1, (targetPx * d) / (pxPerRad * size)); + const magX = 1 + (magFor(camDistX, 3.25) - 1) * cam.mag; + const magC = 1 + (magFor(camDistC, 3.6) - 1) * cam.mag; + const MAG_MAX = 150; // beyond this, a glyph is more honest than a giant model + const rawMag = Math.max(1, Math.min(magX, magC)); + const mag = rawMag > MAG_MAX ? 1 : rawMag; + const nearScale = Math.min(1, Math.max(0, cam.mag * 2)); + mX36.show = (cam.mag > 0.01 && rawMag <= MAG_MAX) || camDistX < 3000; + mCos.show = (cam.mag > 0.01 && rawMag <= MAG_MAX) || camDistC < 6000; + mX36.modelMatrix = modelMatrix(x36W, TW, RW, mag); + // Cosmos points its sensor at X36 when close, otherwise flies prograde. + const toX = v3.normalize(v3.subtract(x36W, cosW, new v3()), new v3()); + const w = Math.min(1, Math.max(0, (60e3 - sep) / 40e3)); + const cx = v3.normalize(v3.lerp(TW, toX, w, new v3()), new v3()); + const cy = v3.normalize(v3.subtract(RW, v3.multiplyByScalar(cx, v3.dot(RW, cx), new v3()), new v3()), new v3()); + mCos.modelMatrix = modelMatrix(cosW, cx, cy, mag); + const lx = eclipseLight(x36W, sunW); + const lc = eclipseLight(cosW, sunW); + // In Earth's shadow a dim blue fill keeps the shapes legible. + const lightFor = (l) => new v3(0.6 + (2.3 - 0.6) * l, 0.66 + (2.3 - 0.66) * l, 0.92 + (2.3 - 0.92) * l); + mX36.lightColor = lightFor(lx); + mCos.lightColor = lightFor(lc); + + // Glows: shown when the model is too small to read. + const pxX = (3.25 * mag * pxPerRad) / camDistX; + const pxC = (3.6 * mag * pxPerRad) / camDistC; + bX36.position = x36W; + bCos.position = cosW; + bX36.scale = (pxX > 24 ? 0.12 : 0.28) * U; + bCos.scale = (pxC > 24 ? 0.12 : 0.28) * U; + bX36.color = Cesium.Color.WHITE.withAlpha(pxX > 40 ? 0 : 1); + bCos.color = Cesium.Color.WHITE.withAlpha(pxC > 40 ? 0 : 1); + + // Burn flare + let flare = 0; + for (const bn of BURNS) { + const sb = sOfTauCached(bn.t); + const k = (s - sb) / 0.9; + if (k > -0.08 && k < 1) flare = Math.max(flare, k < 0 ? 1 + k / 0.08 : (1 - k) ** 1.6); + } + bBurn.position = cosW; + bBurn.scale = flare * 0.9 * U; + bBurn.color = Cesium.Color.WHITE.withAlpha(flare); + + // Trails and reference geometry + clearDynamic(); + // X36 orbit ring (inertial, at the anchor epoch); fades out up close. + const ringA = Math.min(1, Math.max(0, (camDistX - 1.5e4) / 6e4)); + if (ringA > 0.01) { + const P = 5730; + const pts = []; + const cols = []; + const n = 240; + for (let k = 0; k <= n; k++) { + const tt = b - P + (k / n) * P; + pts.push(toWorld(x36Teme(tt).r)); + const a = 0.06 + 0.5 * (k / n) ** 3; + cols.push(COL_X36.withAlpha(a * ringA)); + } + polyline(pts, cols, 1.6); + } + // Cosmos relative trail, expressed in the current anchor frame + { + const span = cam.trail * 3600; + const n = Math.min(900, Math.max(60, Math.round(span / 45))); + const pts = []; + const cols = []; + for (let k = 0; k <= n; k++) { + const tt = t - span + (k / n) * span; + if (tt < 0) continue; + pts.push(toWorld(place(A.r, B, relAt(tt)))); + cols.push(COL_COS.withAlpha(0.04 + 0.92 * (k / n) ** 1.8)); + } + pts.push(cosW); + cols.push(COL_COS.withAlpha(1)); + polyline(pts, cols, 2.4); + } + // Separation line when the pair is within view range + if (sep < 900e3) { + const a = Math.min(1, (900e3 - sep) / 200e3) * 0.55; + polyline([x36W, cosW], [Cesium.Color.WHITE.withAlpha(a * 0.25), Cesium.Color.WHITE.withAlpha(a * 0.25)], 1); + } + // RIC reference rings (orbital plane) during proximity + const gridA = Math.min(1, Math.max(0, (8e3 - Math.max(sep, camDistX)) / 3e3)) * (cam.mag > 0.4 ? 1 : 0.35); + if (gridA > 0.01) { + for (const r of [500, 1000, 2000]) { + const pts = []; + const cols = []; + for (let k = 0; k <= 120; k++) { + const a = (k / 120) * Math.PI * 2; + const p = v3.add(x36W, v3.multiplyByScalar(RW, r * Math.sin(a), new v3()), new v3()); + v3.add(p, v3.multiplyByScalar(TW, r * Math.cos(a), new v3()), p); + pts.push(p); + cols.push(Cesium.Color.WHITE.withAlpha(0.16 * gridA)); + } + polyline(pts, cols, 1); + } + const ax = (vec, len, col) => polyline( + [v3.add(x36W, v3.multiplyByScalar(vec, -len, new v3()), new v3()), v3.add(x36W, v3.multiplyByScalar(vec, len, new v3()), new v3())], + [col.withAlpha(0), col.withAlpha(0)], 1, + ); + polyline([x36W, v3.add(x36W, v3.multiplyByScalar(TW, 2600, new v3()), new v3())], [COL_X36.withAlpha(0.5 * gridA), COL_X36.withAlpha(0)], 1.5); + polyline([x36W, v3.add(x36W, v3.multiplyByScalar(RW, 1400, new v3()), new v3())], [Cesium.Color.WHITE.withAlpha(0.4 * gridA), Cesium.Color.WHITE.withAlpha(0)], 1.5); + void ax; + } + + updateHud(s, t, b, { x36W, cosW, RW, TW, NW, rel, sep, mag, gridA, lx, camDistX, jd }); + // Render; re-render only while imagery is still streaming in. + scene.render(jd); + for (let k = 0; k < 60 && !(globe.tilesLoaded && mX36.ready && mCos.ready); k++) { + await new Promise((r) => setTimeout(r, 30)); + scene.render(jd); + } + const gl = scene.context._gl; + gl.readPixels(0, 0, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE, new Uint8Array(4)); + const dbg = { pX: Cesium.SceneTransforms.worldToWindowCoordinates(scene, x36W), dX: v3.distance(scene.camera.positionWC, x36W), ang: Cesium.Math.toDegrees(v3.angleBetween(scene.camera.directionWC, v3.subtract(x36W, scene.camera.positionWC, new v3()))), mshow: mX36.show, mm: Cesium.Matrix4.getTranslation(mX36.modelMatrix, new v3()), x36W }; + return { dbg, s, t, b, sep, mag, camR: v3.magnitude(camPos), dist, fov: scene.camera.frustum.fov, fovy: scene.camera.frustum.fovy, aspect: scene.camera.frustum.aspectRatio }; +} + +const sOfTauMemo = new Map(); +function sOfTauCached(t) { + if (!sOfTauMemo.has(t)) sOfTauMemo.set(t, sOfTau(t)); + return sOfTauMemo.get(t); +} + +function fmtSep(m) { + if (m >= 10e3) return `${fmtKm(m / 1000)}km`; + if (m >= 1000) return `${(m / 1000).toFixed(2)}km`; + return `${Math.round(m)}m`; +} +function fmtComp(m) { + const a = Math.abs(m); + return a >= 10e3 ? `${fmtKm(a / 1000)} km` : a >= 1000 ? `${(a / 1000).toFixed(2)} km` : `${Math.round(a)} m`; +} + +function updateHud(s, t, b, st) { + // Caption + let cap = null; + let capA = 0; + for (const c of CAPTIONS) { + const a = fade(s, c.s0, c.s1); + if (a > capA) { + cap = c; + capA = a; + } + } + if (cap) { + capEl.querySelector('.kicker').innerHTML = cap.kicker; + capEl.querySelector('h1').innerHTML = cap.title; + capEl.querySelector('p').innerHTML = cap.body.replace('%CA%', String(Math.round(D.ca.m / 5) * 5)); + } + capEl.style.opacity = capA; + capEl.style.transform = `translateY(${(1 - capA) * 10 * U}px)`; + + // Clock + const d = new Date(T0 + t * 1000); + const mon = d.toLocaleString('en-US', { month: 'short', timeZone: 'UTC' }).toUpperCase(); + $('#clock .date').textContent = `${mon} ${d.getUTCDate()}, 2026`; + $('#clock .time').textContent = `${d.toISOString().slice(11, 16)} UTC`; + $('#clock .rate').innerHTML = fmtRate(rate(s)); + const inShadow = st.lx < 0.5 && st.sep < 5e3; + $('#clock .shadow').textContent = inShadow ? '● IN EARTH\'S SHADOW' : ''; + const endA = fade(s, 41.2, 60, 0.6); + $('#clock').style.opacity = 1 - endA; + + // Readout + const ro = $('#readout'); + ro.style.opacity = fade(s, 0.6, 41.2, 0.5); + ro.querySelector('.val').innerHTML = fmtSep(st.sep); + const [r, tt, n] = st.rel; + if (st.sep < 2e6) { + ro.querySelector('.ric').innerHTML = + `${fmtComp(tt)} ${tt < 0 ? 'behind' : 'ahead'} · ${fmtComp(r)} ${r >= 0 ? 'above' : 'below'} · ${fmtComp(n)} aside`; + } else { + const deg = (Math.abs(((tt / Cesium.Cartesian3.magnitude(x36Teme(b).r)) * 180) / Math.PI) % 360); + ro.querySelector('.ric').innerHTML = `${(deg > 180 ? 360 - deg : deg).toFixed(0)}° apart along the orbit · ${fmtComp(r)} ${r >= 0 ? 'higher' : 'lower'}`; + } + + // Magnification note + const magEl = $('#mag'); + magEl.style.opacity = st.mag > 1.5 ? fade(s, 0, 41, 0.4) : st.mag <= 1.05 && st.camDistX < 200 ? fade(s, 0, 41, 0.4) : 0; + magEl.innerHTML = st.mag > 1.5 + ? `Spacecraft drawn ${Math.round(st.mag / 5) * 5 || 1}× actual size
Rings: 500 m · 1 km · 2 km in X36's orbit plane` + : 'Spacecraft at true scale
Cosmos 2612 model is illustrative — no public design imagery'; + + // Chart + const px = chart.x(Math.min(Math.max(t, CH.t0), CH.t1)); + const sepKm = Math.max(sepAt(t), CH.lo); + document.getElementById('pastRect').setAttribute('width', px); + const ph = document.getElementById('playhead'); + ph.setAttribute('x1', px); + ph.setAttribute('x2', px); + const pd = document.getElementById('playdot'); + pd.setAttribute('cx', px); + pd.setAttribute('cy', chart.y(sepKm)); + document.getElementById('caMark').setAttribute('opacity', t > CA_T ? 1 : 0); + for (const g of chartBox.querySelectorAll('.burn')) g.style.opacity = Number(g.dataset.t) <= t ? 1 : 0.28; + chartBox.style.opacity = fade(s, 0.6, 41.2, 0.5); + + // Satellite tags + const pX = project(st.x36W); + const pC = project(st.cosW); + const tX = tag('tagX', 'x36'); + const tC = tag('tagC', 'cos'); + tX.querySelector('.name').innerHTML = 'ICEYE-X36'; + tX.querySelector('.meta').textContent = 'SAR imager · U.S.-registered'; + tC.querySelector('.name').innerHTML = 'COSMOS 2612'; + tC.querySelector('.meta').textContent = 'Russian military · launched Apr 2026'; + const tagA = fade(s, 0.8, 41.2, 0.5); + let lines = ''; + const place2 = (el, p, dx, dy, color) => { + if (!p || p.x < -50 || p.y < -50 || p.x > W + 50 || p.y > H + 50) { + el.style.opacity = 0; + return; + } + const a = tagA * (p.hidden ? 0.35 : 1); + el.style.opacity = a; + const lx = p.x + dx; + const ly = p.y + dy; + el.style.left = `${dx >= 0 ? lx + 8 * U : lx - 8 * U}px`; + el.style.top = `${ly}px`; + el.style.transform = dx >= 0 ? 'translate(0,-50%)' : 'translate(-100%,-50%)'; + el.style.textAlign = dx >= 0 ? 'left' : 'right'; + lines += ``; + }; + let dX = [46 * U, -40 * U]; + let dC = [-46 * U, 40 * U]; + if (pX && pC) { + // Put each label on the side away from the other satellite. + const vx = pC.x - pX.x; + const vy = pC.y - pX.y; + const sx = vx >= 0 ? -1 : 1; + dX = [sx * 46 * U, (vy >= 0 ? -1 : 1) * 40 * U]; + dC = [-sx * 46 * U, (vy >= 0 ? 1 : -1) * 40 * U]; + } + place2(tX, pX, dX[0], dX[1], '#5ce1e6'); + place2(tC, pC, dC[0], dC[1], '#ff5a3c'); + leaders.innerHTML = lines; + + // Event log under the caption: never collides with the scene labels. + let html = ''; + for (const e of EVENTS) { + const hold = e.kind === 'ca' ? 4.4 : e.kind === 'vantor' ? 2.8 : 1.9; + const a = fade(s, e.s, e.s + hold, 0.25); + if (a <= 0) continue; + const color = e.kind === 'burn' ? '#ffb547' : e.kind === 'ca' ? '#ffffff' : e.kind === 'vantor' ? '#c9b8ff' : '#eef2f6'; + html += `
${e.title}
${e.sub}
`; + } + callEl.innerHTML = html; + + // Short dip through black at hard cuts. + let dip = 0; + for (const c of CUTS) dip = Math.max(dip, 1 - Math.abs(s - c) / 0.14); + $('#dip').style.opacity = Math.max(0, dip); + + // End card + const ec = $('#endcard'); + ec.style.opacity = endA; + ec.style.background = `rgba(2,4,8,${0.78 * endA})`; + if (!ec.dataset.built) { + ec.dataset.built = '1'; + ec.innerHTML = `
+

22 days, 8 burns, and a pass of about ${Math.round(D.ca.m / 5) * 5} m

+
+
~${Math.round(D.total_dv)} m/s
total Δv spent by Cosmos 2612 (est.)
+
35+ h
within ~3 km of ICEYE-X36
+
0.002°
final difference in orbit planes
+
480 km
behind X36 today, matched orbit
+
+
Reconstruction, not tracking data. ICEYE-X36: SGP4 on public CelesTrak element sets (NORAD 59103). Cosmos 2612 (68762): relative-orbit model with burns timed to published analyses by KeepTrack, LeoLabs and Marco Langbroek, pinned to today's elements. Closest-approach estimates range 150–650 m. + Earth: Esri World Imagery; the Earth below is slowed during time-lapse. Vantor image: Axios, Oct 22. Spacecraft models: ICEYE to published dimensions; Cosmos 2612 illustrative.
+
`; + } +} + +await document.fonts.ready; +window.rpo = { frame, tau, bclock, duration: DUR, ready: true, CAM }; diff --git a/tools/rpo-replay/tles.txt b/tools/rpo-replay/tles.txt new file mode 100644 index 000000000..f66bacad3 --- /dev/null +++ b/tools/rpo-replay/tles.txt @@ -0,0 +1,6 @@ +COSMOS 2612 +1 68762U 26083H 26297.29186266 .00002093 00000+0 14092-3 0 9996 +2 68762 97.8545 77.8974 0006461 247.4186 112.6358 15.07858138 28631 +ICEYE-X36 +1 59103U 24043F 26297.22477300 .00003484 00000+0 23160-3 0 9995 +2 59103 97.8537 77.8281 0004894 236.2883 123.7878 15.07863566144584