A2plus freecad как установить
Перейти к содержимому

A2plus freecad как установить

  • автор:

Верстак A2plus

Верстак A2plus — это внешний верстак для создания сборок деталей в FreeCAD.

Эта документация описывает версию A2plus 0.4.56 или новее.

Установка

Верстак A2plus — это дополнение к FreeCAD. Его легко установить через меню Инструменты → Менеджер дополнений. A2plus находится в стадии активной разработки и будет часто получать новые функции. Поэтому вы должны регулярно обновлять его, используя меню Инструменты → Менеджер дополнений. Код A2plus размещается и разрабатывается на GitHub, а также может быть установлен вручную путем копирования его в каталог MOD FreeCAD.

Начало работы

Сначала переключитесь на панель инструментов A2plus во FreeCAD. Для создания сборки создайте новый файл в FreeCAD. Сначала этот файл нужно сохранить. Рекомендуется (но не обязательно) сохранять его в той же папке, что будущая сборка деталей.

Теперь детали можно добавлять в сборку с помощью кнопки на панели инструментов или . Кнопка добавляет все тела в выбранном файле как единую деталь. При использовании кнопки Вы можете выбрать, какие детали из файла должны быть импортированы как деталь. Так можно, например, импортировать только эскиз для сборки дальнейших частей, используя эскиз для определения позиций деталей.

Первая добавленная часть получает фиксированную позицию по умолчанию. (Это можно изменить позже через свойство детали Данные фиксированная позиция.)

Детали, уже находящиеся в сборке, можно клонировать с помощью кнопки на панели инструментов .

Чтобы отредактировать деталь из сборки, выберите ее в дереве модели и используйте кнопку на панели инструментов . Это откроет деталь в новой вкладке во FreeCAD или переключится на ее вкладку, если файл уже открыт.

Чтобы импортировать изменения деталей в сборку, нажмите кнопку на панели инструментов . Кнопка на пранели тоже импортирует детали, но по возможности рекурсивно подсборки. Если Вы выберете одну или несколько частей в древе проекта FreeCAD, A2plus запросит Вас об обновлении только выбранных частей.

Импортированные части сохранят свои внешние зависимости и могут быть отредактированы. Однако для стандартных частей, таких как винты, полезно, чтобы их форму нельзя было редактировать. Это может быть достигнуто с помощью кнопки на панели инструментов , которая преобразует выбранную деталь в статическую копию оригинальной детали.

Чтобы сохранить сборку и затем закрыть ее, можно использовать кнопку на панели инструментов .

Toggling the toolbar button sets the way you can select several several edges, faces etc.: Either with a single click or by Ctrl +click.

Сборка

Сборка деталей осуществляется путем добавления ограничений между деталями. После введения ограничения A2plus переместит детали в соответствии с ограничением, если это возможно.

Ограничения между деталями добавляются удерживанием клавиши Ctrl и выбором ребра или грани двух частей. Затем нажмите кнопку на панели инструментов нужного ограничения. Появится диалог, определённый в разделе Constraints. Ограничение будет добавлено в дереве модели к выделенным деталям.

Для сложных ограничений между частями A2plus может не справится с расположением деталей. Поэтому также ознакомьтесь с разделом Устранение неполадок, чтобы узнать, как решить такие случаи.

Отслеживание

Чем больше частей вы добавляете, тем важнее сохранять возможность их отслеживания. A2plus предлагает следующие инструменты для перемещения и просмотра деталей:

  • Чтобы переместить деталь в сборке, выберите ее в дереве модели и используйте кнопку на панели инструментов . Когда вы разместите деталь там, где вам это нравится, щелкните левой кнопкой мыши. Если перемещенная деталь уже имеет ограничения, она будет размещена соответствующим образом при нажатии кнопки на панели инструментов , потому что это инициирует разрешение всех ограничений сборки.
  • Чтобы отобразить ограничение, выберите его в дереве модели и используйте кнопку на панели инструментов . Это сделает всю сборку прозрачной и выделит два объекта, связанных ограничениями. Чтобы вернуться к обычному виду, щелкните левой кнопкой мыши по сборке.
  • Чтобы показать только определенные детали в сборке, выберите эти детали в дереве модели и используйте кнопку на панели инструментов . В качестве альтернативы вы можете скрыть определенную деталь, выбрав ее в дереве модели и нажав Space , чтобы переключить ее видимость.
  • Для переключения вида прозрачности всей сборки вы можете использовать кнопку панели инструментов .
  • Каждая деталь может быть сделана прозрачной при использовании обычного редактирования FreeCAD. Однако, иногда установки прозрачности деталей пропадают при повторном открытии сборки из-за ошибки в FreeCAD. В качестве обходного пути можно использовать кнопку на панели для восстановления установок прозрачности.

Ограничения

При создании ограничения, после нажатия кнопки на панели инструментов ограничения, будет отображаться такой диалог:

Выше: Диалог параметров ограничений A2plus

Для определенных ограничений это позволяет вам изменить направление ограничения. С помощью кнопки Solve вы можете заранее проверить, может ли это новое ограничение быть решено с помощью A2plus. Если нет, загляните в раздел Разрешение проблем.

Ограничения могут быть сброшены изменением их видимости. Это делается выбором ограничения в древе проекта и нажатием Space . Это переключает свойство Данные Suppressed (подавлено). Подавленное ограничение не учитывается при разрешении сборки.

A2plus поддерживает следующие ограничения:

Точка на точке

Выберите Вершины (точки) в каждой детали. Кнопка на панели инструментов добавляет ограничение pointIdentity. Это сделает точки совпадающими.

Точка на линии

Выберите вершину (точку), или край окружности (выберет ее центр), или поверхность сферы (также выберет ее центр) и край детали. Кнопка на панели инструментов добавляет ограничение pointOnLine. Это поместит точку на край.

Точка на плоскости

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

Сфера на Сфере

Выберите поверхность сфер или вершины (точки) на обеих деталях. Кнопка на панели инструментов добавляет ограничение phereCenterIdent. Это совместит центры сфер, центр сферы и точку, либо вершины.

Круговая кромка на круговой кромке

Выберите край окружности на обеих деталях. Кнопка на панели инструментов добавляет ограничение roundEdge. Диалог ограничений позволяет указать смещение между краями. Это смещение также можно перевернуть. Кроме того, вы можете установить направление ограничения и заблокировать вращение частей. Если смещение равно нулю, ограничение поместит края окружности в одной плоскость.

Совпадение по оси

