1. 12 Dec, 2016 1 commit
  2. 07 Dec, 2016 1 commit
  3. 22 Nov, 2016 1 commit
  4. 15 Oct, 2016 1 commit
  5. 14 Oct, 2016 1 commit
  6. 13 Oct, 2016 2 commits
  7. 12 Oct, 2016 7 commits
  8. 11 Oct, 2016 1 commit
  9. 25 Jul, 2016 1 commit
  10. 02 Jun, 2016 1 commit
  11. 17 May, 2016 1 commit
  12. 16 May, 2016 3 commits
  13. 13 May, 2016 2 commits
    • Alexis Girault's avatar
      WIP: Implement CameraController · b5a57f0f
      Alexis Girault authored
      1) Camera does not hold a vtkCamera anymore (less tight integration).
      It holds camera parameters.
      
      2) Camera has a pointer to CameraController, that you can set up
      based on a deviceclient. This camera controller has a reference
      to the camera, and updates its parameters based on the deviceclient
      retrieved information.
      
      3) Scene runs the controller as an asynchronous module in its own
      thread, it is therefore started in Scene::initModule and ended in
      Scene::cleanUpModule.
      
      4) In the timer loop of InteractorStyle, the vtk camera is updated
      based on the scene camera.
      
      5) In Renderer, a new vtk Camera needs to be created to match the
      scene camera, since it is not created anymore in imstk::Camera.
      b5a57f0f
    • Alexis Girault's avatar
      ENH: Render on timer event from window interactor · 835e68c9
      Alexis Girault authored
      1) Create a timer on the renderWindowInteractor
      2) Render() in 'InteractorStyle::OnTimer()'
      835e68c9
  14. 15 Apr, 2016 1 commit
  15. 08 Apr, 2016 1 commit
    • Alexis Girault's avatar
      ENH: Improve Viewer Simulation control · 22fb2144
      Alexis Girault authored
      (1) `SimulationManager::startSimulation()` will check if a Viewer is
      already rendering, and will only start a rendering/interaction loop
      in the main thread if it isn't. This allows us to work with two
      possible cases:
      (a) a QT Application with an existing widget for rendering, in which
      case we do not want to control the rendering window ourself in a loop
      (b) a standalone `vtkRenderWindow` application, in which case we do
      want to create a window when our simulation starts and loop until the
      window is closed.
      
      (2) `SimulationManager::startSimulation()` can be launched with a debug
      boolean option (off by default), which will allow to not automatically
      simulate the dynamics of the scene, to be able to interact with the
      scene beforehand (using the mouse).
      
      (3) `imstk::InteractorStyle` is based on vtkInteractorStyle specifically
      the trackballCamera and allows to ignore mouse events in simulation mode,
      and uses key events to control the simulation:
      's' : start simulation
      'e' : end simulation
      ' ' (space) : pause/run simulation
      
      (4) The `Viewer` class and the `InteractorStyle` class have been moved
      to the `SimulationManager` module, since they are more drivers of the
      application themselves.
      
      (5) The 'Sandbox' example has been refactored to make it easier to test
      autonomous tests, and updated to use the new driver architecture brought
      with this commit.
      22fb2144