def draw_element_disp(ax,el,factor = 1.,ls = "dashed",**kwargs):
coord = np.array([nd.coord for nd in el.nodes])
n = len(coord)
disp = np.array([nd.disp[key] for nd in el.nodes for key in ["Ux","Uy"]])
disp = disp.reshape(n,2)
new_coords = coord+disp*factor*1e3
line = Line2D(new_coords[:,0],new_coords[:,1],linestyle = ls,**kwargs)
line2 = Line2D((new_coords[:,0][-1],new_coords[:,0][0]),(new_coords[:,1][-1],new_coords[:,1][0]),ls = ls,**kwargs)
ax.add_line(line)
ax.add_line(line2)
评论列表
文章目录