| 72 | } |
| 73 | |
| 74 | int IfcGeom::util::count(const TopoDS_Shape& s, TopAbs_ShapeEnum t, bool unique) { |
| 75 | if (unique) { |
| 76 | TopTools_IndexedMapOfShape map; |
| 77 | TopExp::MapShapes(s, t, map); |
| 78 | return map.Extent(); |
| 79 | } else { |
| 80 | int i = 0; |
| 81 | TopExp_Explorer exp(s, t); |
| 82 | for (; exp.More(); exp.Next()) { |
| 83 | ++i; |
| 84 | } |
| 85 | return i; |
| 86 | } |
| 87 | } |
| 88 | |
| 89 | |
| 90 | int IfcGeom::util::surface_genus(const TopoDS_Shape& s) { |
no test coverage detected