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

обращение к элементам сетки в скрипте

Тема в разделе "MAXScript", создана пользователем Виталий Мартынов, 27 окт 2012.

Модераторы: Savin Denis
  1. Виталий Мартынов

    Виталий Мартынов Знаток

    С нами с:
    28.02.2009
    Сообщения:
    135
    Симпатии:
    0
    Баллы:
    26
    Всем привет. Подскажите плиз знающие люди как в MaxScript создать массив или коллекцию из элементов сетки, или просто как задать обращение к элементам. Объясню на примере. Нужно скрывать элементы сетки (примитив, разбитый на фрагменты-элементы) по условию в процессе анимации. Так как это сделать в скрипте.
     
  2. igorznag

    igorznag Знаток

    С нами с:
    23.04.2010
    Сообщения:
    1.256
    Симпатии:
    173
    Баллы:
    65
    Попробуйте изменить/использовать функцию findIsolatedPolys().
    Функция находится в теме: Separate polygons that are next to each other in groups !?. Сообщение 10.
    Вместо obj.selectedfaces пишем obj.faces и получаем такой скрипт:
    Код:
    fn findIsolatedPolys obj:selection[1] faces:  = if iskindof obj Editable_Poly do
    (
    	fn firstBit arr = if arr.isEmpty then #{} else #{(arr as array)[1]}
    
    	--if faces == unsupplied do faces = obj.selectedfaces as bitarray
    	if faces == unsupplied do faces = obj.faces as bitarray
    
    	local vertsUsingFace = polyop.getVertsUsingFace
    	local facesUsingVert = polyop.getFacesUsingVert
    		
    	local iso = #(), f, ff, flist
    
    	f = firstBit faces
    	flist = faces
    	while not f.isEmpty do
    	(
    		ff = facesUsingVert obj (vertsUsingFace obj f)
    		ff *= faces
    		flist -= ff
    		
    		f = if not (ff - f).isEmpty then ff else
    		(
    			append iso ff
    			firstBit (faces = flist)
    		) 
    	)
    	iso
    )
    
    obj_elements_array=findIsolatedPolys()
    print obj_elements_array
    1. В новой сцене создаем один чайник (Teapot) и конвертируем его в Editable Poly.
    2. Выделяем чайник и запускаем скрипт.
     
  3. Виталий Мартынов

    Виталий Мартынов Знаток

    С нами с:
    28.02.2009
    Сообщения:
    135
    Симпатии:
    0
    Баллы:
    26
    Спасибо за ответ. Я новичек в скриптах и пока многого не понимаю в вашем скрипте но буду разбираться. Сейчас стоит новая, более актуальная задача по проверке цикла при анимации. Вынес ее в новую тему.
     
Модераторы: Savin Denis

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