1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-12-27 02:20:36 +00:00

fixed mdHyperboloid in spherical geometry

This commit is contained in:
Zeno Rogue 2023-08-15 11:00:43 +02:00
parent ccb5068964
commit b018582f44
2 changed files with 9 additions and 2 deletions

View File

@ -313,12 +313,11 @@ EX bool two_sided_model() {
#endif #endif
if(GDIM == 3) return false; if(GDIM == 3) return false;
if(in_vr_sphere) return true; if(in_vr_sphere) return true;
if(models::is_hyperboloid(pmodel)) return !euclid && !in_vr; if(pmodel == mdHemisphere || pmodel == mdHyperboloid) return !euclid && !in_vr;
// if(pmodel == mdHemisphere) return true; // if(pmodel == mdHemisphere) return true;
if(pmodel == mdDisk) return sphere || (hyperbolic && pconf.alpha < 0 && pconf.alpha > -1); if(pmodel == mdDisk) return sphere || (hyperbolic && pconf.alpha < 0 && pconf.alpha > -1);
if(pmodel == mdRetroLittrow) return sphere; if(pmodel == mdRetroLittrow) return sphere;
if(pmodel == mdRetroHammer) return sphere; if(pmodel == mdRetroHammer) return sphere;
if(pmodel == mdHemisphere) return !in_vr;
if(pmodel == mdRotatedHyperboles) return true; if(pmodel == mdRotatedHyperboles) return true;
if(pmodel == mdSpiral && pconf.spiral_cone < 360) return true; if(pmodel == mdSpiral && pconf.spiral_cone < 360) return true;
return false; return false;

View File

@ -2924,6 +2924,14 @@ EX void draw_boundary(int w) {
queuecurve(shiftless(Id), lc, fc, p); queuecurve(shiftless(Id), lc, fc, p);
} }
} }
if(sphere) {
queuereset(mdPixel, p);
for(int i=0; i<=360; i++) {
curvepoint(point3(current_display->radius * cos(i * degree)/3, current_display->radius * sin(i * degree)/3, 0));
}
queuecurve(shiftless(Id), lc, fc, p);
queuereset(pmodel, p);
}
return; return;
} }