Как стать автором
Обновить
34.72

CAD/CAM *

CAD/CAM-системы

Сначала показывать
Порог рейтинга
Уровень сложности

Python на службе у конструктора. Укрощаем API Kompas 3D

Время на прочтение 8 мин
Количество просмотров 38K

Logo


Работая в конструкторском отделе, я столкнулся с задачей — рассчитать трудоёмкость разработки конструкторской документации. Если брать за основу документ: «Типовые нормативы времени на разработку конструкторской документации. ШИФР 13.01.01" (утв. Минтрудом России 07.03.2014 N 003)», то для расчета трудоёмкости чертежа детали нам необходимы следующие данные:


  • Формат чертежа и количество листов
  • Масштаб
  • Количество размеров на чертеже (включая знаки шероховатости и выносные линии)
  • Количество технических требований

Из имеющихся инструментов на предприятии имеем: Kompas 3D v14 и Python 3.5.


В интернете не так много статей о написании программ с использованием API Kompas 3D, и ещё меньше информации о том, как это сделать на Python. Попробую рассказать по шагам, как решалась поставленная задача и на какие грабли приходилось наступать. Статья рассчитана на людей, владеющих основами программирования и знакомых с языком Python. Итак, приступим.


Читать дальше →
Всего голосов 31: ↑31 и ↓0 +31
Комментарии 27

MVC-шаблон программирования как способ реализации процесса проектирования в Ревит

Время на прочтение 4 мин
Количество просмотров 4.8K
image Revit — программный комплекс, реализующий принцип информационного моделирования зданий — BIM. Предназначен для архитекторов, конструкторов и инженеров.

Прежде, чем разбираться, как же мы будем применять шаблон программирования при создании модели и оформлении документации в Ревит, нужно разобраться, что такое шаблон программирования MVC. Википедия говорит нам, что:

Model-View-Controller («Модель-Представление-Контроллер») — схема разделения данных приложения, интерфейса и логики на три отдельных элемента: модель, представление и контроллер. Модификация каждого компонента осуществляется независимо.

  • Модель (Model) предоставляет данные и реагирует на команды контроллера, изменяя свое состояние.
  • Представление (View) отвечает за отображение данных модели пользователю, реагируя на изменения модели.
  • Контроллер (Controller) интерпретирует действия пользователя, оповещая модель о необходимости изменений.

К слову этот шаблон впервые был описан в 1978 году.

Теперь разберемся, что есть что в Ревит, согласно моей реализации работы по этому шаблону.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 17

Электрические схемы в Autocad с помощью .NET

Время на прочтение 4 мин
Количество просмотров 48K
После института я пришел работать в проектную компанию инженером-электриком. Все расчеты велись в программе Excel, после чего необходимо было чертить схемы по расчетным данным, что занимало много времени. Кроме того, при переносе данных из Excel в Autocad накапливались ошибки. При изменении исходных данных приходилось исправлять расчеты, а затем и схемы. В общем, куча бесполезной работы, которая отнимала много времени.

Хорошо, что AutoCAD предоставляет широкие возможности для разработчиков в области автоматизации процесса проектирования и помогает экономить сотни и тысячи часов работы.
Был разработан специальный плагин на базе .NET, который экспортировал данные из Excel и создавал электрические схемы в AutoCAD.
Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 20

Практические приемы использования многопоточных вычислений при работе с Revit API

Время на прочтение 9 мин
Количество просмотров 10K
Я архитектор, долгое время проектировал здания и сооружения, но вот с лета прошлого года начал программировать на C# используя Revit API. У меня уже есть несколько модулей-надстроек для Revit и теперь я хочу поделиться некоторым опытом разработки для Revit. Предполагается, что читатели умеют писать макросы для Revit на C#.

Недавно исследуя многопоточные вычисления пришел к некоторым неожиданным для себя выводам и избавился от заблуждений связанных с работой Revit API. В этой статье я напишу как ускорить работу макросов в несколько раз, какие ограничения при работе с параллельными вычислениями у Revit API, что бы наконец не оставалось вопросов.
Читать дальше →
Всего голосов 10: ↑10 и ↓0 +10
Комментарии 2

Истории

Удаленное подключение к сетевому ключу CodeMeter для ARCHICAD

