%Skrypt rysuje schemat 3D sieci wodoci¹gowej na podstawie wspó³rzêdnych wêz³ów i po³¹czeñ z programu EPANET

hold on

[nr1,x,y]=textread('H:\chwila\ts\vba\Map.txt','%f%f%f'); %wczytywanie wspó³rzêdnych 'x' oraz 'y' wêz³ów sieci
XY=[nr1,x,y]; %macierz siatki wêz³ów w p³aszczyŸnie xy
%Poni¿ej ustawiam wczytane wêz³y sieci 'xy' w nowej macierzy 'wspxy' w kolejnoœci numeru wêz³a
%Wspó³rzêdna x stanowi pierwsz¹, a wspó³rzêdna y drug¹ kolumnê macierzy 'wspxy'
for j=1:numel(nr1)
    i=nr1(j);
    wspxy(i,1)=x(j);
    wspxy(i,2)=y(j);
end

[nr2,z]=textread('H:\chwila\ts\vba\Elev.txt','%f%f'); %wczytywanie wspó³rzêdnej 'z' wêz³ów sieci
Z=[nr2,z]; %macierz siatki wêz³ów w osi z
%Poni¿ej przek³adam wêz³y sieci z macierzy wspxy do nowej macierzy wspxyz, dopisuj¹c do odpowiednich wêz³ów wspó³rzêdn¹ 'z'
for k=1:numel(nr2)
    i=nr2(k);
    wspxyz(i,1)=wspxy(i,1);
    wspxyz(i,2)=wspxy(i,2);
    wspxyz(i,3)=z(k)/1000;
end

[nr3,nrp,nrk]=textread('H:\chwila\ts\vba\Pipes.txt','%f%f%f'); %wczytywanie macierzy numerów wêz³ów, tworz¹cych po³aczenia (rury)

%Rysowanie wykresu - odcinki w przestrzeni po kolei dla poszczególnych po³¹czeñ. 
%Argumentami s¹ wspó³rzêdne x,y i z pocz¹tku i koñca ka¿dego po³¹czenia
for p=1:numel(nr3)
    plot3([wspxyz(nrp(p),1) wspxyz(nrk(p),1)],[wspxyz(nrp(p),2) wspxyz(nrk(p),2)],[wspxyz(nrp(p),3) wspxyz(nrk(p),3)])
end

hold off

%axis equal