Skip to main content

Convert a STL file into a 3D mask.

Project description

STLtoMask

Table of Contents

Overview

Create a 3D image based off of an STL file and user defined spacing. Additional, options exist for rotating the mesh, adding a 3MF file to create a "color-intensity" on the surface of the image, and flipping the image and mesh along the vertical axial plane.

The script produces 2 files: 1) Metaimage file for the image, 2) STL file just incase any rotations/flips were added (makes this file even if nothing was changed from the original STL file).

Notes:

  • The spacing must be integeres, even if floats are input they will be converted.
  • Adding a 3MF file will greatly increase the computation time depending on mesh size ~ 30 minutes for 1 million points.

Features

Converts STL file to a 3D image.

Options:

  • Add 3MF file to transfer mesh color to surface insensity on the image.
  • Allows mesh rotation before image creation.
  • Flip image/mesh before output along the vertical axis in the axial plane.

Installation

Using pip:

pip install StlMaskConverter

Usage

To run the module, use the following command:

usage: converter.py [-h] -i INPUT -o OUTPUT -s SPACING [SPACING ...] [-m THREE_MF] [-r ROTATION [ROTATION ...]] [-f]


optional arguments:
  -h, --help            show this help message and exit
  -i INPUT, --input INPUT
                        STL file
  -o OUTPUT, --output OUTPUT
                        Directory to output mask and STL if edited
  -s SPACING [SPACING ...], --spacing SPACING [SPACING ...]
                        Output mask spacing in mm example [1, 1, 1]
  -m THREE_MF, --three_mf THREE_MF
                        3mf file needed for adding intensity to mask
  -r ROTATION [ROTATION ...], --rotation ROTATION [ROTATION ...]
                        Rotation in dictionary form indicating order ex: {yxz: [10, 30, 0}, meaning rotate y=10 degrees then x=30 degrees
  -f, --flip            Flips axial plane along the vertical line

Example

python converter.py -i '\stl_filepath' -o 'output_dir' -s 1 1 1 -m '\3mf_filepath' -r xyz 10 20 30.1 -f False

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

STLtoMask-0.10.tar.gz (19.9 kB view details)

Uploaded Source

Built Distribution

STLtoMask-0.10-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file STLtoMask-0.10.tar.gz.

File metadata

  • Download URL: STLtoMask-0.10.tar.gz
  • Upload date:
  • Size: 19.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for STLtoMask-0.10.tar.gz
Algorithm Hash digest
SHA256 bdfd368c8c2a95dc21f68ef87c83cb8d9b511800aea3c1f758a1d22c08a14d65
MD5 1c1e870bea38b6a379acc258869bc45d
BLAKE2b-256 5eaf5465a62f32315c4a2f2db5f3e30f0e7d9eeebda51e3dfd9a7469b5bee8bb

See more details on using hashes here.

File details

Details for the file STLtoMask-0.10-py3-none-any.whl.

File metadata

  • Download URL: STLtoMask-0.10-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for STLtoMask-0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 219350fcff9cec53843413b4318f3b8fab6f85bc5ee20de5be8862802a1fdee1
MD5 620b7d13e41b01644fc1a1e2b82bb661
BLAKE2b-256 ec24839347790a5d80b5d70ffaf75b76d072e0d380a2cefe35db0ad12ddf1f07

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page