Skip to content

fix TLA orientations in metarules#514

Merged
memo33 merged 3 commits into
NAMTeam:stagingfrom
memo33:tla-tile-orientations
Jun 3, 2025
Merged

fix TLA orientations in metarules#514
memo33 merged 3 commits into
NAMTeam:stagingfrom
memo33:tla-tile-orientations

Conversation

@memo33

@memo33 memo33 commented Jun 1, 2025

Copy link
Copy Markdown
Collaborator

This PR makes changes to the metarules framework to mitigate situations in which TLA networks could inadvertently end up mirrored (so turning lanes would point in the wrong direction). This used to be a major roadblock. This is achieved by explicitly overwriting the allowed orientations for specific IDs to disallow mirroring.

For this fix to become fully effective, run sbt regenerateTileOrientationCache (which I haven't done on this branch to avoid merge conflicts).

memo33 added 3 commits June 1, 2025 15:30
This adds a bandaid to prevent that mirrored orientations of orth/diag
TLA tiles get added to the tile orientation cache. This avoids some
ambiguity between the two flavors of turning lanes (`0x5...` vs
`0x7...`) in the metarule-generated RUL2 code.

Additionally, this adjust the preprocessor to duplicate rules involving
TLA by their upside-down variant (`R2F1`). This is necessary, as the two
rules might resolve to different IDs (`0x5...` vs `0x7...`).
@memo33 memo33 merged commit e418b57 into NAMTeam:staging Jun 3, 2025
2 checks passed
@memo33 memo33 deleted the tla-tile-orientations branch June 3, 2025 18:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant