XSIforum.com

Transferir historial a un objeto

0 Usuarios y 1 Visitante están viendo este tema.

ZeeL

  • **
  • 347
Transferir historial a un objeto
« en: 12 Octubre 2008, 02:57:23 »
Hola que tal.

Tengo una dudilla de la cual no estoy seguro si con el programa se puede hacer.

He creado un cilindro al cual he dividido en partes, separando sus polígonos pero manteniéndolos en un mismo objeto. Ahora he cogido uno de esos polígonos, y he creado un nuevo objeto a partir de él. He editado este objeto, con una serie de modificaciones (extrude, bevel...); ahora quiero averiguar una manera de transferir los datos de ese polígono que he modificado a los demás de la figura original. Como puedo hacer esto??

alanf

  • *****
  • 6026
  • Pipeline Developer @ Felix & Paul Studios
Re: Transferir historial a un objeto
« Respuesta #1 en: 12 Octubre 2008, 03:25:34 »
No se puede, pero por que lo quieres transferir? ??? Tal vez tu situacion tenga una solucion alternativa.

ZeeL

  • **
  • 347
Re: Transferir historial a un objeto
« Respuesta #2 en: 13 Octubre 2008, 02:27:20 »
Mira te explico.

Tengo constuida una torre y esta ha sido formada a través de un cilindro, dando forma ha sido separada por piezas, pero todo dentro de un mismo objeto. Ahora he extraido una de las partes del objeto, esta la he modificado aprate, pero ahora quiero transferír esas modificaciones a cada una de las partes del objeto original.

Lo que necesito es algo como el comando Clone, pero que lo haga desde un objeto ya modificado a otro. Tal vez sea algo complejo. Espero que me entiendas.

Te dejo dos imágenes, para que te sirván de ejemplo.

Re: Transferir historial a un objeto
« Respuesta #3 en: 13 Octubre 2008, 04:27:52 »
Prueba con el siguiente código, la forma de utilizarlo sería seleccionar primero los elementos a reemplazar y al final el objeto modificado. El pseudo-script depende de que tengan los centros en la misma posición (relativa a cada objeto), yo lo probé con una torre de cajitas :)

Código: (JScript) [Seleccionar]
var oRoot = Application.activeProject.activeScene.Root;
var modifiedObject = oRoot.addModel(null, "modifiedObject");
modifiedObject.kinematics.local.transform = selection(selection.count-1).kinematics.local.transform;
modifiedObject.AddChild(selection(selection.count-1));
var newTower = new ActiveXObject( "XSI.Collection" );
newTower.Add(modifiedObject);
for (var i=0 ; i < (selection.count-1) ; i++)
{
var tempModel = SIInstantiate( modifiedObject, 1, "instanceOf"+modifiedObject.name );
tempModel(0).kinematics.local.transform = selection(i).kinematics.local.transform;
selection(i).properties("Visibility").viewVis.value = false;
newTower.Add(tempModel(0));
}
oRoot.addModel(newTower, "newTower");

Ejemplo de uso:

(Para ver más grande ir a [noembed]http://www.vimeo.com/1950563[/noembed])

Ojalá te sirva, para la próxima te recomiendo que planifiques mejor la forma de trabajar, si sabes que vas a necesitar instanciar/clonar cada parte es más fácil hacerlo así desde un principio que tratar de improvisar una solución ahora.

Salu2 O0

M-TUNE

  • **
  • 668
  • Mental Reeeyyy..!!!
Re: Transferir historial a un objeto
« Respuesta #4 en: 13 Octubre 2008, 16:03:05 »
q fiera Cezar.!