Commit Graph

218 Commits

Author SHA1 Message Date
andrea.villa aaa06c1af5 Corretto indice rotazione da verificare in caso di soluzione invertita. Si aggiunge un offset di 4, l'indice nella tabella delle rotazioni sono 5-6-7-8 2026-04-01 13:17:28 +02:00
andrea.villa 0fc9e1dd09 - Se la lavorazione non ha percorso, la si disattiva
- Se rotazione impostata su "IF_NECESSARY", prima del numero rotazioni, si controllano il numero di feature non eseguite
2026-03-13 13:26:20 +01:00
andrea.villa c6ced91b14 - Aggiunti parametri configurabili GEN_bTestAlternative e GEN_bGetAlternativesNesting2D per testare altre alternative valide
- Aggiunta funzione dedicata alla creazione del gruppo ausiliario al MachGroup
- Alla funzione BeamExec.GetCombinationListFromMatrix si può passare una lista con le sole combinazioni da provare
- Nella BeamExec aggiunta funzione ProcessAlternatives solo per provare le alternative (simile alla ProcessFeatures, ma completamente slegata). La ProcessFeature decide il posizionamento iniziale, la ProcessAlternatives verifica solamente le alternative.
- FlipRot adeguata a nuovo funzionamento
- Altre piccole migliorie varie
- TODO :
   1) manca la parte per settare nelle info pezzo la rotazione iniziale (per vista in Aedifica) e le altre alternative (per ottimizzazione in nesting)
   2) In FlipRot gestire interazione con Aedifica, dato che verrà lanciato direttamente dal programma (per ora funziona lanciato come la Process)
