1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-27 14:37:16 +00:00

deSitter projections shown in menu

This commit is contained in:
Zeno Rogue 2022-10-14 01:11:29 +02:00
parent 1cde76c880
commit a5a7e8a5fa
2 changed files with 5 additions and 0 deletions

View File

@ -185,6 +185,9 @@ EX namespace models {
}
}
/** mdRelPerspective and mdRelOrthogonal in hyperbolic space only make sense if it is actually a de Sitter visualization */
EX bool desitter_projections;
EX bool model_available(eModel pm) {
if(mdinf[pm].flags & mf::technical) return false;
if(prod) {
@ -192,6 +195,7 @@ EX namespace models {
if(among(pm, mdBall, mdHemisphere)) return false;
return PIU(model_available(pm));
}
if(hyperbolic && desitter_projections && among(pm, mdRelPerspective, mdRelOrthogonal)) return true;
if(sl2) return among(pm, mdGeodesic, mdEquidistant, mdRelPerspective, mdRelOrthogonal, mdHorocyclic, mdPerspective);
if(nonisotropic) return among(pm, mdDisk, mdPerspective, mdHorocyclic, mdGeodesic, mdEquidistant, mdFisheye, mdLiePerspective, mdLieOrthogonal);
if(sphere && (pm == mdHalfplane || pm == mdBall))

View File

@ -29,6 +29,7 @@ void switch_underlying() {
initcells();
initgame();
nomap = false;
models::desitter_projections = true;
}
else if(hyperbolic) {