1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-09-07 04:47:56 +00:00

euc_in_product

This commit is contained in:
Zeno Rogue
2023-01-06 00:09:12 +01:00
parent 28146b13f7
commit 4b3bfb9932
9 changed files with 129 additions and 33 deletions

View File

@@ -239,6 +239,8 @@ void horo_distance::become(hyperpoint h1) {
#endif
else if(mhybrid)
a = 0, b = hdist(h1, C0);
else if(geom3::euc_in_product())
a = 0, b = hdist(h1, C0);
else
a = 0, b = intval(h1, tile_center());
}
@@ -249,6 +251,8 @@ horo_distance::horo_distance(shiftpoint h1, const shiftmatrix& T) {
else
#endif
if(sn::in() || mhybrid || nil) become(inverse_shift(T, h1));
else if(geom3::euc_in_product())
a = 0, b = hdist(h1.h, unshift(T * tile_center(), h1.shift));
else
a = 0, b = intval(h1.h, unshift(T * tile_center(), h1.shift));
}
@@ -585,7 +589,7 @@ hyperpoint hrmap_standard::get_corner(cell *c, int cid, ld cf) {
}
#endif
if(PURE) {
if(geom3::euc_in_nil()) {
if(geom3::euc_in_noniso()) {
return lspinpush0(spin_angle(c, cid) + M_PI/S7, cgi.hcrossf * 3 / cf);
}
return ddspin(c,cid,M_PI/S7) * lxpush0(cgi.hcrossf * 3 / cf);