Выберите поверхность сферы или края линий на обеих частях. Кнопка на панели инструментов добавляет ограничение axisCoincident. Диалог ограничений позволяет указать направление оси. Диалог позволяет вам также заблокировать вращение частей. Ограничение сделает оси или линии совпадающими.

Параллельные оси

Выберите поверхность сферы или края линий на обеих частях. Кнопка на панели инструментов добавляет ограничение axisParallel. Диалог ограничений позволяет указать направление оси. Ограничение сделает оси или линии параллельными.

Ось параллельно плоскости

Выберите цилиндрическую поверхность или линейные края детали и плоскость на другой детали. Кнопка на панели инструментов добавляет ограничение axisPlaneParallel. Ограничение сделает ось или линию параллельной плоскости.

Ось нормально плоскости

Выберите цилиндрическую поверхность или линейные края детали и плоскость на другой детали. Кнопка на панели инструментов добавляет ограничение axisPlaneNormal. Ограничение сделает ось или линию нормальной плоскости.

Ось под углом к плоскости

Выберите цилиндрическую поверхность или линейные края детали и плоскость на другой детали. Кнопка панели инструментов добавляет ограничение axisPlaneAngle. Это ограничение сначала сделает оси параллельными плоскости. Затем вы можете отрегулировать угол для оси в появившемся диалоговом окне настроек ограничения.

Плоскости Параллельны

Выберите две плоскости. Кнопка на панели инструментов добавляет ограничение planesParallel. Диалог ограничений позволяет вам указать направление ограничения. Ограничение сделает плоскости параллельными.

Плоскость на Плоскости

Выберите две плоскости. Кнопка на панели инструментов добавляет ограничение planeCoincident. Диалог ограничений позволяет указать направление ограничения и смещение между плоскостями. Это смещение также можно перевернуть. Если смещение равно нулю, ограничение сделает плоскости совпадающими.

Плоскость под углом

Выберите две плоскости. Кнопка на панели инструментов добавляет ограничение angledPlanes. Диалог ограничений позволяет указать угол между плоскостями. Ограничение сначала сделает плоскости параллельными и установит из под заданным углом.

Совпадение в Центре масс

Выберите либо две замкнутые области, либо две плоскости. Кнопка на панели инструментов добавляет ограничение centerOfMass. Диалог ограничений позволяет указать смещение между краями или плоскостями. Это смещение также можно перевернуть. Кроме того, вы можете установить направление ограничения и заблокировать вращение частей. Если смещение равно нулю, ограничение поместит области или плоскости в одну плоскость.

Узлы сборки

Сборка может содержать другие сборки. Они добавляются как детали путем нажатия кнопки на панели инструментов и выбора файла * .FCStd , содержащего сборку. Такие узлы также можно редактировать как детали, используя кнопку на панели инструментов . Убедитесь, что для более высоких этапов сборки вы обновили сборку рекурсивно с помощью кнопки на панели инструментов , когда произошли изменения.

Обработка ограничений

Возможные ограничения для выбора отображаются на панели инструментов и в диалоговом окне «Инструменты ограничения» при включении соответствующих кнопок. Диалоговое окно «Инструменты ограничения» открывается с помощью кнопки панели инструментов . Он должен оставаться открытым, чтобы можно было быстро добавить несколько ограничений в сборку.

Существующие ограничения можно отредактировать, выбрав их в дереве модели, а затем дважды щелкнув по нему или нажав кнопку на панели инструментов . Откроется диалоговое окно «Свойства ограничения».

Ограничения могут быть временно отключены выделением их в древе модели и изменением у элемента параметра Данные Suppressed.

Ограничения можно удалить, выбрав их в дереве модели и нажав Del , или выбрав деталь с ограничениями в дереве модели и нажать кнопку на панели инструментов .

Все ограничения могут быть разрешены в любое время с помощью кнопки на панели инструментов . Если кнопка панели инструментов включена, разрешение выполняется автоматически после каждого редактирования ограничения.

Кнопка на панели инструментов влияет на ограничение, которое было недавно добавлено. Это переворачивает направление ограничения.

With the tool, it is possible the show and inspect existing constraints. After clicking it a dialog pops up. Then either select a part in the tree and click the button Import from part to get all constraints of this part, or select one or more constraints in the tree and click the button Import from Tree . As result you get all info about the constraints. By clicking in the column Suppress a single constraint can be suppressed. For more features, follow the tooltips of the other dialog buttons.

Списки деталей

Чтобы создать списки деталей сборок, разные детали сборки должны получить информацию о детали, которая может быть прочитана A2plus. Это делается путем редактирования детали с помощью кнопки на панели инструментов . В открывшейся части нажмите кнопку панели инструментов и электронная таблица с именем #PARTINFO#.

Структура электронной таблицы выглядит следующим образом:

Заполните серые поля имеющейся информацией. Эта информация будет отображена в окончательном списке деталей.

В сборке или узле сборки используйте кнопку на панели инструментов . Он спросит вас, хотите ли вы выполнить рекурсивную итерацию по всем узлам сборки. Нажмите «Да». Это создаст новую электронную таблицу с именем #PARTSLIST#. Он содержит информацию из различных электронных таблиц деталей PARTSINFO# в списке вида:

Положение (POS) автоматически устанавливается в соответствии с внешним видом деталей в дереве модели. Часть верхнего уровня получит POS 1.

Количество (QTY) автоматически рассчитывается из сборки. Если деталь в сборке дважды, то QTY будет равно 2.

Если вы обновили информацию о детали, вы можете обновить список деталей, снова нажав кнопку на панели инструментов .

Для сборочных узлов вы также можете создать информационную электронную таблицу с помощью кнопки на панели инструментов . Когда вы создаете или обновляете список деталей главной сборки, эта информация будет использоваться, если вы ответите «Нет» на вопрос, хотите ли вы рекурсивно выполнять итерации по всем узлам сборки. Тогда разные детали будут находится не в списке деталей, а только в узлах сборки.

Специальные возможности

Структура сборки

Кнопка на панели инструментов создает файл HTML со структурой вашей сборки. Файл по умолчанию будет создан в текущем каталоге вашей сборки. Структура выглядит следующим образом:

Степени свободы

Кнопка помечает каждую часть сборки степенями свободы. Кроме того, он выводит список со всеми деталями и их зависимостями. Список выводится в виджет FreeCAD «Представление отчета». Если этот виджет в настоящее время не отображается, его можно отобразить, щелкнув правой кнопкой мыши пустую часть области панели инструментов FreeCAD и выбрав его в появившемся контекстном меню, или с помощью меню View → Panels → Просмотр отчета.

