通过网络在搅拌机中发送矢量对象

时间:2013-03-25 08:34:18

标签: python sockets networking blender

如何发送矢量对象。 我试图通过udp套接字连接以矢量格式发送对象的位置。

socket.sendto(self.cube.worldPosition,server_addr)

但是我收到以下错误: TypeError:'Vector'不支持缓冲区接口

我如何实现这一点,还是有其他方式来发送对象的位置?

1 个答案:

答案 0 :(得分:1)

只需访问vector的值,形成一个列表并使用pickle模块发送

    ##player.worldPosition is the vector        
    x = player.worldPosition[0]
    y = player.worldPosition[1]
    z = player.worldPosition[2]                      
    xyz = [x,y,z] #forming the list
    ddd = pickle.dumps(xyz) #serialize the list
    self.socket.sendto(ddd,self.server_address) #off it goes 

这对我有用