Releases: swyddfa/arlunio
v0.9.2 - 2019-01-07
Changed
- Most commonly used objects have been imported into the top level namespace.
This means that it is now possible to write code like the following.
import stylo as st
black = st.FillColor()
circle = st.Circle(fill=True)
image = st.SimpleImage(circle, black)
-
The way stylo has been packaged has been changed. It now comes with a couple
of "extras". Instead of requiring dependencies for everything, the default
installation now only contains the packages that are absolutely required to
run stylo.The other dependencies have been split into a couple of extras
testing
: The dependencies required to import items from thestylo.testing
package.jupyter
: Dependencies required to use stylo interactively in a jupyter notebook.
v0.9.1 - 2018-12-27
There are no changes.
This was a test release to ensure that the conversion to poetry and the changes to travis are working as intended
v0.9.0 - 2018-11-11
Added
-
New
stylo.math
module! Currently it contains alerp
function to do linear implementation between two valuesa
and
b
-
New
stylo.design
module! This is the start of the "next level" in
styo's API abstracting away from the lower level objects such as shapes and
colormaps.-
This module adds the notion of a parameter group, this is a collection of
values that can be passed into functions as a single object using the
dictionary unpacking syntax (**params
)Parameter groups are defined using the
define_parameter_group
function and taking a name and a comma separated string of parameter names.
There is alsodefine_time_dependent_parameter_group
that can be
used to define a parameter group that depends on time.Currently there are two pre-defined paramters groups,
Position
and
Trajectory
. They both combine thex
andy
values
into a single object, with the second being the time dependent version of
the first.Finally there are two built-in implementations of these parameter groups.
StaticPosition
andParametricPosition
the first takes two
values and returns them. The second takes two functions in time and calls
them at each supplied time value.
-
v0.8.0 - 2018-11-07
Added
- New
Timeline
system! This finally introduces explicit support for animations tostylo.
🎉
v0.7.0 - 2018-10-25
Added
- New
Line
shape! - New
ImplicitXY
shape! Draw any curve that is implicitly defined by a
functionf(x, y)
Changed
- The
Circle
andEllipse
shapes now take more arguments. By
default the shapes will now draw an outline rather than a filled in shape.
v0.6.1 - 2018-10-20
Added
- New
preview
keyword argument to images, set this toFalse
if
you don't want a matplotlib figure returned. - New
encode
keyword argument to images, setting this toTrue
will return a base64 encoded string representation of the image in PNG format.
Fixed
- Preview images are no longer displayed twice in jupyter notebooks
- Preview images no longer display the x and y axis numbers.
v0.6.0 - 2018-10-07
Added
Users
- New
Triangle
shape - Shapes can now be inverted using the
~
operator.
Contributors
- Added new shape
InvertedShape
which handles the inversion of a shape
behind the scenes. - Tests for all the composite shapes and operators.
- More documentation on how to get involved
Changed
Users
- Shapes now have defined
__repr__
methods, including shapes that have
been combined, where a representation of a tree will be produced showing how
the various shapes have been combined together. - Preview images in Jupyter notebooks are now larger by default
Contributions
This release of stylo
would not have been possible without contributions from the following awesome people!
v0.5.0 2018-09-27
Added
Users
- New Image object
LayeredImage
object that can now draw more
than one object - Added an introductory tutorial for first time users to the documentation
- Functions from the
stylo.domain.transform
package can now be applied
to shapes, meaning that most images can now be made without handling domains
directly.
Contributors
- Added a
Drawable
class, this allows a domain, shape and colormap to
be treated as a single entity. - Added a
render_drawable
function that takes a drawable and some
existing image data and applies it to the data. - Added a
get_real_domain
function that given a width, height and scale
returns aRectangularDomain
with appropriate aspect ratio,
:math:(0, 0)
at the centre of the image and the scale corresponding to the
interval :math:[ymin, ymax]
- We now make use of the
[scripts]
section ofPipfile
so
running common commands is now easier to rememberpipenv run test
: to run the test suitepipenv run lint
: to lint the codebasepipenv run docs
: to run a full build of the documentationpipenv run docs_fast
: to run a less complete but faster build of
the documentation.
Changed
Users
- Altered
SimpleImage
to no longer take a domain, reducing the
cognitive load on first time users. It now instead takes an optional
scale
variable to control the size of the domain underneath. This
also means that the domain now automatically matches the aspect ratio of the
image so no more distortion in non-square images.
Contributors
- The tests now take advantage of multi-core machines and should now run much
faster - Building the docs now takes advantage of multi-core machines and should now
run much faster.
Fixed
Contributors
- Fixed crashes in
exampledoc.py
andapidoc.py
for first time
users - Fixed issue with
sed
on a Mac for people running the
devenv-setup.sh
script
This release of stylo
was brought to you thanks to contributions from
the following awesome people!
v0.4.2 - 2018-09-17
Added
Image
objects can now take asize
keyword argument to adjust the size of the matplotlib preview plots
v0.4.1 - 2018-09-17
Fixed
- Fixed an issue with
setup.py
that meant most of the code wasn't published to PyPi!