| |
1 #pragma once |
| |
2 #include "modeleditor.h" |
| |
3 |
| |
4 namespace ldraw |
| |
5 { |
| |
6 /// Determines how quadrilaterals are split into triangles |
| |
7 enum class Diagonal |
| |
8 { |
| |
9 Diagonal_13, |
| |
10 Diagonal_24 |
| |
11 }; |
| |
12 |
| |
13 // Splits the specified quadrilateral into triangles. |
| |
14 // If it is not a quadrilateral then no action is performed |
| |
15 auto splitQuadrilateral(ModelEditor& editor, |
| |
16 quadrilateralid_t quadrilateral_id, |
| |
17 Diagonal splitType = Diagonal::Diagonal_13 |
| |
18 ) -> std::optional<std::pair<triangleid_t, triangleid_t>>; |
| |
19 |
| |
20 void invert(ModelEditor& editor, ldraw::id_t id); |
| |
21 void makeUnofficial(ModelEditor &editor); |
| |
22 } |