Render Stl Png
v0.1.0Render an STL file to a PNG image with a solid color using a deterministic software renderer and adjustable 3D perspective parameters.
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name/intent (render STL → PNG) lines up with shipped code: a pure-Python software rasterizer and a small wrapper. No unrelated credentials, binaries, or external services are requested.
Instruction Scope
SKILL.md and the scripts confine actions to: reading the provided STL file, CPU-rendering into an image, and writing the output PNG. The instructions do not request system-wide config, other files, or remote endpoints.
Install Mechanism
There is no formal install spec, but the included bash wrapper creates a virtualenv under $XDG_CACHE_HOME or ~/.cache and runs pip install pillow. This implies network access to PyPI at runtime; pillow is a common dependency, but the behavior should be noted.
Credentials
The skill requires no environment variables, credentials, or config paths. The only environment interaction is using XDG_CACHE_HOME/$HOME for the venv — which is reasonable for caching a virtualenv.
Persistence & Privilege
The wrapper will create a persistent virtualenv under the user's cache directory and install packages into it. The skill does not request elevated privileges, is not always-enabled, and does not modify other skills or system-wide agent settings.
Assessment
This skill appears to do exactly what it claims: a deterministic software renderer that reads an STL and writes a PNG. Before installing/running: (1) Inspect the included Python script if you want to be certain — it will execute arbitrary Python on any file path you provide. (2) Be aware the wrapper will create a virtualenv in your cache directory and run pip to download and install pillow from PyPI (network access). If you prefer tighter control, run the renderer in an isolated environment (container or dedicated venv) or install the pillow dependency yourself and invoke the Python script directly.Like a lobster shell, security has layers — review code before you run it.
latest
render-stl-png
Render an STL to a PNG from a nice, consistent 3D angle ("Blender-ish" default perspective) with a solid color.
This is a deterministic software renderer:
- No OpenGL
- No Blender dependency
- Uses a simple camera + z-buffer + Lambert shading
Inputs
- STL file path (ASCII or binary)
- Output PNG path
Parameters
--size <px>: image width/height (square), default1024--bg "#rrggbb": background color, default#0b0f14--color "#rrggbb": mesh base color, default#4cc9f0--azim-deg <deg>: camera azimuth around Z, default-35--elev-deg <deg>: camera elevation, default25--fov-deg <deg>: perspective field of view, default35--margin <0..0.4>: framing margin as fraction of view, default0.08--light-dir "x,y,z": directional light vector, default-0.4,-0.3,1.0
Usage
One-shot
python3 scripts/render_stl_png.py \
--stl /path/to/model.stl \
--out /tmp/model.png \
--color "#ffb703" \
--bg "#0b0f14" \
--size 1200
Wrapper (recommended)
The wrapper creates a cached venv (so pillow is available) and runs the renderer.
bash scripts/render_stl_png.sh /path/to/model.stl /tmp/model.png --color "#ffb703"
Notes
- This is meant for marketing/preview images, not photorealism.
- If you need studio lighting / materials, use Blender — but this gets you 80% quickly and reproducibly.
Comments
Loading comments...
