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

FreeCAD: start supporting "native" curves where possible

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

  • Скачать
  • Почтовые патчи
  • Простое отличие
Слиты nikitronn запросил слияние freecad_native в master Сен 13, 2020
  • Обзор 1
  • Коммиты 2
  • Конвейеры 0
  • Изменения 4

Created by: portnov

At present, when passing curves into FreeCAD API, we always convert them into NURBS, even when this is a "well-known" curve such as Line or Circle, for which FreeCAD has it's own representation. It works, but consequently in, for example, STEP file you see BSplineCurve where could of be Circle or Line. Theoretically, this can make manufacturing process unnecessarily complex in some cases.

With this PR, I add support of passing of SvCircle and SvLine to FreeCAD API as their FreeCAD's counterparts. So in STEP you will see circles and lines. Note: it seems, when doing Booleans, FreeCAD always converts everything to NURBS anyway. Even if you are cutting cylinder from cylinder, the result will be NURBS. But still, at least in simple cases we will preserve parametric forms.

Later, support for other types of FreeCAD native curves (ellipses, other conics, Bezier curves) can be added.

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.
Ответственный
Назначить
Проверяющие
Запросить ревью
Оценка трудозатрат
Исходная ветка: freecad_native