Метки степеней свободы можно удалить, повторно нажав кнопку .

Метки деталей

Кнопка присваивает каждой детали сборки в 3D-виде уникальное имя. Метки деталей можно удалить повторно нажав кнопку .

Вид всей сборки

Иногда необходимо объединить всю сборку в одну форму. Затем эту форму можно использовать, например, для 3D-печати в Mesh Workbench или для создания чертежей в TechDraw Workbench. Он создается с помощью кнопки панели инструментов . Форма по умолчанию не отображается. Используйте ту же кнопку на панели инструментов, чтобы обновить форму в случае изменений в сборке.

Конвертировать абсолютные пути в относительные

С помощью меню A2plus → Misc → Convert absolute paths of imported parts to relative ones Вы можете конвертировать абсолютные пути импортированных деталей в относительные.

Настройки

Доступ к настройкам a2plus можно получить через меню FreeCAD Edit → Preferences выбрав раздел «A2plus». Вы можете установить следующие параметры:

Метод решения по умолчанию

Использовать решения частичных систем Решатель начинает с детали, для которой свойство Данные фиксированная позиция установлено в значение true, а часть ограничена этим. Все остальные части не рассчитываются. Если решение может быть найдено, добавляется следующая часть ограничений для расчета и так далее. Использовать «магнитный» решатель, решая все детали одновременно Решатель пытается переместить все детали сразу в направлении к детали, у которой свойство Данные фиксированная позиция установлено в true. Обратите внимание, что в большинстве случаев это займет больше времени для расчета. Принудительно фиксировать положение Для всех деталей в сборке свойство Данные фиксированная позиция устанавливается в значение true. Тогда никакие расчеты фактически не выполняются, поскольку все детали всегда будут привязаны к позициям, в которых они были созданы.

Поведение решателя по умолчанию

Solve automatically if a constraint property is changed The solver will automatically be started. The same as turning on the toolbar button .

Решить автоматически, если изменён параметр ограничения Решатель будет запущен автоматически. Аналогично включению кнопки на панели инструментов .

Поведение при обновлении импортированных деталей

  • Сборка может быть уничтожена из-за неправильных ссылок на топологические имена в деталях
  • Основные электронные таблицы могут быть повреждены, когда они редактируются, а файл детали уже закрыт. Это может привести к краху FreeCAD.

Использовать сплошное объединение для импорта деталей и сборочных узлов Все импортированные детали будут напрямую объединены в объединение.
Эта функция полезна для моделирования FEM или 3D-печать, если разрешено только одно тело. Альтернативой является создание вида всей сборки позже.

Настройки интерфейса пользователя

Показать ограничения на панели инструментов Если эта опция не используется, кнопки панели инструментов для различных ограничений не видны, чтобы сэкономить место на панели инструментов. Новые ограничения по-прежнему можно установить с помощью диалогового окна «Инструменты ограничения» (кнопка на панели инструментов ).

Хранение файлов

Использовать относительные пути для импортированных деталей Использует относительные пути к файлам деталей. Использовать абсолютные пути для импортированных деталей Использует абсолютные пути к файлам деталей. Все файлы находятся в этой папке проекта Все файлы проекта должны находиться в указанной папке. Не имеет значения, находятся ли они в подпапках этой папки. ‘Примечание:’ Одинаковые файлы не могут присутствовать несколько раз в папке (например, в разных подпапках).
Эта опция полезна для работы на разных машинах, потому что тогда нужно только скопировать папку проекта.

Разрешение проблем

Рано или поздно у вас возникнет проблема, что A2plus не может решить установленные вами ограничения. Чтобы преодолеть это, существуют разные стратегии:

Использование Conflict Finder Tool

Conflict Finder Tool (Инструмент Поиска Конфликтов) — Это самый безопасный метод, когда у вас есть несколько ограничений, потому что этот инструмент пытается решить одно ограничение за другим, пока не найдет конфликтующее ограничение. Затем вы можете перейти к другим стратегиям для устранения выявленного ограничения. Инструмент вызывается с помощью кнопки на панели инструментов .

Проверка направления ограничения

Иногда кажется, что ограничения определены последовательно, но они, тем не менее, не могут быть решены. Пример: Предположим, у вас есть ограничение planesParallel для двух плоскостей. Теперь вы хотите установить для этих же плоскостей ограничение planeCoincident, и A2plus не может решить эту проблему. Тогда направления ограничений planesParallel и planeCoincident различны. Используйте одно и то же направление для обоих ограничений, чтобы исправить это.

A2plus предлагает автоматическую проверку правильных направлений для всех ограничений, используя кнопку панели инструментов .

Удаление ограничений

Большинство случаев неразрешимых ограничений происходит непосредственно при добавлении нового ограничения. Решение состоит в том, чтобы удалить ограничение, которое вы добавили последним. A2plus также предложит это.

Иногда стратегия удаления является единственной, например, когда вы отредактировали деталь в FreeCAD так, что грани или ребра, связанные с ограничениями, отсутствуют. Затем следует удалить ограничение по одному, которое связано с измененной деталью. Используйте кнопку на панели инструментов после каждого удаления, чтобы увидеть, достигли ли вы разрешимого состояния.

Когда вы получите сборку, которую можно решить, добавьте шаг за шагом необходимые ограничения.

Перемещение деталей

В некоторых случаях решателю нужны только лучшие начальные значения для решения ограничений. Возьмем, к примеру, случай, когда у вас есть осевая часть и колесная часть. Вы добавляете ограничение axisCoincident и не получаете информации о том, что решатель не выполнен, но части не перемещаются соответствующим образом, и в виджете «Представление отчета» FreeCAD вы видите «REACHED POS-ACCURACY: 0.0«. Решением для этого является перемещение деталей ближе к той позиции, которую вы хотите получить с помощью ограничения.

Примечание: Убедитесь, что хотя бы для одной части ограничения свойство Данные фиксированная позиция установлено в значение false.

Настройка свойства Tip

Если вы пропустили некоторые функции своей детали после импорта в сборку A2plus, проверьте свойство Данные Tip.

A2plus импортирует тела деталей со всеми их функциями вплоть до свойства Tip. Это разумно, потому что установка Tip на определенную функцию означает, что все функции после Tip не должны появляться в итоговой детали. Так что если Вы пропустили функцию детали в A2plus, откройте деталь через кнопку панели инструментов , выделите тело и посмотрите свойство Данные Tip. Если это свойство не в той функции, где нужно, сделайте правый клик на функции, где оно должно быть и выберите Set tip.Затем сохраните деталь и перезагрузите сборку с помощью кнопки на панели инструментов .