Время на прочтение 11 мин
Количество просмотров 20K
Архитекторы зачастую работают удаленно от офиса работодателя: при работе на выезде с клиентом, работе на подряде. Как в этом случае получить лицензию на ARCHICAD®? Покупать персональную лицензию – дорого. Но и лицензию ARCHICAD от работодателя получить сложно – чаще всего в организации работает сетевая версия ARCHICAD, которую с собой не заберешь. А если и используются локальные лицензии (что дороже), то передать удаленному работнику физический USB-ключ защиты CodeMeter бывает проблематично. Мало кто знает, что выход из этой ситуации есть: системные администраторы могут настроить для удаленного работника доступ к сетевому ключу защиты – и предоставить лицензию ARCHICAD.

Читать дальше →
Всего голосов 13: ↑13 и ↓0 +13
Комментарии 5

Через тернии к облакам: создание облачного сервиса для 3D проектирования и дизайна помещений на базе ядра C3D и WebGL

Время на прочтение 12 мин
Количество просмотров 9K

Нынче в интернетах только и говорят об облаках, как они бесконечны и прекрасны… о серверах, которые они там видели… А ты? Вот и я решил поделиться с читателями своим опытом разработки онлайн сервиса проектирования помещений и интерьеров в 3D. Здесь я постараюсь рассказать об архитектуре проекта в целом и о деталях реализации.


image


Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 13

Сводная информационная модель здания: практическое занятие по технологии OpenBIM

Время на прочтение 9 мин
Количество просмотров 11K
Летом 2016 года вышла замечательная статья, демонстрирующая технологию OpenBIM (открытого взаимодействия информационных моделей) на примере проекта многоквартирного жилого дома в Ярославле, архитектурная часть которого проектировалась в программном продукте ARCHICAD (одном из самых мощных BIM-решений для архитекторов), а конструкторская (раздел КЖ) – в Tekla Structures (мощном BIM-решении для инженеров-конструкторов). Статья продемонстрировала практическую возможность объединения нескольких независимых между собой решений в рамках совместной работы над достаточно крупным объектом.



Специалисты «Нанософт» запросили у авторов статьи рабочую документацию по инженерной части проекта (выполненную по классической 2D-технологии) и воспроизвели ее с помощью современной технологии информационного моделирования в новом программном комплексе nanoCAD Инженерный BIM, который вышел в сентябре 2016 года. А затем дополнили ранее созданную архитектурно-конструкторскую модель инженерными разделами. В результате получилась сводная BIM-модель, объединяющая семь проектных разделов: архитектура, конструкции в части железобетонных конструкций и инженерные сети в частях электрика/освещение, слабые токи, системы безопасности, отопление, водоснабжение и канализация.

Это, на мой взгляд, некое достижение для российского рынка – лично я вообще мало видел BIM-проектов, объединяющих в одну модель более трех разделов. А тут сводная информационная модель, объединяющая семь разделов, созданных в программных продуктах от независимых разработчиков, один из которых российский! Потому в этой практическо-технической статье мы решили поделиться с вами данными, с помощью которых вы сможете самостоятельно собрать сводную BIM-модель, на практике почувствовать суть информационных моделей, разобраться в деталях и, выяснив для себя все преимущества, применять эти знания на практике. А в комментариях к статье предлагаем обсудить околотематические вопросы.
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 4

nanoCAD Plus 8.1: что ожидает пользователя в новой версии российской САПР-платформы?

Время на прочтение 10 мин
Количество просмотров 7.6K
Вышедшая летом 2016 года восьмая версия платформы nanoCAD Plus включила в себя огромное количество новшеств и усовершенствований. И на данный момент у платформы nanoCAD Plus 8.0 самый лучший старт продаж за всю историю существования продукта: более миллиона скачиваний, непрерывающийся поток встреч и презентаций, прирост числа регистраций на сайте примерно на 20%. Сейчас платформа nanoCAD Plus 8.0 распространилась на чуть более чем 40 000 рабочих мест (разные виды лицензий в различных комплектациях) и примерно 11 000 аккаунтов (личные кабинеты) сайта www.nanocad.ru. И я уверен, что это число будет расти – только что вышли обновления самых популярных специализированных программных продуктов: nanoCAD СПДС 7.0 и nanoCAD Механика 6.1.

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


