|
19 | 19 | unproject_orthographic, |
20 | 20 | ) |
21 | 21 | from arcade.gl import Framebuffer |
22 | | -from arcade.types import LBWH, LRBT, Point, Rect |
| 22 | +from arcade.types import LBWH, LRBT, XYWH, Point, Rect |
23 | 23 | from arcade.types.vector_like import Point2 |
24 | 24 | from arcade.window_commands import get_window |
25 | 25 |
|
@@ -752,7 +752,7 @@ def angle(self, value: float) -> None: |
752 | 752 | """ |
753 | 753 | _r = radians(value) |
754 | 754 | # Note that this is flipped as we want 0 degrees to be vert. |
755 | | - self._camera_data.position = (sin(_r), cos(_r), 0.0) |
| 755 | + self._camera_data.up = (-sin(_r), cos(_r), 0.0) |
756 | 756 |
|
757 | 757 | @property |
758 | 758 | def zoom(self) -> float: |
@@ -786,9 +786,8 @@ def equalise(self) -> None: |
786 | 786 | When matching the projection to the viewport the method keeps |
787 | 787 | the projections center in the same relative place. |
788 | 788 | """ |
789 | | - |
790 | | - self.width = self.viewport_width |
791 | | - self.height = self.viewport_height |
| 789 | + x, y = self._projection_data.rect.x, self._projection_data.rect.y |
| 790 | + self._projection_data.rect = XYWH(x, y, self.viewport_width, self.viewport_height) |
792 | 791 |
|
793 | 792 | def match_screen( |
794 | 793 | self, and_projection: bool = True, and_scissor: bool = True, and_position: bool = False |
|
0 commit comments