| 541 | |
| 542 | |
| 543 | ifcopenshell::geometry::taxonomy::collection::ptr ifcopenshell::geometry::flatten(const taxonomy::collection::ptr& deep) { |
| 544 | auto flat = make<taxonomy::collection>(); |
| 545 | ifcopenshell::geometry::visit<taxonomy::collection>(deep, [&flat](taxonomy::ptr i) { |
| 546 | flat->children.push_back(std::static_pointer_cast<taxonomy::geom_item>(clone(i))); |
| 547 | }); |
| 548 | return flat; |
| 549 | } |
| 550 | |
| 551 | const std::string& ifcopenshell::geometry::taxonomy::kind_to_string(kinds k) { |
| 552 | using namespace std::string_literals; |