function Aria=daria(p,Parametro) % Cube

global HPRIMOPIANO;            
global HSECONDOPIANO;
global HSOFFITTI;              
global PROFONDITA;             
global LARGHEZZA;              

Casa=dcasetta(p);
if (length(Parametro)>0)
    Aria=dunion(dcube(p,0,PROFONDITA,0,LARGHEZZA,0,HSOFFITTI+HPRIMOPIANO+HSECONDOPIANO),Casa);
else
    Aria=ddiff(dcube(p,0,PROFONDITA,0,LARGHEZZA,0,HSOFFITTI+HPRIMOPIANO+HSECONDOPIANO),Casa);
end
    
function d=dcube(p,x1,x2,y1,y2,z1,z2) % Cubo
[a b]=size(p);
d=-min(min(min(min(min(-y1*ones(a,1)+p(:,2),y2*ones(a,1)-p(:,2)),-x1*ones(a,1)+p(:,1)),x2*ones(a,1)-p(:,1)),-z1*ones(a,1)+p(:,3)),z2*ones(a,1)-p(:,3));

