Joaquín Torres - B.Sc., M.Sc., Universidad de Chile.
A geometric packing is an non polynomial problem (NP problem) that tries to pack different types of geometric figures into a finite space. We will focus on a convex polygon geometric packing.
As an example the next image shows the result of a geometric packing with three different kinds of polygons.
This repository provides a simple app that allows you to generate a variety of packing meshes. The app has the following features:
- Geometric packing mesh generation.
- Pack polygons with one container or multiple layers of containers (containers of the same width)
- Two different approaches for the geometric packing algorithm.
- Adjustable polygon variability
- Assignable properties for polygons on the mesh.
- Download mesh file on txt and json format.
- Upload mesh file.
- Download image of mesh generated.
- Mesh refinement.
- Plugin for boundary conditions
- Assign properties to vertices and segments on the boundary of the container.
Try using the app on this link
- Java 1.8
- Play Library
- SBT (Scala)
- Node (npm)
For development you first need to clone the repository and install all the node libraries.
git clone https://github.com/juakotorres/PackingAlgorithms.git
cd front/
npm install
After installing the nodes libraries needed you can start the application using:
sbt run
First enter the Play console:
sbt
Then for production we need to compile the project into JAR files using:
sbt dist
This produces a ZIP file containing all JAR files needed to
run the application in the targer/universal
folder.
To run the application, unzip the file on the target server,
and then run the script in the bin
directory.
cd target/universal
unzip packvex-1.1.zip
cd packvex-1.1/
bin/packvex
MIT