Render.ru
Поддержать

как с помощью getCurrentSelection() повернуть группу объектов

Willyam Bradberry

Знаток
Рейтинг
33
но НЕ трогая сами объекты внутри группы
т.е. у меня есть функция

on selectAndRotate pressed do
(
local xa = getCurrentSelection();
for i = 1 to xa.count do
(
rnd = (random -360 360)
rotate xa (eulerangles 0 0 rnd)
)
)

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

спасибо за внимание и жду ответ.

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
поворачивай только заголовок группы
все обьекты группы повернутся автоматически тк связанны
да и если есть многослойная вложенность или прилинкованные
обьекты это тоже надо будет учесть

on selectAndRotate pressed do
(
local xa = getCurrentSelection();
for i = 1 to xa.count do
(
if isGroupMember xa do continue
rnd = (random -360 360)
rotate xa (eulerangles 0 0 rnd)
)

Willyam Bradberry

Знаток
Рейтинг
33
СПАСИБО =)
очень хороший вариант

я, к примеру сделал вот так:

on selectAndRotate pressed do
(
local xa = getCurrentSelection();
for i = 1 to xa.count do
(
rnd = (random -360 360)
xx = (xa.baseObject as string)
if xx == "Dummy" do
(
rotate xa (eulerangles 0 0 rnd)
)
)
)