Читать дальше →
Всего голосов 22: ↑21 и ↓1 +20
Комментарии 11

Управляем автоматом на Groovy/Java. Как ЧПУ станку в домашней мастерской не превратиться в мульт героев «двое из ларца»

Время на прочтение 9 мин
Количество просмотров 17K
Поговорим на темы от труда и работы, станков, автоматизации на java/groovy до прогнозов о будущем человечества.

Узнаете про персональное автоматизированное производство в домашней мастерской, как идея творца превращается в готовое изделие. Рассмотрим подход по отправке G-code инструкций из JVM и groovy/java на исполнение ЧПУ станку для автоматизации того, чего нет в системе «из коробки».


Надеюсь, эта публикация будет познавательна программистам работающих с JVM, тем кто интересуется темой IoT, кому не чуждо мастерить, кто думает о покупке 3D принтера, кто делал прототип какой-либо системы и запускал ПО на Raspberry PI/Beagleboard Black. То про что расскажу, можно повторить используя open source software и open hardware.
Внимание, в публикации много иллюстраций! И лучше не есть при просмотре техники безопасности...
Всего голосов 21: ↑19 и ↓2 +17
Комментарии 36

Моделирование кинематики — это не сложно

Время на прочтение 5 мин
Количество просмотров 12K
Мне давно хочется заняться созданием роботов, но всегда не хватает свободных денег, времени или места. По этому я собрался писать их виртуальные модели!

Мощные инструменты, позволяющие это делать, либо сложно стыкуются со сторонними программами (Modelica), либо проприетарны (Wolfram Mathematica, различные САПР), и я решил делать велосипед на Julia. Потом все наработки можно будет состыковать с сервисами ROS.

Будем считать, что наши роботы двигаются достаточно медленно и их механика находится в состоянии с наименьшей энергией, при ограничениях, заданных конструкцией и сервоприводами. Таким образом нам достаточно решить задачу оптимизации в ограничениях, для чего понадобятся пакеты "JuMP" (для нелинейной оптимизации ему понадобится пакет "Ipopt", который не указан в зависимостях (вместо него можно использовать проприетарные библиотеки, но я хочу ограничится свободными) и должен быть установлен отдельно). Решать дифференциальные уравнения, как в Modelica, мы не будем, хотя для этого есть достаточно развитые пакеты, например "DASSL".

Управлять системой мы будем используя реактивное программирование (библиотеку "Reactive"). Рисовать в «блокноте» (Jupyter), для чего потребуются "IJulia", "Interact" и "Compose". Для удобства еще понадобится "MacroTools".
Для простоты рассмотрим 2D робота, сделанного из веревок и пружин
Всего голосов 15: ↑13 и ↓2 +11
Комментарии 3

Документация Blendercam на русском

Время на прочтение 1 мин
Количество просмотров 8.6K
Перевел документацию к Blendercam 0.9.

Blendercam — это аддон к Blender 3D, который позволяет создавать G-код, моделировать и подготавливать модели для фрезерования.

Из первых впечатлений. Как и Blender 3D, Blendercam — быстро развивающийся проект, который уже позволяет быстро и удобно решать массу задач по 3D-фрезерованию, сверлению и другим видам обработки ЧПУ. Пользоваться действительно очень просто и удобно.

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

Сделал мануал сразу в PDF, удобным для печати: disk.yandex.ru/d/3aWfI7zWTcaj2w

Под катом перечень опций от разработчика.
Читать дальше →
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 0

Представление движений в 3D моделировании: интерполяция, аппроксимация и алгебры Ли

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

Сколько существует разных способов представить обыкновенный поворот в трехмерном пространстве? Большинство людей, когда-либо занимавшихся 3D-графикой или 3D-моделированием, сходу назовут три основных широко распространенных варианта:

  • Матрица поворота 3x3;
  • Задание поворота через углы Эйлера;
  • Кватернионы.

Люди с богатым опытом добавят сюда почему-то не пользующийся популярностью четвертый пункт:
  • Ось поворота и угол.

