"""World vertices of the exported Remora meshes (closed canopy and lid), every 2nd one, to checks/remora_points.npy""" import bpy, numpy as np, os pts = [] for o in bpy.data.objects: if o.type == 'MESH' and o.name.startswith("SM_Remora") and o.name != "SM_Remora_Cabin": M = np.array(o.matrix_world) co = np.empty(len(o.data.vertices) * 3); o.data.vertices.foreach_get("co", co) co = co.reshape(-1, 3)[::2] pts.append(co @ M[:3, :3].T + M[:3, 3]) p = np.concatenate(pts) np.save(os.path.join(os.path.dirname(bpy.data.filepath), "build", "checks", "remora_points.npy"), p) print("POINTS", p.shape, p.min(0), p.max(0))