Resultados 1 al 5 de 5

Tema: Mel almacenamiento de variables

  1. #1
    Fecha de ingreso
    May 2005
    Mensajes
    259

    Maya Mel- almacenamiento de variables

    Buen día foreros. Hoy vengo con una duda sobre scripting. El lenguaje en esta ocasión es Mel, aunque supongo que, si me dicen cómo se haría en otro lenguaje lo podría averiguar yo en Mel.

    Tengo una esfera que el usuario puede mover en el eje X hacia el lado negativo o positivo. Necesito de cada movimiento que el usuario haga la posición inicial (pinicial) y la posición final (posición final), para almacenarlas en un par de variables dentro de una expresión.

    Para almacenar posición final podría simplemente leer el valor actual de translatex. Pero aquí va el problema: cómo hago para que el programa me almacene el valor que había en translatex justo antes de que el usuario lo modificara (o sea, el pinicial)?
    En otras palabras, necesito saber de dónde vino la esfera (pinicial) y dónde está (posición final). Todo en tiempo real: o sea, el usuario no está animando nada, solo moviendo una esfera de un lado a otro.


    Ojalá alguien me pueda ayudar. Saludos y muchas gracias.
    Miniaturas adjuntas Miniaturas adjuntas Clic en la imagen para ver su versión completa. 

Nombre: pEsfera.jpg 
Visitas: 416 
Tamaño: 18.5 KB 
ID: 92970  
    Última edición por Xian; 30-01-2009 a las 01:17

  2. #2
    Fecha de ingreso
    Dec 2007
    Mensajes
    678

    Mel- almacenamiento de variables

    Pues podrías agregar un bucle después de leer la variable posición final de tal manera que esté leyendo el valor de esfera, translatex. Saldrá del bucle cuando la el valor de esfera, translatex sea distinto de posición final.

  3. #3
    Fecha de ingreso
    Jan 2009
    Mensajes
    1

    Mel- almacenamiento de variables

    Quibo Xian. Vi su mensaje en MSN y me registré para responder. Entonces yo uso otros lenguajes y hasta ayer empecé a jugar con Mel en el trabajo así que, si acaso hablamos en pseudo code.

    Entonces, tenemos la esfera, su traslación en x y el almacenamiento de la misma, y esto nos produce un output que queremos que se bifurque.

    Pregunta, la traslación en x es un key? O depende en otro modo de la time line? No cierto?
    Si no, digamos que la traslación de la esfera, va a ser siempre lo que usted mismo llama actual, ese valor actual toca almacenarlo cada vez, justamente depende si esa es una cosa que se quiere almacenar constantemente, o cada vez que el valor cambia, o si es una cosa que se quiere hacer en un determinado momento.

    Según eso se almacena en un modo u otro, más bien se update-a en continuación o no, porque justamente toca saber cuándo necesitamos nuestro output.

    De resto cuando se bien de transforms, por su naturaleza conviene almacenarlos en vectores, matrices o cuaterniones.

    Así que, si entiendo bien la cosa, pude ser así (muy pseudo code):
    //creamos un Vector.

    Var pinicial = vector3().
    //metemos un valor para iniciar.

    Pinicial, set(0,0,0).
    //creamos un attribute para almacenar pinicial.

    Addattr oldpos.

    Addattr = pinicial.
    //hacemos otro Vector dichoso incremento.

    Var pincr = vector3().
    //leemos la posición actual de psphere.

    Var myshere = psphere.

    Var trans = mysphere, value, transform.

    Var actual pues = trans, translation.
    //actualizamos nuestro Vector de incremento.

    Pincr. Add(actualpos, pinicial).
    //nuevo attribute para la posición actual.

    Addattr newpose.

    Addattr = pincr.
    //actualizamos nuestro Vector inicial.

    Pinicial. Copy(pincr).

    Listo, cada vez tenemos un posición vieja y una nueva en los sliders, creo que es lo mismo a lo que se refiere Sayden?
    Es solo una idea y no sé si pueda funcionar (y en Maya), pero quien quita.

    Edit. (corrección, se necesita solo la posición x, y en ese caso no son necesarios vectores, sino variables que, de hecho, caben en un attribute float).

    Ojalá ayude. Suerte.
    4602.
    Última edición por 4602; 30-01-2009 a las 17:31

  4. #4
    Fecha de ingreso
    Apr 2002
    Mensajes
    14,651

    Mel- almacenamiento de variables

    En Maxscript podrías usar callbacks para almacenar la posición de la esfera en una variable en el momento en que ésta sea seleccionada. La mueves, y luego almacenas en otra variable la posición actual. Tal vez Maya tenga algo parecido.

  5. #5
    Fecha de ingreso
    May 2005
    Mensajes
    259

    Mel- almacenamiento de variables

    Que más Juan? Gracias por venir, y gracias por toda la ayuda, claro que me sirve. Gracias a IkerClon y Sayden por sus aportes, ya estoy trabajando en eso. Saludos.
    Última edición por Xian; 30-01-2009 a las 19:39

Temas similares

  1. AutoCAD Pasar programa de variables en Visual Basic a AutoLisp
    Por Emilio Perez en el foro Modelado
    Respuestas: 3
    : 03-04-2020, 13:09
  2. Variables de entorno en macos x Maya 2008
    Por gurb en el foro Render, Iluminación y Cámaras
    Respuestas: 0
    : 03-09-2008, 16:03
  3. Duda almacenamiento media
    Por Kerp en el foro Hardware
    Respuestas: 0
    : 16-01-2008, 16:32
  4. Duda con decimales variables de AutoCAD
    Por Ababol en el foro Programas de Diseño 3D y CAD
    Respuestas: 6
    : 09-11-2007, 08:57
  5. 3dsMax Variables
    Por Floc en el foro Animación y Rigging
    Respuestas: 0
    : 02-07-2007, 15:49

Etiquetas para este tema