Window Geometry Missing?

I am running into an odd issue, and I wonder if anyone has any suggestions for trouble shooting or has seen this before:

Two surfaces, used to create two apertures:

So far so good, no errors, no warnings. But if I try and visualize them, one is just ‘missing’ ? Again, no errors or anything?

that’s odd, no? For sure there must be something wrong with my original geometry, but I’m surprised there are no warnings or errors thrown anywhere along the way?


It seems to think one surface is not Planar, but GH thinks it is?


Is there perhaps some way to force an error to show up if the geometry there is an issue with geometry like that? I think it would be nice to get that kind of warning so I can know I need to go back and fix the input geometry.

window_geometry_missing.gh (22.8 KB)

thanks!
@edpmay

Hey @edpmay ,

Yea, you have some invalid Rhino geometry there that was created at a different tolerance than the current Rhino model. Or I guess Rhino doesn’t really label the geometry as invalid or non-planar when you check its properties but it is non-planar because trying to recreate a planar Brep from the vertices using Rhinocommon methods will fail unless you ignore the current model tolerance.

Running an extra check for planarity is always do-able after creating the Aperture since there is a core library method for it. But I’m a little worried about always running it and increasing the runtime, particularly for Radiance models where there are potentially thousands of geometries passing through the component. I imagine that it’s for similar performance reasons why Rhino does not run through all of the geometry of the model and check if it’s no longer planar or valid after changing the model tolerance.

Granted, if you want to know if all geometry in your model is planar, you can always run it through the HB Validate Model component. That will check all geometry across the entire model for any non-planar geometry at the model tolerance. Could this work for you or do you think we really need to take a performance hit in order to always perform this planarity check as the Aperture is created?