Создаем 3D детальки для DipTrace

В последних версиях DipTrace'а добавилась фича трехмерного предпросмотра платы. По качеству оно конечно не дотягивает до связки Орла с POVRay, но для прикидки, влезет ли оно в корпус, не будут ли компоненты мешать друг-другу и тому подобного, вполне сойдёт. Но не всегда нужная деталька уже есть в стандартной библиотеке. И если процесс создания в component и pattern редакторах вполне описан в туториале, то с 3D пришлось разбираться самому. Вот что получилось:


Для создания 3D-моделей компонентов, создатили DipTrace'а использовали бесплатный опенсорсный многоплатформный редактор Wings 3D. Вообще, можно использовать и другие редакторы, экспортирующие в формат VRML 2.0 (*.wrl) или 3D Studio (*.3ds), например Blender. 3D редактор я не брал в руки не запускал уже лет десять, так что мне было всё равно что выбирать и я остановился на Wings 3D.

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

L, M, R обозначают клавиши мыши, scroll — вращение колеса.

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

Ещё одна особенность — работа с выделением. Во-первых, выделять можно отдельно вершины, рёбра, грани или объекты целиком. Над чем хотим работать выбирается вверху окна:

Во-вторых, в отличии от большинства редакторов, выделение не сбрасывается при выборе другого объекта, он просто добавляется к выбранному. Повторный клик на объекте удаляет его из выделения. То есть как в других редакторах с зажатым Control'ом. Отсюда следует ещё нюанс, меню по правой кнопке зависит не от того, в каком месте его вызвать, на объекте или на пустом, а от того, выбрано что-то в данный момент или нет. Если ничего не выбрано — появляется меню создания новых объектов, иначе появляются возможные операции над выделенным. Они зависят от того, что выбрано, вершины, рёбра, грани или объекты целиком. Снять выделение можно пробелом.

Для начала — тактовая кнопка. Если посмотреть на неё не обращая внимания на детали, то состоит она из параллелепипеда, цилиндра и четырёх ножек.

Создаем основание. Правой кнопкой — cube. Причем если на этот пункт меню просто кликнуть — создастся шаблонный кубик, это не очень удобно. Лучше кликнуть в этот пункт меню правой кнопкой (или левой, но в квадратик с правой стороны). Тогда появится окно ввода размеров нашего кубика:

Кстати о единицах измерения. Можно использовать любые, масштаб потом будет задан в DipTrace'е. Удобно использовать миллиметры или десятые доли дюйма (2.54 мм), смотря откуда берутся размеры, с линейки или из даташита. Я использовал миллиметры.
Все объекты создаются в центре координат. Значит нужно кубик подвинуть вверх, на 1.5 мм. Выделяем его, выбираем в меню Move, ось Y, сдвигаем. При сдвиге удобно выбирать шаг 1 (Shift) или 0.1 (Ctrl) для точного сдвига.
Снимаем выделение (Пробел), создаем циллиндр (опять, правой кнопкой для ввода размера):

Количество секций определяет, насколько циллиндр будет гладким. Для ножек микросхем можно ставить поменьше, для кнопки — побольше. Я вначале поставил 16, выглядело не очень, пришлось потом разбивать. 32 гораздо лучше. X и Z диаметры одинаковые и сверху и снизу, плющенный конус нам не нужен.
Сдвигаем его вверх по оси Y, воздвигаем на кубик. Прям таки пьедестал, памятника не хватает:

Теперь ножки. Их я сделал из двух кубиков, вертикального, 1х4.5х0.3 и горизонтального, 1х0.3х2. Сдвинул куда нужно. В режиме граней выбрал торцевую грань верхнего кубика и немного сдвинул её для красоты.

Готовую ножку можно просто отклонировать через пункт меню Dublicate.
Черновой вариант кнопки готов. При желании можно добавить деталей для красоты.

Теперь нужно раскрасить.

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

Если нужно будет поправить цвет, то это можно сделать в окне материалов, прячется оно в меню window — outliner (я его долго искал).

Ну а теперь самое время примерить результат в DipTrace'е.

В Wings 3D экспортируем наше творчество в файл .wrl (File — Export — VRML 2.0). Открываем Dip Trace Pattern Editor, создаем футпринт кнопки в своей библиотеке. Открываем окно Pattern — 3D Model и подгружаем нашу модельку. Открывается она скорее всего боком, да и размером больше чем надо. Но это не беда, поворачиваем в настройках справа по оси X на -90 градусов и выставляем масштаб. Масштаб зависит от того, в каких единицах мы рисовали. DipTrace считает в десятых долях дюйма, поэтому если мы рисовали в миллиметрах, то масштаб будет 1/2,54=0.3937. Его и указываем.


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


