Merge remote-tracking branch 'origin/v0.8.0' into datamodel-v1.0

This commit is contained in:
Thomas Krijnen
2026-04-18 20:15:28 +02:00
1655 changed files with 105534 additions and 46934 deletions
+2 -2
View File
@@ -89,7 +89,7 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcObjectPlacement& inst) {
if (fallback) {
auto mapped_fallback = taxonomy::cast<taxonomy::matrix4>(map(fallback));
if (mapped_fallback != result) {
if (!result->ccomponents().isApprox(mapped_fallback->ccomponents())) {
logger::warning("Computed placement differs from fallback", inst);
}
}
@@ -229,4 +229,4 @@ if (gridp = inst.as<IfcSchema::IfcGridPlacement>()) {
trsf.PreMultiply(grid_position);
}
*/
*/
+5 -10
View File
@@ -24,16 +24,11 @@ using namespace ifcopenshell::geometry;
#ifdef SCHEMA_HAS_IfcToroidalSurface
taxonomy::ptr mapping::map_impl(const IfcSchema::IfcToroidalSurface& inst) {
return nullptr;
/*
gp_Trsf trsf;
IfcGeom::Kernel::convert(inst.Position(), trsf);
// IfcElementarySurface.Position has unit scale factor
face = BRepBuilderAPI_MakeFace(new Geom_ToroidalSurface(gp::XOY(), inst.MajorRadius() * length_unit_, inst.MinorRadius() * length_unit_), getValue(GV_PRECISION)).Face().Moved(trsf);
return true;
*/
auto torus = taxonomy::make<taxonomy::torus>();
torus->radius1 = inst.MajorRadius() * length_unit_;
torus->radius2 = inst.MinorRadius() * length_unit_;
torus->matrix = taxonomy::cast<taxonomy::matrix4>(map(inst.Position()));
return torus;
}
#endif