Open DeadParrot opened 8 years ago
Edge crossing should be a severe error leading to a fatal after all surfaces are checked.
@mjwitte Thanks for the input. The Surface2D
objects I create for fast PierceSurface
calls should be useful/faster for edge crossing checks. If you'd like me to take a crack at this let me know. It might be best handled along with #5448 since all aspects of surface checking should probably be integrated to get the best detection/categorization of degenerate surfaces.
@DeadParrot Yes, please proceed.
@mjwitte OK, I'll confer with @lgentile on making this into a task.
Currently non-convex surfaces with edge crossings are not detected by any of the surface checks in
SurfaceGeometry
. Such surfaces are probably not useful for EnergyPlus and they are not handled by thePierceSurface
update in #5399 that added support for non-convex surfaces. Edge crossings could be detected by computing the intersection of all edge lines in a surface and see if any fall along the edge segment. Whether to generate a fatal error if such surfaces are found or to fix them by adding a vertex at each crossing depends on how surfaces are used throughout EnergyPlus.