Skip to main content

A general-purpose programmatic animation tool

Project description

Morpho

A general-purpose programmatic animation tool

Features

  • Animate basic figures like Points, Paths, Polygons, Splines, Images, and Text
  • Helper functions to build more complex composite figures like grids
  • Tools for quickly creating custom figures that animate in precisely specified ways
  • Multiple tweening options and the ability to define custom tweens
  • Apply custom transformations to figures to create complex patterns
  • Support for multiple layers each with its own independent dynamic camera
  • Ability to use layers as masks for other layers
  • Color gradients, both as fills and as color gradients along paths
  • Some primitive 3D animation capability
  • Preview animations along with the ability to locate positions on screen with a click
  • Export animations as MP4, GIF, and PNG sequences at arbitrary framerates and resolutions
    • (Note: FFmpeg required to create MP4s, and Gifsicle required to make small size GIFs)

Installation

Morpho works on Python 3.6 or higher and requires Pycairo to run. For Windows users, Morpho and all its basic dependencies, including Pycairo, should be installable via a simple pip command:

pip3 install morpholib

Installation on other platforms has not been well-tested, unfortunately, and does not appear to be as straightforward. For now, I think the best method is to first see if you can install Pycairo separately (for instructions on how to do so, see this), test that the Pycairo installation is working, and then attempt to install Morpho via the above pip command.

Softer requirements

If you want to export animations as MP4s or small-sized GIFs, you will need to install FFmpeg for MP4 and/or Gifsicle for GIF. But if that doesn't matter to you (or if you just want to try out Morpho), you can still preview animations and export them as PNG sequences and large-sized GIFs just using the base installation of Morpho.

Please note that FFmpeg and Gifsicle will need to be added to your PATH environment variable for Morpho to be able to access them by default.

Testing the installation

To see if it installed correctly, try running the following Python code:

import morpholib as morpho
morpho.importAll()
morpho.sample.play()

If you see an animation of a morphing grid appear on your screen, congratulations! Morpho should be installed and working properly.

License

This project is licensed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

morpholib-0.3.0a1.tar.gz (148.0 kB view details)

Uploaded Source

Built Distribution

morpholib-0.3.0a1-py3-none-any.whl (156.7 kB view details)

Uploaded Python 3

File details

Details for the file morpholib-0.3.0a1.tar.gz.

File metadata

  • Download URL: morpholib-0.3.0a1.tar.gz
  • Upload date:
  • Size: 148.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.1

File hashes

Hashes for morpholib-0.3.0a1.tar.gz
Algorithm Hash digest
SHA256 e978eadbadb130e1eb8eda75641715dce917127dcae99ac7465d42e3c132a18f
MD5 d357471a78368b26ec745a9518e67568
BLAKE2b-256 cfa0121f7c125f696fdbe250db43514337cc03e470322980255b4a5239420108

See more details on using hashes here.

File details

Details for the file morpholib-0.3.0a1-py3-none-any.whl.

File metadata

  • Download URL: morpholib-0.3.0a1-py3-none-any.whl
  • Upload date:
  • Size: 156.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.1

File hashes

Hashes for morpholib-0.3.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 cdc58d9e83cce8bbb3b0e938c63a29527f09235b3bb41bef18ac8b76862c16c3
MD5 e7b864cf10ff32be6b1810d73a69cc0e
BLAKE2b-256 c0909624ff28e05742e8b55d3ad65faa518acb71d6cfeccc07923d0bb51290ed

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page