All Projects → Tw1ddle → Rectangle-Bin-Packing

Tw1ddle / Rectangle-Bin-Packing

Licence: MIT license
👜 Haxe algorithms for 2D rectangular bin packing

Programming Languages

haxe
709 projects
Batchfile
5799 projects

Projects that are alternatives of or similar to Rectangle-Bin-Packing

BinPacking Neural Combinatorial Optimization
Bin Packing Problem using Neural Combinatorial Optimization.
Stars: ✭ 93 (+190.63%)
Mutual labels:  binpacking
bin-packing-core
基于人工智能(遗传算法 + 贪心 max-rect 算法) 的矩形拼接算法
Stars: ✭ 26 (-18.75%)
Mutual labels:  binpacking
libnfporb
Implementation of a robust no-fit polygon generation in a C++ library using an orbiting approach
Stars: ✭ 85 (+165.63%)
Mutual labels:  bin-packing
3dbinpacking
A python library for 3D Bin Packing
Stars: ✭ 203 (+534.38%)
Mutual labels:  bin-packing
vpsolver
Arc-flow Vector Packing Solver (VPSolver)
Stars: ✭ 86 (+168.75%)
Mutual labels:  bin-packing
Muuri
Infinite responsive, sortable, filterable and draggable layouts
Stars: ✭ 9,797 (+30515.63%)
Mutual labels:  bin-packing
bin-packing
😔 Failed to implement some kind layout in browser.
Stars: ✭ 53 (+65.63%)
Mutual labels:  bin-packing
nest2D
Nest2D is a 2D bin packaging tool for python.
Stars: ✭ 42 (+31.25%)
Mutual labels:  bin-packing
pack
📦 lightweight rectangle packing algorithm
Stars: ✭ 31 (-3.12%)
Mutual labels:  bin-packing
bp3d
Golang package for 3d bin packing problem
Stars: ✭ 50 (+56.25%)
Mutual labels:  bin-packing
WordCloud.jl
word cloud generator in julia
Stars: ✭ 66 (+106.25%)
Mutual labels:  packing-algorithm
BoxPacking
R package for solving three-dimensional bin packing problem
Stars: ✭ 56 (+75%)
Mutual labels:  packing-algorithm
gbp
gbp: a bin packing problem solver - an r package solves 1d - 4d bin packing problem.
Stars: ✭ 24 (-25%)
Mutual labels:  packing-algorithm

Project logo

License

2D rectangular bin packing algorithms for the Haxe bin-packing haxelib. Run the demo in your browser.

Based on the public domain C++ bin packers by Jukka Jylänki.

Features

  • Several fast approximate bin packing algorithms.
  • "Occupancy rate" measure to compare packing performance.
  • Configurable packing heuristics.

Usage

Run the demo in your browser and refer to the example code.

Basic usage example:

// Initialize a bin packer
var binWidth:Int = 800;
var binHeight:Int = 400;
var useWasteMap:Bool = true;
var packer = new SkylinePacker(binWidth, binHeight, useWasteMap);

// Start packing rectangles
var rectWidth:Int = 20;
var rectHeight:Int = 40;
var heuristic:LevelChoiceHeuristic = LevelChoiceHeuristic.MinWasteFit;
var rect:Rect = packer.insert(rectWidth, rectHeight, heuristic);

if(rect == null) {
    trace("Failed to pack rect");
} else {
    trace("Inserted rect at: " + Std.string(rect.x) + "," + Std.string(rect.y));
}

Install

Get the Haxe library code here or via haxelib.

Include it in your .hxml

-lib bin-packing

Or add it to your Project.xml:

<haxelib name="bin-packing" />

Screenshots

Screenshots of the demo:

Screenshot

Screenshot

Notes

  • The algorithms in this haxelib are ported from public domain C++ code by Jukka Jylänki.
  • For details about the algorithms, see Jukka's blog posts and paper.
  • If you have any questions or suggestions then get in touch.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].