Olá, Pieiro.
Apesar da situação-problema parecer simples, o algoritmo para solucionar o problema é bastante trabalhoso e demanda considerável tempo.
Entretanto, uma sugestão que gostaria de compartilhar contigo é que, ao invés de "reinventar a roda", vc poderia utilizar alguns bons softwares de Plano de Corte que já existem para essa finalidade. São aplicativos geralmente bem pequenos, alguns são freewares e que são ótimos naquilo que vc precisa.
São muito utilizados para aproveitamento de cortes de chapas de aço, de madeira MDF, de vidros, corte de folhas de papéis, etc. Inclusive levam em consideração no cálculo a espessura da lâmina de serra ou do corte por maçarico (se aplicável) computando como uma perda, descontando e verificando qual a melhor disposição das peças para minimizar desperdício.
Não é exatamente o que vc pediu, mas...
Alguns desses softwares são:
CutMaster 2D (http://www.cutmaster2d.com/) -também tem a versão Pro
Optimik (http://www.optimik.com.br/) Este até mantém um histórico de retalhos disponíveis.
Corte Certo (http://cortecerto.com/) - versões mini, standard e plus -
OptimizeNesting - (http://www.otimizenesting.com.br/) - tem também uma versão on-line que não precisa instalar.
MaxCut (http://www.maxcutsoftware.com/) Bastante completo.
PlacaCentro (http://www.placacentro.com/bra/servicos/otimizador.html).
CutMicro (https://sourceforge.net/projects/ctmc/) - Esse é inclusive Open Source
Sketch Cut - (https://play.google.com/store/apps/details?id=com.fortali.mapcut) - Free, tem versão para Android p/ uso em Smart Phones / Tablets e/ou plugin para Google Chrome
PaneCutter
Veja algumas telas:
Postado : 22/05/2016 4:24 pm