www.pudn.com > calibr8.zip > makePCoords.m
function PC = makePCoords( Sp1, Ip1, Sp2, Ip2, Sp3, Ip3, Sp4, Ip4, Sp5, Ip5, Sp6, Ip6 ) [n1 m1] = size( Sp1 ); [n2 m2] = size( Sp2 ); [n3 m3] = size( Sp3 ); nC = 3; if nargin > 6 [n4 m4] = size( Sp4 ); nC = 4; if( nargin > 8 ) [n5 m5] = size( Sp5 ); nC = 5; if( nargin > 10 ) [n6 m6] = size( Sp6 ); nC = 6; end end end PCsize = 0; for i = 1:nC PCsize = PCsize + eval(['n' num2str(i)]); end PC = zeros( PCsize, 5 ); PC(1:n1,1) = Sp1(:,1); PC(1:n1,2) = Sp1(:,2); PC(1:n1,3) = Sp1(:,3); PC(1:n1,4) = Ip1(:,1); PC(1:n1,5) = Ip1(:,2); PC(n1+1:n1+n2,1) = Sp2(:,1); PC(n1+1:n1+n2,2) = Sp2(:,2); PC(n1+1:n1+n2,3) = Sp2(:,3); PC(n1+1:n1+n2,4) = Ip2(:,1); PC(n1+1:n1+n2,5) = Ip2(:,2); PC(n1+n2 + 1:n1+n2+n3,1) = Sp3(:,1); PC(n1+n2 + 1:n1+n2+n3,2) = Sp3(:,2); PC(n1+n2 + 1:n1+n2+n3,3) = Sp3(:,3); PC(n1+n2 + 1:n1+n2+n3,4) = Ip3(:,1); PC(n1+n2 + 1:n1+n2+n3,5) = Ip3(:,2); if nargin > 6 PC(n1+n2+n3 + 1:n1+n2+n3+n4,1) = Sp4(:,1); PC(n1+n2+n3 + 1:n1+n2+n3+n4,2) = Sp4(:,2); PC(n1+n2+n3 + 1:n1+n2+n3+n4,3) = Sp4(:,3); PC(n1+n2+n3 + 1:n1+n2+n3+n4,4) = Ip4(:,1); PC(n1+n2+n3 + 1:n1+n2+n3+n4,5) = Ip4(:,2); if nargin > 8 PC(n1+n2+n3+n4 + 1:n1+n2+n3+n4+n5,1) = Sp5(:,1); PC(n1+n2+n3+n4 + 1:n1+n2+n3+n4+n5,2) = Sp5(:,2); PC(n1+n2+n3+n4 + 1:n1+n2+n3+n4+n5,3) = Sp5(:,3); PC(n1+n2+n3+n4 + 1:n1+n2+n3+n4+n5,4) = Ip5(:,1); PC(n1+n2+n3+n4 + 1:n1+n2+n3+n4+n5,5) = Ip5(:,2); if nargin > 10 PC(n1+n2+n3+n4+n5 + 1:n1+n2+n3+n4+n5+n6,1) = Sp6(:,1); PC(n1+n2+n3+n4+n5 + 1:n1+n2+n3+n4+n5+n6,2) = Sp6(:,2); PC(n1+n2+n3+n4+n5 + 1:n1+n2+n3+n4+n5+n6,3) = Sp6(:,3); PC(n1+n2+n3+n4+n5 + 1:n1+n2+n3+n4+n5+n6,4) = Ip6(:,1); PC(n1+n2+n3+n4+n5 + 1:n1+n2+n3+n4+n5+n6,5) = Ip6(:,2); end end end