Как сделать машину в lego digital designer

Обновлено: 06.07.2024

Моё детство примерно на 20% состояло из Dungeons & Dragons (D&D) и на 80% — из LEGO. Эти два занятия очень сильно пересекались. Мне, по разным причинам, не разрешали всё время играть в D&D. Но я, привлекая на помощь воображение, и достигнув в этом деле успехов, достойных плута 15 уровня, понял, что создание персонажей AD&D игрой не считается. Воссоздание вселенной DragonLance средствами LEGO очень хорошо помогало мне быть ближе к игре, которая мне очень нравилась.

Поэтому одним из моих любимых направлений в LEGO были замки. Я тратил многие часы, выдумывая подземелья для моих героев. Для того чтобы не терять свои находки, и из-за того, что я видел, как мои друзья в школе чертят карты подземелий, я составлял планы своих LEGO-моделей на миллиметровке. Кроме того, я пытался сохранить и сведения о том, как именно были устроены модели. Использование миллиметровки казалось логичным для изображения того, что, в основном, состояло из прямоугольных блоков. Но меня, в итоге, сгубило недостаточно хорошее понимание правил изометрической проекции.


Теперь, хоть я и стал старше, моя любовь к LEGO не угасла. И хотя я и не могу сказать, что очень уж горжусь своими моделями (их называют MOC-моделями), я почувствовал, что просто должен разобраться с тем, как мне документировать то, что создаю. Я никогда не умел очень уж хорошо рисовать. Поэтому я решил обратиться к компьютеру.

CAD для LEGO

А вот системы автоматизированного проектирования (Computer-Aided Design, CAD), это уже нечто другое. CAD-приложения пришли на смену обычным чертежам. В них создают спецификации, иллюстрирующие то, как нечто может быть создано в реальном мире. От этих программ ждут точности и реализма.

Так как невероятно много людей увлечено LEGO, существует активное сообщество тех, кто создаёт LEGO-модели, используя CAD-программы. Преимущества такого подхода очевидны: можно задокументировать подробные сведения о модели, описать то, какие детали нужны для её создания, и то, как именно их нужно соединить друг с другом. Это, конечно, не замена реальному конструктору LEGO (ну, разве что для тех, кто любит CAD больше, чем LEGO), но это — отличное дополнение к хобби.

Для того чтобы построить виртуальную модель LEGO, нужны две вещи:

  • Виртуальные детали LEGO.
  • CAD-приложение.

Виртуальные детали LEGO

Для того чтобы раздобыть виртуальное представление практически любого из когда-либо созданных строительных блоков для LEGO-моделей, можете воспользоваться опенсорсным ресурсом LDraw. LDraw — это открытый стандарт для цифровых моделей LEGO, который включает в себя возможности по описанию размеров и ориентации элементов. В дополнение к работе по описанию деталей средствами LDraw, силами сообщества подготовлены 3D-модели для каждой детали. Это значит, что все желающие могут загрузить тысячи определений деталей, истратив на это не особенно много трафика.

Установка набора деталей

Виртуальные детали очень похожи на изображения, которые используются на сайтах, или на шрифты, применяемые на компьютере. Собственно говоря, соответствующие файлы можно хранить где угодно. Главное, чтобы приложение, в котором планируется работать с деталями, знало о том, где эти файлы находятся. В Linux LDraw-файлы обычно размещают в папке /usr/share/LDRAW . В Windows это обычно C:\Users\Public\Documents\LDraw .

LDraw даёт в наше распоряжение лишь спецификации для каждой детали. Вот, например, как выглядит код описания кубика 1x1:


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

Приложение LDView для визуализации деталей

LDView — это среда для 3D-рендеринга, напоминающая POV-Ray или Cycles из Blender. Это приложение создано специально для рендеринга .ldr-файлов, то есть — CAD-файлов, содержащих данные в формате LDraw.

Если вы работаете на Linux, то, возможно, вы найдёте LDView в своём репозитории ПО. Если в репозитории этой программы не окажется — вы можете скачать установщик с сайта проекта. Если вы пользуетесь macOS или Windows, то вам, опять же, нужно будет воспользоваться сайтом LDView.

Просмотр отдельной детали

Легче всего начать цифровое конструирование моделей LEGO, попытавшись визуализировать отдельную деталь.

Сначала откройте ваш любимый текстовый редактор. Это может быть любая программа. Главное — чтобы она могла сохранять документы в виде обычного текста. Некоторые текстовые редакторы, в стремлении оказать пользователям добрую услугу, пытаются сохранять текстовые материалы в файлах, в которых, помимо текстов, есть ещё масса служебной информации (вроде .rtf и .doc). Существует множество хороших кросс-платформенных текстовых редакторов. Я, для наших дел, могу порекомендовать довольно-таки минималистичный редактор Geany.

