向量有多种可能的表示形式,其中一种是
从一点到另一点的“距离”或“位移”(比较欧几里得向量:表示 https://en.wikipedia.org/wiki/Euclidean_vector#Representations).
从这个意义上说,从 (0,0) 到 (5,5) 的向量是完全相同的到
从 (2,3) 到 (7, 8) 的向量,以及从 A 点到 B 点的向量
可以计算为
let pA = CGPoint(x: 2, y: 3) // Point A(2, 3)
let pB = CGPoint(x: 7, y: 8) // Point B(7, 8)
let vecAB = CGVector(dx: pB.x - pA.x, dy: pB.y - pA.y) // Vector from A to B
print(vecAB) // CGVector(dx: 5.0, dy: 5.0)
So dx
, dy
代表“delta X”和“delta Y”,距离
x 和 y 方向上的点。在上述情况下,您可以
读vecAB
为“在 x 方向移动 5 个单位,并移动 5 个单位
在 y 方向”,你会得到相同的结果A(0, 0)
and B(5, 5)
.
从 (0, 0) 到 (5, 5) 或从 (2, 3) 到 (7, 8) 的“线段”
不能用a来表示
单独的向量。您需要两个点,或者一个点和一个向量。