penkit-optimize is a command-line tool for optimizing and visualizing the drawing order of SVG graphics for pen plotting. For more information, see this post.
Installation
This package has a non-Python dependency, libspatialindex. The easiest way to install it is by installing the rtree Python package via Conda:
conda install rtree
Once this is installed, penkit-optimize can be installed via pip:
pip install penkit-optimize
Usage
To see CLI options:
penkit-optimize -h
usage: penkit-optimize [-h] [--greedy] [--noopt] [--runtime RUNTIME]
[--merge-paths [MERGE_PATHS]] [--vis-output VIS_OUTPUT]
input_file [output_file]
positional arguments:
input_file
output_file
optional arguments:
-h, --help show this help message and exit
--greedy, -g Run greedy optimization only.
--noopt, -n Don't run any optimization.
--runtime RUNTIME, -t RUNTIME
Maximum runtime (in seconds) of optimization stage.
--merge-paths [MERGE_PATHS], -m [MERGE_PATHS]
Merge paths that start/end near each other. You may
optionally specify a threshold distance (in document
units) after this parameter.
--vis-output VIS_OUTPUT, -v VIS_OUTPUT
If provided, save a visualization of the path to this
SVG file.
Examples
Generate optimized SVG with default options (up to 5 minute runtime), and save to input-optimized.svg:
penkit-optimize input.svg
Don’t optimize anything, just visualize the transits:
penkit-optimize input.svg -n -v noopt-vis.svg
noopt-vis.svg:
Run greedy optimization (only), save the file, and save a visualization of the result:
penkit-optimize input.svg output.svg -g -v greedy-vis.svg
greedy-vis.svg:
Run the full optimization and write a visualization of the result:
penkit-optimize input.svg output.svg -v opt-vis.svg
opt-vis.svg:
Run the full optimization and merge paths that start/end within 1.5 units:
penkit-optimize input.svg -m 1.5
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 penkit-optimize-0.0.3.tar.gz.
File metadata
- Download URL: penkit-optimize-0.0.3.tar.gz
- Upload date:
- Size: 8.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34b1b129cf8ee5e324f1514483a6e346fb3b345f703f8305f1dbdde89ee08535
|
|
| MD5 |
40e60ea2b4155f0802e0e3070c2637ee
|
|
| BLAKE2b-256 |
a3d0f0c1a5a969a292b5ef4b4473d34c424a4c34b6193006faa039766cc57257
|