1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-06-14 01:16:50 +00:00

embeddings:: better yzspin

This commit is contained in:
Zeno Rogue 2023-02-04 00:28:53 +01:00
parent d8a0023c54
commit 6056fce41a

View File

@ -505,14 +505,14 @@ void geometry_information::make_skeletal(hpcshape& sh, ld push) {
} }
hyperpoint yzspin(ld alpha, hyperpoint h) { hyperpoint yzspin(ld alpha, hyperpoint h) {
if(gproduct) return product::direct_exp(cspin(1, 2, alpha) * product::inverse_exp(h)); if(embedded_plane) {
else if(embedded_plane && cgi.emb->center_z()) { h = cgi.emb->actual_to_logical(h);
h = gpushxto0(cgi.emb->tile_center()) * h;
h = cspin(1, 2, alpha) * h; h = cspin(1, 2, alpha) * h;
h = rgpushxto0(cgi.emb->tile_center()) * h; h = cgi.emb->logical_to_actual(h);
return h; return h;
} }
else return cspin(1, 2, alpha) * h; if(gproduct) return product::direct_exp(cspin(1, 2, alpha) * product::inverse_exp(h));
return cspin(1, 2, alpha) * h;
} }
void geometry_information::make_revolution(hpcshape& sh, int mx, ld push) { void geometry_information::make_revolution(hpcshape& sh, int mx, ld push) {