Skip to content

pyiso2mesh v0.5.2

Latest

Choose a tag to compare

@fangq fangq released this 28 Nov 22:29

pyiso2mesh - One-liner 3D Surface and Tetrahedral Mesh Generation Toolbox


Click here to register and download pyiso2mesh 0.4.2 installer

What's new compared to 0.5.1

  • 2025-11-12 [bfc6e69] [brain1020] further improving brain1020 robustness
  • 2025-11-11 [5eae75a] [release] improve brain1020 to be more robust, porting fangq/brain2mesh@2e2760e to handle neck/shoulder and multi-loop cuts
  • 2025-09-06 [cdcbc2c] [test] add more tests related to polyline

What's new compared to 0.4.2

  • 2025-11-12 [bfc6e69] [brain1020] further improving brain1020 robustness
  • 2025-11-11 [5eae75a] [release] improve brain1020 to be more robust, porting fangq/brain2mesh@2e2760e to handle neck/shoulder and multi-loop cuts
  • 2025-09-06 [cdcbc2c] [test] add more tests related to polyline
  • 2025-08-27 [845d0c8] [release] bump version to 0.5.1 to include the new PR #2
  • 2025-08-21 [f93a1bd] Merge pull request #2 from Knight680/main
  • 2025-08-20 [97fc9d3] fix surf2vol error when face havs 5 columns
  • 2025-08-06 [e3d3e4d] [brain2mesh] enable decoupling in pass 2 if pass 1 fails
  • 2025-08-04 [371110d] [tag] v0.5.0, update jdata to 0.8, use 1-time init in test - use defaultdict in brain2mesh - add pylintrc - some code clean up based on pylint - fix mergemesh shallow copy

Iso2Mesh function port status

The progress of converting MATLAB-based Iso2Mesh functions to Python is
tracked in #1