2026-03-02 12:35:12 +01:00
andrea.villa 626183f310 Se feature respinta per extracorsa, viene salvata nota nel LOG 2026-02-10 09:45:27 +01:00
andrea.villa fe6c0bb31c - GetBestStrategy suddivisa in : GetBestStrategyFromProcList e GetFeatureBestStrategy
- Se si deve riprocessare, si riporta il pezzo in posizione originale
- in GetCombinationListFromMatrix si ricalcola la migliore strategia in caso ChosenStrategy non presente (solo se ReProcess)
- Piccole migliorie
2026-02-10 09:02:31 +01:00
andrea.villa 1c24f1046d - Prima versione per riprocessare il calcolo lavorazioni in caso l'applicazione di una (o più lavorazioni) abbia dato errore.
- Per ora cancella la ChosenStrategy, come se non avesse trovato alcuna strategia di sponibile
2026-02-09 15:20:21 +01:00
andrea.villa a54fbb1259 - In STR0011 raggruppato scrittura paraemtri comuni in un solo punto
- In STR0011 sostituito calcolo MRR con TimeToMachine
- In MachiningLib, gestione calcolo tempo reale per lavorazioni di foratura
2026-02-09 08:14:02 +01:00
andrea.villa 1345c5a5cb - Rimossa gestione speciale per foro esattamente orizzontale
- Controllo extra-corse. Per ora SCC ignorato
- Per ricerca punta, si considera sempre 1centesimo di tolleranza (oltre alla tolleranza configurabile)
2026-02-06 15:12:12 +01:00
luca.mazzoleni b1ae9db859 - in MachiningLib aggiunto controllo collisione anche per attacco tangenziale 2026-02-04 22:27:55 +01:00
luca.mazzoleni c8848974a4 Merge branch 'AlternativeDiceSize' into develop 2026-02-02 13:27:46 +01:00
luca.mazzoleni 19f62cdc90 - correzioni varie per cubetti, in particolare sui tagli di testa e coda 2026-01-29 15:46:10 +01:00
luca.mazzoleni ee4d443074 - in BeamLib creata funzione GetPartBoxWithHeadTailOvermaterial per recuperare il box della parte con aggiunto il sovramateriale di testa e/o coda; implementata in vari punti
- in LeadInOutLib e PreSimulationLib se necessario si estende il box per contemplare materiale in testa e in coda
2026-01-28 15:59:35 +01:00
luca.mazzoleni 995917672c - in BLADETOWASTE si ereditano i parametri sRestLengthSideForPreSimulation e bCannotSplitRestLength per gestire la PreSimulation sui tagli di testa e coda 2026-01-27 15:39:11 +01:00
andrea.villa d5b9612406 - STR0015 estesa anche a FreeContour. DA VERIFICARE: ora è controllato solo il caso simile a una feature di intestatura
- GetMachiningSteps migliorata, ora contempla il caso lavorazione di fresatura standard o di tipo slot
2026-01-27 12:21:29 +01:00
luca.mazzoleni efe7f2e0f9 - in cubetti rimossa dimensione diversa in base a direzione lama (si userà la dimensione ridotta se quella standard fallisce)
- in MAchiningLib.ShortestPathSorting si leggono le feed medie dalla macchina
- MAX_DIM_DICE sostituita da parametro generale GEN_MAX_DIM_DICE
- in STR0005 rimossi tutti i riferimenti a dMinZTopBlade e dMaxNyTopBlade; andrà corretta BLADETOWASTE in caso di lama sopra e sotto
2026-01-26 10:52:19 +01:00
luca.mazzoleni c14377fb67 - in MachiningLib corretto ordinamento nel caso di lavorazioni disattivate 2026-01-23 16:46:05 +01:00
andrea.villa da23b96a9c Funzione per verificare se la lavorazione ostacola il pinzaggio spostata nella MachiningLib 2026-01-12 16:48:10 +01:00
luca.mazzoleni 5d461bbc39 Merge remote-tracking branch 'origin/develop' into CheckOutstrokeMilling 2026-01-07 18:18:20 +01:00
luca.mazzoleni 4986d3bf67 - PreSimulationLib.CheckOutOfStroke rinominata CheckOutOfStrokeFromPoints
- check finecorsa aggiunto a STR0006 (tenone)
2026-01-07 18:17:41 +01:00
andrea.villa e1e46445b0 In ShortestPathSorting, si controlla che la lavorazione sia attiva 2026-01-07 12:39:31 +01:00
andrea.villa 570e41a40d - In ShortestPathSorting si settano ora inizio e fine di ogni gruppo per ordine lavorazioni
- In STR0010 in caso che la strategia sia stata forzata da utente, non viene bocciata a causa della sua posizione/forma. Se forzata il cliente si è preso al responsabilità della sua scelta ed è giusto che venga provata. Al massimo si avranno errori di extra-corsa o colisioni.
2025-12-23 16:42:04 +01:00
luca.mazzoleni 309bae0265 in PreSimulationLib.CheckOutOfStroke tabella Parameters sostituita dai parametri singoli 2025-12-23 12:42:49 +01:00
luca.mazzoleni c068479ec1 - in PreSimulationLib refactoring di CheckOutOfStroke e aggiunta la funzione GetPointOnToolTipCenter per calcolare il punto corretto da passare, a partire dal punto di lavorazione; adeguata MachiningLib 2025-12-23 11:27:56 +01:00
luca.mazzoleni f1805625d3 - per lama implementata verifica finecorsa (PreSimulationLib, MachiningLib) con funzione Machine Calc
- nei timer si logga il tempo di apertura Json
2025-12-22 11:19:03 +01:00
luca.mazzoleni 70025d1816 -in MachiningLib e BLADETOWASTE piccole correzioni 2025-12-19 16:27:01 +01:00
luca.mazzoleni 73acee6695 - modificati commenti 2025-12-18 17:33:55 +01:00
luca.mazzoleni c3a82a0804 - in MachiningLib.TestEngagement, PreSimulationLib e LeadInOutLib predisposte funzioni per calcolo extracorsa 2025-12-18 17:32:50 +01:00
luca.mazzoleni 82cd8f5d8c - in MachiningLib EgtOptMachGetResult diventa EgtOptMachCalculate 2025-12-18 09:41:38 +01:00
luca.mazzoleni 604a2676ce - correzioni in FaceData e MachiningLib 2025-12-16 15:18:07 +01:00
luca.mazzoleni 646e69e3af Merge remote-tracking branch 'origin/develop' into CuttingImprovements 2025-12-12 18:28:15 +01:00
luca.mazzoleni ef155ad1fb - nei tagli di lama implementata gestione attacchi creati da Engagement 2025-12-12 18:27:58 +01:00
andrea.villa 6609c7ee16 Corretto confronto su nFeatureInternalIndex. Se lalavorazione è un clone hanno lo stesso indice 2025-12-12 14:47:58 +01:00
luca.mazzoleni 5068d75362 Merge branch 'develop' into CuttingImprovements 2025-12-12 12:08:41 +01:00
andrea.villa 660cca04ca - In ShortestPathSorting tolte le dipendenze tra lavorazioni in rotazioni diverse. Analizzando un DISP palla volta no c'è rischio che si possano mischiare
- Aggiunto TIMER per algoritmo di sorting
2025-12-12 10:44:27 +01:00
luca.mazzoleni 7bd18a8fb4 - creata LeadInOutLib per attacchi 2025-12-11 12:04:10 +01:00
luca.mazzoleni 77d6d89e13 - in MachiningLib.TestEngagement si testa e restituisce il LeadInOut (funzioni da fare) per i casi perpendicular e tangent 2025-12-10 19:09:06 +01:00
luca.mazzoleni eb3cf0d7ff -modifiche parziali per PreSimulationLib 2025-12-10 11:21:55 +01:00
andrea.villa 5ad9e0bf4f Merge branch 'NewMachiningOrder' into develop 2025-12-09 16:40:28 +01:00
andrea.villa c3ea568d99 - Prima versione funzionante ottimizzazione shortest-path
- creata nuova tabella globale DB_MACH_APPLIED che rispecchia il DB delle lavorazioni e fasi (il MachGroup) aggiunte da automatismo
- ripristinata funzione di ordinamento StableSort, solo per lo stage
- adeguamento funzioni ordinamento per operare su nuova tabella DB_MACH_APPLIED
2025-12-09 16:40:14 +01:00
andrea.villa 30f59b0175 - Se lavorazione in positione standard, si setta bStd
- Prima versione ottimizzazione lavorazioni
!! Non funzionante in caso di cloni !!
2025-12-09 10:42:29 +01:00
luca.mazzoleni c18e80a70d - MachiningLib, PreSimulationLib e FACEBYBLADE modificate per introduzione check finecorsa (da completare) e check attacchi 2025-12-05 18:31:35 +01:00
luca.mazzoleni ae30cb5736 - in MachiningLib ennesimo refactoring 2025-12-05 15:09:18 +01:00
luca.mazzoleni cd586673c7 - MachiningLib.CheckCollision spostata in PreSimulationLib 2025-12-05 12:03:36 +01:00
luca.mazzoleni f426311b28 in MachiningLib.GetBladeEngagement refactoring 2025-12-05 11:42:00 +01:00
luca.mazzoleni 69c31e4c2b - PreCollisionLib rinominata PreSimulationLib 2025-12-05 10:01:33 +01:00
luca.mazzoleni 56ca5a74b9 - in PreCollisionLib e MachiningLib refactoring di CheckCollisionWithAxis 2025-12-04 19:02:02 +01:00
luca.mazzoleni ad1ea741d0 - in MachiningLib.GetBladeEngagement refactoring 2025-12-04 18:39:29 +01:00
luca.mazzoleni 327a5a960d - require ( 'BeamData') sostituito con require( 'BeamDataNew') in tutti i punti (temporaneo)
- in PreCollisionLib.CheckCollisionWithAxis refactoring
2025-12-04 11:55:40 +01:00
luca.mazzoleni 68da716da1 - in MachiningLib e PreCollision correzioni per controllare collisione con grezzo nei cubetti 2025-12-02 16:44:51 +01:00
luca.mazzoleni 4bbadb8581 - in MachiningLib miglioramenti a GetBladeEngagement 2025-12-02 10:27:59 +01:00