Библиотека kurbo содержит структуры данных и алгоритмы для кривых и векторных путей. Она, вероятно, наиболее подходит для творческих инструментов, но достаточно универсальна, чтобы быть полезной и в других приложениях.
Название «kurbo» на эсперанто означает «кривая».
Основное внимание уделяется точности и хорошей производительности в условиях высокой точности. Таким образом, библиотека может быть полезна и в инженерных и научных контекстах, в отличие от визуальных искусств, где часто достаточно грубых приближений. Многие приблизительные функции имеют параметр точности, а аналитические решения используются там, где это практично. Примером является расчёт площади, который выполняется с использованием теоремы Грина.
Библиотека всё ещё находится на довольно ранней стадии разработки. Существуют признаки, предназначенные для использования с общими кривыми (не только Безье), но они, вероятно, будут реорганизованы.
Здесь мы упоминаем несколько других библиотек кривых и затрагиваем некоторые решения, принятые здесь по-другому.
lyon_geom имеет множество очень хороших векторных алгоритмов. Он больше всего ориентирован на рендеринг.
flo_curves имеет хорошие примитивы Безье и кажется настроенным для анимации. Он универсален для типа координат, в то время как мы используем f64
для всего.
vek имеет как 2D, так и 3D Безье среди прочего и настроен для игровых движков.
Часть кода была скопирована из lyon_geom с адаптацией, поэтому автор lyon_geom, Николас Сильва, указан в файле [AUTHORS].
Чтобы узнать больше о кривых Безье, незаменим «A Primer on Bézier Curves» Помакса.
Вклады приветствуются. Применяется Кодекс поведения Rust. Пожалуйста, не стесняйтесь добавлять своё имя в файл [AUTHORS] в любом существенном запросе на вытягивание.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )