Small changes to curve segment handling for purpose of wrapper

This commit is contained in:
Thomas Krijnen
2023-10-14 16:37:50 +02:00
parent 909978c941
commit 661c8bc50f
9 changed files with 43 additions and 13 deletions
@@ -138,6 +138,7 @@ public:
bool convert(const taxonomy::solid::ptr, TopoDS_Shape&);
bool convert(const taxonomy::bspline_surface::ptr bs, Handle(Geom_Surface) surf);
virtual bool convert_impl(const taxonomy::loop::ptr, IfcGeom::ConversionResults&);
virtual bool convert_impl(const taxonomy::face::ptr, IfcGeom::ConversionResults&);
virtual bool convert_impl(const taxonomy::solid::ptr, IfcGeom::ConversionResults&);
virtual bool convert_impl(const taxonomy::shell::ptr, IfcGeom::ConversionResults&);
+15 -1
View File
@@ -240,4 +240,18 @@ bool OpenCascadeKernel::convert(const taxonomy::loop::ptr loop, TopoDS_Wire& wir
wire = bld.wire();
return true;
}
}
bool OpenCascadeKernel::convert_impl(const taxonomy::loop::ptr loop, IfcGeom::ConversionResults& results) {
TopoDS_Wire shape;
if (!convert(loop, shape)) {
return false;
}
results.emplace_back(ConversionResult(
loop->instance->data().id(),
new OpenCascadeShape(shape),
loop->surface_style
));
return true;
}