A viewer for 3D meshes and constructive solid geometry (CSG) models.
Project description
SCADview
An application to view 3D meshes created from Python.
How it works
SCADview enables a iterative work flow to build Trimesh objects.
- Create a new python file, and
- Write a
create_meshfunction code to build a Trimesh object. - Run SCADview on the command line via:
scadview - Load the Python file into SCADview.
- SCADview shows you the mesh. You can move the camera around to inspect your mesh.
- Edit your Python file to modify your mesh.
- Reload and view the modified mesh.
- Repeat the edits and reloads.
Getting Started
Installation
Open your terminal application
for example cmd in Windows
or Terminal.app under Applications > Utilties > Terminal.app in macOS.
In the terminal, check that you have Python 3.11 or greater via
python --version
or, if the python command cannot be found:
python3 --version
If Python 3.11 or greater is installed on your system, you can install SCADview directly into your system.
Virtual venv option
As is always a good practice, set up a Python virtual environment and activate it:
Install Trimesh
First install Trimesh so you can script your 3d models (if using a virtual environment, activate it first):
pip install trimesh
Trimesh has optional modules you can add.
Read its docs to determine which ones will help you most.
Install SCADview
To install, SCADview run
pip install scadview
If you already have a project using Trimesh set up, install scadview into that project instead and install there.
Running
To run: scadview
The first time you run, it can take some time to set up the user interface, and so it may take longer than when you run it in future runs.
A splash screen may show on startup.
If it is not available,
you will see a message in the terminal output:
WARNING scadview.ui.splash_window: The splash screen is not available so it will not be shown.
Otherwise, you will see:
{ .md-image width=400 }
Once it has initialized, you should see the main user interface:
{ .md-image width=700 }
Notice that your terminal shows output from the scadview module.
Loading in your model
Using a code editor, create a file with the following python code:
from trimesh.creation import icosphere
def create_mesh():
return icosphere(radius=40, subdivisions=3)
Notice that you don't need to import the scadview package.
Save the file:
- If you did not create a virtual environment, you can save it anywhere on your system.
- If you installed in a virtual environment, save your file in that folder.
Use the Load button on the SCADview UI to load the file.
You should see a sphere!
Modify and reload
Now change the subdivisions parameter in your code to 2:
from trimesh.creation import icosphere
def create_mesh():
return icosphere(radius=40, subdivisions=2)
Click Reload. You should see an updated sphere with fewer triangles.
Export
Once you are happy with your mesh, you can export it for 3d printing or for loading other 3d software.
- Click the
Exportbutton. - Choose a format.
- Click Save.
The Export dialog may look different on your computer.
Versioning
SCADview follows Semantic Versioning 2.0.0.
In short: MAJOR versions for incompatible API changes, MINOR for backward-compatible
features, and PATCH for backward-compatible bug fixes. While the major version
is 0, we may introduce breaking changes in minor releases.
📜 License
SCADview is open-source software licensed under the Apache License, Version 2.0.
You are free to use, modify, and redistribute this software — including in commercial applications — provided you include the license text above and retain copyright notices.
⚠️ Disclaimer
SCADview is provided “as is”, without warranty of any kind. It is intended for visualization, analysis, and experimentation purposes. It is not designed for safety-critical, medical, or certified manufacturing applications. Use at your own discretion.
🏷️ Name and Branding
The name SCADview and its associated logo are trademarks of Neil Lamoureux.
While you are free to fork and modify the code under the Apache License,
you may not use the name SCADview to promote or distribute modified versions
without prior written permission.
Please choose a distinct name for derivative works (e.g. “YourTool, based on SCADview).
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file scadview-0.2.3.tar.gz.
File metadata
- Download URL: scadview-0.2.3.tar.gz
- Upload date:
- Size: 24.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b8bc6d8cb417e7cfcaa9440439c7c9fde8d5dc19c550d421bab7ec0794e964e3
|
|
| MD5 |
73d9cc9e90f4e0edc56463aa9f206853
|
|
| BLAKE2b-256 |
c0e527c4cb582dc27eefdc1daad77f8838bb5591bb89e1e587db75e2ed82d119
|
File details
Details for the file scadview-0.2.3-py3-none-any.whl.
File metadata
- Download URL: scadview-0.2.3-py3-none-any.whl
- Upload date:
- Size: 701.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5be4ad57eba9be6e49b3eb23a90f5c97b04dc6472144d1df279a622cc324f8f2
|
|
| MD5 |
5e28d755503a4b3ad9a8c6a9f382265b
|
|
| BLAKE2b-256 |
a4285a4b93c98cb2411779229ac5d5c8b0a81e6ad2782f5e1313e06b18b08b91
|