R=[1,-0.5,-0.5];for i=2:25a = -0.50;b = 0.50;R = [R;i,(b-a).*rand(1,1) + a,(b-a).*rand(1,1) + a];endR=[R;26,0.5,0.5];disp(R);[D,I] = pdist2(R(:,(2:3)),R(:,(2:3)),'euclidean','Smallest',3);D(1,:)=[];I(1,:)=[];disp(D);disp(I);Edge=zeros(52,3);for i=1:26 %intersect is a function written correctly!
if intersect(R(i,2:3),R(I(1,i),2:3))==1 continue else Edge(i,1)=i; Edge(i,2)=I(1,i); Edge(i,3)=D(1,i); endendfor j=1:26 if intersect(R(j,2:3),R(I(2,j),2:3))==1 continue else Edge(j+26,1)=j; Edge(j+26,2)=I(2,j); Edge(j+26,3)=D(2,j); endenddisp(Edge);Q=zeros(1,3);for k=1:51 if Edge(k,:)==Q Edge(k,:)=[]; endend disp(Edge);
The error I am receiving is:
Index in position 1 exceeds array bounds (must not exceed 42).
Error in ehe (line 39)
if Edge(k,:)==Q
Best Answer