Skip to content
Sébastien Mestrallet edited this page Sep 25, 2024 · 7 revisions

M. Livesu, N. Vining, A. Sheffer, J. Gregson, and R. Scateni, "PolyCut: Monotone Graph-Cuts for PolyCube Base-Complex Construction", ACM Transactions on Graphics, Volume 32, Issue 6 (SIGGRAPH ASIA 2013 Papers), p.853‑860, doi: 10.1145/1186562.1015810

Project page : http://www.cs.ubc.ca/labs/imager/tr/2013/polycut/

Patented, see https://patentscope.wipo.int/search/en/detail.jsf?docId=WO2015061914 (but "withdrawn" status at European Patent Office since 2020)

Demo executables

http://www.cs.ubc.ca/labs/imager/tr/2018/HexDemo/

There is also an executable for their untangler (Edge-Cone Rectification)

Important

Executable provided for Windows only.

Important

Contrary to what is written in the 8th clause of their software license agreement, the demo is available for 7 days, not 30. You will need a new Windows VM if you exceed 7 days since first use.

Input file format

The required file format for the polycut.exe input is VTU (.vtu).

They provide a MEDIT-to-VTU converter, mesh2vtu.exe.

Important

This is not written in their README : the input MEDIT tetrahedral mesh must contain the surface (triangle) mesh in the same file. See this program and this commit to generate such a mesh with Geogram.

Note

Provided .vtu example meshes have raw binary embedded. meshio can read but cannot write such VTU files (not valid XML, see issue #483), but mesh2vtu.exe shows that polycut.exe accepts other kinds of VTUs, because mesh2vtu.exe writes VTUs with a base64 section, instead of embedded raw binary. So meshio could be used to substitute mesh2vtu.exe.

Output file format

Polycube labeling

I do not know if it is possible to retrieve the polycube labeling from the output of polycut.exe (*_segm.vtu).

Like Evocube, in automatic_polycube the labeling is extracted from the material names of segmentation_XYZ.obj, the latter being generated by cosy2.exe.

Material name Corresponding label
red 0 (+X)
darkred 1 (-X)
green 2 (+Y)
darkgreen 3 (-Y)
blue 4 (+Z)
darkblue 5 (-Z)

Hexahedral mesh

Output hexahedral meshes are in the MEDIT (.mesh) format.

Clone this wiki locally