for 循环中的 objects.location 请求不会更新
Posted
技术标签:
【中文标题】for 循环中的 objects.location 请求不会更新【英文标题】:objects.location request in a for loop won't update 【发布时间】:2021-04-12 17:01:13 【问题描述】:我已经开始在搅拌机中使用 Python。 我正在尝试在单个对象上获取动画的骨架,并且正在尝试运行以下脚本:
for count in range(1, value, 1):
bpy.context.view_layer.objects.active = bpy.data.objects[count]
loc = bpy.data.objects[count].location
bpy.ops.object.armature_add(enter_editmode=False, align='WORLD', location=(loc[0], loc[1], 0.1), scale=(1, 1, 1))
结果给出了第一个对象上的所有骨架。变量loc
似乎没有更新。
有人可以帮忙吗?
【问题讨论】:
你试过print(loc)
看看你在变量中得到了什么吗?您也可以使用print()
来检查其他变量。
我做到了。看起来count
更新了,但是loc
没有
【参考方案1】:
解决了!
我的旧脚本会将一个新对象“Armature.001”添加到 bpy.data.objects
,它出现在对象列表中的“Cube.001”之前。
所以 forloop 会向前移动,但所有对象也会如此,因此没有效果。
【讨论】:
以上是关于for 循环中的 objects.location 请求不会更新的主要内容,如果未能解决你的问题,请参考以下文章
Java中的增强for循环怎么用?for()中的参数是啥意思