physarumAdv / Physarum_Three.js

Growth visualizer for clever mould Physarum Polycephalum using three.js and node.js libraries

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Physarum_Three.js

Codacy Badge

This is a visualizer for Physarum Polycephalum's growth written in JavaScript using THREE.js and Node.js libraries. The visualizer is developed for this simulator.
You can also visit this project on a website: pavTiger.silaeder.ru

Visualizer

There are two visualization modes:

  • Offline: Show a precalculated growth simulation

  • Online: If a simulator is working then it will show live growth.

Physarum Polycephalum

In nature, this is a mold that minimizes energy on growth process and food transfer. This way it builds the shortest, and most optimal paths between points.

It is an experiment made by a group of Japanese scientists. They grew Physarum on the map of Japan and it successfully reconstructed Japan's road system between cities.

Polyhedron

Currently, we support all convex polyhedrons, but in future we plan to support any .obj 3D model.

Controls

Using controls you can change a variety of parameters like mold's size and color. Moreover, you can control the speed, timeline and a few more parameters in Offline mode

Render mode

As you can notice we have a special tab named "Render". The main purpose is to render a high quality video (.mp4) of the growth, but it is mostly made for us developers, however other users can still use it. When you tick this, website starts sending photos of the current canvas to the server, and later they get merged into a video. This way all renderings are saved on the server and browser doesn't have to merge them.

Installing

This will install all required libraries

npm install node-static fs-extra

Executing

To start Node.js server, hosting visualization on your device run

./start_endless.sh

Authors

Paul Artushkov, pavTiger@gmail.com

Nikolay Nechaev, nikolay_nechaev@mail.ru

Tatiana Kadykova, tanya-kta@bk.ru

Olga Starunova, o.a.starunova@gmail.com

About

Growth visualizer for clever mould Physarum Polycephalum using three.js and node.js libraries

License:MIT License


Languages

Language:JavaScript 99.8%Language:CSS 0.1%Language:Python 0.1%Language:HTML 0.0%Language:Shell 0.0%