1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-06-10 18:34:08 +00:00

added inverse_shift_any

This commit is contained in:
Zeno Rogue 2025-03-02 23:01:43 +01:00
parent 0d52b22cad
commit 8beaa2eafb

View File

@ -3194,10 +3194,18 @@ EX transmatrix inverse_shift(const shiftmatrix& T1, const shiftmatrix& T2) {
return iso_inverse(T1.T) * unshift(T2, T1.shift); return iso_inverse(T1.T) * unshift(T2, T1.shift);
} }
EX transmatrix inverse_shift_any(const shiftmatrix& T1, const shiftmatrix& T2) {
return inverse(T1.T) * unshift(T2, T1.shift);
}
EX hyperpoint inverse_shift(const shiftmatrix& T1, const shiftpoint& T2) { EX hyperpoint inverse_shift(const shiftmatrix& T1, const shiftpoint& T2) {
return iso_inverse(T1.T) * unshift(T2, T1.shift); return iso_inverse(T1.T) * unshift(T2, T1.shift);
} }
EX hyperpoint inverse_shift_any(const shiftmatrix& T1, const shiftpoint& T2) {
return inverse(T1.T) * unshift(T2, T1.shift);
}
EX void optimize_shift(shiftpoint& h) { EX void optimize_shift(shiftpoint& h) {
if(sl2) { if(sl2) {
change_shift(h, atan2(h[2], h[3])); change_shift(h, atan2(h[2], h[3]));