Selecte objekt inni gruppe

Max scripts

Moderatorer: Super Moderatorer, Admins

Brukeravatar

Trådstarter
Tronotrond
Innlegg: 3748
Registrert: lør 29 okt, 2005
Sted: Houston, TX
Kontakt:

Selecte objekt inni gruppe

Legg innav Tronotrond » ons 02 mar, 2011

Har en array med alle objektene i scenen og skal hente ut enkelte av disse basert på wirecolor. Problemet er at hvis et objekt med riktig wire color ligger inni en gruppe selecter den hele gruppa.

Samme skjer om jeg også helt enkelt f.eks. skriver
select $Objekt_i_gruppe


Hjelp noen? :)
TD/Technical Animator, Corporate Marketing - National Oilwell Varco, Houston, TX
Freelance 3D/VFX Artist - Hille3D

Brukeravatar

Trådstarter
Tronotrond
Innlegg: 3748
Registrert: lør 29 okt, 2005
Sted: Houston, TX
Kontakt:

Legg innav Tronotrond » ons 02 mar, 2011

Hm, ser ut til at dette fungerer, men virker ikke helt optimalt med tanke på hvor lang tid Max kan bruke på å åpne og lukke grupper...?

Kode skrev:isGroupMember $Sphere002 -- returns true if in group
setGroupOpen $Sphere002.parent true -- open group header
select $Sphere002
setGroupOpen $Sphere002.parent false -- close group header
TD/Technical Animator, Corporate Marketing - National Oilwell Varco, Houston, TX
Freelance 3D/VFX Artist - Hille3D

Brukeravatar

havards
Innlegg: 211
Registrert: ons 13 des, 2006

Legg innav havards » ons 02 mar, 2011

Hva med

Kode: Velg alt

(
   local myColor = blue
   local sel = #()
   local groupHeads = #()
   for i in objects where i.wirecolor == myColor do
   (
      append sel i
      if isGroupMember i then
      (
         setGroupOpen i.parent true
         appendIfUnique groupHeads i.parent
      )
   )
   select sel
   for i in groupHeads do
      setGroupOpen i false
)

Litt mer effektivt å samle opp gruppehodene for så å lukke de til slutt i et jafs i stället for å åpne og lukke for hver node.
Du vil fortsatt risikere å "åpne" grupper som er allerede åpnet, men du vil bare lukke hver gruppe 1 gang.
02:14 Misfortune • hun skjuler så jævlig mye i smutthølet
http://folk.ntnu.no/havardsc/site/wordpress/

Brukeravatar

Trådstarter
Tronotrond
Innlegg: 3748
Registrert: lør 29 okt, 2005
Sted: Houston, TX
Kontakt:

Legg innav Tronotrond » fre 04 mar, 2011

Takk for tipset! Ser også ut som en bra måte å gjøre det på.

Kom bare til å tenke på en ting, og jeg har bare ikke fått testa selv, men er det noen ekstra utfordring hvis objektet er nested inni flere grupper?
TD/Technical Animator, Corporate Marketing - National Oilwell Varco, Houston, TX
Freelance 3D/VFX Artist - Hille3D

Brukeravatar

havards
Innlegg: 211
Registrert: ons 13 des, 2006

Legg innav havards » lør 05 mar, 2011

Nei, kodesnutten fungerer uansett hvor langt du presterer å nøste et inn objekt i forksjellige grupper. Testet det nettopp : P
02:14 Misfortune • hun skjuler så jævlig mye i smutthølet

http://folk.ntnu.no/havardsc/site/wordpress/


Gå tilbake til «Max scripts»

Hvem er online

Brukere i dette forumet: Ingen registrerte brukere og 2 gjester

cron