Metadata-Version: 2.1
Name: plotink
Version: 1.4.2
Summary: Helper routines for use with plotters
Home-page: https://github.com/evil-mad/plotink
Author: Evil Mad Scientist Laboratories
Author-email: contact@evilmadscientist.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 5 - Production/Stable
Classifier: Natural Language :: English
Classifier: Intended Audience :: Developers
Requires-Python: >=3.6.0
Description-Content-Type: text/markdown
Provides-Extra: dev
Provides-Extra: test
License-File: LICENSE

# plotink
Python helper routines for driving AxiDraw, EggBot, WaterColorBot, and similar plotter-based machines.

Source code and issue tracker are hosted [at github](https://github.com/evil-mad/plotink).


## Installation

Releases are available [on PyPI](https://pypi.org/project/plotink/).

To install the latest release, use `pip install plotink`


## Overview

These library files are intended to provide a single place to edit routines that are common to the [EggBot extensions for Inkscape](https://github.com/evil-mad/EggBot/), the [WaterColorBot extensions for Inkscape](https://github.com/evil-mad/wcb-ink/), the [AxiDraw extensions for Inkscape](https://github.com/evil-mad/axidraw/), and derivative machines. Hosting these in a single place means less duplication of code, and (more importantly) reduces the number of cases where identical code changes need to be made in multiple places.

The library files are:

* ebb_serial.py - General routines for communicating with the EiBotBoard by USB serial.
* ebb_motion.py - Motion-related routines for interacting with the robot.
* plot_utils.py - Additional helper functions for managing plots and their data.
* text_utils.py - Additional helper functions for managing text.


## Python version support

Latest version requires Python 3.6 or newer.

A previous release, [Plotink version 1.0.1](https://pypi.org/project/plotink/1.0.1/), supports python 2.7 as well.

## Logging

This library uses the standard python logging module. Suggested configurations follow.

For stand-alone machine control, print info, warnings, and errors to stdout:

```
import logging

logging.basicConfig(level=logging.INFO, format='%(message)s')
```

For running as an Inkscape extension, print errors to Inkscape's extension errors log:
```
import logging

logging.basicConfig(level=logging.ERR,
        format='%(message)s'),
        filename = "~/.config/inkscape/extension-errors.log")
```


