mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-19 11:43:53 +00:00
Fix boolean results on non-solid shells #4832
This commit is contained in:
@@ -98,7 +98,7 @@ bool OpenCascadeKernel::convert_impl(const taxonomy::boolean_result::ptr br, Con
|
||||
AbstractKernel::convert(c, cr);
|
||||
if (first && br->operation == taxonomy::boolean_result::SUBTRACTION) {
|
||||
// @todo A will be null on union/intersection, intended?
|
||||
IfcGeom::util::flatten_shape_list(cr, a, false, settings_.get<settings::Precision>().get());
|
||||
IfcGeom::util::flatten_shape_list(cr, a, false, true, settings_.get<settings::Precision>().get());
|
||||
first_item_style = c->surface_style;
|
||||
if (!first_item_style && c->kind() == taxonomy::COLLECTION) {
|
||||
// @todo recursively right?
|
||||
@@ -144,6 +144,8 @@ bool OpenCascadeKernel::convert_impl(const taxonomy::boolean_result::ptr br, Con
|
||||
} else {
|
||||
S = result;
|
||||
}
|
||||
} else {
|
||||
S = util::ensure_fit_for_subtraction(S, tol);
|
||||
}
|
||||
|
||||
b.Append(S);
|
||||
|
||||
Reference in New Issue
Block a user