feat(simulation): detail-scatter synthesis + on-demand 2km derive_district (T-1077)
Phase 3 of the D-243 re-scale — the corrected 2km carrier and its 'stretch magic'. - detail_scatter.rs: the mid-scale terrain (2-40km) invented between coarse heightmap samples. Locked character (T-1077): ADAPTIVE (ruggedness follows local slope/morphology -> gentle flats, rugged highs) + ENVELOPE+MODULATION (heightmap relief caps amplitude; morphology flavors within). Deterministic seed+position value-noise (D-227/D-010); C1-continuous, no lattice creases. - derive_district(): the on-demand 2km carrier. Maps the district to a fractional heightmap pixel via body_radius_km (the elastic seam, D-204), bilinearly interpolates the L1 envelope, composes the scatter, derives the profile. body_radius None falls back to direct indexing (tiny test bodies). - Factored build_district_profile() (climate+morphology tail) shared by the cell-aggregate and interpolation paths. 5 scatter tests + 5 derive_district tests (determinism, latitude->climate via the seam, the envelope rule, radius fallback). Full suite + clippy -D warnings green; existing goldens untouched (additive). Scope: T-1077 delivers the corrected on-demand 2km derivation + scatter. The eager-grid -> on-demand region/district production + Atlas surfacing (decision A) is T-1046's chartered job (derive_all_districts stays the coarse Atlas grid for now, documented). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -10,6 +10,7 @@ pub mod body_world_state;
|
||||
pub mod cascade;
|
||||
pub mod chunk_context;
|
||||
pub mod city_context_reader;
|
||||
pub mod detail_scatter;
|
||||
pub mod district_mix;
|
||||
pub mod district_profile;
|
||||
pub mod domain_warp;
|
||||
|
||||
Reference in New Issue
Block a user