Перечень функций
Это расширенный, следовательно не полный , список реализуемых возможностей FreeCAD. Если вы хотите заглянуть в будущее смотрите Development roadmap для быстрого ознакомления Screenshots будут отличной отправной точкой.
Основные возможности
Главное приложение
- FreeCAD является мультиплотформенным приложением. Он запускается и ведет себя схожим образом на платформах Windows, Linux и Mac OSX.
- FreeCAD приложение полным GUI. FreeCAD обладает законченым Графическим Интерфесом Пользователя основанном на известном инструментарии Qt, с 3D просмотрщиком основаным на Open Inventor, позволяющему быстро отрисовывать 3D сцены и обладающим весьма доступным представлением сцены в виде графа.
- FreeCAD также работает как приложении командной строки, при низком объеме памяти. В режиме командной строки, FreeCAD запускается без графического интерфейса, но со всеми инструментами геометрии. Например, это может быть использовано в качестве сервера для получения содержимого от других приложений.
- FreeCAD может быть импортирован как Python модуль, внутри других приложений способных запускать python сценарии, или в консоли python. Как и в консольном режиме, часть интерфейса FreeCAD недоступно, но все геометрические инструменты доступны.
- Расширяемая структура позволяющаяподключасть Плагины/Модули для последующей загрузки типов данных/функциональностей. FreeCAD разделен на основное приложение и модули, которые загружаются только при необходимости. Почти все инструменты и типы гометрии хранятся в модулях. Модули ведут себя как плагины, и могут быть добавлины или удалены из существующей установленой версии FreeCAD.
- Структура позволяющая встраивать свои сценарии: FreeCAD обладает встроенным Python интерпритатором, и API которое охватывает практически любую часть предложения, интерфейса, геометрии и представления этой геометрии в 3D просмотрщике. Интерпритатор может запускать как одиночные команды так и сложные сценарии, на самом деле входящие модули могут даже быть полностью запрограммированы в Python.
- модульная установка в MSI производить гибкую установку на Windows системы. Пакеты для системы Ubuntu также поддерживаются
Строение документа
- Возможность Отменить/Вернуть действие: Все отменяемо/возвращаемо, с доступом к стэк выполненых действия, так что единовременно может быть отменено множество шагов.
- Управление запросами: Стек отмен/возвратов хранит запросы к документу а не одиночные действия, что позволяет каждому инструменту точно определить, что должно быть отменено или переделано.
- Параметрические объекты связанные с документом: Все объекты в FreeCAD документе могут быть заданы параметрами. Эти параметры можно менять налету, и пересчитывать в любое время. Также хранятся отношения между объектами, так что изменения одного объекта тажке изменят зависящие от него объекты.
- Составной (основаный на ZIP) формат сохранения документов: FreeCAD докуметы сохраняются с расширнием .fcstd , могут содержать множество различных типов информации, таких как геометрия,сценарии или иконки миниатюр.
Пользовательский Интерфейс
- Полностью настраиваемый/сценарируемый Графический Интерфейс Пользователя. Основаный на Qt интерфейс FreeCAD полностью доступен из python интерпритатора. Помимо простых функций самого FreeCAD предоставляются инструментарии, а также полный доступ к структуре Qt,, что позволяет выполнять любые операции с GUI, такие как создание, документировани, изменение и удаление виджетов и панелей инструментов.
- Концепция инструментариев: В интерфейсе FreeCAD, инструменты сгруппированы по инструментариям. Это позволяет отображать только инструменты используемые для выполнения конкретной задачи, сохраняя рабочее пространство отзывчивым и незаграможденным, а приложение быстро загружаемым.
- Встроенная Python консоль с синтаксической подсветкой, автодополнение и просмотрщиком классов: Python команды могут быть выполнены напрямую в FreeCAD и немедленно возвращать результаты, позволяющие сценаристу(человеку пищущему сценарии) проверять работу "на лету", изучая содержание модулей и легко позновая устройство FreeCAD.
- Пользовательские действия отражаются в консоли: Все что пользователь делает в FreeCAD интерфейсе выполняется в виде python кода, который может быть выведен в консоль и записан в макрос.
- Полность записываемые и редактируемы макросы: Рython команды выдающиеся, когда пользователь манипулирует интерфесом могут быть записаны, если нужно отредактированы, и сохранены для позднего воспроизведения.
- Миниатюры (на данный момент, только в Linux системах): Значки FreeCAD документа показывающие содержимое файла в большинстве файловых менеджеров таких как gnom-овский nautilus.
Специфические функции
Функциональности FreeCAD разделены на модули, кажды из которых сделан со специальными приложениями и типами данных:
File:Workbench Mesh.png Полигиональные модели
- Mesh Модуль работает с полигиональными сетками. он предназначается главным образом для импорта, восстановления и конверсии порожденной сторонними приложениями сеточной геометрии в FreeCAD, и экспорт FreeCAD геометрии в сеточные форматы. Но сам FreeCAD также обладает гораздо более продвинутыми типами геометрии чем сетки.
- Создание примитивов (блок, сфера, цилиндр, и.т.д), смещение (очевидное или после Jung/Shin/Choi(????)) или логические операции (добавление, пересечение, вычитание)
- Импорт в следующие форматы: ASCII или двоичный STL (формат Стерео литографии) (*.stl, *.ast), OBJ формат (*.obj), ограниченная поддержка NASTRAN (*.nas), сетки формата Open Inventor meshes (*.iv), и родные сетки ядра FreeCAD (*.bms)
- Экспорт в следующие форматы: ASCII или двоичный STL (Stereo lithography формат) (*.stl, *.ast), OBJ формат (*.obj), ограниченная поддержка NASTRAN (*.nas, *.brl), VRML сетки (*.wrl), родные сетки от ядра FreeCAD (*.bms), сетка как Python модуль (*.py)
- Тестирование и востановление инструменты для сеток: твердотельный тест, тест non-two-manifolds(топологическое многобразие), тест на самопересечение, заполнение прорывов и однородное расположение.
- Обширное API для написания Python сценариев.
2D Эскизы
- Графическое создание простейшей плоской геометрии как линии, ломанные, прямоугольники, дуги или окружностина любой плоскости в трехмерном пространстве
- Аннотации как надписи или размеры
- Графические операции изменения а именно перенос, поворот, масштабирование, отражение, сдвиг или конвертация в форму, на любой плоскости в трехмерном пространстве
- Импорт и Экспорт в следующие форматы: Autodesk's Drawing Exchange Format (*.dxf), Open Cad Format (*.oca, *.gcad) и SVG (*.svg)
CAD
- Модуль Деталей имеет дело со всем что связано с CAD моделированием и CAD структурами данных. CAD функциональность находится в стадии непрерывного развития (смотри проект моделирования деталей и проект модуля сборки в Development_roadmap). Модуль Деталей работает с высокоуровневой Open CASCADE геометрией.
- Параметрические примитивные формы такие как блок, сфера, цилиндр, конус или тор.
- Топологические компоненты такие как вершины,ребра, ломаные и плоскости (доступны в python сценариях).
- Моделирование с напрямую или с операцими вытягивание, сечение и скругление.
- Логические операции такие как объединение, вычитание и пересечение.
- Обширные возможности API для написания сценариев.
- Импорт и Экспорт в следующие форматы: STEP детали и сборки в (*.stp,*.step), IGES модели (*.igs, *.iges) и BRep (*.brp), и собственный формат нашего CAD ядра Open CASCADE.
Трассировка лучей
- Модуль Рендеринга позволяет экспортировать FreeCAD геометрию во внешние программы визуализации для генерации высококачественных изображений. На данный момент, поддерживается только один движок рендеринга POV-Ray. Сейчас модуль позволяет создать таблицу для рендеринга и добавить туда геометрию для экспорта в POV-Ray файл.
Проецирование
- Модуль изображений позволяет экспортировать вашу спроецированную 3D геометрию в 2D SVG документ. Это позволяет создавать 2D листы с существующим svg шаблоном, и вставкой спроецированного вида вашей геометрии. Затем лист может быть сохранен как SVG файл.
CAM
- CAM Модуль этот модуль посвящен механической обработке, такой как фрезерование. Модуль находится в начальной стадии развития и на данный моментпосвящен Incremental Sheet Forming(Постепенное формирование листового металла с помощь ЧПУ). Хотя есть некоторые алгоритмы для расчета траектории строгания, они не могут пока использоваться конечным пользователем.