%绘制桁架函数,Scale为变形缩放系数(以下为绘制图像部分) function AxisForce(ele,Load,Constr,x,y,U,LineWidth,LineStyle,Scale,AxialForce) CoordScale=[max(x)-min(x),max(y)-min(y)]; k=1; %计算变形后坐标 for i=1:length(x) if Constr(k,1)==i%--约束节点坐标不变 k=k+1; else%--非约束节点坐标加上缩放后的位移 x(i)=x(i)+Scale*U(2*i-1,1);y(i)=y(i)+Scale*U(2*i,1); end end %绘制杆件 jet_color = colormap(jet(ceil(max(AxialForce)-min(AxialForce)+1)));%+1是为了避免索引为0 color_index = ceil(AxialForce+(1-min(AxialForce))); for i=1:length(ele(:,1)) plot([x(ele(i,2)),x(ele(i,3))],[y(ele(i,2)),y(ele(i,3))],... 'color',jet_color(color_index(i),:),'LineWidth',LineWidth*ele(i,4)/max(ele(:,4))); hold on end colorbar caxis([min(AxialForce),max(AxialForce)]); % figure % for i=1:length(ele(:,1)) % plot([x(ele(i,2)),x(ele(i,3))],[y(ele(i,2)),y(ele(i,3))],... % LineStyle,'LineWidth',LineWidth*ele(i,4)/max(ele(:,4))); % % hold on % end %绘制节点 for i=1:length(x) x1=x(i);y1=y(i); scatter(x1,y1,15,'k','filled') end %绘制载荷 maxLoad=abs(Load(1,2))%寻找绝对值最大的·载荷 for i=1:length(Load(:,1)) if(maxLoad