Я понимаю, что это старый вопрос, но для заинтересованных сторон есть хорошее обсуждение теории и псевдокода для спиралей Эйлера (клотоидов) в статье "Спираль Эйлера для завершения формы" Кимии,Франкель и Попеску.Образец кода C ++ можно найти на сайте университета Брауна.
Спираль Эйлера для завершения формы
Страница со ссылкой для загрузки кода C ++ для метода Кимии, Франкеля и Попеску
В работах Levien и др. Предлагаются методы, улучшающие расчет "biarc" работы Kimia et al.Статья Левиана включает в себя глубокую историю.
Спираль Эйлера: математическая история Рафа Левиана
Для рисования спирали нужно всего четыре параметра: две конечные точкии углы касательных в этих конечных точках.(Вам не нужно определять кривизну.) Код выводит промежуточные точки между двумя конечными точками с шагом по вашему выбору.Вам просто нужно построить и соединить эти промежуточные точки.
Как только вы реализуете код, вам, возможно, потребуется настроить некоторые параметры, такие как минимальная кривизна.Скорее всего, вы увидите несколько параметров, для которых код «взрывается».