Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- let det = function(x1, x2, y1, y2) // 行列式
- {
- return (x1*y2-x2*y1);
- }
- let intersect = function(p1, p2, p3, p4)
- {
- const delta = det(p2[0]-p1[0], p3[0]-p4[0], p2[1]-p1[1], p3[1]-p4[1]);
- if ( Math.abs(delta) <= 1e-6 ) return false;
- const lambda = det(p3[0]-p1[0], p3[0]-p4[0], p3[1]-p1[1], p3[1]-p4[1]) / delta;
- if ( lambda > 1 || lambda < 0 ) return false;
- const miu = det(p2[0]-p1[0], p3[0]-p1[0], p2[1]-p1[1], p3[1]-p1[1]) / delta;
- if ( miu > 1 || miu < 0 ) return false;
- return true;
- }
- l1 = [[119.30563100232928, 28.642176833046154], [119.24418299767075,28.642176833046154]]
- l2 = [[119.30563100232928, 28.53574576695385], [119.33635500465851,28.5889613]]
- let b = intersect(l1[0], l1[1], l2[0], l2[1]);
- console.log(b);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement