mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-27 02:31:09 +00:00
Do no silently drop invalid faces from IfcConnectedFaceSets
This commit is contained in:
@@ -621,12 +621,18 @@ bool IfcGeom::Kernel::convert(const IfcSchema::IfcConnectedFaceSet* l, TopoDS_Sh
|
|||||||
|
|
||||||
TopTools_ListOfShape face_list;
|
TopTools_ListOfShape face_list;
|
||||||
for (IfcSchema::IfcFace::list::it it = faces->begin(); it != faces->end(); ++it) {
|
for (IfcSchema::IfcFace::list::it it = faces->begin(); it != faces->end(); ++it) {
|
||||||
|
bool success = false;
|
||||||
TopoDS_Face face;
|
TopoDS_Face face;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
convert_face(*it, face);
|
success = convert_face(*it, face);
|
||||||
} catch (...) {
|
} catch (...) {}
|
||||||
|
|
||||||
|
if (!success) {
|
||||||
|
Logger::Message(Logger::LOG_WARNING, "Failed to convert face:", (*it)->entity);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (face_area(face) > getValue(GV_MINIMAL_FACE_AREA)) {
|
if (face_area(face) > getValue(GV_MINIMAL_FACE_AREA)) {
|
||||||
face_list.Append(face);
|
face_list.Append(face);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user