III. Перемещение и трансформация отдельно взятого объекта 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

III. Перемещение и трансформация отдельно взятого объекта

Поиск

III. Перемещение и трансформация отдельно взятого объекта

 

Переместить объект:

 

translate([0,10,50]){cube([10,25,50]);}

 

эта команда переносит («транслирует») куб по оси X – на 0 мм, по оси Y – на 10, по оси Z – на 50 мм.

Удобно записывать такие команды в «объёмном» виде:

 

translate([0,10,50])

{

cube([10,25,50]);

}

 

Для программы этот код ничем не отличается от предыдущего, но мы видим блок кода, который команда «транслирует», а в самом блоке может быть множество команд.

Повернуть объект:

rotate([x,y,z]) команда;

 

обратите внимание на моменты:

1) x,y,x – это углы поворота вокруг соответствующей оси в градусах.

2) углы поворота нужно указывать по каждой оси, даже если это нулевое значение, а все вместе они обрамляются квадратными скобкамию

3) команда не обрамляется в скобочки, поэтому для поворота сложного объекта используйте union (об этой команде рассказано дальше); частая проблема – между rotate и командой поставили «;», соответственно поворот выполнен, но повернули не объект, который хотели, а «пустой» объект (всё, что шло до «;», то есть ничего).

 

Изменить размер объекта (масштабировать):

 

scale([x,y,z]) команда;

 

Замечания – те же, что и для команды rotate.

 

 

IV. Действия одновременно с несколькими объектами

 

Порой приходится строить сложный объект, а потом перемещать его, масштабировать или выполнять ещё какие-то манипуляции. Для облегчения этого процесса сложный объект, состоящий из множества мелких, удобно «обернуть» в команду-оболочку, что можно сделать двумя способами:

1) Применить команду union:

union()[код, который нужно представить в виде единого объекта для последующих манипуляций]

2) Заключить код в модуль:

a. Определим модуль, который определяет форму, но не отображает объект:

module имя (параметр1, параметр2, …){код модуля}

b. вызовем модуль, таким образом отобразим объект:

имя (значение_параметра1, значение_параметра2, …);

Использовать модуль удобно в тех случаях, когда к определённому фрагменту кода приходится обращаться множество раз, причём с разными параметрами. Подробнее про создание и использование модулей мы говорим на занятиях, а если что-то пропустили или не поняли – задайте свой вопрос в группе ВКонтакте.

 



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 54; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.006 с.)