Создадим новый файл с именем 1brick.ldr и введём в него следующий текст:


А теперь взглянем на наше скромное творение:


Только что вы создали простой CAD-файл, описывающий один кубик (а именно — модель номер 3001), цветовой индекс которого равняется 1 (это синий цвет), расположенный в позиции (0, 0, 0) по осям X, Y и Z. Поворот кубика регулируется с использованием средств матричного преобразования. Их применение, надо признать, не относится к простым математическим вычислениям. Правда, при конструировании LEGO-моделей произвольное вращение деталей требуется сравнительно редко, так как большинство деталей стыкуются друг с другом с использованием шипов.

Любая строка в файле, начинающаяся с 0, содержит либо комментарий, либо метаданные. Строка, начинающаяся с 1, содержит описание детали.

Вы можете попрактиковаться в перемещении и вращении деталей, внося изменения в свой CAD-файл. Обычный кубик имеет в высоту 24 LDU (LDraw Units). Это значит, что ставить детали друг на друга можно, меняя их координату Y с шагом в 24 единицы. Поворачивать детали можно, выполняя матричные преобразования.

Взгляните на этот код:


Вот результат его визуализации.


Конечно, перемещать детали можно вдоль любой из трёх осей. В спецификации LDraw сказано, что кубик 1x1 имеет 20 LDU в ширину и 20 LDU в длину. А это значит, что расставлять такие кубики вдоль оси X можно, меняя их позиции с шагом в 20 LDU.


Ещё два кубика

Порядок сборки модели

Чаще всего формат LDraw используется для того чтобы продемонстрировать порядок сборки модели. А это значит, что нужно описать последовательность шагов сборки. В LDraw это делается с использованием метакоманды STEP .

Для того чтобы испытать эту метакоманду, добавьте в свой файл, между описаниями деталей, следующее:


Готовый файл будет выглядеть так:


Теперь в вашем проекте описано два шага. На первом выводится первый кубик, на втором — второй. Можно пошагово просматривать .ldr-файлы, пользуясь клавишами-стрелками в верхней панели инструментов LDView, находящимися около подписи Steps .


Панель инструментов для пошаговой визуализации моделей

На одном шаге необязательно должен выводиться лишь один кубик. Как и в случае с инструкциями к наборам LEGO, установку нескольких деталей можно объединить в один шаг. Главное, чтобы это не повредило понятности инструкции.

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

Выяснение кодов деталей

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

Если учесть то, что в LEGO имеется более 11000 уникальных деталей, искать цифровые детали так же сложно, как и обычные. У каждой официальной детали LEGO есть собственный код. Например, тот кубик 2x4, который мы использовали в примере, имеет код 3001. Если вам известен код детали, вы можете просто использовать его в CAD-файле, и соответствующая деталь появится в вашей модели.

Хотя искать детали можно и в parts.lst , в этом деле нам могут помочь некоторые специальные интернет-ресурсы:

    — это пользовательская группа, в которой есть база данных со сведениями о кодах деталей LEGO, построенная на основе сведений, взятых из LDraw. — хороший каталог деталей. — ещё один ресурс, на котором есть каталог деталей.

Другие средства для рендеринга моделей

После того, как вы создали свой шедевр, LDView может экспортировать вашу модель, что позволит вам отрендерить её в высоком качестве. Для этого можно воспользоваться POV-Ray — опенсорсной программой для фотореалистичного рендеринга трёхмерных моделей. В результате плоды ваших трудов можно будет представить в весьма привлекательном виде. Найти POV-Ray можно или в репозитории программ вашего дистрибутива Linux, или на сайте проекта.

Вот пример команды рендеринга:


Ниже показан результат визуализации.


Высококачественная визуализация модели

Если вам нужна программа для формирования инструкций по сборке моделей — попробуйте опенсорсную LPub3D. Эта программа выводит пошаговые инструкции и список деталей, необходимых на каждом шаге.


Исследование мира LEGO

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

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


В статье рассматривается возможность автоматизированного проектирования Lego-роботов в Lego Digital Designer для использования в образовательной робототехнике.

