Skip to content

merlinyx/fabhacks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README

This is the codebase for FabHacks: Transform Everyday Objects into Home Hacks Leveraging a Solver-aided DSL. Please expect there to be bugs/issues and let me know as you encounter them.

Related repository: Primitive Tagging

Getting Started

  1. Install dependencies (described below)
  2. Activate the fabhacks conda environment: conda activate fabhacks
  3. Install the fabhacks package: pip install -e .
  4. Setup the OpenSCAD path by setting the environmental variable OPENSCAD_EXEC, e.g. export OPENSCAD_EXEC=path_to_openscad. Preferably add to terminal profiles like .bash_profile
  5. Test with the viewer program: python ui/viewer.py

Install Dependencies

This code is in Python and depends on openscad.

It'd be best to set up a separate Python environment using miniforge.

Use the command below to create a conda environment (tested with py38).

conda create --name=fabhacks python=3.8

conda activate fabhacks

Check that pip is installed using conda list. Then install the packages with

pip install -e .

python -m pip install numpy

python -m pip install importlib-resources

python -m pip install scipy

python -m pip install solidpython

python -m pip install libigl

python -m pip install dill

python -m pip install networkx

python -m pip install ete3

python -m pip install six

python -m pip install xxhash

conda install -c conda-forge scikit-sparse

conda install pyopengl (needed for running explorer)

python -m pip install pillow (needed for running explorer)

For polyscope, please clone this fork with ImageButton bindings for running the explorer.py UI, and install that version with python -m pip install -e .. If not intending to use explorer, feel free to do python -m pip install polyscope.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published