Hi @kerstintn, thank you for the update. It should be much easier to help if you can share the model.
Here are the files. I had to zip the 3dm file to be able to reduce the size to be able to upload it.
Curved Building_Part 2.zip (6.1 MB)
trying.gh (207.5 KB)
Thanks, @kerstintn .
You have clearly made it pretty far. For the issue with the Dragonfly Roof, it looks like it’s an issue with the routines that try to convert the Rhino geometry into a planar geometry used by our native pollination file schemas. For some reason, the Rhino roof geometry is translating with all of these extra zig-zags and frills on it, which cause a failure:
It’s really weird but maybe I need to re-do the translators between the Rhino geometry and our pollination geometry. I think this Rhinocommon method that I use to try and get the planar boundary around the Brep is just not reliable:
I feel like I remember @mingbo saying that he found a better Rhinocommon solution for this and I would be interested in hearing his thoughts here.
In the meantime, I added a workaround in the script, which translates the roof geometry using the joined planar polyline instead of the Brep and this is working:
Here are the updated files:
Curved Building_Part 3.3dm (9.7 MB)
trying_CWM.gh (189.9 KB)
It seems like that also might have been the source of the non-water-tightness of the geometry since I can bake the resulting Model into the Rhino scene without any error like the screenshot you posted. Granted, I am still getting a few validation errors after baking:
… but they all seem to be colliding room volumes, which are the result of some of the room polylines on the 3rd and 4th floors overlapping with one another. I think you should be able to fix them all by cleaning up the polylines before you input them to the grasshopper script.
Ok, I see that @mingbo suggested that I use:
Brep.DuplicateNakedEdgeCurves(outer=True, inner=True)
instead of the method that I currently use:
b_face.Loops[count].To3dCurve().TryGetPolyline()
I will try to test this soon to see if it gives us a more permanent solution to this issue that you faced.
Hey @kerstintn ,
I am just posting an update that I tried @mingbo 's suggestion of duplicating the edge curves but it did not solve this particular issue since the duplicated curves were just as messed up as the starting curves. It seems that (somehow) the segments making up the roof shape are each actually NURBS curves that each squiggle back and forth a couple of times and this is how they are saved in the RhinoCommon Brep object.
It’s odd because I know how I created that roof Brep was just an extrusion that was trimmed with a bunch of extruded wall segments. I guess it was something about the trimming operation that accidentally produced all of these squiggles. Now that I have a simple example, I think I may try posting this geometry to the McNeel forum to see what the experts say.
In the meantime, I have just decided to address this by making all degree-3 NURBS curves with Bezier Spans straight lines when they are translated to our planar geometry schema:
I feel like most of the cases where people have these types of curves in their inputs for energy modeling, they are some accidental squiggle like this. Almost all of the other “meaningful” curves are either degree-2 arcs or they are degree-3 curves without bezier spans.
Actually, I took a deeper dive into this as I was trying to figure out the question that I wanted to ask McNeel and I figured out why these edges have been translating with all of this squiggling back and forth.
It seems that this squiggling was not actually part of the real Rhino geometry but rather an artifact of the methods that I was using to convert the curved edges into polylines. I fixed this once and for all such that it should now be impossible for these curved edges to translate with squiggles:
Also, within that change to the code, I added an extra curvature analysis of the curved segments. When the curvature is so small that these degree-3 NRUBS curves are effectively just lines, they will be translated as such rather than breaking the curve down into a polyline.
All of these improvements are now available with the LB Versioner shortly and they will be in the next release of the Pollination Rhino installers.
Hi @chriswmackey,
Thanks for looking so heavily into this. I still see issues with the roof so I’m glad the next release will have these updates.
So you all are aware, this project is fictional and conceptual and is used to test different technologies and programs, and the extents that they can work. We had a presentation last week to our firm on what we have been testing and there are a few people that were excited about this!! Thank you for helping it happen.
I was able to get the model into IESVE and do an analysis before the presentation. I’m planning on making a follow-up with more analyses to the firm, and so I am refining the roofs on the pollination model for that right now. That should be done by tomorrow, so my free trial can end then! Thanks!