В целом, если натренироваться, 3D модели компонентов создаются достаточно быстро.

В аттаче файлы для Wings 3D.

Продолжение.
  • +9
  • 01 августа 2011, 06:26
  • ACE
  • 1
Файлы в топике: wings3d.zip

Комментарии (49)

RSS свернуть / развернуть
Как оно все быстро и просто то. Особенно после опыта 3Д макса. Хоть на диптрейс переходи :) в Игл все гораздо сложней. Да и само описание моделей позамудреней будет.
0
С одной стороны да. С другой — POVRay мощнее. В нём не составит труда взять шарик и вырезать в нём дырку. В 3Д Максе хоть была операция Boolean, а тут её нету. Может быть есть какой-то способ, но нормальной документации на Wings 3D я не нашёл. Хотя, для простых вещей достаточно и этого.
0
Наверняка можно. Но вот в диптрейсе 3Д можно крутить прям по ходу, не надо ничгео рендерить. Это куда важней красивости поврея.
0
Эм. Сравнивать крылья с Максом. Странно. Эти программы совершенно под разные цели. Но сетка даже такого простого обьекта как индикатора просто жуть. Простенькие обьекты типа этих — да, легко, но что-то сложнее — и все, уже хана и паника. Я думаю, даже болтик под крестовую отвертку тут будет сделать сложно, так скажем.
Это я как 3D-шник с пятилетним стажем говорю.
Кстати, для вырезания дырки в сцене далеко не обязательно пользоваться булином, к тому же булин это плохо, он дает ужасную сетку
0
Так скажем, крылья заточены под создание примитивов (сфер, цилиндров, боксов) и небольших их вариаций, но стоит только подумать о поверхностях сглаживания и все, крылья не применимы
0
Но разработчики как то умудрились хотя бы несколько довольно сложных сцен сделать для галереи.
Тем не менее, Крылья к Максу гораздо ближе, оба они построены на разделении поверхностей на треугольники. Тогда как POVRay — типичный рейтрейсер с математическим описанием сцены.

Это я как человек, занимавшийся всем этим последний раз лет 10 назад, говорю :)
0
Но сетка даже такого простого обьекта как индикатора просто жуть
А чем, собсно, не нравится?

Wings3D конечно не макс, зато он бесплатный и легкий, что достаточно актуально, если нужно быстро накидать кубическую кнопку для 3д превью. Фотореалистичную плату с его помощью никто делать и не собирается, равно как и осваивать макс только для этого.
0
Ну модельки-то туда можно и из вменяемого редактора гнать. А вот что оно не реалтайм — это да, бред. Разве что красивую картинку для доков или понтов отрендерить. Не думаю, что написать простенький OpenGL рендер сложнее, чем экспортер в POVRay.
0
Экспортер в POVRay сделать можно, они даже скорее всего уже есть. Но смысла в этом нет. Вингс3Д создает сцену из треугольников, отрендеренная в POVRay она будет смотреться также убого. Цилиндр так и останется граненым стаканом. Ну за счет сглаживания и продвинутых технологий будет выглядеть более гладким. Но, к примеру, зеркальное отражение на нём или полупрозрачность — качественно не выйдет.

Также и обратный процесс. Сцену из POVRay не так просто разбить на треугольники, пригодные для отрисовки в OpenGL.
0
Я же не говорю, что оно при этом должно работать так же, как POVRay. Да и сам POVRay ЕМНИП таки использует полигональные сетки для моделек, особенно жкспортированных (а учитывая, что это рендер, а не 3д редактор — он практически исключительно с чем-то откуда-то экспортированным и работает).

Ну и нынче почти вся графика из треугольников, включая крусис. Но он далеко не так убого выглядит :3
0
У POVRay есть свой язык разметки сцены, он и был основным способом моделирования. Как я понял, DiHalt для создания компонентов тоже его использовал, а не какой-либо редактор.

Разный подход. Рейтрейсеры никогда не были в реальном времени, зато в них шар — действительно шар, идеально ровный. Поэтому применяются, в основном, для статики. Зато какая красота получается, достаточно галлерею на сайте POVRay посмотреть. Да и рейтрейс-акселераторов для игр никто пока не делает :)
0
Математика хороша для шариков. Сложные модельки же приходится делать сеточками, более или менее полигональными.
Да и рейтрейс-акселераторов для игр никто пока не делает :)
Но поговаривают. Да и где-то сделали ray-traced Quake III. Правда, играть в него можно только на кластере, но это уже детали)
Алсо, реалтаймовые рейтрейс демки тоже уже есть. Но даже на современном железе разумнее использовать увешанный костылями реалтаймовый рендеринг (забыл, как правильно называется используемый в OGL/D3D подход).
0
Спасибо, надеюсь теперь увидеть статьи с подобными иллюстрациями в качестве примеров.
0
Где находится меню материал? Грани выбрал, есть только Vertex Color и все.
0
  • avatar
  • PRC
  • 01 августа 2011, 10:47