Восстановление дерева сборки

Если вы не видите четкой причины, по которой некоторые ограничения не могут быть разрешены, вы можете попробовать использовать кнопку на панели инструментов . Это разрешит все ограничения и снова сгруппирует их по разным частям.

Перенос старых сборок A2plus

Сборки, созданные с A2plus старше марта 2019 года, не показывают правильные значки для импортированных деталей и имеют устаревшие свойства. Эти сборки можно перенести в A2plus версии 0.4.35 и новее, используя меню A2plus → Misc → Migrate proxies of imported parts. Сделав это, вы должны сохранить и снова открыть файл сборки.

Избегайте символов подчеркивания

Эта стратегия не нужна для Windows.

В некоторых операционных системах могут возникнуть проблемы, если имена файлов или пути к файлам деталей или сборки содержат символы с подчеркиванием. Поэтому избегайте таких символов, а также специальных символов в целом.

Фиксированная позиция

Эта стратегия больше не нужна для сборок, созданных с использованием A2plus 0.3.11 или новее, поскольку A2plus теперь выдает предупреждение о пропущенных фиксированных позициях.

Когда вы устанавливаете ограничение между двумя деталями, и ни одна деталь не имеет свойств Данные фиксированная позиция установленным в true или связано ограничением с деталью с Данные фиксированная позиция установленным в true, ограничение не может быть решено. То же самое происходит, если в обеих частях ограничения Данные фиксированная позиция установлено значение true.

Затем A2plus выводит информацию о неудачном решении, но иногда вы видите только то, что детали не перемещаются соответствующим образом, и в виджете «Представление отчета» FreeCAD вы видите «REACHED POS-ACCURACY: 0.0». Это означает, что решатель завершил работу без ошибок, но на самом деле он не смог решить ограничения.

Поэтому убедитесь, что хотя бы для одной из ваших деталей в сборке Данные фиксированная позиция установлено значение true. Затем убедитесь, что вы устанавливаете ограничения только для детали, которая каким-то образом связана с фиксированной деталью. Чтобы визуализировать эти зависимости, см. Раздел Структура сборки.

Вращение деталей

Эта стратегия больше не требуется для сборок, созданных с использованием A2plus 0.4.0 или новее, поскольку A2plus автоматически поворачивает детали в фоновом режиме, чтобы получить достаточный начальный угол для решателя.

Решатель часто не выполняется для ограничения angledPlanes, если две выбранные плоскости в настоящее время имеют угол 0 ° или 180 °. (Части не перемещаются соответственно, и в виджете «Просмотр отчета» FreeCAD вы видите «REACHED POS-ACCURACY: 0.0».) Решение этой проблемы — повернуть одну часть на несколько градусов с помощью FreeCAD функция преобразования (щелкните правой кнопкой мыши деталь в дереве модели и выберите в контекстном меню Transform).

Примечание: Убедитесь, что хотя бы для одной части ограничения свойство Данные фиксированная позиция установлено в значение false.

Анимация

A2plus предлагает анимацию с помощью перетаскивания и скриптов Python.

Перетаскиванием

Анимация перетаскиванием интерактивна, поскольку вы запускаете её, перетаскивая часть сборки. Чтобы получить этот тип анимации:

  1. Полностью ограничьте деталь, движение или вращение которой нужно анимировать.
  2. Нажмите на кнопку панели инструментов . Это включает режим перетаскивания.
  3. Нажмите на нужную деталь в сборке.
  4. Теперь вы можете перемещать мышь, и деталь будет следовать за движением мыши в пределах установленных ограничений.
  5. Чтобы завершить режим перетаскивания, щелкните левой кнопкой мыши в сборке или нажмите ESC.

Вот пример сборки, чтобы попробовать анимацию перетаскиванием: A2p_example-for-dragging-animation.FCStd

Выше: анимация перетаскивания с использованием примера сборки

Скриптами

Хотя режим перетаскивания предлагает приятные интерактивные анимации, они порой недостаточно точны для скринкастов или видео. Скриптовые анимации имеют то преимущество, что они анимируют движения и вращения определенным образом. Например, вы можете повернуть деталь ровно на 10° назад и вперед. В следующих примерах используется сборка, в которой деталь должна вращаться. Если вы попытаетесь анимировать это с помощью режима перетаскивания, вы увидите, как трудно получить вращение вперед-назад, чтобы, например, показать своему боссу в презентации. С помощью интерактивного сценарного примера, в то же время, это простая задача.

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

  1. Сборку полностью ограничивают
  2. Сценарий изменяет параметр, например, положение или угол поворота детали.
  3. После изменения параметра разрешаются ограничения сборки
  4. Шаг 2. и 3. повторяются, чтобы получить анимацию.

Также можно изменить вместо параметра размещения ограничение, например, расстояние между двумя плоскостями.

Пример простого скрипта

Самый простой способ написать сценарий анимации — это неинтерактивная анимация, которая следует заданному движению. Вот пример: Сначала скачайте этот сборочный файл A2p_animated-example.FCStd и этот скрипт Python A2p_animation-example-script.py.

Вот содержимое скрипта. Строки, начинающиеся с «#», описывают, что делают его разные строки:

# импорт библиотек import time, math, PySide import A2plus.a2p_solversystem as a2p_solver # используем шаг в 1 градус step = 1 # ждём 1 ms между шагами timeout = 0.001 # начальный угол будет 0 градусов angle = 0 # берём текущий открытый документ document = FreeCAD.activeDocument() # далее мы хотим менять угол вращения детали "star_wheel_001" starWheel = document.getObject("star_wheel_001") # определяем диалог хода выполнения от 0 до 360 progressDialog = PySide.QtGui.QProgressDialog(u"Animation progress", u"Stop", 0, 360) # блок while является основным циклом для изменения угла и # разрешения ограничений сборки пошагово while angle  360: # запускает цикл пока мы не выполним полный оборот (360 градусов) # прибавляем угол вращения angle += step # устанавливаем новый угол в диалоге хода выполнения progressDialog.setValue(angle) # изменение угла вращения детали "star_wheel_001" starWheel.Placement.Rotation.Angle = math.radians(angle) # разрешение ограничений a2p_solver.solveConstraints(document, useTransaction=True) # обновление вида после разрешения ('Gui' здесь графический интерфейс) FreeCADGui.updateGui() # вынесение диалога хода выполнения на первый план PySide.QtGui.QWidget.raise_(progressDialog) # если будет нажата кнопка 'Stop', выйти из цикла if progressDialog.wasCanceled(): angle = 360 # сделать паузу перед следующим шагом time.sleep(timeout) 

