- Feb 27, 2017
-
-
Mayeul Chassagnard authored
* Add data needed for the examples inside Sandbox except ETI & textures * Remove condition on DATA_ROOT_PATH since the user doesn't have to specify it * Rename DATA_ROOT_PATH to iMSTK_DATA_ROOT according to 267b7f72
-
- Feb 24, 2017
-
-
Mayeul Chassagnard authored
Download Data from Girder according to data key files contained in iMSTK/Data This uses ExternalData.cmake (Requires CMake >= 2.8.11 release). Add TEST: Add ExternalDataTest to verify downloaded files from Girder * Be sure the data requiered for the test is not there (delete it) * Add the imstk_add_data(${target} ${data_list}) function in CMakeList.txt which calls ExternalData_expand_arguments(). * It downloads the data provided by the data_list (relative path from iMSTK/Data) Add DOC: Add documentation on ExternalData Management * How to add data to iMSTK from Grider * Update data * Use data
-
- Jan 31, 2017
-
-
Alexis Girault authored
Add laparoscopic tool controller See merge request !119
-
Sreekanth Arikatla authored
Also correct indentation in Pbd class.
-
Sreekanth Arikatla authored
Create a tool with two jaws and a shaft. The controller use its DeviceTracker to update the three objects
-
Sreekanth Arikatla authored
* Rename TrackingController to DeviceTracker * Have subclasses store a pointer to DeviceTracker instead of inheriting it. This allows: 1. swapping the tracking controller at runtime 2. having multiple controllers control for the same scene object (eg: laparoscopic tool jaw) * Add SceneObjectControllerBase to parent SceneObjectController and other future object controllers * Update tracking data only once per frame: if the same tracker is used for multiple objects, it is updated only once per frame. Each tracker is set to upToDate once the tracking data is updated and offsets computed once at each frame. At the end of the frame all the device trackers are set to be outOfDate.
-
Sreekanth Arikatla authored
Scene can be set as current in the simulation manager using the scene pointer in addition to its name.
-
Sreekanth Arikatla authored
We know we have only 4 buttons for the Omni
-
Sreekanth Arikatla authored
Scene object controllers are now part of the scene. They are looped through in the sceneManager to update the objects they contain. This will allow extension to the case where multiple scene objects are controlled by the same controller (eg: two-jawed laparoscopic tool).
-
- Jan 30, 2017
-
-
Alexis Girault authored
COMP: Fix eigen checkout Closes #119 See merge request !126
-
Alexis Girault authored
Eigen git tag which was currently used (e81ac4502ebbfde43a1e1761b36853d3ead47c33) can not be checked out anymore as of Sunday, January 29 2017 for unknown reasons, causing all builds on the dashboard to fail: http://my.cdash.org/index.php?project=iMSTK&date=2017-01-29 error: ``` fatal: reference is not a tree: e81ac4502ebbfde43a1e1761b36853d3ead47c33 ```
-
Alexis Girault authored
Add VTK rendering improvements Closes #115 See merge request !121
-
- Jan 26, 2017
-
-
Andinet enquobahrie authored
DOC: Add CONTRIBUTING.md See merge request !125
-
Alexis Girault authored
Ensure the surface mesh read will only have triangles and no triangle strips or other cells.
-
Alexis Girault authored
DATA_ROOT_PATH is used to quickly define the root path for all your ressources in the Sandbox example. Its value will therefore vary for every user, which is why it should not be commited. This commit adds comments explaining not to commit changes to this line, as well as how to commit part of a file only, and displays an error when the path is not set locally.
-
Alexis Girault authored
-
Alexis Girault authored
Addresses suggestions made here: alexis-girault/iMSTK@a63f98b5 (comment 212643) >8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8 It would be great to have the option of using pan-zoom-rotate when simulation is running for certain applications. I keep pressing 'S' and 'E' in succession to see if everything is good for an example i was working on. It need not be a default run mode option. >8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8>8 * Rename VTKRenderer::setup into VTKRenderer::setMode * Add VTKRenderer::getMode * Add VTKViewer::getRenderingMode wrapping the one above * Consider Rendering Mode in Mouse event callbacks instead of simulation status * Allow to switch to Debug rendering and back with the `d` key
-
Alexis Girault authored
Press the `P` key (for "Print text", since f should be for fullscreen) to display the rendering framerate in the left bottom corner. Needed to override `SetCurrentRenderer` to add the textActor. Only update the displayed framerate value every 100ms, which requires the variables `m_lastFpsUpdate` (last time since the value was updated), and `m_lastFps` (to compute the framerate value using a moving average).
-
Alexis Girault authored
When the framerate was not fixed, the next render pass would be called using `CreateOneShotTimer(0)` while its parameter minimum value is 1 (in milliseconds). 0 would set it up for the default value of 10 ms.
-
Alexis Girault authored
The main bottleneck with real-time VTK rendering so far appeared to be the normals computation. This commit addresses that issue by making use of the latest normals computation filter in VTK: vtkTriangleMeshPointNormals. While this filter is much (5 to 16 times) faster than vtkPolyDataNormals, it does not check for consistency in the cell orientations that could cause inverted normals, which is why the vtkPolyDataNormals is called once in the surfacemesh renderdelegate to retrieve consistent cells for the input mesh. See VTK merge request for more information : vtk/vtk!2271 PS: That MR requires the latest commits from VTK master, which does not include work made on texture wrap mode nor on multi texture attributes yet: - iMSTK/vtk@62a7ecd8 - iMSTK/vtk@ae373026
-
Alexis Girault authored
-
- Jan 24, 2017
-
-
Alexis Girault authored
COMP: Fix return error in MeshIO::write See merge request !123
-
Mayeul Chassagnard authored
System: gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609 error: converting to ‘bool’ from ‘std::nullptr_t’ requires direct-initialization
-
- Jan 06, 2017
-
-
Alexis Girault authored
COMP: Fix function is not a member of std (Win) The merge request !117 to add custom event handlers for vtk interaction introduced a bug on Windows, where the <functional> header needs to be included to be able to use `std::function`. This fixes the 50 errors listed on cdash (due to those `std::function` members being used frequently): http://my.cdash.org/viewBuildError.php?buildid=1111691 PS: The experimental build for this MR did not show any issues on CDash [1], but they appeared once merged in the master branch (continuous). There seem to be an issue with how buildbot runs those builds on Windows, since a similar issue happened on windows 32 bits with Eigen aligned data structures in stl containers. [1] http://my.cdash.org/buildSummary.php?buildid=1111615 See merge request !122
-
Alexis Girault authored
The merge request !117 to add custom event handlers for vtk interaction introduced a bug on Windows, where the <functional> header needs to be included to be able to use `std::function`. This fixes the 50 errors listed on cdash (due to those `std::function` members being used frequently): http://my.cdash.org/viewBuildError.php?buildid=1111691 PS: The experimental build for this MR did not show any issues on CDash [1], but they appeared once merged in the master branch (continuous). There seem to be an issue with how buildbot runs those builds on Windows, since a similar issue happened on windows 32 bits with Eigen aligned data structures in stl containers. [1] http://my.cdash.org/buildSummary.php?buildid=1111615
-
Alexis Girault authored
ENH: Add custom event handlers for vtk interaction 1. Allow to set up lambda functions from `VTKViewer` as custom behavior to run in the interactor Style in event callbacks. 2. Simplify `VTKInteractorStyle::OnChar()` to only have simple default behaviors (start, stop, pause, play, quit) 3. Move the implementation of `getTargetFrameRate()`, `setTargetFrameRate()` and `setSimulationManager()` from `VTKInteractorStyle` to `VTKViewer`, which becomes friend class of the private members of `VTKInteractorStyle` to avoid repeatedly wrapping around the interactor style methods. Co-authored-by: Hina Shah <hina.shah@kitware.com> (@hina), adapted from iMSTK/iMSTK!113 See merge request !117
-
- Jan 05, 2017
-
-
Alexis Girault authored
Fix finite element deformation models and non-linear solvers This MR does the following: * Fixes internal force calculation for both semi-implicit and full implicit Newton iteration * Fixes initialization of linear and StVK material models * Adds a modified conjugate gradient solver to handle fixed boundary conditions * Enables damping if provided in the config files * Enforcing code guidelines and other clean up in the related files These fixes concludes the refactoring and bug fixes for physics module. Once these changes are merged, one should be able to create any material model with choice of semi-implicit and full implicit Newton solvers while applying Dirichlet boundary conditions. In other words, all the vega functionality (barring reduced order models) can be reproduced in iMSTK. See merge request !118
-
Alexis Girault authored
-
Alexis Girault authored
-
Alexis Girault authored
Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
Alexis Girault authored
-
Alexis Girault authored
- default LinearSolver tolerance = 1.0e-4 - default IterativeLinearSolver maxIterations = 100 - remove those default values in ConjugateGradient constructor as they are initialized in the parent constructors - consistent use of this pointer Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
Alexis Girault authored
Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
Alexis Girault authored
1. Implemented Homogeneous Dirichlet BC 2. changed `filter` lambda to normal method 3. simple cg solver implementation 4. return b.dot(b) instead of b.norm() within NewtonSolver::updateJacobian Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com> Written-by:
Mohit Tyagi <mohit.tyagi@kitware.com>
-
Alexis Girault authored
Makes the update of LHS and RHS updateType dependent. For now only deltaVelocity type update is supported. Clean up and renaming Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
Alexis Girault authored
1. Fixs the fully implicit nonlinear Newton solver 2. Completes implementation of Newton solver that can be either semi implicit (SI) or fully implicit (FI) 3. Adds options to set the solver to either SI or FI 4. Default is SI 5. Now the lamda function computing the internal forces needs to know if it is SI or FI 6. Prints warning if the FI Newton solver does not converge within max iterations set Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
Alexis Girault authored
Get rid of m_tmpStorage Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
Alexis Girault authored
- use m_vegaPhysicsMesh within initializeDampingMatrix - consider all damping coefficients Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
Alexis Girault authored
Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
Alexis Girault authored
Written-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-