Making solid from mesh

Hi,

I have a problem with my model. It is currently defined as a mesh. I’ve tried several ways to make a solid out of it, but each time I end up with thousands of separate solids that crash my computer.
Do you know of any more efficient way to make this a solid?
rhino.3dm (2.2 MB)

1 Like

You might review this thread.

– Dale

1 Like

@Szymon1,

i’ve used _Unweld with an angle of 44 degree to create some naked edges between the 3 vertical side meshes (from which 1 seems to be missing) and the terrain. Then i’ve exploded the mesh and removed all 3 vertical sides, so only the main terrain was left. Next i used _Weld with an angle of 180 degree on it to get rid of some naked edges.

To create the 4 sidewall meshes, i’ve used _DupBorder on the terrain which gave me a polyline. This was extruded (using _SubD as output option). From the resulting SubD i’ve extracted a mesh using _ExtractControlPolygon. This mesh needed some slight fixes as there seems to be one face overlap near a corner. After fixing that i’ve just used _PointsOn and _SetPt on all lower points using only the vertical axis (Z) as constraint to make the base edges (points) of the wall mesh planar.

Finally, to close the underside, i’ve used _DupBorder again on the side walls and created the underside mesh from the lower polyline using _MeshPolyline. Before joining everything into one mesh, i’ve checked the normals using _Dir and flipped when required.

rhino.3dm (1.9 MB)

btw. your terrain is only 1mm width. This can cause problems if the unit tolerance is not small enough.
_
c.

2 Likes

@clement Thank you so much for help! I would also like to ask if there is any possibility to make this closed polysurface solid - so that the boolean union commands available in the Solid tab will work on it?
Meaning - will I be able, for example, to cut out a shape in the field using a specific solid, e.g. a cube or a cylinder?

1 Like

Hi @Szymon1,

at the moment you have a mesh not a polysurface. A mesh is probably best to keep all the details in the terrain. To create a closed polysurface from the solid mesh you could do this:

  1. _Explode the mesh into 6 meshes, only keep the terrain part
  2. Use _DupBorder on the terrain to get a border polyline
  3. Select the polyline and terrain mesh and start the _Patch command
  4. I used 200x200 points, Stiffness=1 and enabled the Trim checkbox
  5. Create the 4 wall surfaces and the bottom surface manually
  6. _Join everything so you have a closed polysurface

terrain.3dm (669.4 KB)

you can now use the solid tools or use boolean union commands and work on it. Note that a nurbs surface of the terrain cannot cover all the details as a mesh would do. To get more details when converting the mesh terrain to a nurbs surface terrain you would have to increase the 200x200 points even higher, eg. 500x500.

Alternatively, you can use mesh booleans instead of nurbs booleans and keep working with the solid mesh. In this case your cube or cylinder must be solid mesh objects as well.

_
c.

1 Like

That’s cool, I didn’t know patch would interpolate to the mesh like that :exploding_head:

I think it would be sweet if the user could pick the tolerance/tightness to the mesh rather than just the option of point count (UV spans).

And maybe make the ‘interpolation’ characteristic more obvious from a dialogue standpoint, like the subD dialogue does – fwiw.

Hi @lander, the Stiffness value also plays an important role in therms of tolerance to the input mesh. The lower this value is, the closer it will follow the mesh. But the point count must be large enough for this to work.

_
c.

1 Like

Thank you very much! It will help me a lot in my work with architecture related to the terrain.