Чтобы использовать скрипт для выполнения анимации, мы должны

  1. Открыть файл сборки в FreeCAD.
  2. Открыть файл скрипта во FreeCAD.
  3. Кликнуть кнопку на панели инструментов для запуска скрипта (так же называемого макрос).
  4. Перейти на вкладку со сборкой для наблюдения за вращением.

Измените что-нибудь в скрипте для практики и запустите снова. Например, измените step на 5.

Вот результат анимации примера:

Пример интерактивного скрипта

Пример первого скрипта показывает создание анимации без вмешательства пользователя. Для большинства приложений Вам нужно вмешиваться в ход анимации. Например, интересный момент в примере — посмотреть как ведущие штифты пересекают центральную канавку колеса. Для более внимательного просмотра Вам следует представить эту деталь коллегам или начальнику. Поэтому вам нужно интерактивное решение.

Это может быть сделано использованием пользовательского диалога анимации со слайдером. Перемещая слайдер, Вы можете установить угол вращения и вращать вперёд и назад в интересующей позиции.

Мы используем тот же файл сборки A2p_animated-example.FCStd, и другой скрипт Python A2p_animation-example-script.py.

Вот содержимое скрипта для получения диалога интерактивной анимации:

# импорт библиотек import time, math, PySide, sys import FreeCAD.A2plus.a2p_solversystem as a2p_solver from FreeCAD import Units from PySide import QtCore, QtGui # ждать 1 мс после каждого вычисления timeout = 0.001 # мы берём текущий открытый документ document = FreeCAD.activeDocument() # нам нужно впоследствии изменять угол вращения детали "star_wheel_001" starWheel = document.getObject("star_wheel_001") class AnimationDlg(QtGui.QWidget): # диалог анимации def __init__(self): # для инициализации диалога super(AnimationDlg, self).__init__() self.initUI() def initUI(self): # описание компонентов диалогового окна self.setMinimumSize(self.minimumSizeHint()) # установливает минимальный размер диалогового окна на минимум self.setWindowTitle('Animation Dialog') # используем сеточный макет для всей формы self.mainLayout = QtGui.QGridLayout() self.lineNo = 0 # первая диалоговая строка в сетке # добавить метку описания DescriptionLabel = QtGui.QLabel(self) DescriptionLabel.setText("Change slider to change rotation angle") self.mainLayout.addWidget(DescriptionLabel,self.lineNo,0,1,4) # следующая диалоговая строка в сетке self.lineNo += 1 # добавьте метку; нет необходимости в префиксе "self.", потому что мы не хотим менять метку позже LabelMin = QtGui.QLabel(self) LabelMin.setText("Min") LabelMin.setFixedHeight(32) self.mainLayout.addWidget(LabelMin,self.lineNo,0) # добавляем правку вращения, чтобы определить минимум ползунка self.MinEdit = QtGui.QSpinBox(self) # получаем единицы измерения угла в виде строки self.MinEdit.setSuffix(" " + str(FreeCAD.Units.Quantity(1, FreeCAD.Units.Angle))[2:]) self.MinEdit.setMaximum(999) self.MinEdit.setMinimum(0) self.MinEdit.setSingleStep(10) self.MinEdit.setValue(0) self.MinEdit.setFixedHeight(32) self.MinEdit.setToolTip("Minimal angle for the slider") QtCore.QObject.connect(self.MinEdit, QtCore.SIGNAL("valueChanged(int)"), self.setMinEdit) self.mainLayout.addWidget(self.MinEdit,self.lineNo,1) # добавляем ползунок self.slider = QtGui.QSlider(QtCore.Qt.Horizontal, self) self.slider.setRange(0, 360) self.slider.setValue(0) self.slider.setFixedHeight(32) self.slider.setToolTip("Move the slider to change the rotation angle") QtCore.QObject.connect(self.slider, QtCore.SIGNAL("sliderMoved(int)"), self.handleSliderValue) self.mainLayout.addWidget(self.slider,self.lineNo,2) # добавляем метку LabelMax = QtGui.QLabel(self) LabelMax.setText("Max") LabelMax.setFixedHeight(32) self.mainLayout.addWidget(LabelMax,self.lineNo,3) # добавляем правку вращения, чтобы определить максимум ползунка self.MaxEdit = QtGui.QSpinBox(self) # получаем единицы измерения угла в виде строки self.MaxEdit.setSuffix(" " + str(FreeCAD.Units.Quantity(1, FreeCAD.Units.Angle))[2:]) self.MaxEdit.setMaximum(999) self.MaxEdit.setMinimum(1) self.MaxEdit.setSingleStep(10) self.MaxEdit.setValue(360) self.MaxEdit.setFixedHeight(32) self.MaxEdit.setToolTip("Maximal angle for the slider") QtCore.QObject.connect(self.MaxEdit, QtCore.SIGNAL("valueChanged(int)"), self.setMaxEdit) self.mainLayout.addWidget(self.MaxEdit,self.lineNo,4) # следующая диалоговая строка в сетке self.lineNo += 1 # добовляем spacere self.mainLayout.addItem(QtGui.QSpacerItem(10,10), 0, 0) # добавляем метку LabelCurrent = QtGui.QLabel(self) LabelCurrent.setText("Current angle:") LabelCurrent.setFixedHeight(32) self.mainLayout.addWidget(LabelCurrent,self.lineNo,1) # выводим текущий угол self.CurrentAngle = QtGui.QLineEdit(self) self.CurrentAngle.setText(str(0)) self.CurrentAngle.setFixedHeight(32) self.CurrentAngle.setToolTip("Current rotation angle") self.CurrentAngle.isReadOnly() self.mainLayout.addWidget(self.CurrentAngle,self.lineNo,2) # добавляем метку для единиц измерения LabelUnit = QtGui.QLabel(self) LabelUnit.setText("deg") LabelUnit.setFixedHeight(32) self.mainLayout.addWidget(LabelUnit,self.lineNo,3) # кнопка для закрытия диалогового окна self.Close = QtGui.QPushButton(self) self.Close.setText("Close") self.Close.setFixedHeight(32) self.Close.setToolTip("Closes the dialog") QtCore.QObject.connect(self.Close, QtCore.SIGNAL("clicked()"), self.CloseClicked) self.mainLayout.addWidget(self.Close,self.lineNo,4) # размещаем нашу размеченную сетку в диалоговом окна self.setLayout(self.mainLayout) self.update() def handleSliderValue(self): # устанавливаем значение ползунка как угол starWheel.Placement.Rotation.Angle = math.radians(self.slider.value()) # выводим текущий угол self.CurrentAngle.setText(str(self.slider.value())) # решаем ограничение a2p_solver.solveConstraints(document) # обновляем вид после решения ('Gui' stands for 'graphical user interface') FreeCADGui.updateGui() # ждём немного, т.к. нужно время для вычислений time.sleep(timeout) def setMinEdit(self): # убеждаемся что минимум меньше максимума if self.MinEdit.value() >= self.MaxEdit.value(): self.MaxEdit.setValue(self.MinEdit.value() + 1) self.slider.setRange(self.MinEdit.value(), self.MaxEdit.value()) def setMaxEdit(self): # убеждаемся что минимум меньше максимума if self.MinEdit.value() >= self.MaxEdit.value(): self.MinEdit.setValue(self.MaxEdit.value() - 1) self.slider.setRange(self.MinEdit.value(), self.MaxEdit.value()) def CloseClicked(self): AnimationDialog.close() # создать и показать определённый выше диалог AnimationDialog = AnimationDlg() AnimationDialog.show() # запустить цикл когда диалог станет видим while AnimationDialog.isVisible(): # обновить вид, важно чтобы дать обратную связь ОС для оживления диалога FreeCADGui.updateGui() # вынесение диалога вперёд, чтобы он был всегда видим QtGui.QWidget.raise_(AnimationDialog) # здесь так же выводится выходного ползунка, поскольку во время вычисления слайдер мог быть передвинут AnimationDialog.CurrentAngle.setText(str(AnimationDialog.slider.value())) 

