a replacement to lamination builder that uses manim instead of the browser
Project description
WORK IN PROGRESS -- THE FEATURES NOT USED IN THE EXAMPLE DON'T WORK YET
This is a re-implementation of lamination-builder that runs in python without dependencies on a browser and focusing on convenient generation of figures. Instead it uses Manim, and which has several dependencies.
The input format is as follows: A list of laminations to be placed in the figure (tilling is a best effort left to right and top to bottom Placemen based on a 16:9 screen). The blank lamination is permited.
Each lamination may have of the following fields: polygons, chords (must be a list of lists of length two), point_lables, point_colors ("*" for default color which defaults to red), and points. Omissions in each field will be filled based on the fields that proceed it in the list above. Each lamination must have a "radix" which is the base.
Example:
[
{
polygons:[["_001","_010","_100"]],
chords:[["_1","2"]],
points: ["3"],
radix: 4
},
{
"polygons": [["0_003", "0_030", "0_300"],
["1_003", "3_030", "3_300"],
["2_003", "2_030", "2_300"],
["3_003", "1_030", "1_300"]],
"chords": [],
"points": [],
"radix": 4
},
{ radix: 4}
]
Installation: (correct python packaging is on the TODO list)
Please refer to to manim's installation instructions. It and its dependencies are required, with the possible exception of tex.
pip install manim json json5
git clone https://github.com/ForrestHilton/python-lamination-builder
Add the project to you PYTHONPATH in a settings file, if you wish to import the python files.
Usage:
/path/to/python-lamination-builder/main.py file.json
Feature requests will be entertained. I have yet to see a need for any of the following features: mapping forward, pull backs, automatically placing descriptions or tittles at the top. This is intended to be used in combination with other tools like latex and your own python scripts. I hope this is a reasonable API.
example output from my research
License
Licensed under the The AGPLv3 License (AGPLv3) Copyright (c) 2023 Forrest M. Hilton forrestmhilton@gmail.com You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file manim_lamination_builder-0.2.0.tar.gz
.
File metadata
- Download URL: manim_lamination_builder-0.2.0.tar.gz
- Upload date:
- Size: 47.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11634ee2ae2b0bccc61bba15eed20cb454436edca6f2a1b0d363605d3c2d3f72 |
|
MD5 | 5a7e1b31e30b0b1e76e3994f3292a2d4 |
|
BLAKE2b-256 | bc79444113f0f6e1bc692b99f1b7b225d795d6785208b37b51f1c81ee79c17b6 |
File details
Details for the file manim_lamination_builder-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: manim_lamination_builder-0.2.0-py3-none-any.whl
- Upload date:
- Size: 38.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57a9c5d4788c313bf57011e46ef2ce0b163b59a546ed9c6a38c465428027474f |
|
MD5 | d8e0fe303d3dc14c457938c20bfe06c7 |
|
BLAKE2b-256 | 49b2be9e34bfd45009c1c19efb15e1e83ebcd034c2ce6e4eaee34e0eafff451c |