MCPcopy Create free account
hub / github.com/Zhiyuan-R/Tiger-Diffusion / meshwrite

Function meshwrite

utils/visualize.py:58–91  ·  view source on GitHub ↗

Save a 3D mesh to a polygon .ply file.

(filename, verts, faces, norms, colors)

Source from the content-addressed store, hash-verified

56 f.close()
57
58def meshwrite(filename, verts, faces, norms, colors):
59 """Save a 3D mesh to a polygon .ply file.
60 """
61 # Write header
62 ply_file = open(filename, 'w')
63 ply_file.write("ply\n")
64 ply_file.write("format ascii 1.0\n")
65 ply_file.write("element vertex %d\n" % (verts.shape[0]))
66 ply_file.write("property float x\n")
67 ply_file.write("property float y\n")
68 ply_file.write("property float z\n")
69 ply_file.write("property float nx\n")
70 ply_file.write("property float ny\n")
71 ply_file.write("property float nz\n")
72 ply_file.write("property uchar red\n")
73 ply_file.write("property uchar green\n")
74 ply_file.write("property uchar blue\n")
75 ply_file.write("element face %d\n" % (faces.shape[0]))
76 ply_file.write("property list uchar int vertex_index\n")
77 ply_file.write("end_header\n")
78
79 # Write vertex list
80 for i in range(verts.shape[0]):
81 ply_file.write("%f %f %f %f %f %f %d %d %d\n" % (
82 verts[i, 0], verts[i, 1], verts[i, 2],
83 norms[i, 0], norms[i, 1], norms[i, 2],
84 colors[i, 0], colors[i, 1], colors[i, 2],
85 ))
86
87 # Write face list
88 for i in range(faces.shape[0]):
89 ply_file.write("3 %d %d %d\n" % (faces[i, 0], faces[i, 1], faces[i, 2]))
90
91 ply_file.close()
92
93
94def pcwrite(filename, xyz, rgb=None):

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected