(self, data, openings)
| 941 | |
| 942 | @utils.trace |
| 943 | def apply_openings(self, data, openings): |
| 944 | def inner(): |
| 945 | opgeom = utils.make_default(self.evaluate_mt(openings)) |
| 946 | for k, v in self.evaluate_mt(data): |
| 947 | for el in getattr(k, "HasOpenings", ()): |
| 948 | print("opening", k, el.RelatedOpeningElement) |
| 949 | for p in opgeom[el.RelatedOpeningElement]: |
| 950 | v = v.subtract(p) |
| 951 | # print('v.volume', v.volume().to_double()) |
| 952 | yield k, v |
| 953 | |
| 954 | return list(inner()) |
| 955 | |
| 956 | @staticmethod |
| 957 | @utils.trace |