iMSTK issueshttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues2021-12-20T15:57:17-05:00https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/382Upgrade VTK 9.12021-12-20T15:57:17-05:00Andrew WilsonUpgrade VTK 9.1Shouldn't be difficult to upgrade.
Ideally also expose the PBR clear coat material parameters in RenderMaterial. If used correctly could give a nice sheen to some tissues and make them look "wet" (specifically the ability to use fresnel...Shouldn't be difficult to upgrade.
Ideally also expose the PBR clear coat material parameters in RenderMaterial. If used correctly could give a nice sheen to some tissues and make them look "wet" (specifically the ability to use fresnel).
Also check:
- If the vtkXRenderWindowInteractor fixed (can we remove our patched implementation?).
- If shadows fixedhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/381CodeFormatEnforcer Failing2021-11-19T22:58:28-05:00Andrew WilsonCodeFormatEnforcer FailingAgain uncrustify is reporting fail, but not actually correcting anything when run.Again uncrustify is reporting fail, but not actually correcting anything when run.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/380Invert Rotation Issues2021-11-17T18:41:01-05:00Andrew WilsonInvert Rotation IssuesIn Unity we have LHS instead of RHS used in imstk & opengl. Requiring inverting of the positions and orientations of a controller.
Currently inverting orientations does not work in imstk.
While invert Y is on take a tool (such as sciss...In Unity we have LHS instead of RHS used in imstk & opengl. Requiring inverting of the positions and orientations of a controller.
Currently inverting orientations does not work in imstk.
While invert Y is on take a tool (such as scissors, syringe, or needle) pointing down z. Rotate 90deg around global y. Then rotate 90deg around global x. You will see the incorrect orientation.
![_output001_2021-11-11_22-08-00__2_](/uploads/b66e796326739b6279e32fc3e75ab95c/_output001_2021-11-11_22-08-00__2_.gif)https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/379Fix Test Timeout2022-04-05T19:40:29-04:00Andrew WilsonFix Test TimeoutTest timeout keeps tripping up. Especially in debug.Test timeout keeps tripping up. Especially in debug.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/378ReadTheDocs build Failing2021-11-10T16:20:38-05:00Harald ScheirichReadTheDocs build Failinghttps://readthedocs.org/projects/imstk-unity/builds/15156193/
See also
https://github.com/readthedocs/readthedocs.org/issues/8616https://readthedocs.org/projects/imstk-unity/builds/15156193/
See also
https://github.com/readthedocs/readthedocs.org/issues/8616Harald ScheirichHarald Scheirichhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/377Consolidate CMake2022-04-10T20:01:27-04:00Andrew WilsonConsolidate CMake - [x] Consolidate usage of GLOB or no GLOB
- [ ] Consolidate tabs or 2 spaces
- [ ] Consolidate all uppercase options or not
- [ ] Consolidate usage of ${PROJECT_NAME} or not
There's mixed usage of these things in iMSTKs cmake which... - [x] Consolidate usage of GLOB or no GLOB
- [ ] Consolidate tabs or 2 spaces
- [ ] Consolidate all uppercase options or not
- [ ] Consolidate usage of ${PROJECT_NAME} or not
There's mixed usage of these things in iMSTKs cmake which makes it confusing to work with.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/376Move CreateEnclosingMesh To an imstkGeometryAlgorithm/filter2021-11-19T22:58:45-05:00Andrew WilsonMove CreateEnclosingMesh To an imstkGeometryAlgorithm/filterAs the title states, this somewhat large operation is sitting in a static function in GeometryUtilities. It's actually a set of functions in an attempt to make parts of it more re-useable. It would be nice if this could be moved to a Geo...As the title states, this somewhat large operation is sitting in a static function in GeometryUtilities. It's actually a set of functions in an attempt to make parts of it more re-useable. It would be nice if this could be moved to a GeometryAlgorithm to avoid its large size (also you can optionally link to Filtering in imstk so it slightly decreases library size in many examples as well).https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/375Fix DynamicalModel::validGeometryTypes2022-06-01T16:40:32-04:00Andrew WilsonFix DynamicalModel::validGeometryTypesDynamicalModel stores some string types for the valid geometry types. This prevents usage with geometry subclasses.DynamicalModel stores some string types for the valid geometry types. This prevents usage with geometry subclasses.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/374compile error, openhaptics2021-11-04T10:42:19-04:00xianger-qicompile error, openhapticsi want to run the example: FemurCut , so i install the openhaptics and geomagic_touch_device_driver, in the “/opt/openhaptics” and “opt/geomagic_touch_device_driver”, then i change cmake variable “iMSTK_USE_OpenHaptics” to “ON” and run c...i want to run the example: FemurCut , so i install the openhaptics and geomagic_touch_device_driver, in the “/opt/openhaptics” and “opt/geomagic_touch_device_driver”, then i change cmake variable “iMSTK_USE_OpenHaptics” to “ON” and run cmake …/iMSTK. The terminal print error “cant find openHaptics”
![Screenshot_from_2021-10-08_23-40-57](/uploads/91afb698c5966f377cea9363f8c0ae93/Screenshot_from_2021-10-08_23-40-57.png)![Screenshot_from_2021-10-08_23-41-22](/uploads/63b73a9eb963ab9cbf8412a101848753/Screenshot_from_2021-10-08_23-41-22.png)
how can i fix that?https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/373CMake Tells Project Files May be Invalid2021-10-07T18:28:26-04:00Zhiqi MaoCMake Tells Project Files May be InvalidI am trying to install iMSTK to my computer, and CMake tells me that Error in configuration process, project files may be invalid.
I have used Visual Studio 15 2017 and Visual Studio 16 2019 as generator.
I also tried use Visual Studi...I am trying to install iMSTK to my computer, and CMake tells me that Error in configuration process, project files may be invalid.
I have used Visual Studio 15 2017 and Visual Studio 16 2019 as generator.
I also tried use Visual Studio Enterprise 2019 to direct build the iMSTK.sln, however, it tells me the following error message
Severity Code Description Project File Line Suppression State
Error CMake Error:
Running
'C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe' '-C' 'H:/iMSTK/out/build/x64-Debug' '-t' 'recompact'
failed with:
ninja: error: build.ninja:958: bad $-escape (literal $ must be written as $$) H:\iMSTK\ ninja
I currently have CMake version 3.20.5, git version2.33.0.windows.2, and git lfs/2.13.3
Can someone help me resolve this problem?https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/372Build without OpenVR support2022-04-12T16:46:28-04:00Connor BowleyBuild without OpenVR supportFor projects that don't need OpenVR, it would be useful to have a build flag to turn off OpenVR support and not require OpenVR in the build process.For projects that don't need OpenVR, it would be useful to have a build flag to turn off OpenVR support and not require OpenVR in the build process.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/371iMSTKData in Innerbuild2022-04-20T09:47:40-04:00Andrew WilsoniMSTKData in InnerbuildiMSTKData is now in the outer build requiring users to rebuild imstk superbuild to update data which can be a lengthy process. It also requires any MRs with new data to use "do: test --clean" instead. Luckily you don't have to update dat...iMSTKData is now in the outer build requiring users to rebuild imstk superbuild to update data which can be a lengthy process. It also requires any MRs with new data to use "do: test --clean" instead. Luckily you don't have to update data often. But moving it to the innerbuild would be preferred.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/370CDDebugObject Queue instead of Clear Rates2022-06-01T16:20:58-04:00Andrew WilsonCDDebugObject Queue instead of Clear RatesThe CDDebugObject is an object that quickly adds/removes geometry to represent collision data (contacting faces, edges, etc). This is for debug purposes.
Unfortunately when you have a simulation running at 1000 updates a second its hard...The CDDebugObject is an object that quickly adds/removes geometry to represent collision data (contacting faces, edges, etc). This is for debug purposes.
Unfortunately when you have a simulation running at 1000 updates a second its hard to see whats going on. One might slow it down, advance by key, or one of the solutions currently provided is a "clear rate". Which clears the collision data visual representations every N frames. So you can see the last say, 50 frames.
A more intuitive implementation would be a queue. Such that you can store the last 50 collision data representations. Unfortunately this is a bit tricky to implement efficiently.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/369Khronos ML summit2021-10-22T21:18:45-04:00pierre boudierKhronos ML summitHello,
I am the chair of a working group at Khronos developing standards for graphics and compute hardware accelerators (as well as a representative for Nvidia in those groups).
We are organizing a summit to gather feedback from the ec...Hello,
I am the chair of a working group at Khronos developing standards for graphics and compute hardware accelerators (as well as a representative for Nvidia in those groups).
We are organizing a summit to gather feedback from the ecosystem, and influence the design of the next round of improvements, and I thought that you may be interested in being represented:
https://www.khronos.org/events/2021-invitation-to-the-khronos-machine-learning-summit
This summit is IP free, and will let you present your project and your needs for improvements in the ML ecosystem, as well as hearing from other companies.
regards,
Pierre Boudier
Software architect at Nvidia
chair of the Machine Learning TSG at Khronoshttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/368PbdConstraintFunctors should be constructed in PbdModelConfig and used for pa...2021-12-15T17:29:07-05:00Andrew WilsonPbdConstraintFunctors should be constructed in PbdModelConfig and used for parametersOne of the issues with the PbdModelConfig is how it stores parameters. Each Functor could have any set of parameters. Generally:
- "Regular Constraints": Have one double stiffness value
- FEMConstraints: Have either possions ratio+you...One of the issues with the PbdModelConfig is how it stores parameters. Each Functor could have any set of parameters. Generally:
- "Regular Constraints": Have one double stiffness value
- FEMConstraints: Have either possions ratio+youngs modulus OR lame parameters
- BendConstraint: Has an extra parameter for strides
Really there's no telling (literally unable to tell) what parameters a user would want to use with a functor. While we should still maintain the pretty simple PbdModelConfig::enableConstraint function. It should immediately create and store the functor otherwise PbdModelConfig has to worry about how to store all these parameters and then later use them to setup functors which causes nasty code.
This should eliminate complexities in PbdModelConfig for FEM and Bend constraints. Specialized functions such as enableBendConstraint(stiffness, stride) and enableFEMConstraint(type, material) should still be present.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/367Rename SurfaceMesh::flipNormals to SurfaceMesh::reverse, or SurfaceMesh::reve...2022-06-01T16:27:38-04:00Andrew WilsonRename SurfaceMesh::flipNormals to SurfaceMesh::reverse, or SurfaceMesh::reverseWindingSimple change, reminder for later. The issue with flip normals is that it doesn't actually flip normals. It reverses windings.
In fact if you have per vertex normals defined and call flipNormals, expecting the normals to flip. It does n...Simple change, reminder for later. The issue with flip normals is that it doesn't actually flip normals. It reverses windings.
In fact if you have per vertex normals defined and call flipNormals, expecting the normals to flip. It does nothing. Because again, it doesn't flip normals, it reverses windings. Two very different things.https://gitlab.kitware.com/iMSTK/iMSTK/-/issues/366VTKViewer::setDebugAxesLength Should not need an active VTKRenderer to set de...2022-09-26T12:07:41-04:00Andrew WilsonVTKViewer::setDebugAxesLength Should not need an active VTKRenderer to set debug axes lengthIf you call setDebugAxesLength before setting an active scene it will do nothing. This is because the renderer is lazy created. Not created until active scene is created (legacy reason of creating separate renderers for separate scenes, ...If you call setDebugAxesLength before setting an active scene it will do nothing. This is because the renderer is lazy created. Not created until active scene is created (legacy reason of creating separate renderers for separate scenes, which still work decently for scene switching).Andrew WilsonAndrew Wilsonhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/365Some VTK Models can't be converted2021-10-27T09:42:40-04:00Harald ScheirichSome VTK Models can't be converted`copyToPolyData(mesh)` fails with
```
2021/09/01 09:36:59 10949845 CONTRACT [imstkGeometryUtilities.cpp->copyToVtkDataArray:139]
******* EXIT trigger caused by broken Contract: CHECK(imstkArray != nullptr)
"AbstractDataArray provid...`copyToPolyData(mesh)` fails with
```
2021/09/01 09:36:59 10949845 CONTRACT [imstkGeometryUtilities.cpp->copyToVtkDataArray:139]
******* EXIT trigger caused by broken Contract: CHECK(imstkArray != nullptr)
"AbstractDataArray provided is not valid!
******* STACKDUMP *******
```
on some `.vtk` filesHarald ScheirichHarald Scheirichhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/364Event Documentation in Event_System.rst doesn't actually explain how async ev...2021-09-03T14:37:31-04:00Harald ScheirichEvent Documentation in Event_System.rst doesn't actually explain how async events are processedhttps://gitlab.kitware.com/iMSTK/iMSTK/-/issues/363Incorrect Doc for Rigid Body in DynamicModels.rst2021-09-27T08:44:33-04:00Harald ScheirichIncorrect Doc for Rigid Body in DynamicModels.rstRefers to PHYSX, needs to be updated for Rigidbody2Refers to PHYSX, needs to be updated for Rigidbody2