Точка пересечения между шлицом и строкой

Когда в файлах декларации появляются ошибки, это, как правило, указывает на то, что в файле декларации используется синтаксис, недоступный в вашей версии TypeScript.

В этом случае, давайте посмотрим на строки, сообщенные как ошибки.

64: then(onFulfill?: ...
200: thenReject(reason?: any): Promise;

Ошибки, о которых здесь сообщается, указывают на знаки равенства в разделе аргументов типа. Это указывает на то, что аргументы типа по умолчанию не поддерживаются. Это на самом деле не имеет смысла, поскольку в TS2.3 была добавлена ​​поддержка аргументов типа по умолчанию . Я думаю, что у вас не было 2.3 установленного для этих ошибок, и версии были переключены ...

С учетом этого другие ошибки, вероятно, связаны с несовместимостью старых (< 2.1, если я правильно помню) файлов typings и новых файлов @types. С типами, установленными в node_modules/@types/q, вам не нужно включать пользовательскую папку typings, поэтому вы должны иметь возможность удалить typings/modules/q (фактически, всю папку typings), чтобы устранить другую ошибку.

Если это не решит вашу проблему, проект клонирования позволит намного легче понять, что не так.

10
задан user31238 24 October 2008 в 16:29
поделиться

3 ответа

Ваш лучший подход мог бы быть должен сломать Ваш шлиц в отдельные линейные сегменты и протестировать каждый линейный сегмент на пересечение со строкой. Шлиц может пересечь строку больше чем в одной точке, таким образом, необходимо будет также решить, каким Вы интересуетесь.

6
ответ дан 3 December 2019 в 18:37
поделиться

Чистый математический подход:

  • Преобразуйте шлиц и строку так, чтобы строка нашлась на оси X.
  • Вычислите точки на шлиц, где Y = 0 (зависит от порядка шлица).
  • Преобразуйте эти точки назад к Вашей исходной координатной системе.

Если это - путь, которым Вы идете, я могу разработать необходимые формулы.

7
ответ дан 3 December 2019 в 18:37
поделиться

Самый эффективный алгоритм, о котором я услышал, называют Bezier, отсекающим.

Вот книжная глава по кривой и пересечению шлица (PDF).

8
ответ дан 3 December 2019 в 18:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: