( Per a més detall, consulteu la pàgina de tests geomètrics ). També podeu consultar dos exemples detallats per a veure com treballa l'algorisme.
Graus de dificultat de l'algorisme:
( Per a més detall, consulteu la pàgina de tests geomètrics ):
IniLlistaCares(LC)
Per cada cara c de A ferTallar(c,B,LlistaCares)fiper
Afegir(LlistaCares,LC)
Per cada cara c de B ferTallar(c,A,LlistaCares)fiper
Afegir(LlistaCares,LC)
IniSòlid(C)
AfegirVèrtexs(LC,C)
c:=PrimeraCara(LC)
mentre no fi (LC) ferCasfimentre
unió : Si c.tip = deAoutB ó c.tip = deBoutA llavors Afegir(c,C) fisi
inters: Si c.tip = deAinB ó c.tip = deBinA llavors Afegir(c,C) fisi
A-B : Si c.tip = deAoutB ó c.tip = deBinA llavors Afegir(c,C) fisi
B-A : Si c.tip = deAinB ó c.tip = deBoutA llavors Afegir(c,C) fisi
ficas
c:= SeguentCara(LC)
Els elements de la llista LC són tuples que contenen,
( Per a més detall, consulteu la pàgina de tests geomètrics ). També podeu consultar dos exemples detallats per a veure com treballa l'algorisme.
IniLlistaVèrtexs(LV)
AfegirVèrtexsSòlid(A,LV)
AfegirVèrtexsSòlid(B,LV)
Per cada aresta a de A ferPer cada cara c de B ferfiperSi Intersecció(a,c) != NUL llavors Afegir(Intersecció(a,c),LV) fisifiper
Per cada aresta a de B ferPer cada cara c de A ferfiperSi Intersecció(a,c) != NUL llavors Afegir(Intersecció(a,c),LV) fisifiper
IniSòlid(C)
v:=PrimerVèrtex(LV)
mentre no fi (LV) ferSifimentrev.tip = NOU llavors Afegir(v,C)sinoCasfisi
unió : Si v.tip = deAoutB ó v.tip = deBoutA llavors Afegir(v,C) fisi
inters: Si v.tip = deAinB ó v.tip = deBinA llavors Afegir(v,C) fisi
A-B : Si v.tip = deAoutB ó v.tip = deBinA llavors Afegir(v,C) fisi
B-A : Si v.tip = deAinB ó v.tip = deBoutA llavors Afegir(v,C) fisi
ficas
c:= SeguentVèrtex(LV)
CanviRepresentacióInversaAJeràrquica(C)
Els elements de la llista LV són tuples que contenen,