Simplify imported mesh

I’m working on a 3d file that I’ve imported to Rhino from a 3d DWG file exported from Revit. After import, the geometry exists in Rhino as a series of faceted polygons grouped in an open mesh. If possible, I’d like to simplify this geometry, to make it easier to manipulate in Rhino, and use for things like Make2D.

I’ve been able to improve things somewhat through the use of MeshToNURB, but the open polysurfaces this command produces are as complex as the meshes used to produce them. Because they are non-planar, I am unable to further simplify them using MergeAllFaces. I’m wondering if there is another way to interpolate or reduce the complexity of faceted, non-planar open polysurfaces that I’m not aware of…

Any help would be much appreciated!

1 Like

Hi Josh,

could you post parts of your mesh geometry or show us a picture ? In general, reverse engineering meshes to clean NURBS surfaces is a job description not a fully automated task. _MeshToNurb does create a trimmed planar nurbs surface for every triangle. To be honest, this doesn`t simplify things but make things more complicated further down the line. _MergeAllFaces combines adjacent planar faces into one planar face, it may be less useful for your purpose.

If your imported meshes look faceted, try to weld them using the command _Weld. Then try to proceed to build curved nurb surfaces by eg. extracting mesh borders as polylines, rebuilding these to curves with at least degree 3 and so on. You can section and contour meshes as well to build curve networks etc. There are plugins available which help to automate these tasks to some extend, eg. by sampling curved surfaces from the topology of a mesh, search for RhinoReverse and Resurf.

even without such plugins, it is possible to re-create clean surfaces with the tools Rhino offers, but manually. It takes time, patience and experience to accomplish it but usually leads to the cleanest results.


Thanks a lot for the helpful reply!

I’ve uploaded a few pictures of the mesh geometry I’m working on. I’ve managed to extract a key curves and sections from it, and from those I’m attempting to reconstruct the geometry using a few sweeps.

One small issue that I’m having is that the curves I’ve extracted using the “mesh outline” command are (unsurprisingly) polylines composed of a whole bunch of small, straight curves, as opposed to control point curves, which I would prefer. I’m wondering: what’s the best way to convert these polylines into control-point curves? And: if I’m trying to use these curves for a sweep and/or curve network, does it matter too much which type of curve I’m using?

Thanks again!

Hi Josh,

rebuilding the polylines into degree 3 curves is recommended to get smoother NURBS results…

From your geometry it looks like _Weld with a large angle followed by _Unweld might be a good way to get hold of the topological edges between different mesh parts. You could try different angles for unweld to see where new borders are build, if not allready done. Try _ShowEdges to find where borders have been built in the unwelding process and then explode the mesh into different parts to rebuild them one by one as clean Nurbs objects using Sweeps or _NetworkSrf. I often use _DupBorder to get the borders as polylines. All planar parts can be built from curves (from rebuilt polylines) using _PlanarSrf command. My guess is once the outer shell has been done from an extrusion its a straight forward process using curve offsets etc. to build the rest…