程序员数学:用Python学透线性代数和微积分
上QQ阅读APP看书,第一时间看更新

第 2 章 二维向量绘图

本章内容

  • 使用向量集合创建和处理二维图像
  • 用箭头、坐标和有序二元组表示二维向量
  • 使用向量运算在平面上转换图形
  • 使用三角学测量平面内的距离和角度

你也许已经对二维或三维的概念有了一些直观认识。二维(2D)对象就像一页纸或者屏幕上的图像,是扁平的。它只有长和宽两个维度。然而,物理世界中的三维(3D)对象不仅有长度和宽度,还有高度。

二维模型和三维模型在编程中非常重要。手机、平板计算机或者PC上呈现的所有物体都是二维对象,具有一定像素的长和宽。物理世界的仿真模拟、游戏或者动画都会把三维数据映射到二维屏幕上。在VR和AR应用中,三维模型必须经过真实的测量,以匹配用户的位置和视角。

尽管我们日常生活在三维世界中,但处理更高维度的数据也很有用。物理学上通常把时间看作第四维,事件会发生在特定的时间和地点。数据科学中的数据集通常也包含更多维度。举例来说,网站跟踪的用户可以有数百个可测量的属性,这些属性描述了用户的使用习惯。要解决这些和图形学、物理学以及数据分析相关的问题,需要一个能够处理高维数据的框架,即向量数学

向量就是多维空间中的对象,有自己特定的算法规则(加法、乘法等)。我们先从易于计算和可视化的二维向量开始学习。本书中使用了大量的二维向量,是我们用于推理高维问题的跳板。