| 340 | } |
| 341 | |
| 342 | FaceBitSet BooleanResultMapper::newFaces() const |
| 343 | { |
| 344 | FaceBitSet res; |
| 345 | res.reserve( std::max( maps[0].cut2newFaces.size(), maps[1].cut2newFaces.size() ) ); |
| 346 | for ( const auto& map : maps ) |
| 347 | { |
| 348 | for ( FaceId newF = 0_f; newF < map.cut2origin.size(); ++newF ) |
| 349 | { |
| 350 | if ( newF == map.cut2origin[newF] || !map.cut2origin[newF].valid() ) |
| 351 | continue; |
| 352 | if ( auto resF = map.cut2newFaces[newF] ) |
| 353 | res.autoResizeSet( resF ); |
| 354 | } |
| 355 | } |
| 356 | return res; |
| 357 | } |
| 358 | |
| 359 | FaceBitSet BooleanResultMapper::filteredOldFaceBitSet( const FaceBitSet& oldBS, MapObject obj ) const |
| 360 | { |