Как отрисовать трек движения?
Рекомендация 1.  Найдите библиотеку для геометрии, если ваша задача не в том чтобы научиться решать задачи вычислительной геометрии. Проверка находится ли точка внутри полигона реализована в каждой первой такой библиотеке.
Рекомендация 2. Разбейте вашу задачу на отдельные части. Считывание данных - функция или метод, вычисления  -- еще одна, отрисовка -- третья. 
Рекомендация 3. Если все же пишете геометрию сами, заведите классы для Point, Segment, Polyline, Polygon. Вместо передачи отдельных координат используйте их.
Рекомендация 4. Функция определения пересечений содержит много делений, и если какой-то из делителей будет близок к нулю, то все будет плохо. Рекомендую посмотреть реализацию http://e-maxx.ru/algo/segments_intersection, где есть проверки на маленький делитель.
Да я, наверное, плохо объяснил, программа не должна определять направление, направление уже задано, просто его нужно отобразить, у меня не выходит, а так да, все ваши замечания уместны, спасибо =)