[Настройки текста] [Cбросить фильтры]
- 1
- 2
- 3
- 4
- . . .
- последняя (5) »
Создание модели в OpenSCAD
Запустим OpenSCAD:
Рис. 6.
Программа трехмерного моделирования твердых тел для программистов. Между прочим, работать в ней куда проще, чем в автокаде, компасе и солидворкс. Достаточно заглядывать по ссылке в шпаргалку: http://www.openscad.org/cheatsheet/index.html брать оттуда необходимые сведения. Создадим новый проект и сохраним его пока как cheeks.scad. Загрузим эскиз, написав такой текст в редакторе openscad:
module ch1() { linear_extrude(3) import("p1.dxf", $fn=60); //$fn — число отрезков дуг } ch1();
Нажмем F6 и программа сделает рендер модели:
Рис. 7.
Как видим, сохранен масштаб, openscad это не рисовалка для стульев в офисе, которыми пользуются дизигинеры, а точная программа. Эскиз выдавлен на три единицы. Теперь не помешает загрузить «фрезер», а чтобы он не смущал, сразу сдвинуть его по оси X на 30 единиц вправо:
Рис. 8.
module ch1() { linear_extrude(3) import("p1.dxf", $fn=60); color("Silver") { translate([30,0,0]) linear_extrude(20) import("f1.dxf"); } } ch1();
Те, кто привык к процедурным языкам, должны привыкнуть к функциональному языку openscad. Сначала мы говорим, в какой цвет должен быть окрашен объект, затем смещаем его на вектор, затем выдавливаем, и наконец, импортируем сами данные для этого. Можно объявлять переменные, присваивать им значения, но потом уже нельзя их изменить. А пока получается такая картина:
Рис. 8.
Все правильно, я не сказал вам, что базовая точка второго контура на полторы единицы правее него самого. Поэтому он показан чуть левее, но сдвинут как надо. Теперь этот второй серый предмет повернем относительно оси Y на 90 градусов, т. е. по часовой стрелке (в математике положительный угол отсчитывается против часовой стрелки, а тут наоборот.). Сделаем это перед выдавливанием и после переноса:
module ch1() { linear_extrude(3) import("p1.dxf", $fn=60); color("Silver", 0.5) { translate([-2,0,0]) rotate(90, [0,1,0]) linear_extrude(20) import("f1.dxf"); } } ch1();
Значение переноса теперь меняется. Серый “предмет” сдвигается влево на -2 по оси X, после того, как был повернут по оси Y на 90 градусов. Кроме того, мы делаем его полупрозрачным (Хакеры пусть гадают, как. Я все время подглядываю в шпаргалку, остальное мне заменяет понимание общих принципов). Картина получается такой:
Рис. 9.
Прозрачность добавлена просто для наглядности, это очень полезно в некоторых случаях. Теперь можно попробовать «фрезерование». Это просто булева операция вычитания. Вставляется она, как уже нетрудно догадаться, перед translate:
module ch1() { difference() { linear_extrude(3) import("p1.dxf", $fn=60); color("Silver", 0.5) { translate([-2,0,0]) rotate(90, [0,1,0]) linear_extrude(20) import("f1.dxf"); } } } ch1();
Получается почти готовая щечка:
Рис. 10.
«Отфрезерованная» поверхность показана зеленой. Осталось сделать небольшую бобышку, обозначающую первый вывод. Для этого нужно знать ее координаты и радиус. Радиус пусть будет 0.6, высота тоже 0.6, сделаем небольшую фаску 0.2 сверху и объединим со щечкой. Координаты лучше уточнить в проекции на оригинальном чертеже. Можно взять 4, 13, 1.5 относительно точки привязки. Сделать бобышку можно прямо в исходнике openscad (как можно было бы сделать и щечку). Для этого нужно сделать два цилиндра, и перенести один из них. Затем объединить оба цилиндра, перенести его в точку с уточненными координатами и объединить бобышку со щечкой. Можно продолжать делать все в модуле ch1, но можно показать, как один модуль можно вложить в другой.
module ch1() { difference() { linear_extrude(3) import("p1.dxf", $fn=60); color("Silver", 0.5) { translate([-2,0,0]) rotate(90, [0,1,0]) linear_extrude(20) import("f1.dxf"); --">
- 1
- 2
- 3
- 4
- . . .
- последняя (5) »
Последние комментарии
2 дней 4 часов назад
2 дней 11 часов назад
2 дней 11 часов назад
2 дней 14 часов назад
2 дней 16 часов назад
2 дней 19 часов назад