Диалог, определенный в скрипте, выглядит следующим образом:

Команды скрипта

Чтобы лучше понять синтаксис скрипта, вот некоторая информация о командах:

starWheel.Placement.Rotation.Angle = math.radians(angle) 

Здесь мы меняем свойство размещения Rotation.Angle детали, которая была преждде взята как starWheel . Это свойство даёт угол в радианах. Функция radians() из библиотеки math преобразует угол из градусов в радианы.

Свойство Rotation.Angle использует текущее размещение осей детали (в нашем примере ось X). Для вращения детали, например, вокруг оси Z, надо установить ось вращения (перед вызовом команды вращения), используя команду:

starWheel.Placement.Rotation.Axis = FreeCAD.Vector(0,0,1) 

Вместо вращения деталь может перемещаться. Чтобы изменить, например, размещение в направлении оси Y оси, команда должна быть:

starWheel.Placement.Base.y = PositionShift 

В этом случае мы должны определять не переменную angle , а PositionShift , которую мы меняем каждый проход цикла.

Существуют разные способы установки размещения детали. Некоторые документированы здесь. К сожалению, списка со всеми возможными командами размещения не существует (пока).

a2p_solver.solveConstraints(document, useTransaction=False/True) 

Это специфичная для A2plus команда. Она разрешает сборочные ограничения сборки, которую мы ранее получили как document . Опция useTransaction указывает, если FreeCAD должен сохранять каждое изменение в стеке отмены/повтора. Поэтому для долгой анимации Вам следует установить её в false .

  • Начинающим
  • Установка:Загрузка, Windows, Linux, Mac, Дополнительных компонентов, Docker, AppImage, Ubuntu Snap
  • Базовая:О FreeCAD, Интерфейс, Навигация мыши, Методы выделения, Имя объекта, Настройки, Верстаки, Структура документа, Свойства, Помоги FreeCAD, Пожертвования
  • Помощь:Учебники, Видео учебники
  • Верстаки:Std Base, Arch, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Path, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
  • Addons:Менеджер дополнений, Внешние верстаки, Cкрипты и макросы
  • Hubs:Уголок пользователя, Уголок опытных пользователей, Уголок разработчиков

Внешние верстаки

Внешние верстаки разработаны продвинутыми пользователями FreeCAD, но не включены в основной дистрибутив FreeCAD.

Данные верстаки не поддерживаются основной командой разработчиков FreeCAD, поэтому они не проверены на совместимость с разными версиями FreeCAD. Вопросы, сообщения об ошибках и запросы на улучшения следует направлять непосредственно авторам конкретного верстака.

Верстаки, помеченные иконкой » «, могут быть установлены через менеджер дополнений. По поводу установки вручную смотрите установку дополнительных верстаков. Если имеются особые инструкции или требования для использования внешнего верстака, то они должны быть отмечены на домашней странице верстака.

Верстаки, маркированные не рекомендуются для последних версий FreeCAD. Они устарели, или не поддерживаются, или превзойдены в новейших верстаках, или могут не работать с Python 3 или с Qt5. В большинстве случаев их следует избегать.

Сборочные верстаки

В FreeCAD 0.19 официального верстака для сборок нет. Однако некоторые внешние инструменты для манипуляции объектами и создания сборок созданы или находятся в разработке.

Заметьте, что сборочные верстаки обычно несовместимы друг с другом. Если Вы создадите сборку с одним из них, Вы должны будете остаться на нём, и не сможете использовать другой верстак сборок для работы с тем же документом.

Есть так же ‘псевдосборочные’ верстаки, которые не используют ограничений для сохранения отношений между деталями, а просто переставляют их в пространстве.

Обзор

Приведённая ниже таблица состоит из разделов, но ее можно изменить, щёлкнув любой из заголовков столбцов.

Иконка Название Назначение Краткое описание Автор верстака Ссылка на исходный код
ArchTextures Архитектура и строительство Он позволяет добавлять базовые нефотореалистичные текстуры к архитектурным объектам, созданным с помощью Верстака Arch. furti https://github.com/furti/FreeCAD-ArchTextures
BCFPlugin Architecture and construction It aims to support the BIM Collaboration Format (BCF). podestplatz https://github.com/podestplatz/BCF-Plugin-FreeCAD
BIM Architecture and construction It aims to implement a complete building information modeling (BIM) workflow in FreeCAD. It extends the Arch Workbench, and gathers tools from other workbenches to provide an environment that is convenient to model buildings, and work with IFC files. yorikvanhavre https://github.com/yorikvanhavre/BIM_Workbench
BIMBots Architecture and construction It allows you to upload a FreeCAD model or selected parts of a FreeCAD model to a BIMBots instance (usually a BIMServer with external services enabled), and perform different services and analyses on your model, and read the results in FreeCAD, usually under the form of a text report, or a BCF file. BIMBots https://github.com/opensourceBIM/BIMbots-FreeCAD
Dodo Architecture and construction It provides tools to create frames (trusses, beams) and pipelines (tubes, elbows, flanges), and query those objects.

