1 - 基础几何数学

1.1 - 点

1.2 - 向量

1.3 - 矩阵

1.4 - 欧拉

1.5 - 四元数

2 - 基础几何结构

2.1 - 基础几何 --- 面

2.2 - 基础几何 --- 体

2.3 - 基础几何 --- 线

2.3.1 - 圆弧

圆弧的定义方法

圆弧的参数化表示方法

$$\vec{r}(t) = \vec{c} + r\cos{t}\vec{u} + r\sin{t}\vec{v}$$

其中, \(\vec{c}\) 是圆心位置向量, \(r\) 是半径, \(t\) 是参数(通常在 \([0,\theta]\))范围内, \(\theta\) 是圆弧的总角度, \(\vec{u}\) 和 \(\vec{v}\) 是与圆弧方向相关的单位向量

圆弧的离散与采样

圆弧的动态采样

圆弧的动态采样方法通常涉及根据弧线的曲率和长度智能地确定采样点的位置和数量

曲率评估

通过计算圆弧的曲率来决定采样点的密度。曲率 \kappaκ 可以用以下公式计算: \(k = \frac{1}{r}\) 曲率越大,表示圆弧的弯曲程度越大,因此在该处可能需要更多的采样点。

动态分段采样

将圆弧分成若干段,每段长度根据预设的最大误差或曲率变化来确定。在每段中,根据需要计算或保持一定的采样点密度。

适当选择参数步长

根据曲率和圆弧长度,选择适当的参数步长来控制采样点的分布。通常,在曲率较大的部分和细节较多的区域会使用更小的步长。

动态调整采样点数量

根据需要和计算能力,动态调整每段的采样点数量,以平衡精度和性能要求。

起始和结束点的特殊处理

始终确保始点和终点包含在采样点列表中,以确保完整性和准确性

3 - 实用几何算法

3.1 - 线和面的相交性

3.1.1 - 直线和线段的相交求解

描述

在求解 2D 和 3D 的线段与直线的相交性时, 一般采用 “参数方程” 来描述两者

参数方程

直线

$$P(s) = P_0 + s(P_1 - P_0) = P_0 + s*\vec{u} \\ 其中, s = d(P_0, P(s)) / d(P_0, P_1)$$

同理可定义另一条直线的方程 \(Q(t) = Q_0 + v(Q_1 - Q_0) = Q_0 + t*\vec{v}\)

平行线

当且仅当 \(\vec{u} = a\vec{v}, \ \vec{u} = P_1-P_0, \ \vec{v} = Q_1 - Q_0\)

非平行线

4 - 线性代数基础

4.1 - 点和向量

4.2 - 坐标系理论

描述

直角线性坐标(rectangular linear coordinate)

直角线性坐标系统具有一个固定的绝对参考点作为原点,以及一组非零的坐标轴作为方向向量,这些方向向量确定了测量的方向。

一个坐标系统通过有序的n元组\((x_1, x_2, … x_n)\)来指定n维空间中的点,数值规则为:在第一个轴上, 行动 \(x_1\) 的距离, 然后在第二个轴上, 行动 \(x_2\) 的距离, 一次类推到第n个轴上, 其中有序的数字集合\((x_1, x_2, … x_n)\)称为点的坐标。

所有这些点的集合称为坐标空间。

一组特定的坐标轴构成的坐标空间称为坐标参考框架或空间的基。

不同的坐标系统可以跨越相同的坐标空间。

如果坐标轴彼此独立,即没有任何坐标轴可以写成其他坐标轴的组合,则这些轴被称为独立轴。

当独立时,它们是坐标空间的最小轴集,轴的数量即为空间的维度。

极坐标(polar coordinate)

球坐标(spherical coordinate)