Кстати, этот if для Грэхэма обязательно нужен был. В примере, который ты приводил, просто повезло, что угол наклона последней прямой был меньше 90. Если бы был больше, то алгоритм рассмотрел бы точки в другом порядке, и, без этого if, в оболочку попала бы лишняя точка.