def test_joint2Point_Motion(): bvhFilePath = '../samples/physics2_WalkSameSame00.bvh' jointMotion, frameTime = yf.readBvhFileAsJointMotion(bvhFilePath, .1) pointMotion = joint2Point_Motion(jointMotion) print 'jointMotion.skeleton', jointMotion[0].skeleton print 'pointMotion.skeleton', pointMotion[0].skeleton print 'jointMotion.skeleton - pointMotion.skeleton', set( jointMotion[0].skeleton.joints.keys( )) - pointMotion[0].skeleton.pointSet print 'pointMotion.skeleton - jointMotion.skeleton', pointMotion[ 0].skeleton.pointSet - set(jointMotion[0].skeleton.joints.keys()) motionSystem = ym.MotionSystem() motionSystem.addMotion(pointMotion) motionSystem.addMotion(jointMotion) renderers = [] renderers.append(yr.PointMotionRenderer(pointMotion)) renderers.append( yr.JointMotionRenderer(jointMotion, (0, 255, 0), yr.LINK_LINE)) viewer = yv.Viewer2(100, 100, 800, 650, None, motionSystem, renderers) viewer.startTimer(frameTime) viewer.show() Fl.run()
def test_point2Joint_Motion(): mmFilePath = '../samples/physics2_WalkSameSame01.mm' pointMotion = yf.readMMFile(mmFilePath) frameTime = 1. / 30. pointMotion[0].pointMap['lFoot'][1] -= 0.1 # pointMotion = pointMotion[0:1] jointMotion = point2Joint_Motion(pointMotion, 'root') pointMotion2 = joint2Point_Motion(jointMotion) print 'pointMotion.skeleton', pointMotion[0].skeleton.links print pointMotion[0].pointMap.keys() print 'jointMotion.skeleton', jointMotion[0].skeleton.joints.keys() print 'pointMotion2.skeleton', pointMotion2[0].skeleton.links print pointMotion2[0].pointMap.keys() motionSystem = ym.MotionSystem() motionSystem.addMotion(pointMotion) motionSystem.addMotion(jointMotion) renderers = [] # renderers.append(yr.PointMotionRenderer(pointMotion)) renderers.append(yr.PointMotionRenderer(pointMotion2)) renderers.append( yr.JointMotionRenderer(jointMotion, (0, 255, 0), yr.LINK_LINE)) viewer = yv.Viewer2(100, 100, 800, 650, None, motionSystem, renderers) viewer.startTimer(frameTime) viewer.show() Fl.run()
def test_joint2Point_Motion(): bvhFilePath = '../samples/physics2_WalkSameSame00.bvh' jointMotion, frameTime = yf.readBvhFileAsJointMotion(bvhFilePath, .1) # bvhFilePath = '../../../Walking/ppmotion/wd2_WalkForwardNormal00.bvh' # jointMotion = yf.readBvhFile(bvhFilePath) # frameTime = 1/jointMotion.fps pointMotion = joint2Point_Motion(jointMotion) # pointMotion = joint2mm_Motion(jointMotion) print('jointMotion.skeleton', jointMotion[0].skeleton) print('pointMotion.skeleton', pointMotion[0].skeleton) print('jointMotion.skeleton - pointMotion.skeleton', set(jointMotion[0].skeleton.joints.keys()) - pointMotion[0].skeleton.pointSet) print('pointMotion.skeleton - jointMotion.skeleton', pointMotion[0].skeleton.pointSet - set(jointMotion[0].skeleton.joints.keys())) motionSystem = ym.MotionSystem() motionSystem.addMotion(pointMotion) motionSystem.addMotion(jointMotion) renderers = [] renderers.append(yr.PointMotionRenderer(pointMotion)) renderers.append(yr.JointMotionRenderer(jointMotion, (0,255,0), yr.LINK_LINE)) viewer = yv.Viewer2(100, 100, 800, 650, None, motionSystem, renderers) # viewer = yv.MotionViewer(100, 100, 800, 650) viewer.setRenderers(renderers) viewer.setMotionSystem(motionSystem) viewer.startTimer(frameTime) viewer.show() Fl.run()
def __init__(self): ybu.Subject.__init__(self) self.rendererNames = [] self.rendererMap = {} self.renderersVisible = {} self.motionNames = [] self.motionMap = {} self.motionSystem = ym.MotionSystem() self.objectNames = [] self.objectMap = {} self.selectedObject = None
def test_MotionViewer(): import Motion.ysMotion as ym import Resource.ysMotionLoader as yf import Renderer.ysRenderer as yr mmFilePath = '../samples/physics2_WalkSameSame01.mm' pointMotion = yf.readMMFile(mmFilePath) frameTime = 1. / 30. motionSystem = ym.MotionSystem() motionSystem.addMotion(pointMotion) renderers = [] renderers.append(yr.PointMotionRenderer(pointMotion)) viewer = MotionViewer(100, 100, 600, 400) # viewer = Viewer(100, 100, 800, 650, motionSystem, renderers) viewer.startTimer(frameTime) viewer.show() Fl.run()
def test_plot_LineCollection_speed(): import GUI.ysViewer as yv import Motion.ysMotion as ym import numpy as np from matplotlib import collections import time pt = time.time() count = 5 # plot xs = [] ys = [] # lines = [] for i in range(count): xs.append([]) ys.append([]) # line, = plot(range(100), range(100)) # lines.append(line) def beforeFrameCallback(frame): # print frame for i in range(count): xs[i].append(frame) ys[i].append(frame + i) # plot(xs[i], ys[i], 'b') plot([frame, frame + 1], [frame + i, frame + i + 1], 'b') # lines[i].set_xydata(frame,frame+i) # xys = [] # for i in range(count): # xys.append(xs[i]) # xys.append(ys[i]) # plot(xys) xlim(0, 100) ylim(0, 100) draw() if frame == 90: print time.time() - pt ## # LineCollection # fig = figure() # a = fig.add_subplot(111) # xys = [] # for i in range(count): # xys.append([]) # def beforeFrameCallback(frame): ## print frame # for i in range(count): # xys[i].append((frame, frame+i)) # ## col = collections.LineCollection([xys[i]]) # col = collections.LineCollection([[(frame, frame+i), (frame+1, frame+i+1)]]) # a.add_collection(col) # ## col = collections.LineCollection(xys) ## a.add_collection(col) # # xlim(0,100) # ylim(0,100) # draw() # if frame == 90: # print time.time() - pt tempMotion = ym.Motion([None] * 100) motionSystem = ym.MotionSystem() motionSystem.addMotion(tempMotion) viewer = yv.Viewer(100, 100, 800, 650, None, motionSystem, []) viewer.beforeFrameCallback = beforeFrameCallback viewer.startTimer(1 / 30.) viewer.show() Fl.run()