Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function isVectorWatchingMe(startPoint, endPoint, error)
- function isInSphere(pointArr, radius)
- return math.sqrt(pointArr[1]^2+pointArr[2]^2+pointArr[3]^2) <= radius
- end
- function len(point1, point2)
- return math.sqrt((point1[1]-point2[1])^2+(point1[2]-point2[2])^2+(point1[3]-point2[3])^2)
- end
- function threshold(from, to, value)
- if value <= to or value >= from then
- return true
- end
- return false
- end
- local ang = {
- {
- math.atan2(startPoint[1], startPoint[2]),
- math.atan2(startPoint[3], startPoint[2])
- },
- {
- math.atan2(endPoint[1], endPoint[2]),
- math.atan2(endPoint[3], endPoint[2])
- }
- }
- if error == 0 or error == nil then
- return ang[1][1] == ang[2][1] and ang[1][2] == ang[2][2]
- else
- return math.sqrt((ang[1][1] - ang[2][1])^2 + (ang[1][2] - ang[2][2])^2) <= error^2
- end
- return false
- end
- -- next code you do not need, this is just for test.
- info = {
- {0, 0, 0},
- {4, 4, 4},
- {3, 3, 3}
- }
- print(isVectorWatchingMe(info[2], info[3], 0.1))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement