1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

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

Тема в разделе "MAXScript", создана пользователем ASK'R, 21 июл 2010.

Модераторы: Savin Denis
  1. ASK'R

    ASK'R Активный участник

    С нами с:
    18.03.2008
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    5
    в Connect есть пачка сплайнов, все Renderable и с высокой интерполяцией, надо прогнать все их и интерполяцию установить пониже. Вручную можно поименно:
    $.Op_83__hand_rails28.Editable_Spline__Object.steps=2, но проблема в Op_83__hand_rails28 - имена уникальны.
    как сделать выборку наподобие $.Op_*.Editable_Spline__Object.steps=10 (так не работает) или перебрать в цикле все операнды?
    (сейчас в npp решил вопрос собрав строки вручную - но это же не дело..)
     
  2. Savin Denis vip

    Savin Denis Moderator Команда форума

    С нами с:
    05.05.2005
    Сообщения:
    1.633
    Симпатии:
    0
    Баллы:
    210
    так можно к примеру :
    Код:
    obj = $
    subanims = getSubAnimNames (obj.baseObject)
    for subname in subanims where superclassof obj.baseObject[subname].object == shape do obj.baseObject[subname].steps = 2
    
     
  3. ASK'R

    ASK'R Активный участник

    С нами с:
    18.03.2008
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    5
    спасибо, завтра попробую
     
  4. ASK'R

    ASK'R Активный участник

    С нами с:
    18.03.2008
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    5
    ступил, они не Renderable, а заэкструдены.. проверка where superclassof obj.baseObject[subname].object == shape не пропускает ничего, хотя baseObject должен был вроде добраться до сплайна. В чем не прав?
     
  5. Savin Denis vip

    Savin Denis Moderator Команда форума

    С нами с:
    05.05.2005
    Сообщения:
    1.633
    Симпатии:
    0
    Баллы:
    210
    В subAnims помимо самих операндов много мусора, придумай свой способ их отфильтровать, по ситуации.
     
  6. ASK'R

    ASK'R Активный участник

    С нами с:
    18.03.2008
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    5
    сделал так:
    Код:
    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
    	)
    )
    доволен как слон! спасибо ;)

    ЗЫ тему можно закрывать
     
Модераторы: Savin Denis

Поделиться этой страницей