Render.ru

перебрать содержимое Compaund object Connect

ASK'R

Активный участник
Рейтинг
5
#1
в Connect есть пачка сплайнов, все Renderable и с высокой интерполяцией, надо прогнать все их и интерполяцию установить пониже. Вручную можно поименно:
$.Op_83__hand_rails28.Editable_Spline__Object.steps=2, но проблема в Op_83__hand_rails28 - имена уникальны.
как сделать выборку наподобие $.Op_*.Editable_Spline__Object.steps=10 (так не работает) или перебрать в цикле все операнды?
(сейчас в npp решил вопрос собрав строки вручную - но это же не дело..)
 

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
#2
так можно к примеру :
Код:
obj = $
subanims = getSubAnimNames (obj.baseObject)
for subname in subanims where superclassof obj.baseObject[subname].object == shape do obj.baseObject[subname].steps = 2
 

ASK'R

Активный участник
Рейтинг
5
#4
ступил, они не Renderable, а заэкструдены.. проверка where superclassof obj.baseObject[subname].object == shape не пропускает ничего, хотя baseObject должен был вроде добраться до сплайна. В чем не прав?
 

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
#5
В subAnims помимо самих операндов много мусора, придумай свой способ их отфильтровать, по ситуации.
 

ASK'R

Активный участник
Рейтинг
5
#6
сделал так:
Код:
obj = $ 
subanims = getSubAnimNames (obj.baseObject) 
for subname in subanims do
(
	if obj.baseObject[subname].name!="Segments" and obj.baseObject[subname].name!="Tension" and (findString obj.baseObject[subname].name "Transform")==undefined then
	(
		obj.baseObject[subname].object.Editable_Spline__Object.steps=2
	)
)
доволен как слон! спасибо ;)

ЗЫ тему можно закрывать
 
Сверху