| 2580 | } |
| 2581 | |
| 2582 | void Space_Impl::hardApplyConstructions() { |
| 2583 | |
| 2584 | for (const ShadingSurfaceGroup& shadingSurfaceGroup : this->shadingSurfaceGroups()) { |
| 2585 | for (ShadingSurface& shadingSurface : shadingSurfaceGroup.shadingSurfaces()) { |
| 2586 | if (boost::optional<ConstructionBase> construction = shadingSurface.construction()) { |
| 2587 | shadingSurface.setConstruction(*construction); |
| 2588 | } |
| 2589 | } |
| 2590 | } |
| 2591 | |
| 2592 | for (const InteriorPartitionSurfaceGroup& interiorPartitionSurfaceGroup : this->interiorPartitionSurfaceGroups()) { |
| 2593 | for (InteriorPartitionSurface& interiorPartitionSurface : interiorPartitionSurfaceGroup.interiorPartitionSurfaces()) { |
| 2594 | if (boost::optional<ConstructionBase> construction = interiorPartitionSurface.construction()) { |
| 2595 | interiorPartitionSurface.setConstruction(*construction); |
| 2596 | } |
| 2597 | } |
| 2598 | } |
| 2599 | |
| 2600 | for (Surface& surface : this->surfaces()) { |
| 2601 | boost::optional<ConstructionBase> construction = surface.construction(); |
| 2602 | if (construction) { |
| 2603 | surface.setConstruction(*construction); |
| 2604 | } else { |
| 2605 | if (boost::optional<Surface> adjacentSurface = surface.adjacentSurface()) { |
| 2606 | construction = adjacentSurface->construction(); |
| 2607 | if (construction) { |
| 2608 | surface.setConstruction(*construction); |
| 2609 | } |
| 2610 | } |
| 2611 | } |
| 2612 | |
| 2613 | for (SubSurface& subSurface : surface.subSurfaces()) { |
| 2614 | boost::optional<ConstructionBase> construction = subSurface.construction(); |
| 2615 | if (construction) { |
| 2616 | subSurface.setConstruction(*construction); |
| 2617 | } else { |
| 2618 | if (boost::optional<SubSurface> adjacentSubSurface = subSurface.adjacentSubSurface()) { |
| 2619 | construction = adjacentSubSurface->construction(); |
| 2620 | if (construction) { |
| 2621 | subSurface.setConstruction(*construction); |
| 2622 | } |
| 2623 | } |
| 2624 | } |
| 2625 | } |
| 2626 | } |
| 2627 | } |
| 2628 | |
| 2629 | void Space_Impl::unmatchSurfaces() { |
| 2630 | for (Surface& surface : this->surfaces()) { |
no test coverage detected