| 454 .newElement = Colored<Quadrilateral>{quad, MAIN_COLOR}, |
454 .newElement = Colored<Quadrilateral>{quad, MAIN_COLOR}, |
| 455 }); |
455 }); |
| 456 } |
456 } |
| 457 for (std::size_t i = 0; i < indices.size(); i += 3) { |
457 for (std::size_t i = 0; i < indices.size(); i += 3) { |
| 458 if (mergedTriangles.cutTriangles.find(i) == mergedTriangles.cutTriangles.end()) { |
458 if (mergedTriangles.cutTriangles.find(i) == mergedTriangles.cutTriangles.end()) { |
| 459 Triangle triangle{ |
459 Colored<Triangle> tri = triangle( |
| 460 Triangle{ |
460 this->polygon[indices[i]], |
| 461 .p1 = this->polygon[indices[i]], |
461 this->polygon[indices[i + 1]], |
| 462 .p2 = this->polygon[indices[i + 1]], |
462 this->polygon[indices[i + 2]]); |
| 463 .p3 = this->polygon[indices[i + 2]], |
|
| 464 } |
|
| 465 }; |
|
| 466 if (shouldInvert < 0) { |
463 if (shouldInvert < 0) { |
| 467 invert(triangle); |
464 invert(tri); |
| 468 } |
465 } |
| 469 result.push_back(AppendToModel{ |
466 result.push_back(AppendToModel{tri}); |
| 470 .newElement = Colored<Triangle>{ |
|
| 471 triangle, |
|
| 472 MAIN_COLOR, |
|
| 473 } |
|
| 474 }); |
|
| 475 } |
467 } |
| 476 } |
468 } |
| 477 } |
469 } |
| 478 return result; |
470 return result; |
| 479 } |
471 } |