Proposed custom module for the extension repository

I hereby propose the Path Reformat custom scripted module for bundling in the extension repository.

It is described there, repeating its objects would be superfluous in this post.

I believe it may be of interest for any physician dealing with vascular pathology. The primary intent is visual evaluation of cross-section of arterial segments that are not along the orthogonal axes.

I insist that this step is not self-promotional.

The code is not written in stone, it may be changed as per your evaluation, within the limits of my coding skills.

I could not find an official way to propose a module or I missed it, so here it goes in the forum.

Lastly, the module dealt in this topic suggested me that this custom module may not be disregarded. But I won’t mind if you consider that it’s not worthwhile.


Thank you, this will be a very useful module. I would add it to the SlicerVMTK extension, as this feature is most commonly needed for vascular applications.

If you can send a pull request that adds this to SlicerVMTK extension then it’s great. If you don’t know how to do that then just let me know and I can do it for you.

We will need to decide on the final module name. “Path” word is not great, as we actually mean “curve”. It would be also useful to include “cross-section” in the name. Something like “Cross-section analysis” would be more clear, but if we find a simple and short bane that somehow includes “curve” as well then it is even better.

I can manage that and will do it tomorrow morning.

Well I chose ‘Path’ because it deals with marksups curves and VMTK centerlines, two different object types. We’ll change this module’s name. To which one… don’t know yet. Does it need to be changed before or after the pull request ?

How about :

  • Curve orthogonal {flow, analysis, navigation, reformat}
  • Curve {flow, analysis, navigation, reformat}
  • Cross-section {flow, analysis, navigation, reformat} ?

My preferred is Curve orthogonal navigation.

Would it need a complete change in file names and class names ? Or just self.parent.title ?

Last, I think it’s better to change everything before the pull request.

Yes, name change is quite invasive (module name, folder name, class name, various file names), so let’s finalize that before the pull request.

Slicer can do actual vascular navigation (with electromagnetically tracked catheters, using SlicerIGT extension), so I would reserve “navigation” word for that. It would also limit the module’s purpose to only navigate/view, and not to do any quantification or analysis.

I think flow is too restrictive (the tool can be used for things that don’t flow, such as bones, nerves, …).

Reformat and analysis both sound OK. Analysis may be better if we want to add more features not just reformat. For example defining points along the curve and measure distances between those points, computing optimal C-arm rotation angles (see requirements here), measuring cross-section area, minimum/maximum radius (not just circular cross-section area), finding position of minimum/maximum diameter cross-sections, etc.

If we use “analysis” as last word then then I think only the “Cross-section” prefix would work with it (“Curve orthogonal analysis” would be a bit too confusing, and “Curve analysis” would be too general).

So, from the proposed combination, “Cross-section analysis” seems to be the most appropriate name. It is a bit broad, but the module will eventually do more than just position/orient slice view.

OK, I’ll rename as such and do the pull request.

Good evening, the module sounds fantastic, is it already in the Slicer module menu? good night

No, it is still being worked on in a pull request.

A post was split to a new topic: How to make my module available in the Extension manager?