1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-05-10 19:24:06 +00:00

inverse_area_auto

This commit is contained in:
Zeno Rogue 2025-04-21 18:54:04 +02:00
parent 4aa1b971a6
commit 89d8a834cf

View File

@ -340,6 +340,15 @@ EX ld area_auto(ld r) {
}
}
EX ld inverse_area_auto(ld vol) {
switch(cgclass) {
case gcEuclid: return sqrt(vol / M_PI);
case gcHyperbolic: return acosh_clamp(vol / TAU + 1);
case gcSphere: return acos_clamp(1 - vol / TAU);
default: return 0;
}
}
/** \brief volume in 3D, area in 2D */
EX ld wvolarea_auto(ld r) {
if(WDIM == 3) return volume_auto(r);