Skocz do zawartości

Rekomendowane odpowiedzi

Napisano (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 przez Lzja
  • Odpowiedzi 3
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Top Posters In This Topic

Napisano

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.

Napisano

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 )

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ę



×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności