1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-11-19 15:15:12 +00:00

Goldberg-Coxeter construction for order-4 tilings (everything seems to work except distance calculations)

This commit is contained in:
Zeno Rogue
2018-07-10 04:13:35 +02:00
parent a7fa9d7525
commit 5cd8f695a3
5 changed files with 178 additions and 71 deletions

View File

@@ -524,8 +524,8 @@ void drawrec(cell *c, const transmatrix& V) {
if(at != li.relative) printf("at %s/%s\n", disp(at), disp(li.relative));
if(maindir != li.last_dir) printf("ld %d/%d\n", maindir, li.last_dir); */
draw_li.relative = at;
draw_li.total_dir = fix6(dir);
transmatrix V1 = V * Tf[draw_li.last_dir][at.first&31][at.second&31][fix6(dir)];
draw_li.total_dir = fixg6(dir);
transmatrix V1 = V * Tf[draw_li.last_dir][at.first&31][at.second&31][fixg6(dir)];
if(in_qrange(V1))
drawcell(c, V1, 0, false);
}
@@ -534,7 +534,7 @@ void drawrec(cell *c, const transmatrix& V) {
if(!c2) continue;
if(c2->mov[0] != c) continue;
if(c2 == c2->master->c7) continue;
drawrec(c2, V, at + eudir(dir+i), dir + i + 3, maindir);
drawrec(c2, V, at + eudir(dir+i), dir + i + SG3, maindir);
}
}
@@ -550,7 +550,7 @@ void drawrec(cell *c, const transmatrix& V) {
if(c2->mov[0] != c) continue;
if(c2 == c2->master->c7) continue;
draw_li.last_dir = i;
drawrec(c2, V, gp::loc(1,0), 3, i);
drawrec(c2, V, gp::loc(1,0), SG3, i);
}
}
}