Я разработал свой собственный Fusion 360. Обзор моей онлайн-САПР «КонтрБагCAD»
Приветствую сообщество! Почему-то в последние пару лет я упорно не замечал, что Autodesk ушел из России (шутка), но постоянно обновлял свой любимый Fusion 360 через боль и страдания.Параллельно со мной страдали некоторые мои товарищи, практически все мои обучающиеся, да и думаю много кто ещё. Дополнительной проблемой стал перевод пары учебных аудитории на Ubuntu, а Fusion 360 существует исключительно для Windows, и костыли через wine работают криво. Единственная бюджетная (бесплатная) альтернатива, это FreeCAD, но интерфейс у него не самый дружелюбный, особенно для школьников.
Идея появилась совершенно случайно, за разговором с коллегами.А почему бы не написать простенький 3D-редактор для моделирования под 3D-печать. С простым интерфейсом и работой прямо в браузере. Естественно, это будет не полноценный САПР, но для обучения и простенького проектирования функционала должно хватать.
Целился я в нечто среднее между Tinkercad и Fusion360. Одной из задач было обойтись без сервера, т.е. работа на стороне клиента. В качестве основы я выбрал популярную библиотеку 3D графики Three.js.
Итак, что у меня получилось (кстати, всего за месяц, но разработка ещё продолжается):
Главная фишка – простой интерфейс, возможность работать с 2D чертежами (как в полноценных САПР) и редактировать STL-модели непосредственно в браузере, что делает редактор удобным для обучения, быстрого прототипирования и доработки существующих моделей.
Встречает нас 3D режим. Интерфейс и управление приближены к Tinkercad. Сверху расположена панель инструментов. По умолчанию активирован инструмент выделения. В этом инструменте можно таскать объекты указателем мыши (как в Tinkercad), при каждом перемещении появляется линия перемещения и поле для ввода дистанции перемещения.
Справа расположены основные меню работы с редактором. Первая вкладка - библиотека объектов. Опять же, почти как в Tinkercad, но немного другого формата, и с возможностью подписать автора модели, т.к. планирую туда добавлять модели предложенные сообществом.
Вторая вкладка - это свойства объекта и текущего инструмента. При выделении объекта можно поменять его цвет и прозрачность, а при выборе инструмента появляются его персональные свойства (на картинке свойства нескольких инструментов).
Следующая вкладка - это список объектов. Здесь можно управлять видимостью объектов, удалять их и открывать чертежи на редактирование (это уже подсмотрено у fusion). При двойном клике камера наводится на объект.
Последняя вкладка - история, можно посмотреть последние действия, и перемещаться по ним.
Прямо над этим меню мы видим строку состояния (тут пишутся подсказки и другая полезная информация), а также настройки внешнего вида.
Тема и окружение настраиваются отдельно. (Пока не придумал как лучше, подстраивать окружение под выбранную тему, или оставить отдельные настройки). Есть автоматический выбор темы из настроек системы, настройка сетки (пока только сетки) и автосохранения. Правда автосохранение пишется в localStorage, и не рассчитано на большие проекты.
Не буду описывать работу всех инструментов (хотя их пока не очень много), пройдусь по основным:
Бинарный операции (объединения, вычитание, пересечение) работают для выделенных объектов. Вычитание вычитает из первой выделенной модели пересечение со второй моделью (наверное, надо будет сделать предпросмотр и выбор из чего что вычитать). Пересечение оставляет только общую часть двух моделей (честно говоря не знаю, где её использовать, но пусть будет).
Рабочая плоскость: Она нужна для операции разрезания и отражения. А также для построения на ней чертежа. Рабочую плоскость можно построить на любой грани объекта или на 3х базовых плоскостях (XY, XZ, ZY).
Для построения чертежа, как я уже сказал, нужна рабочая плоскость. Он создается просто на выделенной плоскости (возможно логику ещё доработаю).В режиме чертежа у нас изменяется панель инструментов. И появляется доступ к базовым геометрическим фигурам.
Но главная фишка (которая появилась совсем недавно), это автоматическая обводка граней, в том числе и для любых STL моделей!
Фигуры пока только самые основные, но большинство задач они закрывают (напомню, это не профессиональный САПР, а простой online-редактор).
Для имеющихся фигур на чертеже можно применить операции выдавливания и вращения.
Можно выделить сразу несколько фигур (пересекающиеся и смежные вытянутся как одна).
Вращение поддерживает в качестве оси вращения глобальные оси и линии на чертеже. Вращение ещё не доработано.
Операции трансформации (перемещение, поворот, масштабирование) в целом вышли неплохие.
Также есть пара генераторов, симметрия и разрезание. Генератор шестерней вышел прям неплохим.
Есть вставка изображения. Например что-бы построить чертеж по фото, или определить угол наклона шестерни.
Редактор доступен для всех online у меня на сайте, без регистрации и совершенно бесплатно: https://www.контрбагтех.рф/контрбагcad
(Ссылка именно на сайт, потому что редактор не вечно будет на GitHub pages лежать)
Проект очень молодой, ещё куча мест, куда надо приложить руки. Например экспорт в STL часто путает направления нормалей (благо это легко чинится в слайсере). Несмотря на небольшой срок разработки, человеко-часов я в него вложил немало (меня девушка уже из дома хотела выгнать :D). Как я уже написал, мои обучающие в нем уже работают, и активно тестируют).
На мой взгляд получилась отличная штука для несложного проектирования под 3D-печать и обучения твердотельному моделированию, этот редактор проще и понятнее, чем полноценные САПР, но при этом намного функциональнее чем Tinkercad. А учитывая что все это работает без установки, прямо в браузере и напрямую с STL моделями, аналогов я не припомню.
Обратите внимание! Редактор находится на стадии активной разработки, не все функции работают в полной мере. Но ваше тестирование поможет улучшить его работу. Буду благодарен за рекламу, обратную связь, сообщения об ошибках и предложения по развитию :)
Еще больше интересных статей
Продолжение разработки КонтрCAD. Теперь это полноценный САПР прямо в браузере!
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
С предыдущей ста...
Реверс-инжиниринг в КОМПАС-3D. Замена системы координат. Простой способ.
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
3D моделирование в SolidWorks 2014. Часть 1.
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Последнее время очень много было статей (и о, боже, даже книг)...






Комментарии и вопросы
в место датчика температуры и....
От этого предка осталось тольк...
перед тем как делать макрос я....
Имеем абсолютно плоскую шайбу...
Доброе утро. Хочу приобрести п...
Никак не могу найти причину.пр...
Уже который раз читаю совет пе...