OverviewΒΆ

The Packing Module works by taking a set of models and a build volume as input. The models should be URIs that conform to the standard laid out in 3DIAX API Reference. The models are sorted by the size of their bounding rectangular prisms and then placed in the XY plane one at a time. The algorithm continues until all models are placed or the remaining empty space is not large enough to fit the next model. There are various methods of determining the free space left and various permutations of these methods are used when determining the optimal packing for a given layout task.

For example, let’s say you have 3 different models, a star (A), a diamond (B) and a curl (C). You want to place these into a build area

../_images/packing-example-1.png

The algorithm first determines the bounding box for these shapes. It then sorts them by surface area.

../_images/packing-example-2.png

We then place the largest object in our build area. This yields a new, smaller build area (shown in green) which is the remaining space available for placing the successive models.

../_images/packing-example-3.png

We can then repeat the process to place the other models

../_images/packing-example-4.png

Finally we take the aggregate models and center them in the build volume as this normally yields a better print.

../_images/packing-example-5.png

To get started with Packing see our reference docs at Reference