GithubHelp home page GithubHelp logo

slicing's Introduction

An Optimal Algorithm for 3D Triangle Mesh Slicing

This repository has the source codes (versions in c++, python and opengl) of an algorithm for slicing an unstructured triangular mesh model by a series of parallel planes. We prove that this algorithm is asymptotically optimal: its time complexity is O(n log k + k + m) for irregularly spaced slicing planes, where n is the number of triangles, k is the number of slicing planes, and m is the number of triangle-plane intersections segments. The time complexity reduces to O(n + k + m) if the planes are uniformly spaced or the triangles of the mesh are given in the proper order. It also contains an asymptotically expected lineartime algorithm for constructing a set of polygons from the unsorted lists of line segments produced by the slicing step.

Download STL models (ALL)

[Drive] https://drive.google.com/file/d/1cF7Yokc5vJmBHYp1YO1NI0Ny2kfE76mR/view?usp=sharing

Video

[Youtube] https://youtu.be/m_HlDYoWTpw

Citing

@ARTICLE{MinettoCAD,
  title={An Optimal Algorithm for 3D Triangle Mesh Slicing}, 
  author={R. {Minetto} and N. {Volpato} and J. {Stolfi} and R.M.M.H. {Gregori} and M.V.G. da {Silva}},
  journal={Computer-Aided Design (Elsevier)}, 
  year={2017},
  volume={92},
  number={1},
  issn={0010-4485},
  pages={1-10},
  doi={http://dx.doi.org/10.1016/j.cad.2017.07.001},
  url = {http://www.sciencedirect.com/science/article/pii/S0010448517301215}
}

More details

[PDF] https://www.researchgate.net/publication/309619647_An_Optimal_Algorithm_for_3D_Triangle_Mesh_Slicing

slicing's People

Contributors

rminetto 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.