Error in user YAML: (<unknown>): did not find expected key while parsing a block mapping at line 1 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 0684
这是 oeasy 系统化 Python 教程,从基础一步步讲,扎实、完整、不跳步。愿意花时间学,就能真正学会。
三向_旋转head_航向轴_pitch_俯仰轴_bank_横滚轴
飞机由几部分构成
机身 body
尾翼 tail1 + tail2
机翼 wings
import bpy
from math import pi
bpy.ops.object.select_all(action="SELECT") # 选择所有物体
bpy.ops.object.delete() # 删除选定的物体
c919 = bpy.data.objects.new("c919", None)
bpy.data.collections["Collection"].objects.link(c919)
bpy.ops.mesh.primitive_cylinder_add(radius=1, depth=9)
bpy.context.object.rotation_euler[0] = pi /2
bpy.context.object.parent = c919
bpy.context.object.name = "body"
bpy.ops.mesh.primitive_cube_add(size=2)
bpy.context.object.scale = (0.2,0.75,1)
bpy.context.object.parent = c919
bpy.context.object.rotation_euler[0] = - pi / 4
bpy.context.object.location = (0, 5 ,1)
bpy.context.object.parent = c919
bpy.context.object.name = "tail1"
bpy.ops.mesh.primitive_cube_add(size=2)
bpy.context.object.scale = (1,0.5,0.25)
bpy.context.object.location = (0, 5 ,1)
bpy.context.object.parent = c919
bpy.context.object.name = "tail2"
bpy.ops.mesh.primitive_cube_add(size=2)
bpy.context.object.scale = (5,1,0.25)
bpy.context.object.location = (0, -1 ,0)
bpy.context.object.parent = c919
bpy.context.object.name = "wings"
c919.rotation_euler[0] = - pi / 4
3个旋转轴
俯仰轴 pitch
横滚轴 bank
航向轴 heading
俯仰轴 pitch
稳定的音高 doremi
不是滑音 颤音
而是稳定在某个频率的音高
投标枪
俯仰角 抛物线
投棒球、高尔夫球
或者吹捧 往天上吹 推销
船或者飞机 上下颠簸 跷跷板
搭帐篷 插入地面
定位
俯仰轴
How to pitch a tent
水手坐 长凳子 上
一bank 就靠岸了
可以抛锚了
所以河岸也叫做 bank
威尼斯 是 当时欧洲贸易中心
各国商船 跨越地中海 来来往往
在威尼斯 卸货、交割、支付、回款
货币很多
需要 对各国货币 进行 鉴别、估值、存管
繁荣的商业 促生了 金融业
当时欧洲法律 禁止犹太人 从事 大多数经济活动
犹太人 被迫 只能从事 货币借贷业务
第一批银行家 就在这 诞生了
import bpy
from math import pi
bpy.ops.object.select_all(action="SELECT") # 选择所有物体
bpy.ops.object.delete() # 删除选定的物体
c919 = bpy.data.objects.new("c919", None)
bpy.data.collections["Collection"].objects.link(c919)
bpy.ops.mesh.primitive_cylinder_add(radius=1, depth=9)
bpy.context.object.rotation_euler[0] = pi /2
bpy.context.object.parent = c919
bpy.ops.mesh.primitive_cube_add(size=2)
bpy.context.object.name = "body"
bpy.context.object.scale = (0.2,0.75,1)
bpy.context.object.parent = c919
bpy.context.object.rotation_euler[0] = - pi / 4
bpy.context.object.location = (0, 5 ,1)
bpy.context.object.parent = c919
bpy.context.object.name = "tail1"
bpy.ops.mesh.primitive_cube_add(size=2)
bpy.context.object.scale = (1,0.5,0.25)
bpy.context.object.location = (0, 5 ,1)
bpy.context.object.parent = c919
bpy.context.object.name = "tail2"
bpy.ops.mesh.primitive_cube_add(size=2)
bpy.context.object.scale = (5,1,0.25)
bpy.context.object.location = (0, -1 ,0)
bpy.context.object.parent = c919
bpy.context.object.name = "wings"
c919.location = (-10,10,0)
bpy.ops.mesh.primitive_uv_sphere_add()
center = bpy.context.object
center.name = "center"
c919.parent = center
center.rotation_euler = (0,0,3.14/2)
属性名
所属类别
说明(简要)
location
空间变换
坐标,格式为(x,y,z)浮点三元组
rotation_euler
空间变换(旋转)
欧拉角,弧度制(x,y,z)
scale
空间变换
缩放比例
name
基础标识
定义对象名称
parent
层级关系
设置父对象,子对象继承父对象变换
英文
中文
作用
heading
航向轴
转头
pitch
俯仰轴
点头
bank
横滚
歪头 盗梦空间特效
可以 再用猴头理解 三轴旋转吗?🤔
我们下次再说!👋
配套视频
本文来自 oeasy Python 系统教程。
想完整、扎实学 Python,
搜索 oeasy 即可。