我知道,这是一个非常简单的问题,但我到处都是.也许我错过了这一点,我不知道; 但这应该相当容易.
我的问题很简单,你如何通过Python在Blender 2.6中按名称选择对象?
在2.4-5中,可以简单地使用:
bpy.ops.object.select_name("OBJECT")
Run Code Online (Sandbox Code Playgroud)
......但这已经停止了,取而代之的是什么?
人们可以得到当前选择的对象......
bpy.context.selected_objects
Run Code Online (Sandbox Code Playgroud)
并且有一种方法来设置场景的活动对象......
bpy.context.scene.objects.active = bpy.data.objects["OBJECT"]
Run Code Online (Sandbox Code Playgroud)
还可以通过操作选择,例如select_all()或select_by_type()......
bpy.ops.object.select_all(action="TOGGLE")
Run Code Online (Sandbox Code Playgroud)
但我找不到简单地按名称选择的方法.
谢谢,我完全迷失了......
ImportError: No module named 'bpy'我在 Blender 控制台中收到错误。我正在 Blender 控制台中导入bpy模块,但仍然收到错误。经过长时间的谷歌搜索,我发现没有人在 Blender 中遇到同样的错误。
使用 Blender 2.7 和 python 3.4。
我的代码:
import sys
import bpy
sys.path.append("C:\Python34\Lib\site-packages")
import serial
import GameLogic
contr = GameLogic.getCurrentController()
own = contr.owner
dane=open('dane.txt', 'rb')
x=dane.read()
dane.close()
y = int(x)
print ("y=", y)
bpy.ops.transform.rotate(value=(y), axis=(0.0, 0.0, 0.0), constraint_axis=(False, False, False), constraint_orientation='', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1.0, snap=False, snap_target='CLOSEST', snap_point=(0.0, 0.0, 0.0), snap_align=False, snap_normal=(0.0, 0.0, 0.0), release_confirm=False)
Run Code Online (Sandbox Code Playgroud)
Blender 控制台的输出:
ImportError: No module named 'bpy'
Python script error - object …Run Code Online (Sandbox Code Playgroud) 我正在尝试为Blender 2.73创建一个自动构建系统,该系统读取包含大量路径的XML文件,逐个打开文件然后呈现它们.
我正在使用以下代码打开:
bpy.ops.wm.open_mainfile("file_path")
Run Code Online (Sandbox Code Playgroud)
我的问题是我收到以下错误:
Traceback (most recent call last):
File "<blender_console>", line 1, in <module>
File "<BLENDER_PATH>/scripts/modules/bpy/ops.py", line 186, in __call__
ret = op_call(self.idname_py(), C_dict, kw, C_exec, C_undo)
TypeError: Calling operator "bpy.ops.wm.open_mainfile" error, expected a string enum in ('INVOKE_DEFAULT', 'INVOKE_REGION_WIN', 'INVOKE_REGION_CHANNELS', 'INVOKE_REGION_PREVIEW', 'INVOKE_AREA', 'INVOKE_SCREEN', 'EXEC_DEFAULT', 'EXEC_REGION_WIN', 'EXEC_REGION_CHANNELS', 'EXEC_REGION_PREVIE)
Run Code Online (Sandbox Code Playgroud) 我有一个在 pyside 中制作的 GUI,可以渲染搅拌机文件。这个 GUI 有一个分辨率选项可以在渲染场景之前控制它......我在 PyCharm 中有这个代码,我需要在不打开搅拌器的情况下运行这个代码。
if resolutionWidth != 0:
bpy.context.scene.render.resolution_x = resolutionWidth
if resolutionHeight != 0:
bpy.context.scene.render.resolution_y = resolutionHeight
# Override Resolution Scale
#SCALE = batchRender_UI.resolution_scaleUI()
if SCALE != 0:
bpy.context.scene.render.resolution_percentage = SCALE
Run Code Online (Sandbox Code Playgroud) 我在Blender做了一个Cube.使用Python我确实进入编辑模式并选择了一个顶点:
import bpy
bpy.ops.mesh.primitive_cube_add()
bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.mesh.select_all(action="DESELECT")
bpy.context.tool_settings.mesh_select_mode = (True , False , False)
bpy.context.object.data.vertices[0].select = True
bpy.context.object.data.vertices[0].co = (-3,-2,-3)
Run Code Online (Sandbox Code Playgroud)
但是,顶点没有以橙色突出显示,虽然我告诉顶点转到-3,-2 - , - 3它的位置没有更新.
为什么它不突出也不动?
问题描述:在 VS Code 中,运行命令pip install bpy (如https://pypi.org/project/bpy/所示)并收到以下错误消息:
PS C:\Users\(...)\Local\Programs\Python\Python38> pip install bpy
Collecting bpy
Using cached bpy-0.0.0a0.tar.gz (19 kB)
ERROR: Command errored out with exit status 1:
command: 'c:\users\(...)\local\programs\python\python38\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\(...)\\Local\\Temp\\pip-install-xln6pb4c\\bpy\\setup.py'"'"'; __file__='"'"'C:\\Users\\(...)\\Local\\Temp\\pip-install-xln6pb4c\\bpy\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\(...)\Local\Temp\pip-pip-egg-info-0pdk7e9q'
cwd: C:\Users\(...)\Local\Temp\pip-install-xln6pb4c\bpy\
Complete output (16 lines):
Traceback (most recent call last):
File "c:\users\(...)\local\programs\python\python38\lib\tokenize.py", line 342, in find_cookie
codec = lookup(encoding)
LookupError: unknown encoding: future_fstrings
During handling of the above exception, …Run Code Online (Sandbox Code Playgroud) 我正在导入一个由多个单独的网格组成的模型。导入后(选择所有内容),我想根据 [X, Y, Z] 角度参数旋转导入的选定对象。另外,我想将脚本作为搅拌机“--background”外壳进程运行。
我尝试做这样的事情但它似乎不起作用。
bpy.ops.transform.rotate(value=math.radians(param.x), orient_axis='X');
bpy.ops.transform.rotate(value=math.radians(param.y), orient_axis='Y');
bpy.ops.transform.rotate(value=math.radians(param.z), orient_axis='Z');
我收到此错误:
RuntimeError:运算符 bpy.ops.transform.rotate.poll() 失败,上下文不正确
我尝试在互联网上搜索解决方案,但我无法确切理解出了什么问题。另外,我认为这个错误不会出现,因为我正在使用“--background”运行,而是因为我将它作为终端命令运行。
提前致谢!我正在使用搅拌机 2.9。
我试图编写一个python脚本并在Blender上下文中执行它。但是它报告“导入错误:没有名为“ bpy”的模块”。我尝试安装其他版本的Blender(即2.7.6),但似乎实际上在“ blender-2.76-rc2-win64 \ 2.76 \ python \ lib”内实际上没有名为bpy的模块,这是python搜索的路径我想的模块。我签出了关于Blender的文档,但是没有明确的方法下载bpy。任何帮助将不胜感激。