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;
 }
Example #4
0
 public static IBinPacker GetDefault(BinPackerVerifyOption verifyOption, bool allowAllOrientations)
 {
     return(new BinPacker(verifyOption, GetDefaultAlgorithmFactories(allowAllOrientations)));
 }