После более года разработки опубликован релиз открытой системы параметрического 3D-моделирования FreeCAD 0.20, которая отличается гибкими возможностями кастомизации и наращивания функциональности через подключение дополнений. Интерфейс построен с использованием библиотеки Qt. Дополнения могут создаваться на языке Python. Поддерживается сохранение и загрузка моделей в различных форматах, в том числе в STEP, IGES и STL. Код FreeCAD распространяется под лицензией LGPLv2, в качестве моделирующего ядра используется Open CASCADE. Готовые сборки в ближайшее время будут подготовлены для Linux (AppImage), macOS и Windows.
FreeCAD позволяет, меняя параметры модели, обыгрывать различные варианты проектирования и оценивать работу в различные моменты разработки модели. Проект может выступать свободной заменой коммерческим САПР, таким как CATIA, Solid Edge и SolidWorks. Несмотря на то, что основным назначением FreeCAD является машиностроение и разработка дизайна новых продуктов, система может использоваться и в других областях, таких как архитектурное проектирование.
Основные новшества FreeCAD 0.20:
- Полностью переписана система помощи, которая вынесена в отдельное дополнение Help и показывает информацию непосредственно из Wiki проекта.
- В интерфейсе пользователя переработан Куб навигации, в котором появились грани для поворота 3D-вида на 45%. Добавлен режим автоматического поворота 3D-вида до ближайшей логической позиции при клике на грань. В настойках предоставлена возможность изменения размера Куба навигации.
- Во всплывающие подсказки добавлено отображение общего и внутреннего имени команды для упрощения поиска информации в разделе помощи и в Wiki.
- Добавлена новая команда Std UserEditMode для выбора режима редактирования, используемого при двойном клике на объекте в дереве элементов.
- В контекстном меню, показываемом в дереве элементов, появилась возможность добавления к выделенным объектам зависимых от них объектов.
- Реализован новый инструмент Section Cut для получения не полых и постоянных сечений деталей и узлов.
- Добавлено два новых стиля навигации мышью, основанных на навигации в OpenSCAD и TinkerCAD.
- В настройках предоставлена возможность изменения размера системы координат для 3D-вида.
- В панель с настройками рабочих окружений добавлена поддержка автоматической загрузки выбранных рабочих окружений во время запуска FreeCAD.
- На платформе Linux осуществлён переход на использование каталогов, определённых в спецификации XDG, для хранения настроек, данных и кэша ($HOME/.config/FreeCAD, $HOME/.local/share/FreeCAD и $HOME/.cache/FreeCAD вместо $HOME/.FreeCAD и /tmp).
- Добавлен новый тип дополнений – пакеты настроек (Preference Pack), через которые можно распространять наборы настроек из пользовательских файлов конфигурации (user.cfg), например, один пользователь может поделиться своими настройками с другим. Через пакеты настроек также можно распространять темы оформления, через добавление файлов со стилями для Qt.
- В менеджере дополнений реализована поддержка распространения пакетов настроек, добавлено отображение информации из метаданных дополнения, улучшена поддержка дополнений, код которых размещён в сторонних git-репозиториях, расширены возможности поиска дополнений и фильтрации вывода.
- Расширены возможности окружения архитектурного проектирования (Arch). В инструмент Прикрепить элемент (Attach Feature) добавлена возможность параметрического размещения окон и оборудования в привязке к стенам.
Добавлены новые свойства структурных объектов. Добавлена новая команда для создания нескольких архитектурных структур на основе базового объекта. При импорте и экспорте в формате IFC реализована поддержка двумерных данных, таких как линии и текст. - В окружении для двумерного рисования (Draft) добавлена команда Draft Hatch для штриховки граней выбранного объекта с использованием шаблонов из файлов в формате PAT (AutoCAD). Добавлена команда для добавления именованных групп.
- Расширены возможности окружения FEM (Finite Element Module), предоставляющего средства для анализа методом конечных элементов, который может применяться, например, для оценки влияния на разрабатываемый объект различных механических воздействий (стойкость к вибрации, нагреву и деформации). Доведён до полноценного вида Z88 Solver, который можно использовать для сложных симуляций. При помощи Calculix Solver реализована возможность выполнения анализа изгиба. В инструмент для создания полигональных сеток Gmsh добавлены новые свойства и возможность рекомбинации 3D-мэшей.
- Улучшена переносимость с OpenSCAD
- В окружении для работы с объектами OpenCasCade (Part) обеспечена корректная поддержка экструзии внутренних структур.
- Улучшены окружения для создания заготовок (PartDesign), эскизов 2D-фигур (Sketcher), ведения электронных таблиц с параметрами моделей (Spreadsheet), генерации инструкций G-Code для станков ЧПУ и 3D-принтеров (Path), 2D-моделирования и создания 2D-проекций 3D-моделей (TechDraw), проектирования работы сборных многокомпонентных конструкций (Assembly3 и Assembly4).
- Завершена миграция проекта на Qt 5.x и Python 3.x. Сборка с Python 2 и Qt4 больше не поддерживается.