OpenSim.Region.Framework.Scenes.Scene.GetNearestPointInParcelAlongDirectionFromPoint C# (CSharp) Method

GetNearestPointInParcelAlongDirectionFromPoint() private method

private GetNearestPointInParcelAlongDirectionFromPoint ( Vector3 pos, Vector3 direction, ILandObject parcel ) : Vector3?
pos Vector3
direction Vector3
parcel ILandObject
return Vector3?
        private Vector3? GetNearestPointInParcelAlongDirectionFromPoint(Vector3 pos, Vector3 direction, ILandObject parcel)
        {
            Vector3 unitDirection = Vector3.Normalize(direction);
            //Making distance to search go through some sane limit of distance
            for (float distance = 0; distance < Constants.RegionSize * 2; distance += .5f)
            {
                Vector3 testPos = Vector3.Add(pos, Vector3.Multiply(unitDirection, distance));
                if (parcel.ContainsPoint((int)testPos.X, (int)testPos.Y))
                {
                    return testPos;
                }
            }
            return null;
        }
Scene