82 for element in model.body: |
82 for element in model.body: |
83 if hasattr(element, 'geometry') and len(element.geometry.vertices) >= 3: |
83 if hasattr(element, 'geometry') and len(element.geometry.vertices) >= 3: |
84 for a, b, c in pairs(element.geometry.vertices, count = 3): |
84 for a, b, c in pairs(element.geometry.vertices, count = 3): |
85 if cross_product(b - a, c - a).length() < 1e-5: |
85 if cross_product(b - a, c - a).length() < 1e-5: |
86 yield report_problem('collinear', bad_object = element) |
86 yield report_problem('collinear', bad_object = element) |
|
87 break |
87 |
88 |
88 @problem_type('hairline-polygon', |
89 @problem_type('hairline-polygon', |
89 severity = 'warning', |
90 severity = 'warning', |
90 message = lambda smallest_angle: str.format( |
91 message = lambda smallest_angle: str.format( |
91 'hairline polygon (smallest angle {})', |
92 'hairline polygon (smallest angle {})', |