Hello,
I am new In Rhino and I need help in turning open mesh into closed poly-surfaces / intact solid called closed watertight because I need to work in Dragonfly specifically with the UWG tool. My purpose is to analyze an existing urban model. Meaning many buildings are involved. So I first need to create the model in Rhino. OSM and Caddmapper did not have the building elevation for the neighborhood I am interested. So, unfortunately, ELK or Urbano could not be used to create my model. The only option I could manage that also have the elevation was a gml file which I exported by FZK Viewer into STL format to open in Rhino. Now I have the model, but everything was open mesh I tried the following methods.
Patch which converted them to closed meshes and with the naivety of a newbie in Rhino I thought they would automatically convert in closed polysurfaces, for sure they didn’t. Tried also with the naked edges but none was showing.
Scan&Solve Documentation Tried the method shown in here and for both cases 1 and 2 it shows the same result as follows: (closed non-manifold polysurfaces)
I must mention that I have tried with single objects (buildings) even though my model is a 2km X 4 km area. I need a method to convert all of them into closed poly surfaces/BREP.
I would really appreciate any suggestions. I am attaching the model also below, I repeat it is imported from a STL file which was converted from a gml file.
Also what about ShrinkWrap of Rhino8 do you think it works in my case? I am using Rhino 7, so first wanted to ask before installing Rhino 8 if there is any way to solve my issue . Also is ShrinkWrap coming directly as a tool while installing Rhino8?
Thank you for your help!
P.S file was too big so I am sharing it as a google drive link
Hi Kristiana - the meshes are open because they have many, many duplicated faces. Try on one or two that ring up as open meshes (SelOpenMesh command): ExtractDuplicateMeshFaces then Delete, then on the reamining mesh Explode > Join and then use ShowEdges or see the command line for what the result of Join is.
You may want to then MergeAllCoplanarFaces to simplify each mesh.
Thank you so much for your help, I followed the steps you suggested to me and after did toNurbs and obtained many closed poly surfaces, but as I am attaching below there are still many open polysurfaces. I fixed manually some edges and for some, it worked out and became closed, for some it doesn’t show naked edges and I think some others have open surfaces as shown below:
Unfortunately, I cannot fix them one by one, not only because it takes too much time but at the same time, not all of them can get fixed.
I would really appreciate if you can suggest me something else in this case? Or should I retry to convert it in a better format not gml to STL but any other that may be better? What do you suggest ?
I am attaching the file I made the changes we discussed as well.
Thank you in advance
EDIT: Netfabb is no longer a stand alone, you would have to use it as an add on to Fusion360.
Netfabb could handle this, and I think you can purchase a subscription for one month.
With thousands of objects with duplicated or overlapping faces faces, I think its probably one of the only options that will give you a reliable result in short period of time.
Unfortunately, it is not working with fusion 360. Thank you for the suggestion. I was wondering if there is any fast way to recreate those buildings as solids with a grasshopper tool, will the box boundary work? From those boxes to retrieve and create some solids? Is there any method?
Or is there any method to close my problem causing open polysurfaces ?
Thank you
T
I was wondering specifically if these boxes which I created as boundaries (very rough ones). can be transformed into solids? Is there any tool that can help me do so, maybe this is a rough way. But i have been trying for more than a week to close those open poly surfaces
To add those Grasshopper objects to the Rhino document, select the Bounding Box component on the canvas and press the Insert key on your keyboard (or right-click on that component and pick “Bake”).
-wim
It worked thank you so much, do you know how can I create bounding objects near the shape of my file objects? The box is a very rough estimation, or if there is any other method to create solids from the shape I have on my file, which unfortunately are open polysurfaces?
This is an age-old problem and I think only something like ShrinkWrap actually comes close to addressing it - unfortunately also with lots of limitations (depending on the geometry).
Another approach would be to use GH or a script to extract the bottom outline of each building, then clean up and extrude those outlines to the building height. However, this will just make everything with flat roofs.
Hello, I combined 2 different files since I needed a larger area to do my analysis. I first obtained them as gml file, opened from FZK viewer converted into STL (each one of them) and after when imported in Rhino I combined them both. I am sending the link which contains the gml and stl formats. https://drive.google.com/drive/folders/1pz0QGaoMSIuWl9bqYw0U21mODjhLqoxE?usp=sharing
Thank you !
I will check these in Netfabb, I have a stand alone version from 2012, but it can handle fairly complex files, if you can wait long enough for them to process.
It’s odd they would not work in the latest release.
There are a lot of intersecting faces, it is taking longer than I anticipated, but I almost have the 692_5332 repaired. I’ve had do more manual work than is typical with this but I think its still faster than fixing it in Rhino.
Hi @Kristi_1996 ,
Try using AntFarm to import GML directly to Rhino. You will need to install both AntFarm and AntFarmIO from the Package Manager then just use Rhino’s File > Import dialogue. The buildings will come in as open meshes (representing roofs, walls, etc) within blocks. If all you need is the geometry, you can explode the blocks then join and unify the normals to get valid solid meshes.
Thank you very much, I tried and now I have a better model, I managed to have closed polysurfaces finally. This is definitely the solution. The information as shown in the picture you posted (ID, GMLID, Building function etc), gets lost once they are transformed in closed poly surfaces. Is there any way to not loose this information? Before turning them into polysurfaces I also created a category regarding building functions, so even though the info will not be available at least the colors will show that we have different building functions group so I can differentiate. I have a question regarding this, is there a way to create groups in the layer section regarding each building function? Moreover, is there any information regarding which code means which building function (as residential, office, comercial etc) I cannot find it anywhere. Thank you so much for your help!
Hi @Kristi_1996 ,
In order to keep the data associated with the building features which come in as blocks with AntFarm, you will need maintain the blocks and edit their respective contents. I’ve used Elefront in the attached definition to do this. Note some of the joined meshes are non-manifold, not solid or otherwise not cap-able, so converting from mesh to closed, valid polysurfaces is problematic in some cases. The definition helps to identify these problematic blocks for manual fixing. 20230704_GML AntFarm.gh (24.2 KB)
I do not know what the code for the building function means. Sometimes the source of the data provides metadata describing what the values mean for the fields.