# Port to the new python api from original source at:<br></br># http://www.janw.gothere.uk.com/Download/Python/mimport.py<br></br># $Id: mimport.py,v 1.1 2004/01/30 00:08:13 len Exp $<br></br>import string<br></br>import Blender<br></br>from Blender import NMesh<br></br><br></br>Mscale = 10<br></br><br></br>def mImport(filename):<br></br> print 'mImport("%s")' % filename<br></br> file = open(filename, "r")<br></br> lines = file.readlines()<br></br> linenumber = 1<br></br> print "import into Blender ..."<br></br> mesh = NMesh.GetRaw()<br></br> verts = {}<br></br> for line in lines:<br></br> words = string.split(line)<br></br> if words and words[0] == "#":<br></br> pass # ignore comments<br></br> elif words and words[0] == "Vertex":<br></br> # words[1] is the index of the vertex<br></br> name = words[1]<br></br> x = Mscale * string.atof(words[2])<br></br> y = Mscale * string.atof(words[3])<br></br> z = Mscale * string.atof(words[4])<br></br> vert = NMesh.Vert(x, y, z)<br></br> verts[name] = vert<br></br> mesh.verts.append(vert)<br></br> elif words and words[0] == "Face":<br></br> # triangle<br></br> # words[1] is the index of the face<br></br> face = NMesh.Face()<br></br> face.append(verts[words[2]])<br></br> face.append(verts[words[3]])<br></br> face.append(verts[words[4]])<br></br> mesh.faces.append(face)<br></br> else:<br></br> print line<br></br> NMesh.PutRaw(mesh,"3DS")<br></br> mesh.update()<br></br> file.close()<br></br> print "... finished"<br></br><br></br>def callback(filename):<br></br> mImport(filename)<br></br><br></br>if __name__ == "__main__":<br></br> Blender.Window.FileSelector(callback, "Select .m file")<br></br>