visit-dav / summer-projects

A place to manage activity on summer projects
1 stars 0 forks source link

Identify some supporting STL tools #17

Closed markcmiller86 closed 2 years ago

markcmiller86 commented 2 years ago

.STL is a likely file format in this world. We are going to need some STL tools.

  1. One I know we need for sure is something that splits an .STL file into multiple .STL files. Now, to be clear, for VisIt it does not need to split an STL object in the way splitting appears to be discussed fairly broadly in .STL community. In that community, the goal appears to be to slice the .STL file with one or more planes producing multiple, independent .STL object files, often with the purpose of printing each piece on a 3D printer that is too small to print the whole object. For VisIt, the kind of splitting we need is actually a lot simpiler than that. All we need is to have the object distributed across multiple .STL files (this is what VisIt uses for parallel execution) which may be something a lot closer to cating portions of the input file...literally just snipping the byte stream at arbitrary byte offsets in the file. Now, that won't quite work either because of how .STL files are formatted (a list of verticies followed by a list of faces where each face references the verticies it uses) and because of changes in numbering of the verticies. But, what VisIt needs in the way of splitting of an .STL file is much simpler than many of the tools available out there.
Magicat-0 commented 2 years ago

Would this work? https://slicer.readthedocs.io/en/latest/user_guide/image_segmentation.html#basic-concepts

There are also some options in blender to cut a model and save each part or deactivate a section you select and only work/save that area.

markcmiller86 commented 2 years ago

Would this work? https://slicer.readthedocs.io/en/latest/user_guide/image_segmentation.html#basic-concepts

Possibly. The main releases are just binaries but they do have Windows, macOS and Linux binaries.

And, I finally did find the source code here so we can probably build it on LLNL CZ machines. It looks like it has python modules too and that might be just what we need.

markcmiller86 commented 2 years ago

FYI...am trying to build slicer from source on pascal.llnl.gov. Looks like it needs features in Qt that we don't have enabled by default so I might have to build Qt also and maybe also VTK. The problem with using the binaries is that I don't think they work with TOSS4 OS.

markcmiller86 commented 2 years ago

I am closing this as it is being subsumed by #18