Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Algoritmo ottimizzazione area 2D
giovedì 04 luglio 2013 - 11.55
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
C#
|
.NET 2.0
|
Visual Studio 2005
AntCiar
Profilo
| Expert
936
messaggi | Data Invio:
gio 4 lug 2013 - 11:55
Salve.
Sto cercando di realizzare un algoritmo per ottimizzare una area 2D.
Mi serve per ottimizzare il consumo di una lamina da dover applicare su dei pannelli. L'informazione certa e immodificabile è il numero dei pannelli e la loro dimensione. Quello che può variare è la quantità di laminato da usare. In fase di acquisto questo viene venduto a metri lineari ed ha una altezza standard di 133 cm. La fortuna è che più metri lineari possono essere acquistati senza tagliare la lastra quindi è come se avessi un unica area composta di misura (100xA) x 133 dove A è un numero intero indicante il numero di metri lineari da acquistare.
La procedura quindi prende in ingresso ad esempio una lista di oggetti che rappresentano i miei pannelli. Questi oggetti oltre ad avere un codice identificativo del pannello e le misure L x H (con L cosidero sempre la dimensione orizontale e con H la dimensione verticale), hanno anche una variabile di tipo Point che indica, al termine dell'ottimizzazione, la posizione del pannello sulla lamina. Nel caso in cui ad esempio l'ottimizzatore posiziona il pannello ruotandolo di 90° rispetto alle indicazioni di partenza, mi va a scambiare i valori di L e H.
Una volta ricevuti in ingresso gli N oggetti pannello, l'algoritmo prende in considerazione una lamina di partenza A=1 e quindi 100 x 133 e prova ad eseguire l'ottimizzazione degli spazi. Se per questa misura i pannelli non riescono ad entrare nella superfice, allora passa a considerare una lamina da 200 x 133 riprovando ad ottimizzare la posizione dei pannelli. Questa iterazione continua fino a che non si arriva al punto che la misura della lamina riesce a contenere tutti i pannelli restituendomi la misura della lamina stessa e valorizzando la variabile Point di ogni pannello.
In questo modo riesco poi a ricavare un disegno della lamina riprodotto sopra la forma dei pannelli in modo da poter procedere al taglio.
Qualcuno ha fatto già una cosa del genere oppure può darmi indicazioni su come procedere?
Grazie
Cristian Barca
willy_80
Profilo
| Senior Member
255
messaggi | Data Invio:
ven 5 lug 2013 - 20:21
se ho ben capito quello che devi fare è un nesting prova a cercare in rete forse trovi qualche cad free che faccia qualcosa tieni conto però che un nesting serio costa una cifra...
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !