Isocubi
eila' ragazzi....ho fatto una classe che mi rappresenta gli isocubi in un sistema cartesiano ( iso vuol dire che hanno i lati paralleli ad almeno un asse cartesiano) mancano i metodo che adesso implementero' pero vorrei sapere prima se l'impostazione e' corretta...secondo voi va bene,e poi l'intersezione tra due cubi mi da un rettangolo no? GRazie


class isocubo { Punto supsin ; Punto infdes; Punto profondità ; public isocubo(Punto vertice1,Punto vertice2) { supsin=new Punto( Math.min(vertice1.x,vertice2.x),Math.max(vertice1.y,vertice2.y ), vertice1.z); inf des = new Punto(Math.max(vertice1.x,vertice2.x), Math.min(vertice1.y,vertice2.y), vertice1.z) ; profondità = new Punto( infdes.x, infdes.y, Math.abs(infde.x-supsin.x)); }
Risposte
Ma perché rappresenti il cubo con due punti + la profondità? Sono sufficienti due punti, uno contenenti i minimi lungo ogni direzione e l'altro i massimi (o qualsiasi combinazione in cui uno dei punti contenga il minimo e l'altro il massimo lungo ogni direzione).
L'intersezione tra due "isocubi" può anche essere un punto, un segmento, un rettangolo bidimensionale. Non è detto che sia un parallelepipedo.
L'intersezione tra due "isocubi" può anche essere un punto, un segmento, un rettangolo bidimensionale. Non è detto che sia un parallelepipedo.
ok graziee
in questo modo intendi ? [code][class isocubo {
Punto max ;
Punto min ;
public isocubo(Punto vertice1,Punto vertice2) {
max=new Punto( Math.max(vertice1.x,vertice2.x),Math.max(vertice1.y,vertice2.y ), Math.max(vertice1.z,vertice2.z);
min = new Punto(Math.min(vertice1.x,vertice2.x), Math.min(vertice1.y,vertice2.y), Math.min(vertice2.z, vertice1.z) ;
}/code]


Punto max ;
Punto min ;
public isocubo(Punto vertice1,Punto vertice2) {
max=new Punto( Math.max(vertice1.x,vertice2.x),Math.max(vertice1.y,vertice2.y ), Math.max(vertice1.z,vertice2.z);
min = new Punto(Math.min(vertice1.x,vertice2.x), Math.min(vertice1.y,vertice2.y), Math.min(vertice2.z, vertice1.z) ;
}/code]