Blender v2.8错误:从新插件导出文件

时间:2019-09-27 07:54:12

标签: blender

对于我正在开发的Blender v2.80插件,我必须导出从Blender context 中可用数据生成的文件。当我尝试执行文件导出时,出现此异常:

  

from_object(...):当前仅支持网格对象

由功能bpy_bmesh_from_object

给出

我认为这是因为在上下文中我具有一些“非法”元素,但是我无法理解哪个元素。谁能帮我吗?

我还附上错误的追溯信息:

回溯(最近通话最近):

>  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\bl\menus.py", line 101, in execute
    fds_file = sc.to_fds(context=context, full=True)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2030, in to_fds
    bodies.append(context.scene.collection.to_fds(context))
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2069, in to_fds
    bodies.extend(child.to_fds(context) for child in self.children)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2069, in <genexpr>
    bodies.extend(child.to_fds(context) for child in self.children)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2068, in to_fds
    bodies.extend(ob.to_fds(context) for ob in obs)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2068, in <genexpr>
    bodies.extend(ob.to_fds(context) for ob in obs)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 1956, in to_fds
    return self.bf_namelist.to_fds(context)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\types.py", line 244, in to_fds
    to_fds = p(self.element).to_fds(context)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 1229, in to_fds
    xbs, msg = geometry.to_fds.ob_to_xbs(context, ob, scale_length)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\geometry\to_fds.py", line 136, in ob_to_xbs
    return _choice_to_xbs[ob.bf_xb](context, ob, scale_length)  # recalc
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\geometry\to_fds.py", line 58, in _ob_to_xbs_bbox
    xbs = list((utils.get_bbox_xbs(context, ob, scale_length, world=True),))
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\geometry\utils.py", line 78, in get_bbox_xbs
    bm = get_object_bmesh(context, ob, world=True)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\geometry\utils.py", line 13, in get_object_bmesh
    bpy.ops.object.mode_set(mode="OBJECT")  # actualize
  File "F:\Tools\Blender\2.80\scripts\modules\bpy\ops.py", line 201, in __call__
    ret = op_call(self.idname_py(), None, kw)
RuntimeError: Operator bpy.ops.object.mode_set.poll() failed, context is incorrect

> location: F:\Tools\Blender\2.80\scripts\modules\bpy\ops.py:201

> location: F:\Tools\Blender\2.80\scripts\modules\bpy\ops.py:201
Error: Traceback (most recent call last):
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\bl\menus.py", line 101, in execute
    fds_file = sc.to_fds(context=context, full=True)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2030, in to_fds
    bodies.append(context.scene.collection.to_fds(context))
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2069, in to_fds
    bodies.extend(child.to_fds(context) for child in self.children)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2069, in <genexpr>
    bodies.extend(child.to_fds(context) for child in self.children)
  File "C:\Users\Carlo\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\blenderfds28x\lang.py", line 2068, in to_fds
    bodies.extend(ob.to_fds(context) for ob in ... truncated

0 个答案:

没有答案