向量集合变换与3D向量绘图入门
1. 向量集合变换
向量集合可以存储空间数据,如恐龙的绘图,无论使用极坐标还是笛卡尔坐标。在操作向量时,不同的坐标系各有优劣。
- 笛卡尔坐标与平移 :在笛卡尔坐标中,移动(或平移)向量集合很容易。例如,对于向量集合,通过简单的坐标相加就能实现平移操作。
- 极坐标与旋转 :极坐标内置了角度信息,因此在旋转向量时更为简单。在极坐标中,对角度进行加减操作可以实现向量的逆时针或顺时针旋转。例如,对于极坐标 $(1, 2)$,将角度加 1 或减 1 可以使向量分别逆时针或顺时针旋转 1 弧度。
下面是一个旋转恐龙图形的示例代码:
rotation_angle = pi/4
dino_polar = [to_polar(v) for v in dino_vectors]
dino_rotated_polar = [(l,angle + rotation_angle) for l,angle in dino_polar]
dino_rotated = [to_cartesian(p) for p in dino_rotated_polar]
draw(
Polygon(*dino_vectors, color=gray),
Polygon(*dino_rotated, color=red)
)
该代码的执行流程如下:
gra
3D向量变换与Matplotlib绘图
超级会员免费看
订阅专栏 解锁全文
4642

被折叠的 条评论
为什么被折叠?



