Remesh existing anisotropic Mesh into isotropic Mesh + Point Cloud

Can Rhino - or some GrassHopper plugin, or other external tool - reconstruct existing anisotropic (“unevenly distributed”) meshes into evenly spaced (isotropic) Meshes?

I would have use for something similar for Point Clouds - that is, point clouds with different “density” being levelled out to have equal distances between points (within the space they occupy).

I understand that the topology can be affected by remeshing in this way, but if it can be done with a tolerance it would be useful for me.

A Rhino command, a GH Component, or a separate tool - any useful hints are welcome.

// Rolf

kangaroo meshmachine but I doubt that it works for volumes, and wonder if meshing is needed at all.

the problem looks similar to 3d point collision rather than remeshing.
but then the question if collision constraint is enough or you still need to have some initial triangulation,
if it is collision detection you will have to use rtree or spatialhash to find closest pairs for fast computing time

or there should be some sort of iterative smoothing algorithm, but they are also slow

Hi Petras,

Thanks of the hint, I will try Kangaroo Meshmachine asap.

I just tried InstantMesher on my mesh, but it doesn’t seem to be able to keep the mesh together after remeshing. Looks like this (with triangulation, end even worse with quads). Room for improvement in other words… :slight_smile:

Before :

After (InstantMesher) :

// Rolf

Instant meshes does great and fast job, but you have to input decent meshes.

Also what I found difficult with instant meshes is to orient mesh faces to naked edges.

I’m trying out MeshMachine but I do have some problems with the input parameters, like:

  • Knowing exactly what (some of them) really stand for.
  • Knowing which input values are mandatory or not (most of them have defaults though).
  • Knowing what input values are valid (like SizeP, SizeV “to interpolate” - what is this, and where from can/should I derive such values?).

I managed to get the component to execute, but I understand that have totally useless input values since I don’t know what all of them actually stand for, or where from to get reasonable indata. Example:

Not all the input hints were useful to me:

Are proper input values something that you can give some hints about?

// Rolf

Hi Rolf - you may need to Weld the mesh at 180 deg. first. Worth a try if you have not…


Yes, I had figured that out. But I’m using another well documented tool now which I wrapped into a GH Component. Too many inports in the MeshMachine not being meaningful to me… :blush:

I prefer using things that can be explained. :slight_smile:

// Rolf