Робототехника в образовании на сегодняшний день это инструмент инженерного образования школьников. Робототехника — это технология интеграции механики, электроники и программирования, позволяющая выявлять и проводить начальное воспитание инженерных талантов, в котором заинтересовано государство в рамках обеспечения новых инженерно-технических кадров [1] и глобального технического превосходства лидерства России к 2035 году [2]. Благодаря появлению массовых конструкторов с их модульными компонентами и простоте программирования стала широкодоступной возможность создания несложных учебных роботов. В настоящее время появилось множество робототехнических конструкторов от различных фирм [3], в том числе и от российских, ориентированных на определённый возраст детей, имеющих определённые плюсы и минусы. В жизни и образовании наиболее популярными наборами конструирования механизмов и роботов на данный момент являются продукты компании Lego, т. к. они охватывает весь контингент детей. Это очень качественный продукт, с которым дети играют с пользой для развития пространственного воображения и моторики пальцев.

У педагогов и тренеров по робототехнике, да и самих обучающихся есть необходимость в моделировании роботов серии Lego, в последующем сохранении в виде трёхмерной модели, создании инструкции по сборке. Необходимость в моделировании также может быть обусловлена по причине нехватки технического оборудования из-за высокой стоимости наборов или отдельных компонентов и может стать существенной проблемой применения робототехнических наборов в учебном процессе, заключающейся в недостаточном количестве комплектов конструкторов. Один Lego-набор серии Mindstorms рассчитан на 2-х человек. Возникает проблема, когда каждая группа может собирать робота не одно занятие, а это значит, что модель приходится разобрать, чтобы последующая группа могла собирать собственную модель. Решением этой проблемы является изначальное трёхмерной моделирование конструкции робота, по которой ученики могут быстро строить робота и заниматься его программированием [6]. Кроме того, когда необходима демонстрация некоторых частей, конструкций робота, а детали Lego достаточно малы и это может затруднить наблюдение и понимание работы конструкции учениками. Снова для решения данной проблемы можно использовать заранее подготовленную конструкцию, которую можно продемонстрировать на большом экране проектора. И наконец, не стоит забывать, что подобные инструменты позволяют работать удалённо. Таким образом, актуальность статьи определена необходимостью в моделировании робототехнических систем продуктов Lego.

Screenshot_1

Рис. 1. Окно программы Lego Digital Designer

Screenshot_2
Screenshot_3

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

Рис. 3. Модель робота (Riley Rover BI), использованная в эксперименте

Проверяется гипотеза H0: время сборки трёхмерной модели робота в LDD занимает больше времени, чем время сборки реальной модели, при альтернативе H1: время сборки виртуальной модели в LDD изменилось в отличии от времени сборки реальной (материальной) модели. Данные задачи представлены в таблице 1. Нулевая гипотеза принимается на уровне значимости 0,05. Подсчитаем число минусов, как встречающихся наименее часто: Zнабл=2, что говорит о преимущественном преобладании величин чисел второго столбца. По таблице «Критические значения статистики критерия знаков находим значение Z0,05(10) = 2. Получили, что эмпирическое (наблюдаемое) значение не больше критического, а это значит мы отклоняем нулевую гипотезу и принимаем альтернативную, что позволяет сделать вывод о том, что скорость разработки робота с применением трёхмерного-моделирования в LLD превосходит сборку с использованием набора-конструктора.

Первое, что можно найти в поисковике — это официальное приложение от самих LEGO, называется Lego Digital Designer.

Приложение доступно только для ПК, существует для Windows и MacOS. Дизайн приложение немного напоминает об 2000-х годах. Есть большая база деталей LEGO, но скорее всего не все новые наборы входят в список. При первом запуске приложение пытается подключиться к интернету, но сколько б не старалось — всегда выдает ошибку. По крайней мере у меня так было постоянно. В этом случае можно продолжить работать в автономном режиме, но со старой базой деталей. После работы модель можно сохранить в формате .lxf, который понимает только само приложение.

Но не у всех есть постоянный доступ к домашнему ПК, по этому перейдем к онлайн вариантам. Кому будет интересно, Lego Digital Designer можно найти на официальном сайте LEGO:

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

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

Интерфейс сервиса чем-то напоминает собой приложения Substance Painter и Photoshop.

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

Слева находится панель инструментов, работа с которой чаще всего будет сводиться к 3 командам, Дублировать (клавиша D), Привязка (клавиша S) и Группировать (клавиша J). Данные команды нужны для быстрого размещения новых моделей в сцене.

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

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

При создании каждая новая модель будет размещаться в координатах (0:0:0). Для того чтобы размещать новые модели поверх существующих у каждой из них есть точки привязок, которые можно увидеть при наведении.

Если перед добавлением новой модели выбрать точку привязки на существующей, то новая будет вставленная в эту точку. Обычно у моделей есть 2 таких точки, но может быть и больше, зависимо от модели. Таким образом можно вставлять новую модель над существующей, если у той выбрать верхнюю точку, или под ней — если выбрать нижнюю точку.

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

