 |
|
Gaze Upon My Hat
Join Date: Feb 2009
Location: Viņa del Mar, Chile
|

09-27-2012
, 19:09
Re: Distance between two lines
|
#4
|
Quote:
Originally Posted by ConnorMcLeod
Try this :
PHP Code:
Float:lines_distance(Float:flPoint1[3], Float:vecDir1[3], Float:flPoint2[3], Float:vecDir2[3])
{
xs_vec_normalize(vecDir1, vecDir1)
xs_vec_normalize(vecDir2, vecDir2)
if( xs_vec_equal(vecDir1, vecDir2) )
{
new Float:vecPoint1Point2[3]
xs_vec_sub(flPoint2, flPoint1, vecPoint1Point2)
new Float:vecDirCross[3]
xs_vec_cross(vecPoint1Point2, vecDir1, vecDirCross)
return xs_vec_len(vecDirCross) / xs_vec_len(vecDir1)
}
new Float:vecPoint1Point2[3]
xs_vec_sub(flPoint2, flPoint1, vecPoint1Point2)
new Float:vecDirCross[3]
xs_vec_cross(vecDir1, vecDir2, vecDirCross)
return floatabs( det3(vecPoint1Point2, vecDir1, vecDir2) ) / xs_vec_len(vecDirCross)
}
Float:det3( Float:vec0[3] , Float:vec1[3] , Float:vec2[3] )
{
return ( vec0[0]*vec1[1]*vec2[2] + vec1[0]*vec2[1]*vec0[2] + vec2[0]*vec0[1]*vec1[2] - vec0[0]*vec2[1]*vec1[2] - vec1[0]*vec0[1]*vec2[2] - vec2[0]*vec1[1]*vec0[2] )
}
|
The bad thing is that I need to pass a direction instead of another position, there exists a possibility for making it with and start pos and a end post for both?
__________________
Quote:
Originally Posted by joropito
You're right Metalicross
|
|
|
|
|