from Blender import *
Window.EditMode(0)
me = Mesh.New('mhBaseMesh')
# Load verts
f = open ('/usr/share/makehuman/base.vertices', 'r')
verts = []
while 1 :
l = f.readline()
if l == '':
break
lt = []
for e in l.split(',') :
lt.append(float(e))
verts.append(lt)
f.close ()
me.verts.extend(verts)
# Load faces
f = open ('/usr/share/makehuman/base.faces', 'r')
faces = []
while 1 :
l = f.readline()
if l == '':
break
lt = []
for e in l.split(',') :
lt.append(int(e))
faces.append(lt)
f.close ()
me.faces.extend(faces)
# Load materials
f = open ('/usr/share/makehuman/base.materials', 'r')
ml = []
while 1 :
l = f.readline()
if l == '':
break
ls = l.split(',')
mat = Material.New(ls[0].strip())
mat.rgbCol = [float(ls[1]), float(ls[2]), float(ls[3])]
ml.append(mat)
f.close ()
me.materials = ml
# Load colors
f = open ('/usr/share/makehuman/base.colors', 'r')
for face in me.faces :
l = f.readline()
if l == '':
break
face.mat = int(l)
f.close ()
# Build object
scn = Scene.GetCurrent()
ob = scn.objects.new(me, 'myBaseObj')
# Add the base shape
ob.insertShapeKey()
# Add a target
ob.insertShapeKey()
f = open ('/usr/share/makehuman/targets/head/head_baby.target', 'r')
vl = me.key.blocks[-1].data
while 1 :
l = f.readline()
if l == '':
break
ls = l.split(',')
vi = int(ls[0])
vl[vi].x = float(ls[1])
vl[vi].y = float(ls[2])
vl[vi].z = float(ls[3])
f.close ()