Surface toolbox revamp

Hi Slicer developers,
cc: @pieper @lassoan @jcfr @styner

This week we plan to start a considerable effort to revamp the Surface Toolbox. The main idea is to port most of MeshMath’s functionality into it. We have created a lab’s page that details how we plan this effort to go.

If anybody has ideas or suggestions, please let us know!



@benwilson is making good progress and should have a pull request shortly :tada:

To move forward, considering we will be adding around ~20 CLIs, I was thinking to develop the SurfaceToolBox (and associated modules) in its own repository Slicer/Slicer-SurfaceToolBox that we would integrate in Slicer as a remote module like it is already done for SimpleFilters, LandmarkRegistration, …

What do you think ?

This would allow …

  • to easily enable/disable building of the surface toolbox within Slicer or Slicer custom application
  • to easily integrate the modules in any system compliant with the SlicerExecutionModel interface

To illustrate here is a repository I just created:

It was generated by extracting history using jcfr/dockgit-rocket-filter:

# Filter history
git clone git:// -b master Slicer-SurfaceToolBox
cd Slicer-SurfaceToolBox
git-rocket-filter --branch surfacetoolbox --keep Modules/Scripted/SurfaceToolbox

# publish extracted branch
git remote add SurfaceToolBox
git push SurfaceToolBox refs/heads/surfacetoolbox:master

Sounds like a good idea to me - thanks @jcfr :+1:

Thanks for the feedback.

  • Repository name changed to SlicerSurfaceToolbox
  • LICENSE, and top-level CMakeLists.txt added
  • History filtered to have all modules at the root of the repo and to fix the the git message trailers so that both Co-authored-by and git-svn-id are recognized

A post was split to a new topic: Convert mesh to engineering CAD software solid part

Start with r28434, SurfaceToolbox is now integrated as a remote module whose sources are downloaded from