function[]=ANIMAPRO2(K,K0,L,XYZt,XYZc1,XYZc2,MTC1,MTC2,Dnt,Lt,TIPO,C,vista,Q)
cam=[linspace(180,0,110)];
[Xf,Yf,Zf]=cylinder([0 1 2 3 4 2 2 2 2 2 2 2 2 2 2]);
if TIPO==1
R=zeros(242,1);
for z=1:4
for i=1:3:110
R(i)=-2500;
peso={'2500 TONS'};
kin=inv(K);
r=kin*R;
V=L*r;
F=K0*V;
TT1=abs(F(1:110));
TT1=[TT1 TT1 TT1 TT1 TT1 TT1 TT1 TT1 TT1];
TT2=abs(F(135:168));
TT3=abs(F(169:202));
TT2=[TT2 TT2 TT2 TT2 TT2];
TT3=[TT3 TT3 TT3 TT3 TT3];
TT4=abs(F(141));
TT5=abs(F(175));
TT6=abs(F(1));
TT7=abs(F(110));
R(i)=0;
[Xr,Yr,Zr,XC1,YC1,ZC1,XC2,YC2,ZC2,XC12,YC12,ZC12,XC22,YC22,ZC22,XYZT,XYZC1,XYZC2,XA,YA,ZA,XC1i,YC1i,ZC1i,XC2i,YC2i,ZC2i,n,col]=DRAW_PRO(XYZt,XYZc1,XYZc2,MTC1,MTC2,Dnt,r,F);
surf(XC1,YC1,ZC1,TT2);hold on
surf(XC2,YC2,ZC2,TT2);hold on
surf(XC12,YC12,ZC12,TT3);hold on
surf(XC22,YC22,ZC22,TT3);hold on
surf(Xr,Yr,Zr,TT1);hold on
surf(Xf*40,Yf*40+XYZt(i,2),Zf*1000+XYZt(i,3));hold on
text(0,XYZt(i,2),XYZt(i,3)+1200,peso,'color','g');hold on
surf(XA,YA+40,ZA,ones(16,5)*TT6);hold on
surf(XA,YA+Lt-40,ZA,ones(16,5)*TT7);hold on
surf(XC1i,YC1i,ZC1i,ones(2,5)*TT4);hold on
surf(XC2i,YC2i,ZC2i,ones(2,5)*TT5);hold on
FF=abs(F(111:130));
m=max(FF);
for j=1:length(MTC1(:,1))
f1=FF(j);
P=f1/m*(n-1);
P=(ceil(P)+1);q=30;
line([XYZT(MTC1(j,1),1)+220,XYZC1(MTC1(j,2),1)+q],[XYZT(MTC1(j,1),2),XYZC1(MTC1(j,2),2)],[XYZT(MTC1(j,1),3)-10,XYZC1(MTC1(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
line([XYZT(MTC1(j,1),1)-220,XYZC1(MTC1(j,2),1)-q],[XYZT(MTC1(j,1),2),XYZC1(MTC1(j,2),2)],[XYZT(MTC1(j,1),3)-10,XYZC1(MTC1(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
f2=FF(j+10);
P=f2/m*(n-1);
P=(ceil(P)+1);
line([XYZT(MTC2(j,1),1)+220,XYZC2(MTC2(j,2),1)+q],[XYZT(MTC2(j,1),2),XYZC2(MTC2(j,2),2)],[XYZT(MTC2(j,1),3)-10,XYZC2(MTC2(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
line([XYZT(MTC2(j,1),1)-220,XYZC2(MTC2(j,2),1)-q],[XYZT(MTC2(j,1),2),XYZC2(MTC2(j,2),2)],[XYZT(MTC2(j,1),3)-10,XYZC2(MTC2(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
end
if z==1
view(90,0)
zoom(1.7)
elseif(z==2)
view(90,30)
zoom(2.5)
elseif(z==3)
view(35,20)
zoom(4.2)
elseif(z==4)
view(15,10)
zoom(4.5)
end
camproj('perspective');
axis vis3d off;
set(findobj(gcf,'type','patch'),'FaceLighting','phong','BackFaceLighting','lit','SpecularColorReflectance',0)
light('position',[1000 2*Lt/3 40000],'style','infinite')
light('position',[1000 Lt 40000],'style','infinite')
light('position',[1000 0 4000],'style','local')
light('position',[100 Lt/2 700],'style','infinite')
shading interp, lighting phong
material metal
daspect([.8 1 1])
W=get(0,'screensize');
set(gcf,'position',W,'menubar','none')
set(gcf,'renderer','opengl','color','k');
drawnow
hold off
if i==1&z==1
msgbox('PRESS INTRO, TO GO SIMULATIONS','INSTRUCTION','help')
pause;
end
end
end
elseif TIPO==2
C=ceil(C);
R=zeros(242,1);
Q=ceil(Q);
R(C)=-Q;
peso=[num2str(Q) ' TONS'];
kin=inv(K);
r=kin*R;
V=L*r;
F=K0*V;
TT1=abs(F(1:110));
TT1=[TT1 TT1 TT1 TT1 TT1 TT1 TT1 TT1 TT1];
TT2=abs(F(135:168));
TT3=abs(F(169:202));
TT2=[TT2 TT2 TT2 TT2 TT2];
TT3=[TT3 TT3 TT3 TT3 TT3];
TT4=abs(F(141));
TT5=abs(F(175));
TT6=abs(F(1));
TT7=abs(F(110));
% R(i)=0;
[Xr,Yr,Zr,XC1,YC1,ZC1,XC2,YC2,ZC2,XC12,YC12,ZC12,XC22,YC22,ZC22,XYZT,XYZC1,XYZC2,XA,YA,ZA,XC1i,YC1i,ZC1i,XC2i,YC2i,ZC2i,n,col]=DRAW_PRO(XYZt,XYZc1,XYZc2,MTC1,MTC2,Dnt,r,F);
surf(XC1,YC1,ZC1,TT2);hold on
surf(XC2,YC2,ZC2,TT2);hold on
surf(XC12,YC12,ZC12,TT3);hold on
surf(XC22,YC22,ZC22,TT3);hold on
surf(Xr,Yr,Zr,TT1);hold on
surf(Xf*40,Yf*40+XYZt(C,2),Zf*1000+XYZt(C,3));hold on
text(0,XYZt(C,2),XYZt(C,3)+1200,peso,'color','g');hold on
surf(XA,YA+40,ZA,ones(16,5)*TT6);hold on
surf(XA,YA+Lt-40,ZA,ones(16,5)*TT7);hold on
surf(XC1i,YC1i,ZC1i,ones(2,5)*TT4);hold on
surf(XC2i,YC2i,ZC2i,ones(2,5)*TT5);hold on
FF=abs(F(111:130));
m=max(FF);
if m==0
m=1;
end
for j=1:length(MTC1(:,1))
f1=FF(j);
P=f1/m*(n-1);
P=(ceil(P)+1);q=30;
line([XYZT(MTC1(j,1),1)+220,XYZC1(MTC1(j,2),1)+q],[XYZT(MTC1(j,1),2),XYZC1(MTC1(j,2),2)],[XYZT(MTC1(j,1),3)-10,XYZC1(MTC1(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
line([XYZT(MTC1(j,1),1)-220,XYZC1(MTC1(j,2),1)-q],[XYZT(MTC1(j,1),2),XYZC1(MTC1(j,2),2)],[XYZT(MTC1(j,1),3)-10,XYZC1(MTC1(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
f2=FF(j+10);
P=f2/m*(n-1);
P=(ceil(P)+1);
line([XYZT(MTC2(j,1),1)+220,XYZC2(MTC2(j,2),1)+q],[XYZT(MTC2(j,1),2),XYZC2(MTC2(j,2),2)],[XYZT(MTC2(j,1),3)-10,XYZC2(MTC2(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
line([XYZT(MTC2(j,1),1)-220,XYZC2(MTC2(j,2),1)-q],[XYZT(MTC2(j,1),2),XYZC2(MTC2(j,2),2)],[XYZT(MTC2(j,1),3)-10,XYZC2(MTC2(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
end
if vista==1
view(90,0)
zoom(1.7)
elseif(vista==2)
view(60,30)
zoom(3)
elseif(vista==3)
view(35,20)
zoom(4)
elseif(vista==4)
view(10,5)
zoom(5.3)
elseif(vista==5)
view(90,90)
zoom(1.7)
end
camproj('perspective');
axis vis3d off;
set(findobj(gcf,'type','patch'),'FaceLighting','phong','BackFaceLighting','lit','SpecularColorReflectance',0)
%
light('position',[1000 2*Lt/3 40000],'style','infinite')
light('position',[1000 Lt 40000],'style','infinite')
light('position',[1000 0 4000],'style','local')
light('position',[100 Lt/2 700],'style','infinite')
shading interp, lighting phong
material metal
daspect([.8 1 1])
set(gcf,'renderer','opengl','color','k');
drawnow
hold off
elseif TIPO==3
R=zeros(242,1);
mov=avifile('puente7.avi','FPS',5,'quality',100,'compression','indeo5')
for i=1:3:110
R(i)=-2500;
peso={'1 TONS'};
kin=inv(K);
r=kin*R;
V=L*r;
F=K0*V;
TT1=abs(F(1:110));
TT1=[TT1 TT1 TT1 TT1 TT1 TT1 TT1 TT1 TT1];
TT2=abs(F(135:168));
TT3=abs(F(169:202));
TT2=[TT2 TT2 TT2 TT2 TT2];
TT3=[TT3 TT3 TT3 TT3 TT3];
TT4=abs(F(141));
TT5=abs(F(175));
TT6=abs(F(1));
TT7=abs(F(110));
R(i)=0;
[Xr,Yr,Zr,XC1,YC1,ZC1,XC2,YC2,ZC2,XC12,YC12,ZC12,XC22,YC22,ZC22,XYZT,XYZC1,XYZC2,XA,YA,ZA,XC1i,YC1i,ZC1i,XC2i,YC2i,ZC2i,n,col]=DRAW_PRO(XYZt,XYZc1,XYZc2,MTC1,MTC2,Dnt,r,F);
surf(XC1,YC1,ZC1,TT2);hold on
surf(XC2,YC2,ZC2,TT2);hold on
surf(XC12,YC12,ZC12,TT3);hold on
surf(XC22,YC22,ZC22,TT3);hold on
surf(Xr,Yr,Zr,TT1);hold on
surf(Xf*40,Yf*40+XYZt(i,2),Zf*1000+XYZt(i,3));hold on
text(0,XYZt(i,2),XYZt(i,3)+1200,peso,'color','k');hold on
surf(XA,YA+40,ZA,ones(16,5)*TT6);hold on
surf(XA,YA+Lt-40,ZA,ones(16,5)*TT7);hold on
surf(XC1i,YC1i,ZC1i,ones(2,5)*TT4);hold on
surf(XC2i,YC2i,ZC2i,ones(2,5)*TT5);hold on
FF=abs(F(111:130));
m=max(FF);
for j=1:length(MTC1(:,1))
%cables torre1
f1=FF(j);
P=f1/m*(n-1);
P=(ceil(P)+1);q=30;
line([XYZT(MTC1(j,1),1)+220,XYZC1(MTC1(j,2),1)+q],[XYZT(MTC1(j,1),2),XYZC1(MTC1(j,2),2)],[XYZT(MTC1(j,1),3)-10,XYZC1(MTC1(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
line([XYZT(MTC1(j,1),1)-220,XYZC1(MTC1(j,2),1)-q],[XYZT(MTC1(j,1),2),XYZC1(MTC1(j,2),2)],[XYZT(MTC1(j,1),3)-10,XYZC1(MTC1(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
%cables torre2}
f2=FF(j+10);
P=f2/m*(n-1);
P=(ceil(P)+1);
line([XYZT(MTC2(j,1),1)+220,XYZC2(MTC2(j,2),1)+q],[XYZT(MTC2(j,1),2),XYZC2(MTC2(j,2),2)],[XYZT(MTC2(j,1),3)-10,XYZC2(MTC2(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
line([XYZT(MTC2(j,1),1)-220,XYZC2(MTC2(j,2),1)-q],[XYZT(MTC2(j,1),2),XYZC2(MTC2(j,2),2)],[XYZT(MTC2(j,1),3)-10,XYZC2(MTC2(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
end
view(34,20)
zoom(4)
% view(35,20)
% zoom(4.2)
camproj('perspective');
axis vis3d off;
set(findobj(gcf,'type','patch'),'FaceLighting','phong','BackFaceLighting','lit','SpecularColorReflectance',0)
% if (i==1||i==110)
light('position',[1000 2*Lt/3 40000],'style','infinite')
light('position',[1000 Lt 40000],'style','infinite')
light('position',[1000 0 4000],'style','local')
light('position',[100 Lt/2 700],'style','infinite')
% end
shading interp, lighting phong
material metal
daspect([.8 1 1])
set(gcf,'position',[10 50 1000 700],'menubar','none')
set(gcf,'renderer','opengl')%,'color','k');
drawnow
gg=getframe;%(gcf);
mov=addframe(mov,gg);
hold off
end
mov=close(mov)
elseif TIPO==4
R=30*Q;
kin=inv(K);
r=kin*R;
V=L*r;
F=K0*V;
TT1=abs(F(1:110));
TT1=[TT1 TT1 TT1 TT1 TT1 TT1 TT1 TT1 TT1];
TT2=abs(F(135:168));
TT3=abs(F(169:202));
TT2=[TT2 TT2 TT2 TT2 TT2];
TT3=[TT3 TT3 TT3 TT3 TT3];
TT4=abs(F(141));
TT5=abs(F(175));
TT6=abs(F(1));
TT7=abs(F(110));
[Xr,Yr,Zr,XC1,YC1,ZC1,XC2,YC2,ZC2,XC12,YC12,ZC12,XC22,YC22,ZC22,XYZT,XYZC1,XYZC2,XA,YA,ZA,XC1i,YC1i,ZC1i,XC2i,YC2i,ZC2i,n,col]=DRAW_PRO(XYZt,XYZc1,XYZc2,MTC1,MTC2,Dnt,r,F);
surf(XC1,YC1,ZC1,TT2);hold on
surf(XC2,YC2,ZC2,TT2);hold on
surf(XC12,YC12,ZC12,TT3);hold on
surf(XC22,YC22,ZC22,TT3);hold on
surf(Xr,Yr,Zr,TT1);hold on
surf(XA,YA+40,ZA,ones(16,5)*TT6);hold on
surf(XA,YA+Lt-40,ZA,ones(16,5)*TT7);hold on
surf(XC1i,YC1i,ZC1i,ones(2,5)*TT4);hold on
surf(XC2i,YC2i,ZC2i,ones(2,5)*TT5);hold on
FF=abs(F(111:130));
m=max(FF);
for j=1:length(MTC1(:,1))
%cables torre1
f1=FF(j);
P=f1/m*(n-1);
P=(ceil(P)+1);q=30;
line([XYZT(MTC1(j,1),1)+220,XYZC1(MTC1(j,2),1)+q],[XYZT(MTC1(j,1),2),XYZC1(MTC1(j,2),2)],[XYZT(MTC1(j,1),3)-10,XYZC1(MTC1(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
line([XYZT(MTC1(j,1),1)-220,XYZC1(MTC1(j,2),1)-q],[XYZT(MTC1(j,1),2),XYZC1(MTC1(j,2),2)],[XYZT(MTC1(j,1),3)-10,XYZC1(MTC1(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
%cables torre2}
f2=FF(j+10);
P=f2/m*(n-1);
P=(ceil(P)+1);
line([XYZT(MTC2(j,1),1)+220,XYZC2(MTC2(j,2),1)+q],[XYZT(MTC2(j,1),2),XYZC2(MTC2(j,2),2)],[XYZT(MTC2(j,1),3)-10,XYZC2(MTC2(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
line([XYZT(MTC2(j,1),1)-220,XYZC2(MTC2(j,2),1)-q],[XYZT(MTC2(j,1),2),XYZC2(MTC2(j,2),2)],[XYZT(MTC2(j,1),3)-10,XYZC2(MTC2(j,2),3)],'color',col(P,:),'LineWidth',1);hold on
end
view(35,20)
zoom(4.2)
camproj('perspective');
axis vis3d off;
set(findobj(gcf,'type','patch'),'FaceLighting','phong','BackFaceLighting','lit','SpecularColorReflectance',0)
light('position',[1000 2*Lt/3 40000],'style','infinite')
light('position',[1000 Lt 40000],'style','infinite')
light('position',[1000 0 4000],'style','local')
light('position',[100 Lt/2 700],'style','infinite')
shading interp, lighting phong
material dull
daspect([.8 1 1])
%set(gcf,'position',[0 0 1000 700],'menubar','none')
set(gcf,'renderer','zbuffer','color','w')%,'color','k');
drawnow
end