-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsearchForHits.js
36 lines (24 loc) · 908 Bytes
/
searchForHits.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
var searchForHits = function(ray, objects){
var shlargetPoint = {x: 0, y: 0};
var thingHit;
var faceHit;
for (var z = 0; z < objects.length; z++){
var obj = objects[z];
for (var q = 0; q< obj.faces.length; q++){
var fac = obj.faces[q];
if (
checkLineIntersection(ray[0], ray[1], ray[2], ray[3], fac[0], fac[1], fac[2], fac[3]).onLine2 && checkLineIntersection(ray[0], ray[1], ray[2], ray[3], fac[0], fac[1], fac[2], fac[3]).onLine1
)
{
alert('hit something!')
thingHit = obj;
faceHit = fac;
shlargetPoint.x = checkLineIntersection(ray[0], ray[1], ray[2], ray[3], fac[0], fac[1], fac[2], fac[3]).x;
shlargetPoint.y = checkLineIntersection(ray[0], ray[1], ray[2], ray[3], fac[0], fac[1], fac[2], fac[3]).y;
ray = [ pC.x, pC.y, shlargetPoint.x, shlargetPoint.y ]
};
}
}
return ray;
// don't return anything, reset targetPoint!
}