注釈
Go to the end to download the full example code
円柱を用いたトラス状のFEAソリューションのプロット#
点と点の間のつながりを,スカラーで色づけされた円柱として3Dにプロットします.
import numpy as np
import pyvista
トラスの点と要素を定義します. ここでは,有限要素解析から来ているように, ノード
と呼びます.
nodes = [
[0.0, 0.0, 0.0],
[0.0, 1.0, 0.0],
[4.0, 3.0, 0.0],
[4.0, 0.0, 0.0],
[0.0, 1.0, 2.0],
[4.0, 1.0, 2.0],
[4.0, 3.0, 2.0],
]
edges = np.array(
[
[0, 4],
[1, 4],
[3, 4],
[5, 4],
[6, 4],
[3, 5],
[2, 5],
[5, 6],
[2, 6],
]
)
# We must "pad" the edges to indicate to vtk how many points per edge
padding = np.empty(edges.shape[0], int) * 2
padding[:] = 2
edges_w_padding = np.vstack((padding, edges.T)).T
edges_w_padding
array([[2, 0, 4],
[2, 1, 4],
[2, 3, 4],
[2, 5, 4],
[2, 6, 4],
[2, 3, 5],
[2, 2, 5],
[2, 5, 6],
[2, 2, 6]])
ラインをチューブとしてレンダリングしながらトラスをプロットします.
mesh = pyvista.PolyData(nodes, edges_w_padding)
colors = range(edges.shape[0])
mesh.plot(
scalars=colors,
render_lines_as_tubes=True,
style='wireframe',
line_width=10,
cmap='jet',
show_scalar_bar=False,
background='w',
)
Total running time of the script: (0 minutes 0.457 seconds)