diff -r 2f79053c2e9a -r 47cb50cfa9ad src/ldrawalgorithm.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/ldrawalgorithm.h Fri Mar 04 23:00:06 2022 +0200 @@ -0,0 +1,22 @@ +#pragma once +#include "modeleditor.h" + +namespace ldraw +{ + /// Determines how quadrilaterals are split into triangles + enum class Diagonal + { + Diagonal_13, + Diagonal_24 + }; + + // Splits the specified quadrilateral into triangles. + // If it is not a quadrilateral then no action is performed + auto splitQuadrilateral(ModelEditor& editor, + quadrilateralid_t quadrilateral_id, + Diagonal splitType = Diagonal::Diagonal_13 + ) -> std::optional>; + + void invert(ModelEditor& editor, ldraw::id_t id); + void makeUnofficial(ModelEditor &editor); +}