(GuillotineBinPack) Improved readability
Former-commit-id: a65647370d30dfe110ba38c65afc850328f84b01
This commit is contained in:
parent
fca2dad9d3
commit
51942c1eb9
|
|
@ -18,25 +18,8 @@
|
||||||
class NAZARA_API NzGuillotineBinPack
|
class NAZARA_API NzGuillotineBinPack
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
enum FreeRectChoiceHeuristic
|
enum FreeRectChoiceHeuristic : int;
|
||||||
{
|
enum GuillotineSplitHeuristic : int;
|
||||||
RectBestAreaFit,
|
|
||||||
RectBestLongSideFit,
|
|
||||||
RectBestShortSideFit,
|
|
||||||
RectWorstAreaFit,
|
|
||||||
RectWorstLongSideFit,
|
|
||||||
RectWorstShortSideFit
|
|
||||||
};
|
|
||||||
|
|
||||||
enum GuillotineSplitHeuristic
|
|
||||||
{
|
|
||||||
SplitLongerAxis,
|
|
||||||
SplitLongerLeftoverAxis,
|
|
||||||
SplitMaximizeArea,
|
|
||||||
SplitMinimizeArea,
|
|
||||||
SplitShorterAxis,
|
|
||||||
SplitShorterLeftoverAxis
|
|
||||||
};
|
|
||||||
|
|
||||||
NzGuillotineBinPack();
|
NzGuillotineBinPack();
|
||||||
NzGuillotineBinPack(unsigned int width, unsigned int height);
|
NzGuillotineBinPack(unsigned int width, unsigned int height);
|
||||||
|
|
@ -70,6 +53,26 @@ class NAZARA_API NzGuillotineBinPack
|
||||||
NzGuillotineBinPack& operator=(const NzGuillotineBinPack&) = default;
|
NzGuillotineBinPack& operator=(const NzGuillotineBinPack&) = default;
|
||||||
NzGuillotineBinPack& operator=(NzGuillotineBinPack&&) = default;
|
NzGuillotineBinPack& operator=(NzGuillotineBinPack&&) = default;
|
||||||
|
|
||||||
|
enum FreeRectChoiceHeuristic : int
|
||||||
|
{
|
||||||
|
RectBestAreaFit,
|
||||||
|
RectBestLongSideFit,
|
||||||
|
RectBestShortSideFit,
|
||||||
|
RectWorstAreaFit,
|
||||||
|
RectWorstLongSideFit,
|
||||||
|
RectWorstShortSideFit
|
||||||
|
};
|
||||||
|
|
||||||
|
enum GuillotineSplitHeuristic : int
|
||||||
|
{
|
||||||
|
SplitLongerAxis,
|
||||||
|
SplitLongerLeftoverAxis,
|
||||||
|
SplitMaximizeArea,
|
||||||
|
SplitMinimizeArea,
|
||||||
|
SplitShorterAxis,
|
||||||
|
SplitShorterLeftoverAxis
|
||||||
|
};
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void SplitFreeRectAlongAxis(const NzRectui& freeRect, const NzRectui& placedRect, bool splitHorizontal);
|
void SplitFreeRectAlongAxis(const NzRectui& freeRect, const NzRectui& placedRect, bool splitHorizontal);
|
||||||
void SplitFreeRectByHeuristic(const NzRectui& freeRect, const NzRectui& placedRect, GuillotineSplitHeuristic method);
|
void SplitFreeRectByHeuristic(const NzRectui& freeRect, const NzRectui& placedRect, GuillotineSplitHeuristic method);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue