# alcarney/stylo

Creating Images using a blend of Python and Maths
Switch branches/tags
Nothing to show
Latest commit 5a21900 Nov 11, 2018
 Failed to load latest commit information. docs Oct 30, 2018 img Oct 4, 2018 scripts Oct 30, 2018 stylo Nov 11, 2018 tests Nov 11, 2018 .coveragerc Sep 26, 2018 .gitignore Nov 11, 2018 .pre-commit-config.yaml Sep 13, 2018 .travis.yml Oct 5, 2018 CHANGES.rst Nov 11, 2018 LICENSE Aug 10, 2018 MANIFEST.in Aug 3, 2017 Pipfile Nov 5, 2018 Pipfile.lock Sep 22, 2018 README.md Oct 20, 2018 Untitled.ipynb Oct 20, 2018 Untitled1.ipynb Oct 20, 2018 requirements.txt Aug 20, 2018 setup.cfg Oct 25, 2018 setup.py Nov 6, 2018 tox.ini Nov 5, 2018

# Stylo

Project
Code
PyPi

Stylo is in early development, while it is useable we cannot make any stability guarantees.

Stylo is a Python library that allows you to create images and animations powered by your imagination and a little mathematics. While mathematics is very much at the core you do not have to be a mathematician to use it!

For example here is a simple image of a boat that can be made with just a few lines of Python

```  from stylo.image import LayeredImage
from stylo.color import FillColor
from stylo.shape import Circle, Rectangle, Triangle
from stylo.domain.transform import translate

# Let's define some colours
black = FillColor("000000")
seablue = FillColor("0000ff")
white = FillColor("ffffff")
yellow = FillColor("ffff00")
red = FillColor("dd2300")

# Now for the shapes we will draw
sun = Circle(-7, 3.4, 1.5)
sea = Circle(0, -55, 55)
sails = Triangle((0.1, 0.6), (2.5, 0.6), (0.1, 3.5)) | Triangle((-0.1, 0.6), (-1.5, 0.6), (-0.1, 3.5))
boat = Rectangle(0, 0, 3.5, 1) | Triangle((1.75, -0.5), (1.75, 0.5), (2.25, 0.5))
mast = Rectangle(0, 2, 0.125, 3)

# Move some into position
boat = boat >> translate(0, -2)
sails = sails >> translate(0, -2)
mast = mast >> translate(0, -2)

# Finally let's bring it all together
image = LayeredImage(background="99ddee", scale=8)

image(1920, 1080, filename="docs/_static/examples/a-boat.png");```

## Installation

Stylo is available for Python 3.5+ and can be installed using Pip:

`\$ pip install stylo`

Be sure to check out the documentation (under construction) for details on how to get started with stylo.

## Contributing

Contributions are welcome! Be sure to checkout the Contributing section of the documentation to get started.

Note: While `stylo` itself supports Python 3.5+, due to some of the development tools we use you need to have Python 3.6+ in order to contribute code to the library. Other versions of Python work just as well if you are looking to contribute documentation.