XSIforum.com

Scripting : perdida de la selección

0 Usuarios y 2 Visitantes están viendo este tema.

Re: Scripting : perdida de la selección
« Respuesta #10 en: 14 Abril 2009, 20:20:25 »
Hola de nuevo.. no he entendido mucho esto entre vosotros, pero lanzo otra pregunta.. como puedo hacer para asignar el nombre del material de un objeto a una variable oMatGroup por ejemplo..
intento esto pero no funciona...
Si haces un bucle/loop la variable se sobre-escribe a si misma, necesitas guardarlos en un array/lista. VBScript es un poco marciano con su sintaxis pero en python sería algo asi:
Código: [Seleccionar]
mySel = Application.GetValue("SelectionList") #obtenemos la selección
myNames = [] #creamos una lista vacía donde agregaremos los nombres
for each in mySel: myNames.append( each.Material.Name ) #agregamos los nombres la lista

A ver, sigo con el mismo problema... al principio hago una selección, pero a medida que avanza el script, se seleccionan otros objetos... pero necesito poder acceder a los primeros para que siga el FOR.. como guardo los objetos de una seleccion en un array que no cambie cada vez que se seleccione algo nuevo??

No debería modificarse, lo dices por la parte de los nombres del material? si es asi es porque estás haciendo el loop en Selection en lugar de oSelection ;)

Dios

  • ***
  • 1622
  • Why, Mr. Anderson?
Re: Scripting : perdida de la selección
« Respuesta #11 en: 15 Abril 2009, 16:46:56 »
Pues yo creo que lo de guardar los objetos en una coleccion con vbscript.. no era tan difícil.. yo lo he hecho así, y parece que funciona, ..... por ahora

Código: [Seleccionar]
'Asigna a oSelection todo lo que tengo seleccionado
set oSelection = GetValue( "SelectionList" )

'**Crea una colección para guardalar y usarla mas tarde
set oColl = CreateObject( "XSI.Collection" )

'Logmessage "oSelection.Count =" & oSelection.Count


'****guarda en oColl todos los objetos seleccionados para usarlos más tarde
for j = 0 to oSelection.Count -1
oColl.Add ""& oSelection(j) &""
next

for i = 0 to oColl.Count -1

a partir de aquí sigue un código normal....
 

Dios

  • ***
  • 1622
  • Why, Mr. Anderson?
Re: Scripting : perdida de la selección
« Respuesta #12 en: 15 Abril 2009, 16:49:38 »

No debería modificarse, lo dices por la parte de los nombres del material? si es asi es porque estás haciendo el loop en Selection en lugar de oSelection ;)

No, lo decía porque en el loop necesitaba la selección del principio, para que el script se pudiese ejecutar en todos los objetos que había seleccionado... pero debido al Gator, me seleccionaba el objeto nuevo y me perdía la seleccion.. creo que ya lo he conseguido...

Muchas gracias a los 2.. un detallazo