if v1.z > v2.z then 1 else if v1.z < v2.z then -1 else 0; this line tells if it works upwards or downwards if v1.z > v2.z then -1 else if v1.z < v2.z then 1 else 0; this one should work the other way. (not tested)
simplest of macroscripts to sort verts in world Z, will clone all meshes in the current selection and sort their verts. macroScript SortVertsZ category: "polycount" buttontext: "SortVertsZ" Icon: #("TrackBar",2) tooltip: "SortVertsZ"( fn compareInt i1 i2 values: = values[i1] - values[i2]; fn comparePoint3_Z i1 i2 values: =…
something like this (for editable mesh) though it doesn't protect any custom normals (though adding the map channel solution isn't too tricky). It's odd that everything other than the vert order remains the same. If I(we) had a production use for this I would implement it as a modifier with a simple direction gizmo. The…
cut and paste fails I'm afraid, the isortm give the correct results here. ( fn randomPtOnCone theta = ( h = cos theta; phi = 360.0 * random 0.0 1.0; z = h + ( 1 - h ) * random 0.0 1.0; sinT = sqrt (1 - z * z); [sinT * cos phi, sinT * sin phi, z]; ) fn compareInt i1 i2 values: = values[i1] - values[i2]; fn comparePoint3_Z…