1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-11-05 16:23:06 +00:00

inverse tessellation operators

This commit is contained in:
Zeno Rogue
2020-07-12 20:52:32 +02:00
parent db96f3499c
commit 1f1e7d9bbf
13 changed files with 478 additions and 76 deletions

View File

@@ -487,6 +487,13 @@ void geometry_information::prepare_basics() {
if(arcm::in() && !prod)
ginf[gArchimedean].cclass = gcHyperbolic;
dynamicval<eVariation> gv(variation, variation);
bool inv = INVERSE;
if(INVERSE) {
variation = gp::variation_for(gp::param);
println(hlog, "bitruncated = ", BITRUNCATED);
}
if(hybri) {
auto t = this;
@@ -582,7 +589,7 @@ void geometry_information::prepare_basics() {
base_distlimit = ginf[geometry].distlimit[!BITRUNCATED];
#if CAP_GP
gp::compute_geometry();
gp::compute_geometry(inv);
#endif
#if CAP_IRR
irr::compute_geometry();
@@ -1014,7 +1021,7 @@ EX string cgi_string() {
return s;
}
if(GOLDBERG) V("GP", its(gp::param.first) + "," + its(gp::param.second));
if(GOLDBERG_INV) V("GP", its(gp::param.first) + "," + its(gp::param.second));
if(IRREGULAR) V("IRR", its(irr::irrid));
if(arcm::in()) V("ARCM", arcm::current.symbol);