Open palexvs opened 5 years ago
Hmm.. that's and interesting case. I'd have to look closer to see what cause it to get confused.
As for the suggested fix, I'm not seeing how that would really do anything. That section of the code is looping over the edges in the face. The vertices in that line of code would all belong to the face - and should not be "outside" the face.
The roof face has 3!! internal loops instead of 1 as I would expect. And one loop is not on a face almost, it confuses your algorithm:
This code should help sometimes, but not always:
next if edge.vertices.map(&:position).any? { |pt| face.classify_point(pt) == Sketchup::Face::PointOutside }
hmm... that might indicate that the loops for the face isn't as they should be. This seems like a SketchUp bug to me. I'll file a bug report.
I've run into models before where the loops haven't been correct - edges referring to the same face multiple times. In these cases all bets are off for any sane analysis by extensions.
False External Faces were detected: test.zip
Maybe it could be fixed by adding
here https://github.com/thomthom/solid-inspector/blob/2.4/src/tt_solid_inspector2/shell.rb#L368
Have not had time to check yet
Great plugin! Thanks!