29 if field_name
in mesh.point_data:
30 data = mesh.point_data[field_name]
31 target = mesh.point_data
32 elif field_name
in mesh.cell_data:
33 data = mesh.cell_data[field_name]
34 target = mesh.cell_data
36 raise KeyError(f
"Field '{field_name}' was not found in point or cell data.")
38 values = np.asarray(data)
40 values = values.reshape(-1, 1)
42 values = values.reshape(values.shape[0], -1)
44 component_index = component
46 if component_index < 0
or component_index >= values.shape[1]:
48 f
"Field '{field_name}' has {values.shape[1]} component(s), "
49 f
"so component {component} is out of range. "
50 f
"Use 0..{values.shape[1] - 1}."
53 component_name = f
"{field_name}[{component_index}]"
54 target[component_name] = values[:, component_index]
59 my_cmap = plt.cm.get_cmap(
"turbo", 124)
61 output_file = str(Path(file).with_suffix(
".png"))
64 mesh = mesh.warp_by_vector(args.wrap_vector, factor=args.wrap_factor)
66 plotter = pv.Plotter(notebook=
False, off_screen=
True)
69 scalar_name = args.field
70 if args.field_component
is not None:
72 mesh, args.field, args.field_component
77 show_edges=args.show_edges,
84 show_edges=args.show_edges,
89 plotter.camera_position = args.d2
90 plotter.camera.zoom(args.zoom)
91 plotter.camera.roll += args.roll
92 plotter.camera.azimuth += args.azimuth
93 plotter.screenshot(output_file)