Lzja Napisano 2 Lipiec 2016 Share Napisano 2 Lipiec 2016 (edytowane) hej, zaczynam naukę pisania skryptów w pythonie i mam takie proste pytanie. Mam niecałe 1k obiektów, i chciałbym żeby cześć z nich została zaznaczona. Napisałem taką prostą pętle ale nie działa. Proszę o jakieś rady.obiekty nazywaja się file1_# czyli file1_1,file1,_2 itd import maya.cmds as cmds import random Idu = random.uniform(0, 967) nameD=["geo1|file1_",+Idu] for i in range(0,100): # cmds.ls(nameD) cmds.select(nameD,replace=True) Edytowane 2 Lipiec 2016 przez Lzja Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
ca mel Napisano 2 Lipiec 2016 Share Napisano 2 Lipiec 2016 napisałem sobie coś podobnego w melu: select -r "*file1_*"; string $selekcja[] = `ls -os -fl`; string $selekcjaNowa[]; clear $selekcjaNowa; for ($licznik = 0; $licznik if ( rand(0,1)> 0.5 ) $selekcjaNowa[size($selekcjaNowa)] = $selekcja[$licznik]; select -r $selekcjaNowa; Co prawda skrypt w założeniu zostawiał losową selekcję z zaznaczenia, lecz nie szkodzi mu to zaznaczenie wymusić w pierwszej linii. Budowana jest tablica z nową selekcją - tak by setki tysięcy obiektów/vertexów nie zaznaczały się po kolei blokując viewport. Powinieneś z łatwością przepisać to pod pythona. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
KrzyM Napisano 19 Lipiec 2016 Share Napisano 19 Lipiec 2016 Możesz użyć random.sample https://docs.python.org/2/library/random.html import maya.cmds as cmds import random # clear the active list cmds.select( clear=True ) # select all dag objects and all dependency nodes cmds.select( all=True ) obj =cmds.ls( selection=True ) num_to_select = 5 # set the number to select here. list_of_random_items = random.sample(obj, num_to_select) # clear the active list cmds.select( clear=True ) for item in list_of_random_items: cmds.select(item, add=True ) Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Lzja Napisano 24 Lipiec 2016 Autor Share Napisano 24 Lipiec 2016 Dzięki Wam! Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się