diff --git a/Frontalini_ecc/CompoAF/Alz&Front.lua b/Frontalini_ecc/CompoAF/Alz&Front.lua index eb0f5ff..40acd40 100644 --- a/Frontalini_ecc/CompoAF/Alz&Front.lua +++ b/Frontalini_ecc/CompoAF/Alz&Front.lua @@ -406,7 +406,7 @@ local function CMP_Draw(bPreview) -- ------------------------------------------------------------------ -- verifica delle **INTERSEZIONI TRA RETTANGOLI** e definizione degli eventuali **SPOSTAMENTI** for SideNum = 1 , 3 do --#SideTab do - -- |(ripeti LEGENDA per campi di SideTab)|| + -- |(ripeti LEGENDA per campi di SideTab)| -- |.a = SideId; .b = SideInfo-A/F; c= PrevRec, .d = NextRec;| -- |.l1---.l4 = Rectangle sides| -- |.u = Side Start Vector; .v = Side End Vector;| @@ -419,12 +419,38 @@ local function CMP_Draw(bPreview) local Tab = SideTab local N = SideNum - -- intersezione tra un rettangolo e il successivo + -- a) intersezione tra un rettangolo e il successivo local PtInt12 = EgtIP( Tab[N].l2, Tab[Tab[N].d].l2, EgtEP( Tab[N].l2), GDB_ID.ROOT) - -- intersezione tra un rettangolo e il secondo successivo - local PtInt13 = EgtIP( Tab[N].l2, Tab[Tab[Tab[N].d].d].l2, EgtEP( Tab[N].l2), GDB_ID.ROOT) - -- intersezione tra il rettangolo successivo e il secondo successivo + -- b) intersezione tra il rettangolo successivo e il secondo successivo local PtInt23 = EgtIP( Tab[Tab[N].d].l2, Tab[Tab[Tab[N].d].d].l2, EgtEP( Tab[Tab[N].d].l2), GDB_ID.ROOT) + -- c) intersezione tra un rettangolo e il secondo successivo + local PtInt13 = EgtIP( Tab[N].l2, Tab[Tab[Tab[N].d].d].l2, EgtEP( Tab[N].l2), GDB_ID.ROOT) + + + -- |ATTENZIONE POSSONO INTERSECARSI ANCHE I LATI 1 E 4 DEI RETTANGOLI !!!| + -- calcolo degli spostamenti (lungo i propri lati di riferimento) + -- if a & b & c + -- di r1 rispetto a r2 e a r3 > prendo il maggiore + -- di r3 rispetto a r1 e a r2 > prendo il maggiore + -- poi posso saltare due lati (?) sì se vale l'ipotesi di massimo due angoli a dx + -- elseif a & c & not b + -- di r1 rispetto a r3 e ... viceversa (?) + -- poi posso saltare due lati (?) sì se vale l'ipotesi di massimo due angoli a dx + -- else if a & not b & not c + -- di r1 rispetto a r2 e ... viceversa (?) + -- ma att.ne !!! potrei comprometere situazioni successive !!!!!!!!!!!!!! + -- else if : potrebbe esserci intersezione del singolo rettangolo con il lato successivo + -- o precedente !! + -- end ?? + + + + + + -- <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< + + + -- PROVA @@ -456,7 +482,6 @@ local function CMP_Draw(bPreview) - -- <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< diff --git a/Frontalini_ecc/CompoAF/rettangoli.nge b/Frontalini_ecc/CompoAF/rettangoli.nge new file mode 100644 index 0000000..ff92110 Binary files /dev/null and b/Frontalini_ecc/CompoAF/rettangoli.nge differ