Decouple movie tracing through metric slabs

This commit is contained in:
wyj committed 2026-08-26 01:35:57 -04:00
1 parent d3522886f0
commit 388055c01e
8 files changed
+151 -48

No files matched your search

+8 -1
View File
@@ -27,8 +27,14 @@ static int check_ray(const SpacetimeSource *source,
int main(void) {
SpacetimeSource source = {0};
MetricSlab *slab = NULL;
MetricData metric;
const ObserverState observer = observer_fixed_at_origin();
if (spacetime_create_minkowski(&source, 10.0))
if (spacetime_create_minkowski(&source, 10.0) ||
spacetime_load_slab(&source, 0.0, -1.0, &slab) ||
spacetime_slab_eval(slab, -0.5, (double[]){0.0, 0.0, 0.0}, &metric) ||
metric.alpha != 1.0 ||
!spacetime_slab_eval(slab, 0.25, (double[]){0.0, 0.0, 0.0}, &metric))
return 1;
int result = check_ray(&source, &observer, (double[]){1.0, 0.0, 0.0},
(double[]){0.0, 0.0, -1.0}) ||
@@ -57,6 +63,7 @@ int main(void) {
}
}
observer_track_destroy(&accelerated);
spacetime_free_slab(slab);
spacetime_destroy(&source);
return result;
}