Instance initializer.
(self, title='Explorer', width=1024, height=768)
| 180 | """Viewer application.""" |
| 181 | |
| 182 | def __init__(self, title='Explorer', width=1024, height=768): |
| 183 | """Instance initializer.""" |
| 184 | self._render_surface = None |
| 185 | self._renderer = renderer.NullRenderer() |
| 186 | self._viewport = renderer.Viewport(width, height) |
| 187 | self._window = gui.RenderWindow(width, height, title) |
| 188 | |
| 189 | self._pause_subject = util.ObservableFlag(True) |
| 190 | self._time_multiplier = util.TimeMultiplier(1.) |
| 191 | self._frame_timer = util.Timer() |
| 192 | self._viewer = viewer.Viewer( |
| 193 | self._viewport, self._window.mouse, self._window.keyboard) |
| 194 | self._viewer_layout = views.ViewportLayout() |
| 195 | self._status = Status( |
| 196 | self._time_multiplier, self._pause_subject, self._frame_timer) |
| 197 | |
| 198 | self._runtime = None |
| 199 | self._environment_loader = None |
| 200 | self._environment = None |
| 201 | self._policy = None |
| 202 | self._deferred_reload_request = None |
| 203 | |
| 204 | status_view_toggle = self._build_view_toggle( |
| 205 | views.ColumnTextView(self._status), views.PanelLocation.BOTTOM_LEFT) |
| 206 | help_view_toggle = self._build_view_toggle( |
| 207 | views.ColumnTextView(Help()), views.PanelLocation.TOP_RIGHT) |
| 208 | status_view_toggle() |
| 209 | |
| 210 | self._input_map = user_input.InputMap( |
| 211 | self._window.mouse, self._window.keyboard) |
| 212 | self._input_map.bind(self._pause_subject.toggle, _PAUSE) |
| 213 | self._input_map.bind(self._time_multiplier.increase, _SPEED_UP_TIME) |
| 214 | self._input_map.bind(self._time_multiplier.decrease, _SLOW_DOWN_TIME) |
| 215 | self._input_map.bind(self._advance_simulation, _ADVANCE_SIMULATION) |
| 216 | self._input_map.bind(self._restart_runtime, _RESTART) |
| 217 | self._input_map.bind(help_view_toggle, _HELP) |
| 218 | self._input_map.bind(status_view_toggle, _STATUS) |
| 219 | |
| 220 | def _on_reload(self, zoom_to_scene=False): |
| 221 | """Perform initialization related to Physics reload. |
nothing calls this directly
no test coverage detected