mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-12-27 10:30:36 +00:00
radar fixes
This commit is contained in:
parent
c2dc16f8ca
commit
547c0785ef
16
graph.cpp
16
graph.cpp
@ -5097,14 +5097,26 @@ EX void make_actual_view() {
|
|||||||
ld z = -tC0(view_inverse(T)) [2];
|
ld z = -tC0(view_inverse(T)) [2];
|
||||||
transmatrix R = actual_view_transform;
|
transmatrix R = actual_view_transform;
|
||||||
R = (logical_to_actual()) * R;
|
R = (logical_to_actual()) * R;
|
||||||
if(R[0][2] || R[2][2])
|
|
||||||
R = cspin(0, 2, -atan2(R[0][2], R[2][2])) * R;
|
|
||||||
if(R[1][2] || R[2][2])
|
if(R[1][2] || R[2][2])
|
||||||
R = cspin(1, 2, -atan2(R[1][2], R[2][2])) * R;
|
R = cspin(1, 2, -atan2(R[1][2], R[2][2])) * R;
|
||||||
|
if(R[0][2] || R[2][2])
|
||||||
|
R = cspin(0, 2, -atan2(R[0][2], R[2][2])) * R;
|
||||||
if(geom3::hyp_in_solnih()) R = Id;
|
if(geom3::hyp_in_solnih()) R = Id;
|
||||||
R = inverse(logical_to_actual()) * R;
|
R = inverse(logical_to_actual()) * R;
|
||||||
current_display->radar_transform = inverse(R) * zpush(-z);
|
current_display->radar_transform = inverse(R) * zpush(-z);
|
||||||
}
|
}
|
||||||
|
else if(gproduct) {
|
||||||
|
transmatrix T = View;
|
||||||
|
ld z = zlevel(tC0(inverse(T)));
|
||||||
|
|
||||||
|
transmatrix R = NLP;
|
||||||
|
if(R[1][2] || R[2][2])
|
||||||
|
R = cspin(1, 2, -atan2(R[1][2], R[2][2])) * R;
|
||||||
|
if(R[0][2] || R[2][2])
|
||||||
|
R = cspin(0, 2, -atan2(R[0][2], R[2][2])) * R;
|
||||||
|
|
||||||
|
current_display->radar_transform = R * zpush(z);
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
transmatrix T = actual_view_transform * View;
|
transmatrix T = actual_view_transform * View;
|
||||||
transmatrix U = view_inverse(T);
|
transmatrix U = view_inverse(T);
|
||||||
|
Loading…
Reference in New Issue
Block a user