Закрытие нарисованного пользователем круга - PullRequest
1 голос
/ 23 мая 2019

Я провел много исследований по этой теме, но, похоже, у меня нет правильных вопросов. Я не знаю, как назвать проблему, которую пытаюсь решить. Спасибо заранее за любую помощь.

Проблема

Предположим, у меня есть нарисованный пользователем круг, подобный этому:

Open circle

Круг не совсем замкнут из-за ошибки пользователя (он будет нарисован пальцем). Я хочу, чтобы замкнуть круг, как это:

Closed circle

Я хочу сделать это только в том случае, если концы нарисованного пользователем пути достаточно близко друг к другу, например:

Distance to endpoints

Этот пример преувеличен. Я бы хотел, чтобы они были ближе друг к другу.

Потенциальные проблемы

  • Круг (или эллипс) может быть в любой ориентации.
  • Невозможно заставить пользователя нарисовать круг, поэтому пользователь может нарисовать что угодно, лишь бы это заняло один штрих.

Таким образом, я хочу принять во внимание только последние несколько точек и выполнить линейную интерполяцию между конечными точками.

Заключение

Если бы вы могли направить меня к решению / реализации, я был бы очень признателен. Кроме того, если бы вы могли сказать мне, как на самом деле называется эта проблема, или использовать терминологию, я мог бы искать в Интернете дополнительную помощь. Еще раз спасибо!

...