Commit Graph

71 Commits

Author SHA1 Message Date
luca.mazzoleni 73b6d80510 - in FeatureLib->ClassifyTopology correzione al riconoscimento DoubleBevel su più parti
- in FaceData correzioni per i casi DoubleBevel su più parti
- in BeamExec->CollectFeatures si scrive il numero di parti di cui è composta la trimesh
2026-03-04 16:13:31 +01:00
luca.mazzoleni 0db6a74f8c - in FaceData e FeatureLib modifiche per gestire DoubleBevel
- in STR0010 modifiche per gestire casi non contemplati
2026-03-03 09:45:11 +01:00
luca.mazzoleni 8efb64810a - in FaceData si raccolgono informazioni sulle facce fino a 6 lati compresi 2026-02-26 17:56:12 +01:00
luca.mazzoleni 465ffc7e37 - in FaceData.GetEdgesInfo si scrivono anche gli angoli con la faccia adiacente
- in FACEBYBLADE correzioni
- in BLADEKEEPWASTE si lavorano anche i rabbet lungo X o v groove, da completare
2026-01-15 00:33:48 +01:00
luca.mazzoleni 667da4e3d1 - in LeadInOutLib corretto accorciamento per lati chiusi confinanti con lati inclinati 2026-01-09 16:22:10 +01:00
luca.mazzoleni fe309e338b - in FaceData migliorata la scelta della BottomFace 1 2026-01-08 16:49:22 +01:00
luca.mazzoleni 604a2676ce - correzioni in FaceData e MachiningLib 2025-12-16 15:18:07 +01:00
luca.mazzoleni 05f729df45 - in FaceData si calcola vtEdge per ogni lato in modo da non doverlo calcolare ogni volta; sostituito in tutte le funzioni
- in LeadInOutLib.CalculateLeadInOut si calcola l'attacco perpendicolare in modo rigoroso
- in FACEBYBLADE correzioni al calcolo attacco
2025-12-16 13:04:42 +01:00
luca.mazzoleni 06a73a069f - aggiunta nuova modalità di pre calcolo collisioni, al momento lama e solo asse Z
- aggiunta libreria TimeLib per calcolare i tempi di esecuzione (sostituite chiamate a EgtStartCounter e Stop)
- rimosse chiamate a EgtOutLog deprecate
2025-11-24 17:30:57 +01:00
luca.mazzoleni 8f2a09e5c7 - in BLADEKEEPWASTE, se lavorazione fallisce da un lato, si fa codolo tutto da un lato alla massima profondità
- in BLADETOWASTE.CutWholeWaste, se fallisce il taglio doppio, si verificano i lati a minor elevazione
MachiningLib.GetBladeEngagement si restituisce anche se la lavorazione richiede separazione, verificata in Check2DBladeCollision
- in FACEBYBLADE gestita forzatura dopo split dall'esterno
- in BatchProcessNew e Process si restituisce sempre sMsg, anche se feature completa
- in FaceData rimosso logging MainFaces
2025-11-11 12:12:00 +01:00
luca.mazzoleni 711ac3930d - in FaceData corretta assegnazione ptStart e ptEnd nei MainEdges
- in FeatureLib.GetAdditionalInfo gestita correttamente 61 (Text)
2025-11-07 15:41:06 +01:00
luca.mazzoleni 43b096f531 - tutte le chiamate a EgtSurfTmFacetOppositeSide sostituite con i lati letti in EdgesInfo
- correzioni e migliorie legate e GetBladeEngagement
2025-11-05 11:02:02 +01:00
luca.mazzoleni ddff655240 - in BatchProcessNew e BeamExec, dove si salva il Box del Part si salva anche idBoxTm, id della trimesh del box
- in BeamLib rimosse funzioni GetPlaneOrientation e IsEdgeOnBox, non usate
- in MachiningLib rivista completamente GetBladeEngagement e aggiunta Check2DBladeCollision
2025-11-04 12:54:09 +01:00
luca.mazzoleni 7b4673acef - varie modifiche ai tagli di lama per DownUp, caso solo 2d
- in FaceData.GetEdgesInfo si scrivono anche i ptStart e ptEnd; IsFaceRhomboid diventa IsFaceParallelogram
- in BeamLib aggiunta IsEdgeOnBox
2025-11-03 16:29:12 +01:00
luca.mazzoleni ecd2147e83 - in FACEBYBLADE modifiche e refactoring per contemplare nuova gestione DownUp 2025-10-30 13:20:15 +01:00
luca.mazzoleni 0afcd786d1 - in FaceData, IsFaceRectangular e IsFaceRhomboid ricevono solamente il parametro Face; utilizzano il gruppo per geometrie temporanee invece di AddGroup 2025-10-24 18:54:49 +02:00
luca.mazzoleni 070ad50d73 - in FaceData IsFaceRectangular e IsFaceRhomboid si passa Face invece che idFace
- in FaceByBlade introdotta funzione GetBladeEngagement che sostituisce GetMinNzDownUp
2025-10-24 18:38:25 +02:00
luca.mazzoleni 711e0c82f7 Merge remote-tracking branch 'origin/develop' into CuttingImprovements 2025-10-24 12:51:54 +02:00
luca.mazzoleni c62f1818c7 - in BLADETOWASTE e DiceCut eliminati tutti i riferimenti al DownUp: il tipo di lavorazione si verificherà direttamente in FaceByBlade o FindBlade
- in FaceData.GetFacesInfo si salva l'id della trimesh nella faccia
- in HEADCUT il box per i cubetti viene copiato non per riferimento
2025-10-24 12:51:47 +02:00
andrea.villa a3a29dc5bf - Feature taglio di testa e coda rinominate con 'StartCut' e 'EndCut'
- Migliorata gestione tagli testa e coda
- Log result scrivono indici dettagliati per voto feature
- Piccole sistemazioni varie
2025-10-23 10:15:42 +02:00
luca.mazzoleni 716ebf7046 - in FaceData si calcolano i MainEdges solo per le facce che hanno esattamente 4 lati
- in STR0005 corretto calcolo dExtendAfterTail
- in FACEBYBLADE si i tagli troncanti in coda sono sempre dichiarati AfterTail; eliminata assegnazione a posteriori in BLADETOWASTE
2025-10-13 17:52:39 +02:00
andrea.villa 5f663d3362 - Prima versione pulizia corner con lama
- Funzione "FaceData.GetFacesInfo" accetta ora una lista di facce sulle quali calcolare le info, per evitare di calcolarle tutte in caso siano molte
- In "BCS.GetToolsFromMachDataFile", se lista tag vuota, si esce subito
2025-09-26 10:04:30 +02:00
andrea.villa 9e2bef3192 - Si salvano su ogni faccia L e W
- In STR0002 si utilizzano dimensioni faccia anziché gli edge. Più affidabile in caso di feature non standard
2025-09-09 09:53:37 +02:00
andrea.villa 3634af8f29 Si calcola faccia Tunnel anche per topologia Bevel-2-Blind 2025-09-08 14:47:43 +02:00
luca.mazzoleni 719d3b61af - in BeamExec correzione a CalcMinUnloadableRaw
-in FaceData aggiunta IsFaceRhomboid per verificare se una faccia è un parallelogramma
- in BLADETOWASTE refactoring
- in BLADETOWASTE aggiunta gestione tagli da due lati, al momento solo caso con suddivisione orizzontale
- in FACEBYBLADE si permette OppositeToolDirection ottimizzata anche per parallelogrammi (prima era solo per rettangoli)
- in FACEBYBLADE correzione a tagli ridotti e ghigliottina in caso in cui non si lavori l'intera elevazione del lato
2025-07-16 12:22:07 +02:00
luca.mazzoleni 4a9db5d986 - in BLADETOWASTE e FACEBYBLADE implementato taglio ridotto e a ghigliottina, solo per facce rettangolari
- in FaceData introdotta funzione IsFaceRectangular
- in STR0005 aggiunto il parametro bReduceBladePath (gestito in BLADETOWASTE)
2025-07-04 16:20:45 +02:00
luca.mazzoleni 05dfa1da6c - in FaceData e STR0002 gestito tunnel per topologie a 1 faccia con qualunque inclinazione 2025-05-21 01:47:43 +02:00
luca.mazzoleni e2532b29f6 - modificate STR0002 e FaceData per lavorare facce tunnel per Bevel-1-Through con vtNY o vtNZ = 0 2025-05-20 19:26:56 +02:00
luca.mazzoleni 13f73a5363 - da FaceData.GetFacesInfo rimossa EgtSurfTmResetTwoColors e spostata in Logs.WriteMainFacesLog 2025-05-19 17:46:20 +02:00
luca.mazzoleni d9665b4ca9 - in funzioni GetMinNzDownUp si passa anche Tool
- in MainFaces correzioni per casi convessi
2025-05-16 11:22:47 +02:00
luca.mazzoleni fb59349345 - in BeamExec di default si attiva la modalità di rotazione avanzata
- in tutte le funzioni GetMinNz, GetMaxNz, GetMinNzDefault, GetMaxNzDefault si passa anche Tool (per discriminare il tipo utensile in macchina)
- in FaceData si settano le MainFaces e i MainEdges anche per DoubleBevel
- in STR0001 (TenonDT) si controlla la ResidualDepth
- in BLADEKEEPWASTE escluso il caso di Rabbet passante lungo X
2025-05-15 19:00:26 +02:00
luca.mazzoleni 340345725f - in BeamExec corretta eliminazione geometrie temporanee
- in MachiningLib.GetTimeToMachineAllStepsWithLeadInOut i tempi di svuotatura ora sono precisi (si usa EgtPocketing)
2025-05-09 16:03:30 +02:00
luca.mazzoleni 24245e8bd6 - in FaceData.GetEdgesInfo si scrive l'id del lato
- in MachiningLib.GetTimeToMachineAllStepsWithLeadInOut refactoring che utilizza FaceData
2025-05-09 10:40:12 +02:00
luca.mazzoleni f5638e522f - per T010, L010 e T11 abilitata STR0002 (svuotatura)
- in FaceData.GetMainFaces gestita DoubleBevel
- in STR0002 gestita topologia DoubleBevel-2-Through e topologie 1 faccia (Bevel, Cut) - TEMPI NON OK DA SISTEMARE
- in STR0005 si restituisce anche TimeToMachine
- in FABYBLADE e FACEBYMILL piccola correzione in calcolo LeadIn/Out
2025-05-07 18:50:46 +02:00
luca.mazzoleni 335604b8f2 - in FaceData, nella ricerca delle MainFaces gestito caso a 1 faccia
- in STR0001 piccole correzioni
- in BLADEKEEPWASTE ora se arrivano 2 facce con angoli sbaligati si ritorna non applicabile, invece di dare errore lua
2025-05-05 16:01:57 +02:00
andrea.villa f2f1317fdf Gestione Topologia 'Bevel-3-Blind' per STR0002, svuotatura 2025-05-05 09:06:27 +02:00
luca.mazzoleni 0ccfb2bfe6 - in FaceData GetEdgesInfo accetta anche l'id della trimesh
- in BLADETOWASTE varie modifiche per tagli a cubetti e tagli singoli
2025-03-07 17:42:21 +01:00
luca.mazzoleni e553197d61 - in Edges l'elevazione si tiene sempre positiva e la normale guarda sempre verso il centro.
- alle funzioni di base si può passare il parametro opzionale bOppositeToolDirection per invertire la direzione di lavoro dell'utensile
2025-01-23 16:39:43 +01:00
luca.mazzoleni c64aaade13 - in FaceData MainFaces non si crea se è vuota
- in SLOTBYBLADE e SLOTBYCHAINSAW piccole correzioni
2025-01-23 12:28:48 +01:00
luca.mazzoleni ffe2d07918 - negli egde vtToolDirection sostituita con vtN 2025-01-23 12:13:30 +01:00
luca.mazzoleni 40e76a23c9 - in FaceData Elevation è sempre positiva nelle facce standard (non MainFaces)
- in MachiningLib in GetSplitMachinings correzioni alla definizione dello stage della lavorazione; correzione a FindBlade
- in SLOTBYBLADE e SLOTBYCHAINSAW correzioni per poter passare la profondità di lavoro
- in STR0005 primo implemento di lavorazione con codolo
2025-01-21 15:27:33 +01:00
luca.mazzoleni fc6b50b345 - in FaceData struttura dati degli Edges della faccia uniformata a quella degli Edges della MainFaces
- tutte le chiamate a Edges aggiornate di conseguenza
2025-01-17 18:06:37 +01:00
luca.mazzoleni 3287420f41 - in FaceData -> GetFacesInfo contemplato il caso in cui arrivi una Proc senza nFct 2025-01-07 15:27:25 +01:00
luca.mazzoleni 456d8e903a - in BeamExec completata la funzione PrepareMachiningsForSorting
- in FaceData la lunghezza rispetto a X è ora in valore assoluto
- in MachiningLib -> GetSplitMachinings aggiunta la scrittura del centro della lavorazione
- in STR0003, STR0004, SlotByChainSaw e SlotByBLade nSegment diventa nFeatureSegment per distinguerla da nPartSegment
2024-12-19 15:04:17 +01:00
luca.mazzoleni eb4a5e521f - in BeamExec si evita di ricalcolare senza motivo il box del pezzo
- tutti i riferimenti a PARTS[i].b3Box o Part.b3Solid diventano Part.b3Part
- in BeamExec aggiunte funzioni PrepareMachiningsForSorting e SortMachiningsBySegment, da completare
- in BeamLib aggiunta funzione GetSplittingPoints
- nelle lavorazioni introdotta la variabile sStage che rappresenta la fase di lavoro a cui la lavorazione stessa appartiene (Head, Tail, AfterTail oppure vuota che significa sezione centrale, quella divisa in segments)
- piccole correzioni ad alcuni nomi di variabile
2024-12-18 11:59:08 +01:00
andrea.villa 54c86774b7 - Corretta creazione barra in caso di più pezzi
- Libreria specifica per Log
- Nuovo log feature con tutte le strategie disponibili
- Nel log della matrice rotazioni si indica se la strategia scelta è completa (C), parziale (P) o non applicabile (N)
2024-11-20 14:28:20 +01:00
luca.mazzoleni 28946a0291 - in FaceData, nella trimesh generata TunnelAddedFaces.MiddleFaceTm, aggiunte le facce di contenimento laterali per garantire lati chiusi in svuotatura splittata 2024-11-13 18:42:01 +01:00
luca.mazzoleni 2fff4438c0 - in STR0002 overlap tra le passate portato a 1/2 MILL_OVERLAP
- in FaceData in ogni Edge si scrive ora la lunghezza proiettata lungo X dLengthOnX
- in FeatureLib aggiunta la funzione MachiningNeedsSplitting per unificare il check di necessità spezzatura
2024-11-11 11:52:21 +01:00
luca.mazzoleni 38fdaca7bf - FeatureData rinominata FeatureLib
- piccole migliorie stilistiche
2024-11-07 16:53:06 +01:00
luca.mazzoleni 86fd80ee61 - in BeamExec -> RunStrategyLibraries corretti percorsi require
- in FaceData piccole correzioni
- in MachiningLib pesanti modifiche per contemplare cloni lavorazioni con parametri diversi (es: per step aggiuntivi o spezzatura). Parametri lavorazione  ora sono tutti scritti in tabella e ciclati invece di essere scritti uno a uno.
- in SLOTBYCHAINSAW alcune correzioni
- in STR0003 gestita aggiunta lavorazioni a MACHININGS e output risultati strategia
2024-06-26 17:26:00 +02:00