Спасибо автору! Извиняюсь за офтоп, но ссылкой на легальный некоммерческий ключ никто не поделится? Вроде где-то видел, но не нахожу где :(
Видится мне, что прогу можно будет применить для моего будущего диплома, до которого осталось уже не там много времени.
0
Ключ для диптрейса?
User name: Для некоммерческого использования
Reg. key: EW6P-5GEN-PFYM-PS97
Ограничение в 1000 выводов.

С созданием материала разобрался. Действительно все просто, но непривычно.
+1
Хы, шикарный юзернейм! Спасибо, будем изучать!
0
*После часа изучения* DipTrace — классная штука, а стандартная 3D библиотека, супер! Осталось только пройти «курс молодого бойца» и можно будет отказываться от привычной sprint-layout!
0
Прямо все так хорошо? Тоже ищу замену спринту. Игл не вставил :(
0
DipTrace неплох, но мелких сильно раздражающих моментов много. Главное конечно — организация библиотеки компонентов. Очень неудобно. Немного раздражали неправоверные резисторы в виде зигзагов. Но это можно свои нарисовать, что я и сделал. В разводке платы, чтобы повернуть несколько компонентов, надо их сгруппировать, иначе вращаются каждый вокруг своей оси. Соединить линии между листами схем — неудобно, нормальный инструмент сделан только для шин. Нельзя заранее выбрать, для каких компонентов показывать номинал и номера выходов, а для каких нет. Да и сам редактор пока не очень удобным кажется. Протеус, несмотря на долбанутость интерфейса, в работе оказался поудобнее. Хз, может надо поднастроить горячие клавиши. Но я пока только разбираюсь, так что хоть часть проблем, я думаю, ещё решится.
0
Детальки создавать пока не пробовал (но попробую обязательно), про остально могу сказать — гут. Все просто и понятно, хотя мне навеное не помешает почитать уроки по этой проге :) Зацепило, хочу детально разобратья!

Набросал простенькую плату из готовых деталей, развел, посмотрел в 3D, на все ушло пол часа, а прогу запустил — первый раз в жизни! С освоением p-cad я парился неделю (заставили), хуже CAD-а я еще не встречал! С альтиумом тоже помучался — сложноват он для дома.
0
Спринт не катит не разу. Запустил в свое время, посмотрел, охуел и стер. Сразу и бесповоротно. Это каким же надо быть извращенцем, что бы разводить платы без нет-листа (подсвечивающимися линиями связи:)
До этого пользовался альтиумом, перед ним его предшественником протелом. Кто до сих пор сидит на ХП можно заняться и им. Удобен чертяка:) Альтиум суко хорош, очень хорош, но слишком перегружен. А главное у меня стабильно выдавал ошибки. Из за этого и стал искать ему замену. И этой заменой стал диптрейс. Документации не читал ни разу, запустил, влет создал элементы, плату и развел ее. Программа в которой я смог создать плату ни разу не читая документации (а пользуясь интуицией и опытом других программ)достойна всяческих респектов и уважений. А если ее (документацию) еще и почитать;)
В общем на данный момент одна самых достойных программ для разводки плат. Ну и алтиум еще, конечно.
0
Пользую диптрейс около года. Сейчас вот уивдел про 3D предпросмотры, скачал новую версию, 15 минут полистал различные модельки из стандартных либ… Итог: память течет жутко: пол гига заняло. и не нашел штырьков(их то и искал). В результате вывалилось с ошибкой.(W7x64).Бета она и есть бета, посмотрим что дальше будет…
0
  • avatar
  • kest
  • 01 августа 2011, 21:08
А в прошлых версиях штырьки были? А то да, их сильно не хватает. Я себе нарисовал.
Из глюков у меня было только залипание инструментов, типа зума, когда даже выбор обычной стрелки не помогает, всё равно мышь продолжает зумить. Память не жрало, вылетать не вылетало. После Протеуса даже непривычно :) Винда такая же.
0
в прошлых не знаю, была 2.1.0.9 а она без 3D. как поставил год назад так и не обновлялся.
Попробуйте открыть список всех моделек и полистать.

