2013-05-20 43 views
0

我尝试将数据从three.js网格导出到webworker中的字符串。我有失去原型信息的麻烦。 (这不符合three.js所的问题,但随着网络的工人一般来说,我尝试发送对象webworker和进口脚本中使用它。)将自定义对象传递给webworker会导致丢失原型信息

这是我的webworker代码:

importScripts('../editor/three.js', '../exporter.js'); 

onmessage = function(event) { 
    postMessage(event.data); 
    export(event.data); 
}; 

在event.data中是具有面和顶点的对象。 PostMessage发送正确的信息。如 - 法向量知道clone()函数。

问题是,当我尝试访问export()函数中的数据时。然后值是正确的,但我放弃了所有的原型信息。所以法线向量具有属性x,y,z,但不知道clone()函数。

exporter.js中声明的Export()函数和three.js对象的定义在three.js中。

任何想法?

谢谢。

+0

你在'event.data'中放了什么?你确定'event.data'实际上是一个javascript对象而不是一个JSON编码对象(在这种情况下对象的所有功能都将丢失)? – Popov

+0

是的,我确定。我可以在webworker中调用对象的函数,但是当我尝试在导入的脚本中调用它时,它不起作用 – kraag22

回答

0

愚蠢的问题 - “webworkers的规范不允许任何内容,除了要传递的字符串。”

相关问题