Isocubi

valesyle92
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 :D :-D

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
apatriarca
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.

valesyle92
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]

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.