| 398 | } |
| 399 | |
| 400 | Box3f computeBoundingBox( const MeshTopology & topology, const VertCoords & points, const FaceBitSet * region, const AffineXf3f* toWorld ) |
| 401 | { |
| 402 | if ( !region ) |
| 403 | return computeBoundingBox( points, topology.getValidVerts(), toWorld ); |
| 404 | |
| 405 | MR_TIMER; |
| 406 | const auto lastValidFace = topology.lastValidFace(); |
| 407 | |
| 408 | FaceBoundingBoxCalc calc( topology, points, *region, toWorld ); |
| 409 | parallel_reduce( tbb::blocked_range<FaceId>( 0_f, lastValidFace + 1 ), calc ); |
| 410 | return calc.box(); |
| 411 | } |
| 412 | |
| 413 | double holePerimeter( const MeshTopology & topology, const VertCoords & points, EdgeId e0 ) |
| 414 | { |
no test coverage detected