GithubHelp home page GithubHelp logo

marialarsson / tsugite Goto Github PK

View Code? Open in Web Editor NEW
407.0 30.0 76.0 141.8 MB

This is the repository of a Tsugite. It is a research prototype of an interactive software that supports the design and fabrication of wood joints.

Home Page: http://www.ma-la.com/tsugite.html

License: Other

Python 92.09% G-code 7.91%
joint wood uist2020 uist interface hci cad cam fabrication

tsugite's Introduction

Tsugite

Interactive Design and Fabrication of Wood Joints

This is the repository related to a paper presented at UIST 2020. It is an interface where you can model a joint geometry in a voxelized design space, and export milling paths for fabrication with a 3-axis CNC-machine.

This software is free for personal use and non-commercial research conducted within non-commercial organizations. If you want to use it for commercial purposes, please contact Kaoru Shigeta ([email protected]).

Environment

It is recommended to use a virtual environment, for example venv.

The following command will install the packages at once.

$ pip install -r requirements.txt

Run Program

After installing the necessary packages, run the application by the following commands.

$ cd setup
$ python tsugite_app.py

Interface

Open a joint by double-clicking anywhere or by pressing the SPACE bar. Edit the joint geometry by pushing and pulling on the faces. Change the orientation and position of the wood components by dragging them. Other properties can be edited in the control panel to the left. Editable properties are summarized in the figure below.

The system performs geometric evaluations in real time and provides graphical feedback accordingly (see a-h below).

In case of an invalid joint, the system also gives suggestions (on the right side). The suggestions consists of up to four valid joint geometries within one edit distance from the current design.

For more details, see the User Interface Wiki (coming soon).

File format *.tsu

*.tsu is a unique file format for this application. This file my_joint.tsu is provided as an example. You can save and open *.tsu files from the menu bar in the interface.

Fabrication

Set machine origin at the center of the top side of the joint. Insert wood bar a) vertically if the sliding/fabrication is aligned with the timber axis, and b) horizontally if it is perpendicular to the timber axis.

For more details, see the Fabrication Wiki (coming soon).

Disclaimer

Please note that this is a research prototype and not a consumer-ready product. We cannot provide technical support and we are not responsible for any damage to your fabrication equipment.

Publication

Maria Larsson, Hironori Yoshida, Nobuyuki Umetani, and Takeo Igarashi. 2020. Tsugite: Interactive Design and Fabrication of Wood Joints. In Proceedings of the 32nd Annual ACM Symposium on User Interface Software and Technology (UIST '20). Association for Computing Machinery, Virtual Event, USA.

ACM link: https://dl.acm.org/doi/abs/10.1145/3379337.3415899

Project page: http://www.ma-la.com/tsugite.html

Paper PDF: http://ma-la.com/Tsugite_UIST20.pdf

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.