Jump to content

Rectangle Packing 1.0.0

   (0 reviews)

3 Screenshots

About This File

The heart of this Marionette example is the RectPack node. A node with over 2600 lines of code! 

It supports dozens of packing algorithm to pack rectangles on another rectangular area in a space and time-saving way. 

The right combination of packing and bin algo gives the ability to pack rectangles in a way you want to have them on your machines (as close as possible, always cut complete board, less cuts etc.)


Actually not even myself know, which packing algo ist right for which use case. 

Also for professional use case, usually there is a machine dedicated software, which packs the port in a way which match best for the machine. 

So I see the main use case to pack parts on a board for milling them on a cnc-machine as example for model-making. Workflows which uses a guillotine-workflow (always cut the whole board) often have special requirements which maybe could be reached with the choice of packing algorithm or maybe can not. 


The Marionette Example based on foundational work:

http://www.secnot.com/   Python code for packing algorithm

Jukka Jylang - A Thousand Ways to Pack the Bin - A Practical Approach to Two-Dimensional Rectangle Bin Packing (2010)

Huang, E. Korf - Optimal Rectangle Packing: An Absolute Placement Approach (2013)


General Features:

- Input of basic data like length and width

- Input of additional data

- object input (node detects if part input are objects and process them like rectangles)

- sort by material

- use a list of stock materials



Not all input combinations works at the moment. Recommended to use the existing examples to get correct input values.


What's New in Version 1.0.0   See changelog


Network Update for Input by Layer Example


1. Support for mixed layer plane and screen plane objects

2. Support for groups


Some limitations are related to the default move and rotate nodes. They not yet can separate every object type to be moved by vs.HMove or vs.Move3DObj. So i us just a custom move and rotate node (HMove and HRotate which do not work for 3D) the following limitations exist:

1. No Support for 3D Objects

2. No Support for pure 3D Symbols

3. No Support for Screen planed Symbols




  • Like 5

User Feedback

Recommended Comments

Some Screenshots of a carpenter who uses this for cutting arrangements.

So great to see, how other people uses those technology (and days of work) to improve their workflows. http://www.garzotto-ag.ch/


Screenshots attached













Share this comment

Link to comment


Ich benutze dein Programm um in unserer Firma Plattenzuschnitte zu optimieren und bin begeistert.

Allerdings bekomme ich bei der Variante WorksheetInput, also die Eingabe über die Tabelle immer eine Fehlermeldung.

Vielleicht schaust du dir das mal an!


Danke für deine echt coolen Programmierungen die du hier veröffentlichst, von diesen benutze ich einige um mir den Arbeitstag zu erleichtern!



Share this comment

Link to comment



Ich kann mir das gerne anschauen. Es gibt zwei Tabellen-Inputs. Einerseits die Teileliste, andererseits eine Plattenliste um für verschiedene Materialien, verschiedene Plattengrössen zu definieren und um zu sehen, welche Platten bestellt werden müssen. Wobei man auch bei der Lager-Liste Stk 1 verwenden darf, wenn man das nicht braucht.


Also Board-List ist der Platten-Lagerbestand und Stückliste-Küche ist die Stückliste. Es könnte dann Fehler geben, wenn die Spaltenreihenfolge nicht stimmt, die Zahlen mit Komma getrennt sind (7,1 statt 7.0). Poste doch mal Deine Beispieldatei und Beispieltabelle.

Share this comment

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Add a comment...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


7150 Riverwood Drive, Columbia, Maryland 21046, USA   |   Contact Us:   410-290-5114


© 2018 Vectorworks, Inc. All Rights Reserved. Vectorworks, Inc. is part of the Nemetschek Group.

  • Create New...