View Single Post
  #5  
Old 12-23-2010, 07:38 PM
psykoko psykoko is offline
Member
 
Join Date: Dec 2010
Posts: 9
Hi. i did modify my code, but i don't work correctly.
please modify my code
Code:
import viz
import vizmat
import vizinfo
import socket
import struct
viz.go()

#Add an avatar to the scene
female = viz.add('vcc_female.cfg')
viz.clearcolor(0.5,0.5,1) 
female.setPosition([-0.08,0,0.8]) 
female.setEuler([0,0,0])
female.scale(1.4,1,1)



#Get a handle to the Arm bone
Forearm = female.getBone('Bip01 R Forearm')
Forearm.lock() 
Forearm.setEuler(0, -5, 0) 


UpperArm = female.getBone('Bip01 R UpperArm')
UpperArm.lock()
UpperArm.setEuler(0, -30, -80) 

Hand = female.getBone('Bip01 R Hand')
Hand.lock()

Head = female.getBone('Bip01 Head')
Head.lock()
Head.setPosition(-100,0,0)


Neck = female.getBone('Bip01 Neck')
Neck.lock()
Neck.setEuler(0,0,-15)




UDP_IP="localhost"
UDP_PORT=8000

sock = socket.socket( socket.AF_INET, # Internet
					socket.SOCK_DGRAM ) # UDP
sock.bind( (UDP_IP,UDP_PORT) )

udp = 0 
def example1():
	global udp 
	while True:
		data, addr = sock.recvfrom( 1024 ) # buffer size is 1024 bytes
		udp = struct.unpack(">d", data)[0]
	True.close()
viz.director(example1)


def update():
	print udp 
	right = open('c:\\ownership\\test4.txt', 'a+')
	right.write(str(udp)+'\n') 
	
	if 0 < udp:
		a = Forearm.getEuler()
		A = a[2]
		n = max(A -0.5,-90)
		N = A + 90 
		Forearm.setEuler(0,0,n)	
		if n == -90:
			Forearm.setEuler([0,0,N])
					
	else :
		b = Forearm.getEuler()
		B = b[2]
		n2 = min(B +0.2,0)
		Forearm.setEuler(0,0,n2)
	
vizact.ontimer(0,update)
Reply With Quote