Мне бы хотелось рассказать о пятом способе представления вращений, который симпатичен тем, что удобен для параметризации, позволяет эффективно строить полиномиальные аппроксимации этих параметризаций, проводить сферическую интерполяцию, и главное, универсален — с минимальными изменениями он работает для любых видов движений. Если вам когда-либо был нужен метод, который позволял бы легко сделать «аналог slerp, но не для чистых вращений, а для произвольных движений, да еще и с масштабированием», то читайте эту статью.
Читать дальше →
Всего голосов 54: ↑53 и ↓1 +52
Комментарии 14

Импортируем DXF чертеж в программе на Java, наступая на все грабли этого «простого» формата

Время на прочтение 7 мин
Количество просмотров 18K
AutoCAD и подобные ему САПР давно уже стали стандартом в области проектирования, и неудивительно что таким же стандартом стали широко используемые в них форматы файлов DWG/DXF. Так что если вы разрабатываете какое-то решение для архитекторов и проектировщиков, то умение работать с этими форматами (ну или хотя бы с одним из них) — must have фича вашего продукта.



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

В общем под катом — перечисление граблей и решений, которые не удалось нагуглить и пришлось добывать полуночными бдениями над чертежами.
Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 4

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн
PG Bootcamp 2024
Дата 16 апреля
Время 09:30 – 21:00
Место
Минск Онлайн
EvaConf 2024
Дата 16 апреля
Время 11:00 – 16:00
Место
Москва Онлайн

Новый кандидат в релизы САПР Qucs-0.0.19S-RC6

Время на прочтение 5 мин
Количество просмотров 14K


Qucs — это кроссплатформенный (Linux, Windows, MacOS-X) симулятор электронных схем с открытым кодом. О нём рассказывают мои предыдущие статьи на Хабре:

  • Qucs — open-source САПР для моделирования электронных схем habrahabr.ru/post/248005
  • Новости проекта Qucs: подготовка к релизу 0.0.19 habrahabr.ru/post/259193
  • Новости проекта Qucs: доступен кандидат в релизы с поддержкой моделирования схем в SPICE habrahabr.ru/post/263555


В настоящее время готовятся к релизу параллельно две версии Qucs:
  • Qucs — сборки с обычным набором функций. Используется только движок моделирования Qucsator
  • QucsS — сборка с возможностью использования SPICE (поддерживаеются движки Ngspice, XYCE, SpiceOpus) как движка моделирования по умолчанию. Данные сборки содержат букву «S» после номера версии. Для инженеров наибольший интерес представляет Ngspice


Пока очередной релиз Qucs вновь отложен на неопределённый срок, вышел кандидат в релизы Qucs-0.0.19S-RC6 с поддержкой SPICE. Этот релиз-кандидат значительно отличается от всех предыдущих. Скачать пакеты для двух платформ (Windows и Linux) можно здесь: github.com/ra3xdh/qucs/releases/tag/0.0.19S-rc6

Под катом будет рассказано о нововведения в данном релиз-кандидате.

Читать дальше →
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 9

Давайте знакомиться: компания Align Technology

Время на прочтение 12 мин
Количество просмотров 39K
Представьте себе компанию, будничный рабочий процесс которой включает лазерные резаки, трехмерные принтеры и трехмерные сканеры, рентгеновские томографы, CAD, композитные материалы, автоматические станки с ЧПУ, оптическую и биохимическую лабораторию и даже собственную сборку специализированных железячных девайсов. Здесь широко реализуется поточная обработка данных в реальном масштабе времени, используется 3D печать, занимаются биоинжинерией и программируют FPGA, есть сети хранящие терабайты данных, датамайнинг и даже немножко искусственного интеллекта. Представили? А теперь попробуйте угадать чем эта компания может заниматься. Сразу скажу, что это не космос, не авиация и даже не автомобилестроение.


Заинтересовались?..
Всего голосов 32: ↑29 и ↓3 +26
Комментарии 21

Еще раз о минимизации булевых функций

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

Читать дальше →
Всего голосов 11: ↑10 и ↓1 +9
Комментарии 14

Teigha for Architecture: First project

Время на прочтение 37 мин
Количество просмотров 10K
В статьях AutoCAD Architecture: First project и Введение в ACA я кратко рассказал о том что такое AutoCAD Architecture (ACA), чем он отличается от обычного Автокада, какие в нем реализованы объекты и показал простейший случай работы со стенами из .NET плагина.

