mirror of https://gitee.com/cf-fz/WebCAD.git
parent
214b747245
commit
8ed28d2ef1
@ -0,0 +1,14 @@
|
|||||||
|
import { Vector3Ext } from '../../src/Geometry/Vector3Ext';
|
||||||
|
import * as THREE from "three";
|
||||||
|
test("测试平行", () =>
|
||||||
|
{
|
||||||
|
|
||||||
|
let v1 = new Vector3Ext(0, 0, 1);
|
||||||
|
let v2 = new Vector3Ext(0.0001, 0, 1);
|
||||||
|
expect(v1.isParallelTo(v2)).toBe(false);
|
||||||
|
expect(v1.equals(new THREE.Vector3(0, 0, 1))).toBe(true);
|
||||||
|
expect(v2.equals(new THREE.Vector3(0.0001, 0, 1))).toBe(true);
|
||||||
|
// console.log(v1.isParallelTo(v2));
|
||||||
|
// console.log(v1);
|
||||||
|
// console.log(v2);
|
||||||
|
})
|
@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
|
||||||
|
import * as THREE from "three";
|
||||||
|
|
||||||
|
export class Vector3Ext extends THREE.Vector3
|
||||||
|
{
|
||||||
|
constructor(x?: number, y?: number, z?: number)
|
||||||
|
{
|
||||||
|
super(x, y, z);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 平行,精度大概为1e-5.
|
||||||
|
*
|
||||||
|
* @export
|
||||||
|
* @param {THREE.Vector3} v
|
||||||
|
* @returns {boolean}
|
||||||
|
*/
|
||||||
|
isParallelTo(v: Vector3Ext): boolean
|
||||||
|
{
|
||||||
|
let v2 = this.clone().cross(v);
|
||||||
|
return v2.lengthSq() < 1e-10;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue