PlotDevice is a Macintosh application used for computational graphic design. It provides an interactive Python environment where you can create two-dimensional graphics and output them in a variety of vector, bitmap, and animation formats. It is meant both as a sketch environment for exploring generative design and as a general purpose graphics library for use in external Python programs.
PlotDevice scripts can create images from simple geometric primitives, text, and external vector or bitmap images. Drawing commands provide a thin abstraction over macOS's Quartz graphics engine, providing high-quality rendering of 2D imagery and powerful compositing operations.
PlotDevice is a fork of NodeBox 1.9.7rc1 with support for modern versions of Python and Mac OS.
The new version features:
- Runs natively on Intel and Apple Silicon and supports retina displays
- Python 3 only (including a bundled 3.10 installation in the app)
- images can now be exported in HEIC format and videos support H.265 (HEVC)
- SVG files can now be drawn to the canvas using the
image()command (thanks to the magical SwiftDraw library) - image exports have a configurable
zoomto create 2x/3x/etc ‘retina’ images - revamped
var()command for creating GUIs to modify values via sliders, buttons, toggles, etc. - updated text editor with multiple tabs, new themes, and additional key-binding modes emulating Sublime Text and VS Code
- the module's command line interface is now accessible through
python3 -m plotdevice - the command line tool has a new
--installoption to download PyPI packages for use within the app - document autosaving is now user-configurable
- Bugfixes and misc. improvements detailed in the changelog
Version 0.9.5 added:
- Python 3 compatible
- Can now be built with system Python or Homebrew versions of the interpreter
- Much faster import times on Yosemite thanks to a bundled copy of PyObjC 3.0.4
- HTTP is now handled by the
requestsmodule and caches responses locally - Totally revamped typography system with support for OpenType features, pagination, multi-column text, character geometry, and more
- Added 130+ unit tests (run them with
python setup.py test) plus bugfixes for formeasure(),textpath(),Bezier.fit(),read(), and the Preferences dialog
Version 0.9.4 added:
- Enhanced command line interface.
- New text editor with tab completion, syntax color themes, and emacs/vi bindings.
- Video export in H.264 or animated gif formats (with GCD-based i/o).
- Added support for external editors by reloading the source when changed.
- Build system now works with Xcode or
py2appfor the application andpipfor the module. - Virtualenv support (for both installation of the module and running scripts with dependencies).
- External scripts can use
from plotdevice import *to create a drawing environment. - Simplified bezier & affine transform api using the python ‘with’ statement
- New compositing operations for blend mode, global opacity, and dropshadows
- Simplified typography commands with stylesheet-based character styles
- Now uses the system's Python 2.7 interpreter.
Requirements:
- Mac OS X 11+
- Python 3.6+
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file plotdevice-1.0.0.tar.gz.
File metadata
- Download URL: plotdevice-1.0.0.tar.gz
- Upload date:
- Size: 404.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
833e0ec5e3b4cdfcacd887827ae932d75fd52dc3cb8b36dc9ee48d6cd7e11050
|
|
| MD5 |
e6ddd4bf854cc32ec75e4da25fdeeeda
|
|
| BLAKE2b-256 |
38b0761e2632d53ab1db2281ea71f8a2165533fcb5aa02a5bd3fb8a6f5e8d8e0
|