Quick simulation of arbitrary rulesets for nearest-neighbour cellular automata. Uses scipy.ndimage.correlate, and can export videos via ffmpeg-python.
Project description
Cellular Automata Simulator
Uses numpy
and scipy.ndimage
to quickly simulate arbitrary rulesets for nearest-neighbours cellular automata. Can
generate videos and images of the results via ffmpeg-python
and pillow
.
Usage example:
import gameoflife_ndimage.simulation as sim
from gameoflife_ndimage.video import Recorder
if __name__ == '__main__':
rules = sim.Rules2D.classic()
size = (256, 256)
draw_params = sim.DrawParams(dead_color=[0, 0, 0], alive_color=[255, 255, 255], resize_factor=4)
state = sim.State2D.random(rules, size)
input_wh = tuple(a * draw_params.resize_factor for a in state.wh)
recorder = Recorder(
framerate=5,
input_wh=input_wh,
output_path="output/gol_classic_{}x{}_from_random.mp4".format(*size),
)
state.run_and_record(100, draw_params, recorder)
recorder.close()
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
Close
Hashes for gameoflife_ndimage-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 52e15a3607621268db8a56b0f072578a1164556f4c2824d7b156332846b50f41 |
|
MD5 | 4ede4a606a74c114669f86a542e9e3cf |
|
BLAKE2b-256 | 704bc0eb0cd1ec99edc6efdee3e47f5be19019e634cac44758a1347a67af8f8b |