public static IBinPacker GetDefault(BinPackerVerifyOption verifyOption) { return(new BinPacker(verifyOption, (w, h, d) => new BinPackShelfAlgorithm( w, h, d, FreeRectChoiceHeuristic.RectBestAreaFit, GuillotineSplitHeuristic.SplitLongerLeftoverAxis, ShelfChoiceHeuristic.ShelfFirstFit), (w, h, d) => new BinPackShelfAlgorithm( w, h, d, FreeRectChoiceHeuristic.RectBestAreaFit, GuillotineSplitHeuristic.SplitLongerLeftoverAxis, ShelfChoiceHeuristic.ShelfNextFit), (w, h, d) => new BinPackGuillotineAlgorithm( w, h, d, FreeCuboidChoiceHeuristic.CuboidMinHeight, GuillotineSplitHeuristic.SplitLongerLeftoverAxis), (w, h, d) => new BinPackGuillotineAlgorithm( w, h, d, FreeCuboidChoiceHeuristic.CuboidMinHeight, GuillotineSplitHeuristic.SplitShorterLeftoverAxis))); }
public static IBinPacker GetDefault(BinPackerVerifyOption verifyOption) { return(new BinPacker(verifyOption, GetDefaultAlgorithmFactories())); }
public BinPacker(BinPackerVerifyOption verifyOption, params BinPackAlgorithmFactory[] factories) { _verifyOption = verifyOption; _factories = factories; }
public static IBinPacker GetDefault(BinPackerVerifyOption verifyOption, bool allowAllOrientations) { return(new BinPacker(verifyOption, GetDefaultAlgorithmFactories(allowAllOrientations))); }