The way that the community is split on being able to recreate this issue makes me think that it results from a change between Rhino SR 14 and Rhino SR 15. We’ve already had one breaking change that happened as a result of the update and my intuition is telling me something similar is at work here.
I updated to SR 15 a week and a half ago and I am able to recreate the issue. The Brep has non-planar faces and there’s no doubt about that. The quick fix is to do what @TrevorFedyna suggested and pass it through the “Planarize Brep” component before creating the Room. For now, I am adding an extra step into the code of the the “Room From Solid” component that does exactly what the “Planarize Brep” does so that things will run smoothly for this case without the need to use “Planarize Brep”:
The reason why we seemingly didn’t have this issue in SR14 is that the RhinoCommon Mesh.CreateFromBrep
method seems to have changed. This method used to yield a list of meshes that formed a closed volume when the input Brep was a closed solid. Now, this returns a list of meshes that don’t perfectly touch each other when simplified unless they are joined back into a closed Brep.
@wim , I have been trying hard to put together an example file that can recreate the issue using only RhinoCommon but it’s been challenging since it seems this change was subtle. I can say that it has something to do with the fact that the simplified edges of the planar and non-planar parts of the Brep don’t perfectly touch each other:
planarizing_brep_in_Rhino7_SR15.gh (24.4 KB)
But I guess I can’t really complain since the distance between the points and the curve is less than most model tolerances. And, like I said, I can join all of these simplified Faces into a closed Brep. Maybe it’s an issue that results more from angle tolerances rather than the absolute tolerance?