В данной статье я расскажу о библиотеке Teigha — альтернативе для работы с dwg файлами и объектами ACA. Мы напишем небольшой пример, который создает дом из ACA-объектов и сохраняет его в dwg файл. Затем, попробуем открыть этот файл в AutoCAD Architecture и проверить, совместимы ли эти файлы с оригинальным Автокадом.



Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 4

Создание дистрибутива nanoCAD с пользовательскими настройками

Время на прочтение 12 мин
Количество просмотров 11K

В крупных организациях процесс подготовки и настройки рабочих мест проектировщиков зачастую бывает затруднительным и рутинным. Казалось бы, для решения такой тривиальной задачи, как установка САПР, не нужно тратить много ресурсов, достаточно лишь распространить дистрибутив через доменные политики или просто «расшарить» папку с готовым дистрибутивом и смело приступать к работе в САПР-системе. Возникает вопрос: «А что если в организации сущетвуют свои стандарты оформления к выпуску документации, если есть собственные наработки в виде готовых блоков или команд? Планируется ли использование общей базы данных (если применяется СПДС, Железобетон или Стройплощадка)?»

В таком случае перед нами возникает еще одна задача – настроить рабочие места пользователей, а делать это с каждым местом в отдельности крайне нерационально. Распространить уже настроенный дистрибутив – единственное правильное решение. Где же хранит свои настройки nanoCAD? Как правильно создать свой дистрибутив? Эти и некоторые другие вопросы мы рассмотрим подробнее. Инструкция предназначена для машин на ОС Windows 7 и выше.
Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 0

AutoCAD & RTree

Время на прочтение 7 мин
Количество просмотров 8.2K
Когда мы программируем под AutoCAD – то перед нами часто возникает задача быстрого пространственного поиска по набору примитивов. Лучше всего подобный поиск реализуется с помощью R-дерева.

Для примера будем парсить «рисованные» таблицы (это которые нарисованы отрезками и текстом) и создавать по ним ACAD-таблицы (это которые создаются командой _table)

Подробности
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 0

Технология BIM: пример практического междисциплинарного взаимодействия

Время на прочтение 2 мин
Количество просмотров 7.5K
Статья "Анализ текущей ситуации на российском BIM-рынке в области гражданского строительства", опубликованная в нашем блоге в начале февраля, вызвала достаточно широкий резонанс в специализированной САПР-среде и даже удостоилась нескольких перепубликаций, под которыми за несколько недель появилось огромное количество комментариев от людей интересующихся САПР-тематикой. Если убрать из них эмоции (а они были совершенно разные по окраске), то многие запросы касались практической демонстрации возможностей проектирования с помощью BIM-решений от различных вендоров…


Действительно тема очень актуальна: интересные BIM решения появляются от все большего числа САПР-разработчиков, качество проектов, выполненных с помощью BIM технологии, заметно выше традиционных, чиновники выступают с инициативами по популяризации BIM-технологий, IT-технологии развиваются и позволяют создавать все более сложные модели (например, как вам возможность ходить по стройке с планшетом с дополненной реальностью?). В какой-то степени сейчас действительно наступает время новых принципов проектирования и строительства. Но если раньше технология информационного моделирования затрагивала отдельные специальности, то сейчас многие разработчики BIM систем выступают с инициативой открытого междисциплинарного взаимодействия, которая позволяет увязать независимые между собой программные продукты и выстроить BIM-процесс, заточенный под задачи и возможности проектных организации практически любого типа. Концепция носит маркетинговое название OpenBIM и противопоставляется BIM-проектированию, основанному на проприетарных закрытых форматах.

Но возможно ли настроить BIM-процесс на базе открытых форматов и, если да, то с чего начать? Как от красивой теории перейти к практике? Мы постарались ответить на эти вопросы в онлайн лекции, проведенной на прошлой неделе. В рамках мероприятия мы, рассматривая теорию, привели пример практического взаимодействия между двумя BIM решениями: венгерским программным продуктом для архитектурного проектирования ARCHICAD и российским инженерным решением nanoCAD Электро для проектирования электротехнической части здания.

Материал настоятельно рекомендуется лицам, интересующимся информационным моделированием (технологией BIM) и новостями из мира САПР.
Посмотреть вебинар и обсудить
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 0

Вклад авторов