赞
踩
目录
我们知道,平面上任意一个点,都可用二维直角坐标系来指示。这是解析几何的基本要点。然而,平面上的点,在射影几何中,将存在投影问题,需要用全新的概念去构造这种模式。现在将平面坐标扩展一个维度,将出现如图情形:
上图解释:
真正的射影平面可以被认为是添加了额外点的欧几里得平面,这些点被称为无穷远点,并且被认为位于一条新线上,即无穷远线。每个方向都有一个无穷远点(数值由直线的斜率给出),非正式地定义为沿该方向远离原点的点的极限。欧几里得平面中的平行线相交于无限远的一点,对应于它们的共同方向。给定欧几里得平面上的一个点 (x, y),对于任何非零实数 Z,三元组 (xZ, yZ, Z) 称为该点的齐次坐标集。根据这个定义,将三个齐次坐标乘以一个共同的非零因子可以为同一点提供一组新的齐次坐标。特别是,(x, y, 1) 是点 (x, y) 的齐次坐标系。例如,笛卡尔点 (1, 2) 可以在齐次坐标中表示为 (1, 2, 1) 或 (2, 4, 2)。通过将前两个位置除以第三个位置来恢复原始笛卡尔坐标。因此,与笛卡尔坐标不同,一个点可以由无限多个齐次坐标表示。
一些作者对齐次坐标使用不同的符号,这有助于将它们与笛卡尔坐标区分开来。使用冒号代替逗号,例如 (x:y:z) 代替 (x, y, z),强调坐标应被视为比率。 [5]方括号,如 [x, y, z] 强调多组坐标与单个点相关联。 [6]一些作者使用冒号和方括号的组合,如 [x:y:z]。
平面上点有M( x1 , x2 , x3 ),其中的 x3 ≠0;等价的二维坐标是: 该点的直角坐标。
过M点的任意直线方程是:;等价的写法是:
,
通过原点 (0, 0) 的直线方程可以写成 nx + my = 0,其中 n 和 m 不都是 0。在参数形式中,这可以写成 x = mt, y = -nt。令 Z = 1/t,因此线上一点的坐标可以写成 (m/Z, -n/Z)。在齐次坐标中,这变为 (m, -n, Z)。在极限中,随着 t 接近无穷大,即随着点远离原点,Z 接近 0,该点的齐次坐标变为 (m, -n, 0)。因此,我们将 (m, -n, 0) 定义为无穷远点的齐次坐标,对应于线 nx + my = 0 的方向。由于欧几里得平面的任何线都平行于通过原点的线,由于平行线在无穷远处有同一个点,所以欧几里得平面每条线上的无穷大点都被赋予齐次坐标。
对于过M(x1:y1:z1)和点N(x2:y2:z2)的直线为L;求该直线方程。
两边同除;因此:
求解方程:
; ;
因此,原方程形式为内积关系:
也就是
也可以这样讲:M(x1:y1:z1)和点N(x2:y2:z2)构成直线
且:
参考代码:
- import math
- import numpy as np
-
-
- M = np.array([x1,y1,z1])
- N = np.array([x2,y2,z2])
-
- def getLine(M ,N):
-
- line = np.array([0,0,0])
- line[0] = x1*y2 - x2*y1
- line[1] = z1*z2 - x2*y1
- line[2] = x1*z2 - z1*x2
-
- return line
-
(未完待续)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。