self.set(message, 1.0)
+def progress_start(base):
+ global progressBar
+ progressBar=ProgressBar(base)
+
+def progress_finish():
+ global progressBar
+ progressBar.finish()
+
+def progress_print(message, progress=0.05):
+ global progressBar
+ progressBar.advance(message, progress)
+
+def progress_set(message, progress):
+ global progressBar
+ progressBar.set(message, progress)
+
+
###############################################################################
# for mqo mikoto bone.
###############################################################################
o.select(True )
scene.objects.active=o
+def objectGetActive(scene):
+ return scene.objects.active
+
def meshAddVertexGroup(meshObject, name):
meshObject.getData(mesh=True).addVertGroup(name)
message='finished in %.2f sec' % (time.time()-self.start)
self.set(message, 1.0)
+def progress_start(base):
+ global progressBar
+ progressBar=ProgressBar(base)
+
+def progress_finish():
+ global progressBar
+ progressBar.finish()
+
+def progress_print(message, progress=0.05):
+ global progressBar
+ progressBar.advance(message, progress)
+
+def progress_set(message, progress):
+ global progressBar
+ progressBar.set(message, progress)
+
###############################################################################
class Writer(object):
o.selected=True
scene.objects.active=o
+def objectGetActive(scene):
+ return scene.objects.active
+
def meshAddVertexGroup(meshObject, name):
meshObject.add_vertex_group(name)
###############################################################################
import os
import sys
-import re
import math
# C extension
xrange=range
###############################################################################
-# progress bar
-###############################################################################
-def progress_start(base):
- global progressBar
- progressBar=bl.ProgressBar(base)
-
-def progress_finish():
- global progressBar
- progressBar.finish()
-
-def progress_print(message, progress=0.05):
- global progressBar
- progressBar.advance(message, progress)
-
-def progress_set(message, progress):
- global progressBar
- progressBar.set(message, progress)
-
-
-###############################################################################
def convert_coord(pos):
"""
Left handed y-up to Right handed z-up
############################################################
# material
############################################################
- progress_print('create materials')
+ bl.progress_print('create materials')
mesh_material_map={}
textureMap={}
imageMap={}
############################################################
# vertex
############################################################
- progress_print('create vertices')
+ bl.progress_print('create vertices')
# create vertices
vertices=[]
if isBlender24():
############################################################
# face
############################################################
- progress_print('create faces')
+ bl.progress_print('create faces')
# create faces
mesh_face_indices=[]
mesh_face_materials=[]
############################################################
# clean up not used vertices
############################################################
- progress_print('clean up vertices not used')
+ bl.progress_print('clean up vertices not used')
remove_vertices=[]
vertex_map={}
for i, v in enumerate(l.each_vertex()):
bl.meshVertsDelete(mesh, remove_vertices)
- progress_print('%s created' % mesh.name)
+ bl.progress_print('%s created' % mesh.name)
return vertex_map
"""
load pmd file to context.
"""
+ bl.progress_start('pmd_import')
+
# load pmd
- progress_set('load %s' % filename, 0.0)
+ bl.progress_set('load %s' % filename, 0.0)
io=pmd.IO()
if not io.read(filename):
print("fail to load %s" % filename)
return
- progress_set('loaded %s' % filename, 0.1)
+ bl.progress_set('loaded %s' % filename, 0.1)
# create root object
model_name=io.getEnglishName()
if constraints:
bl.objectMakeParent(root, constraints)
- # select objects
- bl.objectSelect(root)
- for o in mesh_objects:
- bl.objectSelect(o)
- bl.objectSelect(armature_object)
-
+ bl.objectActivate(scene, root)
+ bl.progress_finish()
if isBlender24():
# for 2.4
if mode_edit:
Blender.Window.EditMode(0)
- progress_start('pmd_import')
scene = bpy.data.scenes.active
__execute(filename, scene)
scene.update(0)
- progress_finish()
# restore edit mode
if mode_edit:
else:
# for 2.5
def execute_25(*args):
- progress_start('pmd_import')
__execute(*args)
- progress_finish()
# import operator
class IMPORT_OT_pmd(bpy.types.Operator):