This is the new version of Flamingo, intended for Python 3 and Qt5.

This is the old version of Dodo, intended for Python 2 and Qt4. You should prefer Dodo for new models.

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

Смотрите страницу вики для дополнительной информации по переводу внешних верстаков.

A2plus freecad как установить

Однажды хотел сделать пугач для отпугивания агрессивных собак во время езды на велосипеде. По задумке устройство должно было крепиться на руль велосипеда и быть всегда готово к использованию, что бы не приходилось шарить по карманам, снимать перчатки, что-то взводить и т.д.

В качестве «хлопало» выбрал звуковые патроны»Гром» для сигнала охотника. Эти патроны не боятся воды и находятся в свободной продаже хотя имеет в своей конструкции обычный капсуль, который отдельно без лицензии не купить.

В начале планировался предохранитель который исключал контакт бойка с капсулем, но увидев, что заводской пускач при долгой переноске в кармане может продавить лунку бойком и никакого срабатывания не происходит, отказался от этого.

Ответ на пост «Вьетнамская ловушка

Во FreeCAD сделал сделал следующую модель.

Ответ на пост «Вьетнамская ловушка

И напечатал серым PLA-пластиком. В качестве боевой пружины использовал пружину от прищепки с вешалки, боёк — заточенный винт М3.

На экране и даже в пластике, конструкция мне очень нравилась, так как отвечала всем требованиям:

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

Особенно нравилась перезарядка. Для заряжания, патрон нужно было вставить до упора с передней стороны «ствола», где он фиксировался защёлками. Для разрядки надо сдавить защёлки пальцами и патрон выбрасывала пружина выбрасывателя. Хоть скорость перезарядки не важна, но выглядела перезарядка очень эффектно.

На огневых испытаниях вскрылось множество недостатков. Оказалось, что капсуль не так-то просто активировать. Нужен удар и удар сильный. Слабые удары ни к чему не приводили, и только оставляли небольшую ямку в месте соприкосновения .

Сначала защёлки не держали патрон жёстко и во время удара бойка пружинили, что ослабляло удар. Но их усовершенствование оказалось не достаточно. Грешил на слабость пружины, но дело оказалось не в ней.

Ответ на пост «Вьетнамская ловушка

Стабильного срабатывания удалось добиться только после изменения формы курка, а также формы и длины бойка, его сделал короче и острей из-за чего удар приходился ближе к центру и под более прямым углом.

Когда пугач наконец заговорил, выяснилось, что внутри патрона не только гром, но и кой какая сила имеется. Каждое испытание заканчивалось поломкой устройства. Вылетали защёлки, но это фигня, их в дальнейшем можно было заменить металлическими. Больше беспокоил капсуль выбивавший тыльную стенку унося её части вместе с курком в неизвестном направлении.

Ответ на пост «Вьетнамская ловушка

Пробовал увеличить плотность печати и утолщить заднюю стенку, но этого оказалось не достаточно, нужен металлический стакан или же весь корпус вылить из алюминия. Но возможности такое исполнить у меня увы нет, потому эксперименты пришлось прекратить.

Кроме того выстрел показался слишком громким, в городе такое применять не желательно, да и вылетающие газы возможно могут повредить тросы и шланги гидролинии расположенные на руле.

Вот если из этих патронов выковырять всю начинку и оставить только капсуль. Но такое наверно могут приравнять к изготовлению боеприпасов.

Надеюсь я не наговорил себе на статью, патроны «Гром» находятся в свободной продаже, я их не модифицировал, конструкция устройства не позволяет ничем стрелять и не имеет никаких поражающих элементов. И вообще это всё выдумка и генерации нейросетей.

Сейчас езжу с детским пистолетиком за 200 рублей. Пистоны не надёжные, зато он лёгкий, выстрел копеечный, а одиночных собак решивших подбежать и погавкать отпугивает нормально.

Ответ на пост «Вьетнамская ловушка

Показать полностью 5 1
7 месяцев назад

Немного о FreeCAD⁠ ⁠

Много лет назад я пытался найти замену проприетарным CAD-программам и нашел несколько альтернативных вариантов, таких как LibreCAD, OpenSCAD, FreeCAD и т.д. Однако, ни одна из них не смогла полностью заменить популярное ПО, из-за ограниченного функционала, неудобного интерфейса, наличия только 2D-черчения и других недоработок, которые не давали возможности для полноценного проектирования. Но на этой неделе я вспомнил о замечательном проекте FreeCAD и хочу узнать, как у него обстоят дела сегодня. Сразу оговорюсь, меня интересуют в основном модули для машиностроения, всякие архитектурные вещи трогать не буду.

Структура интерфейса изменилась не сильно, но при запуске появилась возможность открыть и посмотреть различные примеры готовых моделей, большая часть функций и справки переведена на русский язык, что не может не радовать. Но к сожалению переведено еще не все.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Появилось много новых верстаков для различных задач.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Особенно радует Sheet Metal, который позволяет создавать листовые детали и выводить развертку.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Та же деталь в развертке:

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

К сожалению развертка пока не обновляется автоматически и нужно удалять старую и заново создавать при изменениях в детали. Набор инструментов конечно маловат, но для простых вещей вполне достаточен.