Только что повторил эксперимент(2.1.9.5 beta). Пролистал все стандартные модели до «cqfp-148_28.5x28.5x0.635.wrl». Все зависло, окно предпросмотра пропало, Pcb.exe занял в ram 938 Mb.
0
Вышла 2.2 RC1. Кажется исправили этот глюк.
0
  • avatar
  • ACE
  • 04 сентября 2011, 01:37
В натуре жрет, видать разработчики забыли о высвобождении в памяти неиспользуемых объектов.
0
А где в Wings прописать путь сохранения? Пытаюсь сохранить в другую папку — пишет ошибку. Только в себя получается сохранить.
0
У меня сохраняет в любую папку, например в папку пользовательских библиотек ДипТрейса. Проверь права пользователя на запись в папку.
0
Мужики, а по крыльям есть внятное руководство?
0
Судя по молчанию, делаю вывод о уникальности данной статьи, но ведь я не могу за нее дать более одного плюса :)
Быстрое гугление, в поисках не помогло :(
0
Не только записывать, но и читать не хочет ни откуда кроме себя.
0
Так эти модели для KICAD пойдут, спасибо) Там тот же формат.
Я им пользуюсь и буду пользоваться в современной версии уже очень хорошо и без всяких ограничений.
А так установлены и DT под wine и Eagle и пользовался когда-то Orcad но не особо мне понравилось это несколькогигабайтное изделие.
0
  • avatar
  • Ross
  • 04 августа 2011, 01:53
Ребята, все-таки как в крыльях нарисовать дырку в 220-м корпусе???
0
Написал статейку на эту тему
0
Понравился WIngs 3D. Он, кстати, умеет общаться с юзером по-русски, но так, что аж слеза прошибает от его исканий: чего только стоит Фон Консоля :)
0
  • avatar
  • yars
  • 19 августа 2011, 08:13
Нарисовал пару 3D деталек в blender и сохранил в формат 3DS. Сначала вроде все работало, но теперь по неведомым причинам мои детали стали прозрачными! Может DipTrace плохо понимает этот формат? С форматом WRL подобного ни у кого не наблюдалось?
0
Я WRL пользую, работаю в Wings3D, пока нареканий нет. А версии программ какие? Обновлений не было?
0
У меня DipTrace 2.1.9.5 beta, если вы об этом. Скачан он был в день выхода данной статьи с офф. сайта. blender 2.59, я нашел для него плагин для сохранения в wrl, но пока не понял, как его поставить :) Называется vrml97_import.py.
0
А то вышла версия 2.2, я сейчас ей пользуюсь. Щас blender скачаю, погляжу.
0
С помощью wings конвертировал свои модельки из 3ds в wrl (все, как Экзибит учил, конвертация в конвертации!) Суть не поменялась, мои модельки прозрачные :)
Понял я одно — если добавить на плату хотя бы одну деталь НЕ моего производства, то все хорошо! Все детали (и мои в том числе) отображаются как я и хотел. В общем yars, если захотите попробовать на другой версии DipTrace, скажите — я вам кину пару своих деталей для опытов. А вообще я просто хочу сделать курсовик с 3D платой, чтобы потом забабахать красивый диплом :)
0
Да, неплохо бы. Интересно стало — отчего так? У меня вроде нормально. Вот рисую сейчас USB разъем, я его в стандартной библиотеке 3D не нашел.
0
Может, текстуры куда пропали?
0
Возможно, какая-нибудь системная библиотека отправилась в страну вечного ничегонеделания. У меня, к моему удивлению, все нормально. Но у меня система только дней 5 как переустановлена. Вспомните, не было ли в последнее время изменения программной части ПК, может, настройки какие испортились.
0
А я систему переустанавливал, когда мигрировал на DipTrace 2.2. После установки оказалось, что трассировщик что-то не работает. Я и сносил DipTrace полностью, с чисткой реестра, не помогло. Систему переустановил — тоже :) Оказалось, трассировщик банально не настроен был :) Но так даже лучше :)
0
Создал модельку в Компас-3D, экспортировал в .wrl. В DipTrace прекрасно отобразилась.

У кого есть модели штырей PLS/PLD, в том чиле и гнутых (-R), а также USB-разъёмов?
0
  • avatar
  • snb
  • 30 марта 2012, 16:25
Вот тут подсказали неплохой сайт с коллекцией 3Д моделей. Всякие разъемы там проще всего найти.
0
Спасибо!!!
0
О, и мне тоже пригодятся, спасибо!
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.