Error in user YAML: (<unknown>): could not find expected ':' while scanning a simple key at line 4 column 1
---
show: step
version: 1.0
enable_checker: true
本教程同步发布在:
个人网站: `https://oeasy.org`
蓝桥云课: `https://www.lanqiao.cn/courses/3584`
GitHub: `https://github.com/overmind1980/oeasy-python-tutorial`
Gitee: `https://gitee.com/overmind1980/oeasypython`
---- oeasy Python 0679
- 这是 oeasy 系统化 Python 教程,从基础一步步讲,扎实、完整、不跳步。愿意花时间学,就能真正学会。
- 配套视频
- 上次 用代码
- 调用 一些函数 完成了
- 新建物体
- 设置物体位置、旋转、缩放
- 可以用纯代码
- 新建Mesh对象阵列
- 并且排队布阵吗?🤔
- 从终端启动blender
blender
- 先把工作区切换为
- 脚本工作区
- Script
- 将语句粘贴到python面板
bpy.ops.object.select_all(action="SELECT")
bpy.ops.object.delete()
bpy.ops.mesh.primitive_monkey_add()
- 回车运行
- 清空场景
- 添加猴子
- 可以把程序写到一个文件里面吗?
- 点击新建(New)按钮
- 新建一个文本
- 在下面的文本区域输入
print("hello blender")
- 输入完成后
- 点击run script
- 运行后
- 在信息调板中
- 看到信息
- bpy.ops.text.run_script()
- 但没有输出hello
- 在信息调板中
- 但是输出到哪儿了呢?
- 选中终端后
- 发现 输出位置
- 终端窗口!!!
- 所以
必须从终端 启动blender- 否则 无法 看到输出
- 可以把程序保存起来吗?
- 在文本调板 点击
- Text - Save As
- 文本 - 另存为
- 存成 t.py
- 在Code文件夹中
- 这样也方便下载
- 想做个复杂点的py
- 复制代码
bpy.ops.object.select_all(action="SELECT")
bpy.ops.object.delete()
bpy.ops.mesh.primitive_monkey_add()
bpy.data.objects["Suzanne"].location = (1, 2, 3)
bpy.data.objects["Suzanne"].rotation_euler = (0.2, 0.4, 0.6)
bpy.data.objects["Suzanne"].scale = (1, 1, 1.5)- 粘贴代码
- 点击Run Script 运行
- 快捷键alt+p
- 报错了
- 找不到bpy
import bpy
- 成功生成猴
- 属性符合设置
- 将下面代码复制进入vim编辑器
- 保存成 Code/b2.py
import bpy
bpy.ops.object.select_all(action="SELECT")
bpy.ops.object.delete()
bpy.ops.mesh.primitive_cube_add(location=(0,0,0))
bpy.ops.mesh.primitive_cube_add(location=(0,0,3))
bpy.ops.mesh.primitive_cube_add(location=(0,0,6))
-
代码作用
- 清空场景
- 新建 三个立方体
-
在blender的文本 窗口 中
- 重新加载
- 然后执行
- run script
- 可以让他们排成一排吗?
import bpy
bpy.ops.object.select_all(action="SELECT")
bpy.ops.object.delete()
for num in range(13):
bpy.ops.mesh.primitive_cube_add(size = 1)
bpy.context.object.location = (0,num,0)
- 13张麻将牌
- 码上了
- 点中第n个立方体
- y值为n
- 体型不像麻将牌
- 缩放比例大致是
- 1:2:4
import bpy
bpy.ops.object.select_all(action="SELECT")
bpy.ops.object.delete()
for num in range(13):
bpy.ops.mesh.primitive_cube_add(size = 1)
bpy.context.object.location = (0,num,0)
bpy.context.object.scale = (0.5,1,2)
- 这样就更像了
- 可以做成楼梯吗?
- 这次使用脚本工作区中的文本面板
- 这面板可以编写python程序
- 还可以保存、导出
- 这样就可以将程序保留下来了
- 可以制作阶梯吗?🤔
- 我们下次再说!👋
- 配套视频
- 本文来自 oeasy Python 系统教程。
- 想完整、扎实学 Python,
- 搜索 oeasy 即可。



















