Markup annotations in Open Anatomy Export

Is conceivable that glTF export functionality of Open Anatomy can support Markups?

Embedding models/segmentations in 3Dviewer.net is great, but occasionally one needs annotations (landmarks, labels etc) as well. Are there any alternative solutions for that?

They could be exported as static geometry. Maybe the easiest and most general would be to have an option in Slicer to convert Markups to Models and then they would export automatically to glTF.

Ä° tried markups to models extension, but unfortunately text labels are not converted. Also essentially all you can do curves or lines, which can be acceptable for callouts, but lack of labels is a concern.

Can you do labels well in that 3D viewer? We could export polygon text but I believe they won’t orient towards the camera (“billboard” mode) like they do in Slicer.

No idea, haven’t gone that far. Know other free viewers that handles text?

It would be doable with vtkjs. I haven’t seen it done exactly, but it should be pretty straightforward… Now that OHIF-v3 has really nice vtkjs-based slice rendering it could be a good time to consider what it would take to build on it make a web viewer that has more Slicer-like functionality.

1 Like

The important trick (for me at least) is being able to run this without requiring a dedicated website. I really love 3Dviewer.net’s passthrough URL functionality. For example I cannot maintain a publicly accessible website, but I can post data somewhere on the cloud with a sharable URL…

Would it be possible to do that with vtkjs?

Yes, all that can be done with vtk.js and with ohif.

There’s definitely programming required to make it just the way we want it.

1 Like

Could you post such a link and what input would you use?

We might be able to build on this: Kitware Glance

Sample data from SlicerMorph SampleData/baboon.gltf at master · SlicerMorph/SampleData · GitHub

You just turn into a link like this:

https://3dviewer.net/index.html#model=https://github.com/SlicerMorph/SampleData/blob/master/baboon.gltf

this is from the open anatomy extension tutorial by the way.

1 Like

It looks promising, but when I tried to load MRHead.nrrd I didn’t get anything, and I couldn’t figure out how to turn on 3D rendering… Not sure if it is a browser thing (firefox).

3dviewer.net supports picking: if you click on a part then its name is highlighted in the mesh tree. Therefore, additional labels may not be necessary.

If you want to add labeled points then the OpenAnatomy exporter could be very easily enhanced to export each markup point as a separate small sphere. If you click on the small sphere then you can see its label in the mesh tree.

Thank you! I will try that. Do we currently have UI driven method to export markups to spheres? (I don’t think Markups to Models module do that).

I don’t think there is a function to export each markup point to a separate sphere model node, but it should be easy to write a short script for it (using a vtkSphereSource, similarly to this example).