This folder contains the inputs & outputs of our algorithm, on the MAMBO and OctreeMeshing datasets, as well as results of PolyCut1 and Evocube2.
Our supplemental material do not require an internet connection. Rendering code is inside the js/
subfolder and 3D models inside glb/
.
By default, internet navigators do not allow both HTTP access and file:///
access (CORS error).
If you directly open index.html
with your internet navigator, the 3D models will not be rendered.
Recommended: Launch a HTTP server with Python
python -m http.server
Then open the printed address (usually http://0.0.0.0:8000/) with your internet navigator. Python will serve index.html
locally and provide access to the 3D models through HTTP.
- with the miniserve binary:
miniserve .
- with PHP:
php -S localhost:8080 -t .
- with the http-server Node.js package:
http-server .
- with Ruby and WEBrick:
ruby -run -ehttpd .
Other method: Temporarily change the CORS policy of your internet navigator
- with Firefox: open
about:config
and change the value ofsecurity.fileuri.strict_origin_policy
fromtrue
tofalse
, then openindex.html
- with Chrome: execute
google-chrome index.html --allow-file-access-from-files
Above the interactive grid, there is a collapsed section hiding a Sankey diagram, which gives high level stats on our method only. You can adjust the vertical position of the nodes, and hovering them gives the number of items.
To see only labelings generated by our method : hamburger button of the "method" column → select Equals "Ours" (Set Filters are not available in the community edition of the library).
To see only invalid labelings : hamburger button of the "valid" column → choose "False".
To see only failed labeling generations : e.g. hamburger button of the "#charts" column → choose "Blank". To reset, choose "Equals" and leave the field empty.
You can click on the name of a column to switch between ascending, descending and default order.
- CAD model : name of the 3D model. Bx, Sx and Mx models are from the MAMBO dataset, the others from OctreeMeshing
- method : if the polycube labeling was generated using a graph-cut optimization (our initial labeling), PolyCut1, Evocube2 or our method
"surface mesh" group
- #vertices : number of vertices in the triangle mesh
- #facets : number of facets in the triangle mesh
- sd(area) : standard deviation of the facets area
"labeling" group
- #charts : number of charts
- #boundaries : number of boundaries
- #corners : number of corners
- #invalid-charts : number of invalid charts
- #invalid-boundaries : number of invalid boundaries
- #invalid-corners : number of invalid corners
- min(fidelity) : minimal (worse) per-triangle fidelity (closeness between the facet normal and the assigned direction). In [0,1]
- avg(fidelity) : average per-triangle fidelity, in [0,1]
- valid : if the labeling corresponds to a polycube topology or not
- #turning-points : number of turning-points (high turns along boundaries)
- similarity: percentage of facets having the same label, compared to our method
- duration : duration of the labeling stage with file I/O, in seconds. For our method, the generation of the initial labeling with graph-cut is taken into account
- relative duration : duration divided by the duration of our method
- open : open the 3D viewer. After 5s, the 3D model switches between the labeled mesh and a fast polycube estimation. If no labeling was generated, the triangle mesh is displayed instead. Note that we do not provide 3D views for the initial labeling (graph-cut outputs) to reduce total size. Screen Space Ambient Occlusion (SSAO) is on by default.
"feature edges" group
- ignored : percentage of CAD lines not considered feature edges because of their low dihedral angle
- sharp & lost : percentage of lost feature edges because the same direction (label) is assigned on the 2 adjacent facets
- sharp & preserved : percentage of preserved feature edge (between 2 different labels)
"hex-mesh" group
- min(SJ) : minimal (worse) per-hexahedron scaled jacobian
- avg(SJ) : average per-hexahedron scaled jacobian
- open : open the 3D viewer. Screen Space Ambient Occlusion (SSAO) is off by default.
The authors would like to thank contributors to the AG Grid, d3-sankey, model-viewer and tinygltf libraries, as well as Khronos Group for the standardization of the glTF file format.
Like our algorithm, data processing and the report generation will be made open-source.
Footnotes
-
M. Livesu, N. Vining, A. Sheffer, J. Gregson and R. Scateni, « PolyCut: Monotone Graph-Cuts for PolyCube Base-Complex Construction », in Proceedings of SIGGRAPH Asia, ACM, 2013. doi:10.1145/2508363.2508388 ↩ ↩2
-
C. Dumery, F. Protais, S. Mestrallet, C. Bourcier and F. Ledoux, « Evocube: a Genetic Labeling Framework for Polycube-Maps », vol. 41, nᵒ 6, p. 467‑479, 2022, doi: 10.1111/cgf.14649 ↩ ↩2