Вы можете установить опцию getPolyline в необязательном параметре GDirectionsOptions для запроса GDirections load . Это даст вам данные полилинии для маршрута.
Получив эти данные, вы можете выполнить итерацию по каждой точке полилинии и определить расстояние до каждой из ваших собственных точек данных (для вычисления расстояния можно использовать метод GLatLng distanceFrom ).
Если у вас есть кратчайшее расстояние до вашего маршрута для каждой из ваших точек данных, вы можете и на основе некоторого допуска работать с ним, если точка лежит на маршруте.
Редактировать
Несмотря на то, что можно вызывать метод GLatLng distanceFrom несколько раз (это просто служебный метод для получения расстояния между двумя точками), я понял, что мой ответ упрощает задачу. Чтобы получить точное расстояние от маршрута, вам необходимо определить расстояние от ломаной линии между ближайшими двумя точками (а не только расстояние от каждой точки).