Ported Unit-tested Ported Unit-tested
> All-in-one pipeline shortcuts > File I/O
v2m.m ✅ tested saveasc.m ⭕️ tested
v2s.m ✅ tested savedxf.m ⭕️ tested
s2m.m ✅ tested savestl.m ⭕️ tested
s2v.m ✅ tested savebinstl.m ⭕️ tested
m2v.m ✅ tested saveinr.m ⭕️ tested
sms.m ✅ tested saveoff.m ✅ tested
> Streamlined mesh generation ⭕️ savesmf.m ⭕️ tested
vol2mesh.m ✅ tested savesurfpoly.m ✅ tested
vol2surf.m ✅ tested ⭕️ savegts.m ⭕️ tested
surf2mesh.m ✅ tested ⭕️ readgts.m ⭕️ tested
surf2vol.m ✅ tested ⭕️ savemsh.m ⭕️ tested
mesh2vol.m ✅ tested ⭕️ savevrml.m ⭕️ tested
> Iso2mesh main function backend readasc.m ⭕️ tested
binsurface.m ✅ tested ⭕️ readinr.m ⭕️ tested
cgalv2m.m ✅ tested readmedit.m ⭕️ tested
cgals2m.m ✅ tested readoff.m ✅ tested
vol2restrictedtri.m ✅ tested ⭕️ readsmf.m ⭕️ tested
surf2volz.m ✅ tested readtetgen.m ✅ tested
mesh2mask.m ✅ tested deletemeshfile.m ✅ tested
> Iso2mesh primitive meshing mcpath.m ✅ tested
meshabox.m ✅ tested mwpath.m ✅ tested
meshasphere.m ✅ tested savemedit.m ✅ tested
meshanellip.m ✅ tested savejson.m ⭕️ tested
meshunitsphere.m ✅ tested loadjson.m ⭕️ tested
meshacylinder.m ✅ tested savejd.m ⭕️ tested
meshgrid5.m ✅ tested loadjd.m ⭕️ tested
meshgrid6.m ✅ tested loadmsgpack.m ⭕️ tested
latticegrid.m ✅ tested savemsgpack.m ⭕️ tested
extrudecurve.m ⭕️ tested savebj.m ⭕️ tested
meshcylinders.m ✅ tested loadbj.m ⭕️ tested
> Mesh decomposition and query ⭕️ savemphtxt.m ⭕️ tested
finddisconnsurf.m ✅ tested savetetgenele.m ⭕️ tested
surfedge.m ✅ tested savetetgennode.m ⭕️ tested
volface.m ✅ tested ⭕️ saveabaqus.m ⭕️ tested
extractloops.m ✅ tested ⭕️ savenirfast.m ⭕️ tested
meshconn.m ✅ tested ⭕️ readnirfast.m ⭕️ tested
meshcentroid.m ✅ tested loadnifti.m ⭕️ tested
nodevolume.m ✅ tested ⭕️ readmptiff.m ⭕️ tested
elemvolume.m ✅ tested loadjsnirf.m ⭕️ tested
neighborelem.m ✅ tested savejsnirf.m ⭕️ tested
layersurf.m ⭕️ tested loadsnirf.m ⭕️ tested
faceneighbors.m ✅ tested savesnirf.m ⭕️ tested
edgeneighbors.m ✅ tested ⭕️ readobjmesh.m ⭕️ tested
maxsurf.m ⭕️ tested ⭕️ loadjmesh.m ⭕️ tested
flatsegment.m ⭕️ tested ⭕️ savejmesh.m ⭕️ tested
orderloopedge.m ⭕️ tested > Volumetric image pre-processing
mesheuler.m ✅ tested volgrow.m ✅ tested
bbxflatsegment.m ⭕️ tested volshrink.m ✅ tested
surfplane.m ⭕️ tested volopen.m ✅ tested
surfinterior.m ⭕️ tested volclose.m ✅ tested
surfpart.m ⭕️ tested fillholes3d.m ✅ tested
surfseeds.m ⭕️ tested ⭕️ bwislands.m ⭕️ tested
meshquality.m ✅ tested ⭕️ laplacefill.m ⭕️ tested
meshedge.m ✅ tested ⭕️ deislands2d.m ⭕️ tested
meshface.m ✅ tested ⭕️ deislands3d.m ⭕️ tested
surfacenorm.m ✅ tested ⭕️ ndgaussian.m ⭕️ tested
nodesurfnorm.m ✅ tested ⭕️ ndimfilter.m ⭕️ tested
uniqedges.m ✅ tested ⭕️ imedge3d.m ⭕️ tested
uniqfaces.m ✅ tested ⭕️ internalpoint.m ⭕️ tested
advancefront.m ⭕️ tested ⭕️ smoothbinvol.m ⭕️ tested
innersurf.m ⭕️ tested thickenbinvol.m ✅ tested
outersurf.m ⭕️ tested thinbinvol.m ✅ tested
surfvolume.m ✅ tested ⭕️ maskdist.m ⭕️ tested
insurface.m ✅ tested > Mesh plotting
> Mesh processing and reparing plotmesh.m ✅ tested
meshcheckrepair.m ✅ tested plotsurf.m ✅ tested
meshreorient.m ✅ tested plottetra.m ✅ tested
removedupelem.m ✅ tested plotedges.m ✅ tested
removedupnodes.m ✅ tested qmeshcut.m ✅ tested
removeisolatednode.m ✅ tested > Miscellaneous functions
removeisolatedsurf.m ⭕️ tested ⭕️ surfdiffuse.m ⭕️ tested
surfaceclean.m ⭕️ tested ⭕️ volmap2mesh.m ⭕️ tested
getintersecttri.m ⭕️ tested ⭕️ isoctavemesh.m ⭕️ tested
delendelem.m ⭕️ tested ⭕️ getvarfrom.m ⭕️ tested
surfreorient.m ✅ tested raytrace.m ✅ tested
> Mesh registration linextriangle.m ⭕️ tested
proj2mesh.m ⭕️ tested getplanefrom3pt.m ⭕️ tested
dist2surf.m ⭕️ tested getexeext.m ✅ tested
regpt2surf.m ⭕️ tested fallbackexeext.m ✅ tested
affinemap.m ⭕️ tested ⭕️ iso2meshver.m ⭕️ tested
> Polyline handling ⭕️ raysurf.m ⭕️ tested
slicesurf.m ⭕️ tested ⭕️ getoptkey.m ⭕️ tested
slicesurf3.m ⭕️ tested rotatevec3d.m ⭕️ tested
polylinelen.m ⭕️ tested rotmat2vec.m ⭕️ tested
polylinesimplify.m ⭕️ tested varargin2struct.m ⭕️ tested
polylineinterp.m ⭕️ tested jsonopt.m ⭕️ tested
closestnode.m ⭕️ tested ⭕️ mergestruct.m ⭕️ tested
> Mesh resampling and optimization ⭕️ orthdisk.m ⭕️ tested
meshresample.m ✅ tested ⭕️ nestbracket2dim.m ⭕️ tested
remeshsurf.m ✅ tested memmapstream.m ⭕️ tested
smoothsurf.m ✅ tested aos2soa.m ⭕️ tested
sortmesh.m ⭕️ tested soa2aos.m ⭕️ tested
mergemesh.m ✅ tested > Brain2mesh toolbox
meshrefine.m ✅ tested brain2mesh.m ⭕️ tested
mergesurf.m ⭕️ tested brain1020.m ⭕️ tested
surfboolean.m ✅ tested intriangulation.m ⭕️ tested
fillsurf.m ⭕️ tested label2tpm.m ⭕️ tested
highordertet.m ✅ tested tpm2label.m ⭕️ tested
elemfacecenter.m ✅ tested > JSONLab toolbox
barydualmesh.m ✅ tested jdataencode.m ⭕️ tested
meshinterp.m ⭕️ tested jdatadecode.m ⭕️ tested
meshremap.m ⭕️ tested jsonpath.m ⭕️ tested
extrudesurf.m ⭕️ tested jdlink.m ⭕️ tested