Developer hub/ru



Это раздел для тех, кто хочет принять участие в разработке FreeCAD.

Этот раздел находятся в стадии разработки. Если вы не можете найти информацию, которую ищете, или нашли полезную информацию, на которую мы не сослались, пожалуйста, оставьте комментарий на форуме и кто-нибудь заглянет в него (или, если вы уверены в своих знаниях, почему бы не отредактировать эту страницу самостоятельно!).

Документация для Разработчиков
Документация для разработчиков включает в себя следующие разделы:

Компиляция FreeCAD

 * Github репозиторий. Если вы новичок, в git изучите управление исходным кодом
 * Компиляция с Docker
 * Компиляция в Windows
 * Компиляция в Linux
 * Компиляция в MacOS
 * Детали лицензий про FreeCAD лицензии
 * Сторонние Библиотеки
 * Сторонние Инструменты
 * Запуск и Конфигурирование
 * Документирование исходников
 * Используйте Систему отслеживания Багов когда у вас есть проблема или вы думаете, что, возможно, нашли ошибку

Упаковывание
Упаковка заключается в том, чтобы взять скомпилированные двоичные файлы и исходные файлы Python FreeCAD и распространить их для использования в определенной системе.


 * Упаковывание в Linux
 * Debian разработка
 * Debian Unstable
 * Git build пакет
 * Упаковывание в Windows
 * Упаковывание в MacOS

Инструменты Поддержки Сборки

 * The Инструметы сборки FreeCAD
 * Создание Модулей в FreeCAD
 * Отладка FreeCAD
 * Тестирование FreeCAD
 * Компиляция FreeCAD (способы ускорения)
 * (CI) Непрерывная Интеграция

Модифицирование FreeCAD

 * Объяснение структуры исходного кода FreeCAD
 * Отправка патчей
 * Добавление особенностей в FreeCAD или в Верстак
 * Брендинг или как придать FreeCAD уникальный вид
 * Иллюстрации, которые мы создали для FreeCAD и которые вы можете свободно использовать повторно
 * Руководство по оформлению "стандарты" для иконок
 * Локализация и Перевод FreeCAD
 * Дополнительные модули Python, или как как разширить возможности python внутри FreeCAD
 * Google Summer of Code для тех кто хочет принять участие в программе поддержки студентов Google
 * Тонкая настройка содержит информацию о различных параметрах и переключателях параметров, которые могут помоч устранить некоторые проблемы
 * Обертывание C++ класса в Python содержит информацию о том, как создать Python обертку для C++ класса


 * Перевод внешних верстаков

Руководство для разработчика модуля
FreeCAD Mod Dev Guide: This is an ebook under writing on github, please fork and send pull request to contribute.

Chapters:
 * Overview and Software Architecture
 * Source code structure
 * Base and App module
 * Gui module
 * Python wrapping
 * Modular design
 * Fem module source analysis (mixed C++ and Python)
 * Development of CFD Module (pure Python)
 * Module testing and debugging
 * Contribute code with git

Latest pdf preview can be downoaded from pdf folder of this git repo

OpenCascade Documentation
OpenCascade is a software development platform for 3D surface and solid modeling, CAD data exchange, and visualization, mostly in the form of C++ libraries.


 * Roman Lygin's tutorials
 * Full Online Documentation
 * Reference Manual
 * The openCascade wiki (currently containing ?? Chinese spam)

Про формат файла
Формат файла FCStd. Файлы, созданные с помощью FreeCAD, являются файлами, включающими в себя BREP геометрию, а также XML-данные, описывающие документ.

Решатель Эскизов (Sketcher solver)

 * Sketcher Solver Architecture Booklet (forum thread), source in GitHub.
 * PlaneGCS solver in the FreeCAD source code; important files are GCS.cpp and SubSystem.cpp.
 * Recent Several Sketcher improvements.

The sketcher solver isn't perfect, as there are some issues with numerical precision when using large values, see Adventure of fixing sketcher solver for large sketches.

The development of a new solver architecture could improve the way the solver is used both in the Sketcher Workbench, and for assembly of 3D bodies. See Reimplementing constraint solver.

Дорожная карта проекта
FreeCAD, though usable in certain areas, is at the beginning of a long way into the CAD mainstream. There is still a lot to do to reach a state where we can compete with commercial software.

0.20 Development Cycle

Сообщество

 * IRC channel ,synchronized with gitter channel
 * Development forum


 * Development roadmap

Авторы
Участники проекта