Создание и редактирование эскизов выполнено отлично, очень много инструментов для черчения и различных ограничений и параметризации, эта часть очень хороша, за исключением одного но — стандартная комбинация ctrl+c ctrl+v почему-то не работает(

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Для копирования частей эскиза есть отдельный инструментарий:

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Операции с эскизом, по созданию твердотельной модели, вполне стандартные для CAD: выдавить, вырезать, вращение и т.д. для людей, знакомых с любой популярной CAD-программой, процесс создания детали из эскиза будет выглядеть знакомо. Так же есть фаски, скругления, несколько типов массивов и булевы операции.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

С помощью верстака TechDraw можно создать чертеж детали, в том числе с рамкой по ЕСКД:

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

К сожалению в чертеж не передается обозначение детали и наименование, так же я не увидел можно ли задать материал детали в модели, все надписи, включая масштаб, нужно делать вручную, простановка размеров почему-то организована хуже чем в эскизе, например чтобы проставить линейных размер нужно сначала выбрать две точки и только потом инструмент простановки размера. Может конечно я в чем-то не разобрался, но пока создание чертежей хромает. А если пробовать оформлять по ЕСКД, то окажется что хромает на обе ноги.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Появилась возможность создавать сборки из деталей на верстаке A2plus (есть еще Assembly 4, но как-то он менее удобен в использовании, хотя там есть возможность вставить стандартные изделия без переключения на верстак стандартных и есть массивы. ). Есть ограничения параллельности, соосности, совпадения, под углом и т.д., в общем базовый набор для организации присутствует.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Там же есть возможность создать спецификацию, но почему-то модуль не добавляет стандартные болт и гайку, а спецификация представляет собой excel — табличку без разделения на разделы (сборочные, детали, стандартные и прочие).

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Спецификацию можно создать в верстаке «Стандартные изделия», но собственно только они там и будут.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Кстати про сам верстак стандартных, это тоже вещь весьма неплохая, присутствуют болты, винты, гайки, шайбы и т.д., в том числе по ГОСТу, DIN, ISO, в общем есть из чего выбрать.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Еще одно важное нововведение для меня — верстак FEM. Теперь FreeCAD обзавелся прочностными расчетами, что является большим плюсом.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Я рад видеть, что проект продолжает развиваться, и особенно радуют новые функции, связанные с созданием моделей деталей. С моего последнего ознакомления программа ушла далеко вперед и может эффективно использоваться для моделирования деталей, например под печать на 3D-принтере. Что касается сборок, чертежей и особенно спецификаций (ИМХО) еще очень сыро . Может я конечно в чем-то не до конца еще разобрался, надеюсь все окажется лучше, чем на первый взгляд.

P.S. Верстаки Sheet Metal, Стандартные изделия, A2plus, Assembly 4 устанавливаются отдельно через менеджер дополнений (в панели инструментов), не знаю как по качеству, но количество различных модулей впечатляет.

Немного о FreeCAD Freecad, Ctrl Alt Del, 3D, 3D моделирование, Open Source, Длиннопост

Если кто-то знает как можно организовать полноценную спецификацию, буду благодарен за совет.

Показать полностью 15
3 года назад

Немножко 3D-печати дома, коробка для настолки⁠ ⁠

Давно уже купил я себе 3D-принтер и вот пришёл кризис: если до этого я печатал всякие мелкие малополезные штуки на школьном принтере и был рад, что что-то вообще напечаталось, а не отлипло/сдвинулось/забилось , то что бы такого мне напечатать на своём? Вазы быстро наскучили, фигурки у меня будут просто пылиться, продавать печать я не умею, да и не хочется связываться с людьми. Довольно прикольно оказалось печатать print-in-place фигурки — это подвижные фигурки со специальными соединениями: фигурка печатается за один заход, но в ней несколько звеньев, после печати фигурка может гнуться. Немного похоже на цепочку сложной формы. Но и с этим долго не поиграешься. Температурные и эстетические свойства пластика после печати сильно ограничивают применение изделий 🙁 ( по крайней мере, на моих любимых pla, petg, sbs, flex).

И вот, наконец, я придумал, что же может очень неплохо получиться при печати, что будет полезным и что не должно быть особенно красивым. Я решил сделать специальную коробку для настольной игры «Цитадели делюкс».

Немножко 3D-печати дома, коробка для настолки 3D печать, 3D принтер, Freecad, Настольные игры, Длиннопост

Меня несколько удручало то, что в оригинальной коробке минимум половину места занимал воздух, а почти все карты разложены в кучах по малому количеству пакетиков. Проблема также была в том, что для подготовки к игре необходимо разделить по классам много карт, а это может быть довольно долго. Значит, под каждый класс карт надо сделать своё отделение в коробке. А ещё все карты разного размера, толщины и т.д. . Короче, такая задача подкинула мне забот на вечер. Вооружившись штангенциркулем замерил все карты, посчитал отделения и получилось как-то удручающе: все карты были абсолютно разнокалиберные, а ведь ещё надо уместить куда-то монеты и корону.

Но после долгих рвений мои старания и работа FreeCAD были вознаграждены, паззл, то есть коробка, сложился:

на фото, соответственно, низ, крышка, корона

Немножко 3D-печати дома, коробка для настолки 3D печать, 3D принтер, Freecad, Настольные игры, Длиннопост

Немножко 3D-печати дома, коробка для настолки 3D печать, 3D принтер, Freecad, Настольные игры, Длиннопост

Немножко 3D-печати дома, коробка для настолки 3D печать, 3D принтер, Freecad, Настольные игры, Длиннопост

Корону я решил переделать, всё равно старую вделывать сюда неудобно. Монетки решил оставить стандартные и разложил их на крышке в столбики. Также ещё распечатаю из мягкого пластика заглушки, чтобы монетки не высыпались. Корона надевается на штырь на крышке, решил, что ей будет норм снаружи. Да и красиво же).

На данный момент напечатал только низ, но меня уже и это очень радует, печаталось долго — часов 10, обидно было бы потерять модель. Печать крышки пока только планируется, думаю, как бы получше сделать монетки, а то вдруг выпадут. Если у Вас будет идея, как уместить монеты, то милости прошу в комменты, поделитесь, пожалуйста, идеей! Если же желаете получить модель коробки, призовите там меня в комментах, скину stl или FCStd того, что уже есть. Ну и вот фотки уже с картами:

FreeCAD 0.21.2 x64 Portable

Превосходная САПР программа, которая отлично подойдет для обучения компьютерному графическому проектированию, скачать FreeCAD предлагается в полной новости. После запуска вы получите относительно простую систему предназначенную для трехмерного проектирования, плюс она оснащена неплохими средствами моделирования движения.

FreeCAD помимо того, что может работать с задачами проектирования, она также поможет пользователям в освоении геометрии, кинематики, а также динамики, возможно узнать принципы построения механизмов и моделирования физических процессов. Пользовательский интерфейс имеет Русскую поддержку, вообще инструмент очень удобен, рекомендую попробовать, если вы решили только начать свой путь в этом направлении.

  • Простой интерфейс, для новичков самое то
  • Большой мануал на сайте автора
  • Портативная версия присутствует, не требует длительной установки
  • Для такого функционала относительно небольшой размер
  • Функция перетаскивания работает отлично
  • Есть встроенные шаблоны для моделирования
  • 3Д вид намного упрощает задачи по редактированию
  • Детали можно вывести на печать
  • Поддержка современных принтеров

Пароль на все архивы: rsload

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *