Перечень функций
Это не полный список реализованных возможностей FreeCAD. Если вы хотите заглянуть в будущее, посмотрите Планы разработчиков для быстрого ознакомления планируемых нововведений. Прекрасной отправной точкой могут стать скриншоты.
Заметки о выпусках
- Release 0.11 - March 2011
- Release 0.12 - December 2011
- Release 0.13 - January 2013
- Release 0.14 - March 2014
- Release 0.15 - March 2015
- Release 0.16 - April 2016
- Release 0.17 - April 2018
- Release 0.18 - March 2019
- Release 0.19 - Month 2020
Ключевые особенности
- Полное геометрическое ядро, основанное на OpenCasCade, позволяет производить сложные трёхмерные операции над сложными типами форм, со встроенной поддержкой таких понятий, как: Граничное представление (boundary representation, brep), Кривые и поверхности неоднородных рациональных B-сплайнов (Non-uniform rational basis spline, nurbs), широкий спектр геометрических объектов, булевы операции над фигурами или сопряжения и встроенную поддержку форматов STEP и IGES
- Полностью параметрическая модель данных. Объекты FreeCAD параметрические в основе, то есть их форма может полностью зависеть от параметров или даже зависеть от других объектов, все изменения пересчитываются по запросу, и записываются в стеке отмен-возвратов. Легко могут быть добавлены новые объекты, которые могут быть даже написаны на python
- Модульная архитектура, позволяющая добавлять функциональность через плагины (модули). Эти расширения могут быть комплексными и программироваться на C++, или простыми как скрипты Python или записываемые самостоятельно макросы. У Вас есть полный доступ из встроенного интерпретатора Python, макросов или внешних сценариев к практически любой части FreeCAD, позволяя создавать и изменять геометрию, двумерное и объёмное представление этой геометрии (scenegraph) или даже интерфейс FreeCAD
- Импорт/экспорт в стандартные форматы, такие как: STEP, IGES, OBJ, файла) STL, DXF, SVG,U3D, DAE, IFC, OFF, NASTRAN, VRML, кроме собственного формата FreeCAD Fcstd. Уровень совместимости между FreeCAD и данными форматами может различаться, поскольку зависит от поддерживающего их модуля.
- Модуль эскизирования со встроенным вычислителем ограничений, позволяющий создавать эскизы с геометрически ограниченными двухмерными формами. Создаваемые с помощью Sketcher двумерные геометрические фигуры с ограничениями могут использоваться как база для построения других объектов FreeCAD.
- Модуль робототехники, позволяющий изучать движение роботов в графическом интерфейсе.
- Удобный новый модуль для создания традиционных чертежей с опциями вроде видов детализации, сечений, образмеривания и других, которые позволяют создать двумерный вид вашей трёхмерной модели. Эти модули создают листы, готовые к экспорту в SVG или PDF. Так же есть более старый модуль черчения с его небогатыми возможностями графического интерфейса, но мощной функциональностью через Python.
- Модуль рендеринга может экспортировать 3D объекты для рендеринга во внешние программы. Пока что он поддерживает только POV-Ray и LuxRender
- Модуль архитектуры позволяет работать по процессу информационного моделирования здания (Building Information Modeling, BIM), при совместимости со спецификацией IFC.
- Модуль Path посвящён автоматизации механической обработки (Computer-aided manufacturing, CAM), например, фрезерования, и может выводить, показывать и настраивать G-код.
- Интегрированный обработчик электронных таблиц и выражений, который может использоваться для управления моделями через формулы и централизованной организации данных моделей.
Общие черты:
- мультиплатформенность. FreeCAD запускается и ведет себя схожим образом на Windows, Linux, macOS и других платформах.
- полностью графическое приложение. FreeCAD обладает законченным Графическим Интерфейсом Пользователя, основанном на инструментарии Qt, с 3D просмотрщиком, основанным на Open Inventor, позволяющим быстро отрисовывать 3D сцены c весьма доступным представлением SceneGraf.
- работает как приложение командной строки. В режиме командной строки FreeCAD запускается без графического интерфейса, но со всеми инструментами геометрии. В этом режиме он требует относительно мало памяти и может быть использован, например, в качестве сервера для создания содержимого другим приложениям.
- может быть импортирован как модуль Python FreeCAD может импортироваться в любое приложение, способное запускать сценарии python. В консольном режиме интерфейсная часть FreeCAD отсутствует, но все геометрические инструменты доступны.
- концепция верстаков: В интерфейсе FreeCAD инструменты сгруппированы по верстакам. Это позволяет отображать только инструменты, используемые для выполнения конкретной задачи, сохраняя рабочее пространство отзывчивым и незагромождённым, а приложение быстро загружаемым.
- фреймворк плагинов/модулей для последующей загрузки типов данных/функциональностей. FreeCAD разделён на основное приложение с модулями, которые загружаются при необходимости. Почти все инструменты и типы геометрии хранятся в модулях. Модули ведут себя как плагины, кроме отложенной загрузки, отдельные модули могут быть добавлены или удалены из существующей установленной версии FreeCAD.
- Параметрические объекты связанные с документом: Все объекты в FreeCAD документе могут быть заданы параметрами. Эти параметры можно менять налету, и пересчитывать в любое время. Также хранятся отношения между объектами, так что изменения одного объекта также изменят зависящие от него объекты.
- создание параметрических примитивов. Примитивы вроде куба, сферы, цилиндра и т.д. могут создаваться определением их геометрических ограничений.
- графические модификацирующие операции. FreeCAD может выполнять трансляцию, поворот, масштабирование, отражение, смещение (простое или описанное в Jung/Shin/Choi ) или изменение формы, в любой плоскости трёхмерного пространства.
- конструктивная блочная геометрия (булевы операции). FreeCAD может выполнять операции конструктивной блочной геометрии (объединение, разность, пересечение).
- графическое создание планарной геометрии. Линии, ломаные, прямоугольники, сплайнов, дуги и окружности могут сознаваться графически на любой плоскости трехмерного пространства.
- моделирование с прямым или круговым выдавливанием, сечением и скруглением сопряжений.
- топологические компоненты вроде вершин, ребер, ломаных и плоскостей.
- тестирование и восстановление. У FreeCADа есть инструменты для тестирования сеток (тест на твёрдотельность, тест non-two-manifolds (топологическое многообразие), тест на самопересечение) и для их починки (заполнение прорывов и исправление ориентации сегментов).
- аннотации. FreeCAD может вставить аннотации к надписям или размерам.
- инфраструктура отмены/возврата. В FreeCADе всё отменяемо/возвращаемо, с пользовательским доступом к стэку выполненных действий. Множество шагов может быть отменено единовременно.
- ориентация на транзакции. Стек отмен/возвратов хранит транзакции документа, а не одиночные действия, что позволяет каждому инструменту точно определить, что должно быть отменено или переделано.
- встроенная инфраструктура сценариев. FreeCAD обладает встроенными Python интерпретатором, с API, которые охватывают практически любую часть предложения, интерфейса, геометрии и представления этой геометрии в 3D просмотрщике. Интерпретатор может запускать как сложные сценарии, так и одиночные команды, целые модули могут быть полностью запрограммированы на Python.
- встроенная консоль Python. Интерпретатор Python включает консоль с подсвечиванием синтаксиса, автодополнением и просмотром классов. Команды Python могут быть выполнены прямо в FreeCAD и напрямую возвращать результаты, позволяя программистам тестировать работу на ходу, раскрывая содержимое модулей FreeCADа и легко изучая его внутренности.
- отражение пользовательских действий. Всё, что пользователь делает в интерфейсе FreeCAD, выполняется в виде кода Python, который может быть выведен в консоль и записан в макрос.
- полная запись и редактирование макросов. Команды Python, которые вызываются при манипулировании пользовательским интерфейсом, могут быть записаны, отредактированы и сохранены для дальнейшего использования.
- составной (основанный на ZIP) формат хранения документов. Документы FreeCAD сохраняются с расширением .FCStd. Он может содержать множество различных типов информации, таких как геометрия, сценарии или иконки миниатюр. Файл .FCStd представляет собой архив zip, так что сохранённый файл FreeCAD уже заархивирован.
- полностью настраиваемый/сценарируемый Графический Интерфейс Пользователя. Основанный на Qt интерфейс FreeCAD полностью доступен из интерпретатора Python. Помимо простых функций самого FreeCAD предоставляются инструментарии, а также полный доступ к структуре Qt. Пользователь может выполнять любые операции с ГИП, такие как создание, документирование, изменение и удаление виджетов и панелей инструментов.
- миниатюры. (пока только в Linux системах) Значки документа FreeCAD, показывающие содержимое файла в большинстве файловых менеджеров таких как Nautilus в Gnome.
- модульный установщик MSI. Установщик FreeCAD производит гибкую установку в системе Windows. Также поддерживаются пакеты системы Ubuntu.
В процессе развития
- Модуль Assembly, который позволяет работать с несколькими проектами, несколькими формами, несколькими документами, несколькими файлами, несколькими связями... Это модуль пока на стадии планирования.
Дополнительные верстаки
Опытные пользователи могут создавать различные пользовательские внешние верстаки.
Документация пользователя
- Начинающим
- Установка: Загрузка, Windows, Linux, Mac, Дополнительных компонентов, Docker, AppImage, Ubuntu Snap
- Базовая: О FreeCAD, Интерфейс, Навигация мыши, Методы выделения, Имя объекта, Настройки, Верстаки, Структура документа, Свойства, Помоги FreeCAD, Пожертвования
- Помощь: Учебники, Видео учебники
- Верстаки: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web