判断直线是否共线
利用方向向量进行判断,共线则方向向量的单位向量相等或为其复数 如方向向量[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++) {// 跳过前面n个0if (arr1[i] === 0) {if (arr1[i] !== arr2[i]) {return false;}continue;}// 判断第一个遇到数是否相反if (arr1[i] === -arr2[i] && flag2) {flag = false;}flag2 = false;// 根据正负标记制定比较规则if (flag) {if (arr1[i] !== arr2[i]) {return false;}} else {if (arr1[i] !== -arr2[i]) {return false;}}}return true;
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
