Skip to content
This repository has been archived by the owner on Feb 3, 2023. It is now read-only.
/ lace Public archive

DEPRECATED: Polygonal mesh library developed at Body Labs

License

Notifications You must be signed in to change notification settings

lace/lace

Repository files navigation

lace

version python versions version

Polygonal mesh library developed at Body Labs.

This library is deprecated. The primary successor is lacecore:

  • Provides polygonal meshes optimized for cloud computation.
  • Supports triangles and quads.
  • Provides OBJ loading via the obj extra.

Several other mesh-related libraries were broken out from this package and blmath:

  • polliwog provides low-level functions for working with triangles, optimized for cloud computation.
  • entente provides functions for working with meshes having vertexwise correspondence.
  • proximity provides proximity queries.
  • hobart obtains planar cross sections.
  • tri-again provides simple 3D scenegraphs for debugging meshes, polylines, and points.
  • meshlab-pickedpoints loads and saves MeshLab picked point (.pp) files.

For batteries-included prototyping, Trimesh is recommended as an alternative.

Installation

Install dependencies

Mac OS:

brew update && brew install boost
pip install numpy==1.13.1
pip install lace

Linux:

apt-get install -y --no-install-recommends libsuitesparse-dev libboost-dev
pip install numpy==1.13.1
pip install lace

Docker:

docker build .

Install the library

pip install lace

Development

pip install -r requirements_dev.txt
pip install -e .
rake test
rake lint

Acknowledgements

This library was refactored from legacy code at Body Labs by Alex Weiss, with portions by Eric Rachlin, Paul Melnikow, Victor Alvarez, and others. It was extracted from the Body Labs codebase and open-sourced by Guillaume Marceau. In 2018 it was forked by Paul Melnikow and published as metabolace. Thanks to a repository and package transfer from Body Labs, the fork has been merged back into the original.

License

The project is licensed under the two-clause BSD license.

This project uses the RPly library to read and write PLY files, by Diego Nehab, IMPA, distributed under the MIT License.