• S sverchok
  • Информация о проекте
    • Информация о проекте
    • Активность
    • Метки
    • Участники
  • Репозиторий
    • Репозиторий
    • Файлы
    • Коммиты
    • Ветки
    • Теги
    • Участники
    • Диаграмма
    • Сравнение
  • Задачи 148
    • Задачи 148
    • Список
    • Доски
    • Спринты
  • Запросы на слияние 21
    • Запросы на слияние 21
  • CI/CD
    • CI/CD
    • Конвейеры
    • Задания
    • Расписания
  • Развертывания
    • Развертывания
    • Окружения
    • Релизы
  • Пакеты и реестры
    • Пакеты и реестры
    • Реестр пакетов
    • Реестр контейнеров
  • Мониторинг
    • Мониторинг
    • Инциденты
  • Аналитика
    • Аналитика
    • Поток ценности
    • CI/CD
    • Репозиторий
  • Wiki
    • Wiki
  • Сниппеты
    • Сниппеты
  • Активность
  • Диаграмма
  • Создать новую задачу
  • Задания
  • Коммиты
  • Доски с задачами
Свернуть панель
  • nikitronn
  • sverchok
  • Запросы на слияние
  • !4847

Implement G2 continuity for some nodes

  • Ревью изменений

  • Скачать
  • Почтовые патчи
  • Простое отличие
Открыто nikitronn запросил слияние curvature_tangency_modes в master Дек 28, 2022
  • Обзор 0
  • Коммиты 13
  • Конвейеры 0
  • Изменения 10

Created by: portnov

In scope:

  • Blend Curve
  • Fillet Curve
  • Blend Surface

Blend Curve node

C1 - Tangency mode. The curve itself is smooth, but the normal changes direction radically at the point of curve touching. This is because the curve changes the direction where it turns to, at these points. Screenshot_20230103_003759

C1 - BiArc mode. Blending curve is made of two circular arcs, and the curvature comb clearly shows us where these two arcs begin and end - there are two segments of constant curvature. At touching points curve's curvature changes suddenly. Screenshot_20230103_003820

C2 - Smooth Normals mode. C2 means continuous second derivative. Now normal does not change it's direction so suddenly as in "C1 - Tangency" mode. Nor does curvature value change suddenly. The curvature comb rim line is continuous. But you may notice that at touching points the rim line is not smooth, albeit continuous. Also, you can notice that C2 mode creates more "curvy" blending line, which goes farther from touching points, comparing to C1 modes. Informally speaking, C2 mode makes blending line preserve more inertia from the curves being blended. Screenshot_20230103_003913

C3 - Smooth Curvature mode. C3 means continuous third derivative. Now not only curvature comb rim line is continuous, it is smooth. But now blending curve goes even farther from touching points compared to C1 and C2 modes, as it preserves even more inertia. Screenshot_20230103_003949

G2 - Curvature mode. This means continuous curvature. Curvature comb rim line is continuous, but not smooth. In this sense, this mode is similar to "C2 - Smooth Normals" mode. But with G2 mode, the blending curve does not go so far from touching points as in C2 or C3 mode. Screenshot_20230106_003253

Blend Surfaces node

G1 - Tangency mode (this is the mode which is currently used):

Screenshot_20230106_004018

G2 -Curvature mode:

Screenshot_20230106_004049

Comparison of G1 and G2 modes (this is the same shape which is used on pictures above, just with dotted matcap): Screenshot_20230106_010305

Preflight checklist

Put an x letter in each brackets when you're done this item:

  • Code changes complete.
  • Code documentation complete.
  • Documentation for users complete (or not required, if user never sees these changes).
  • Manual testing done.
  • Unit-tests implemented.
  • Ready for merge.
Ответственный
Назначить
Проверяющие
Запросить ревью
Оценка трудозатрат
Исходная ветка: curvature_tangency_modes