GIS
文章平均质量分 51
yangyoung4ever
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
两空间线段最短距离计算
三维空间 线段间最短距离计算原创 2023-02-16 18:18:27 · 4950 阅读 · 0 评论 -
判断直线是否共线
共线则单位向量相等或为其复数 如方向向量[2,2,0]与[5,5,0],[2,2,0]与[-1,-1,0]均为共线function arrayEqual(arr1, arr2) { // true 表示正向共线 ,false表示反向共线 let flag = true; let flag2 = true; if (arr1.length !== arr2.length) return false; for (let i = 0; i < arr1.length; i++) {原创 2022-05-17 14:51:23 · 1929 阅读 · 0 评论 -
计算三维空间点到线段的最短距离
线段不同于直线是无限延申的,所以点到线段的距离需要考虑线段的两端(适用于平行线段最短距离计算,即取两端点到另一线段的距离进行比较即可)如图有以下三种情况,绿色箭头所表示的线段即为最短距离所处的线段以上情况均有向量AD=(|AP|*|AB|*cos<AP,AB>/ |AB|)*(AB/|AB|)即向量AD=r*AB设定dot为向量点积函数,mold为求向量模函数,cross为向量叉乘设r=dot(AP,AB)/|AB|^2由上图可知 当r<0时 最短距离为AP.原创 2022-05-17 14:47:29 · 3087 阅读 · 0 评论 -
三维空间异面直线最短距离计算
先考虑直线间的关系,与二维直线不同的是还需要考虑异面关系,共面则又分为相交(包括垂直)、平行(共线)等关系,主要困难的在于异面直线的距离计算。若是直接使用坐标值计算不仅复杂还容易出错,这里我们考虑空间向量来实现异面直线间的距离计算。一、判断两直线的大类关系即异面还是共面。找出两直线的法向量PUB(PUB等于两直线向量的叉乘),再分别取两直线各一点生成向量L,判断PUB与L之间夹角是否为90°即可(点积中的cos=0)设定叉乘和点积的计算函数如下// 向量叉乘function cross(原创 2022-05-17 13:47:46 · 3654 阅读 · 0 评论
分享