Coder Social home page Coder Social logo

rigidori-animation's Introduction

Rigid Origami Animation Tool

GitHub release (latest SemVer including pre-releases)

The repository contains a package to create vtk files for rigid origami animation.

The current version supports:

  • Single crease fold (a)
  • Miura-ori (b)
  • Single-orbit Hexagonal-triangular Resch (c)
  • Triangular startuck (d)

Supported origami types

List of packages

  • ori-anim: Exports animation of selected rigid origami

Requirements

  • Python 3.10.x
    • NumPy
    • Matplotlib
    • SciPy
    • tqdm
  • ParaView 5.8 (Download from here. The latest version is 5.11, but runs slow on laptop and requires powerful machine)

Usage

Generate 3D geometry file

In root directory of the project, run the program with origami type specified (ori_type), e.g., for Miura-ori,

python -m ori-anime run --ori_type miura

or

python3 -m ori-anime run --ori_type miura

For single crease fold, Resch, and startuck, give "crease", "resch", and "startuck" respectively, instead of "miura".

Without other arguments, the program generates vtk files with default parameters. To define geometry, number of data points, and other options, see

python -m ori-anime run -h

or

python3 -m ori-anime run -h

Clean previous results

To clean all previous results (vtk_*/ directories and zip files) in the root directory, run

python -m ori-anime clean

or

python3 -m ori-anime clean

Setting up environment

Install Python

There are several different ways to install Python (for Mac and Linux, Python might be pre-installed and comes with OS).

  1. Install with installer (Python official website)
  2. Install with Python distribution (e.g., Anaconda)
  3. Install with package manager (e.g., homebrew for Mac, apt for Debian/Ubuntu)
  4. Install with version control tool (e.g., pyenv)

After installation, open terminal (e.g., PowerShell for Windows, Terminal for Mac and Linux) and run

python --version

or

python3 --version

Make sure that it returns Python 3.10.*.

Install required packages

To install packages, with pip

python -m pip install numpy matplotlib scipy tqdm PyQt5

or

python3 -m pip install numpy matplotlib scipy tqdm PyQt5

If the environmental path and alias are set for pip, simply

pip install numpy matplotlib scipy tqdm PyQt5

With Anaconda, either use GUI or

conda install numpy matplotlib scipy tqdm PyQt5

Author

  • Yasuhiro Miyazawa (Dept. of Aero. & Astro., UW)
  • Ted Chang (Dept. of Aero. & Astro., UW)

rigidori-animation's People

Contributors

yrmiya avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.