Для сборки готовых моделей и наборов рекомендуется использовать инструкцию. Но обычно в инструкции не указаны конкретные типы деталей. По этому можно воспользоваться разными сервисами, на которых есть подробное описание каждой модели или набора, инструкции, количество и подробный список деталей с номерами в каталогах. Используя номера деталей можно быстро искать их в списке моделей сервиса MecaBricks, что значительно ускоряет постройку модели. Таких сервисов хватает в интернете, вот например вся информация по данному набору 60151:

Всем спасибо за внимание, надеюсь кому-то будет интересно)

Эх, помню золотые времена детства, когда денег на лего не было от слова совсем, но наткнулся на Lego Digital Designer, собирал разные крутые штуки по инструкциям (точно помню, что Тадж-Махал собрал).

А потом нашёл форум Lego-le, если не ошибаюсь, сидел там днями и ночами, и там начали устраивать тематические конкурсы самоделок.

Из своих палёных бриков и прочих слубанов собирал модели для конкурса, раза два занимал просто призовые места и один раз первое.

А призами были тоже палёные, но всё же наборы на определенную сумму на твой выбор.

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

Спасибо, что напомнил =)

Для статьи про историю Lego Creator нашел такой крутой эпизод:

Аватар пользователя Виктор

Почему у меня в графе прогресс в графе общие стоит 6,5 % из 30 % возможных после 1- го задания? Все задания первой главы я сделал верно (итоговое тестирование). Или есть задания в 1 главе курса которые я не сделал, не обратив на них внимание? Или 30% это с учётом тестирования и итоговой работы с дополнительными материалами главы 2 и 3 ? Надо ли в первой главе выполнять какие то еще задания кроме итогового тестирования и тестов после каждой лекции курса?

Аватар пользователя Настя

Виктор, здравствуйте. Не вижу у вас в прогрессе цифры 6,5. Первый тест вы прошли на 100%, второй на 50%, это 25% по всем тестам и 7,5% общего прогресса за весь курс.

Аватар пользователя Виктор

Теперь все понятно! Спасибо! 7,5% от 100% за весь курс! (6,5 было когда а Вам писал, но потом я выполнил еще задания и процент увеличился)

Аватар пользователя BorBro

Добрый день! Скачал программу LEGO Digital Designer , но детали по какой то причине в программе ставятся только в одном изначальном положении. я не могу их поворачивать. а именно не могу вставить штифт в балку. пробовал все. может надо выставить какие то настройки? Спасибо

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

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


Настроек никаких не требуется. Посмотрите эти 2 видео, они помогут Вам быстрее разобраться в проблемах при создании моделей:

Та же проблема с поворотом деталей.

Установила LDD 4.3 на Win8.

Кнопка поворота нажимается, но после этого навожу курсор на деталь - и деталь не выделяется.

BorBro, Вы проблему решили?

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

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

Аватар пользователя BorBro

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


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

Чтобы повернуть штифт в нужное положение, при перетаскивании надо на клавиатуре нажимать кнопки со стрелками. На скриншоте они изображены рядом со штифтом.

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

Штифт не поворачивается?

Или поворачивается, но не встает в балку?

На картинке не очень понятно - повернут или нет

У меня детали не поворачиваются (((

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

Чтобы повернуть штифт в нужное положение, при перетаскивании надо на клавиатуре нажимать кнопки со стрелками. На скриншоте они изображены рядом со штифтом.

Аватар пользователя BorBro

штифт вообще не поворачивается

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

Советую Вам еще раз внимательно пересмотреть лекцию 2.3 "Трехмерное моделирование".

Аватар пользователя Виктор

Добрый вечер! Скажите пожалуйста есть ли русификатор программы ЛЕГО ДИДЖИТАЛ? Слишком много непонятных кнопок и слов на английском языке в этой программе. Какую версию программы лучше использовать для этих курсов?

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

Русификатора нет, пользуйтесь переводчиком Яндекс или Google.

Аватар пользователя Роберт

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

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

Да, нужно скачивать с сайта, указанного в лекциях. Глюков в программе нет, нужно очень внимательно посмотреть лекцию 2.3 "Трехмерное моделирование".

Аватар пользователя BorBro

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

Дублирую свой ответ.

Чтобы повернуть штифт в нужное положение, при перетаскивании надо на клавиатуре нажимать кнопки со стрелками. На скриншоте они изображены рядом со штифтом.

Аватар пользователя BorBro

Все получилось! Спасибо за подсказку с кнопками на клавиатуре!)

Аватар пользователя Vera

Добрый день! Также, как и некоторым другим слушателям курса, хочется уточнить: можно ли использовать для выполнения заданий конструктор EV3 и программную среду для него? Обязательна ли установка Robolab?

Читайте также: