mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-22 18:22:30 +00:00
Perform similar face bound lenciency in cgal kernel
This commit is contained in:
@@ -224,7 +224,8 @@ bool CgalKernel::convert(const taxonomy::face::ptr face, std::list<cgal_face_t>&
|
|||||||
|
|
||||||
for (auto& bound : face->children) {
|
for (auto& bound : face->children) {
|
||||||
|
|
||||||
const bool is_interior = !bound->external.get_value_or(false);
|
const bool is_interior = !(bound->external.get_value_or(false) || face->children.size() == 1);
|
||||||
|
// single face bound is always external... even if not marked as such
|
||||||
|
|
||||||
cgal_wire_t wire;
|
cgal_wire_t wire;
|
||||||
if (!convert(bound, wire)) {
|
if (!convert(bound, wire)) {
|
||||||
@@ -244,7 +245,7 @@ bool CgalKernel::convert(const taxonomy::face::ptr face, std::list<cgal_face_t>&
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (num_outer_bounds == 1) {
|
if (num_outer_bounds == 1 || face->children.size() == 1) {
|
||||||
result.push_back(mf);
|
result.push_back(mf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user