Gracias Gracias:  1
Resultados 1 al 8 de 8

Tema: animar un objeto con un archivo externo de cordenadas y angulos

  1. #1
    Miembro Nuevo
    Fecha de ingreso
    Mar 2009
    Mensajes
    3

    animar un objeto con un archivo externo de cordenadas y angulos

    hola
    me encuentro con un problema a la hora de importar coordenadas x,y,z y los tres angulos.

    tengo un script pero tiene un error en el "x.value" y no se como seguir

    -- This Script will reset your scene, so save before running it.
    resetMaxFile #noPrompt
    s = sphere ()
    spaz = s.pos.controller

    -- Function Definition
    fn AddKeysFromFile ctrl file =
    (
    local f = openFile file
    t=0
    while (not eof f) do
    (
    local x = addNewKey ctrl t
    local a = [readValue f,readValue f,readValue f]
    x.value = a
    te += 10
    )
    close f
    )

    -- EVALUATE FUNCTION
    AddKeysFromFile spaz "infiniti.dat"

    con el archivo infiniti
    -15.7436,9.4353,-11.2804
    96.011, -150.876, 138.0289
    -5.2103, -230.7725, 122.3503
    29.9328, -212.5843, 9.2386
    92.5178, -120.9492, -57.7814
    -0.5455, 1.8896, 11.4197
    -91.7734, 124.0946, 122.0455
    -28.3564, 213.9283, 164.8463
    4.4424, 231.2096, 84.569
    -102.4511, 155.1786, -55.0066
    -15.7436, 9.4353, -11.2804

    me gustaría saber que error tengo y como añadir también las rotaciones
    muchas gracias

  2. #2
    pythonized... Avatar de Cesar Saez
    Fecha de ingreso
    Mar 2004
    Ubicación
    Granada, España
    Mensajes
    3,765

    Respuesta: animar un objeto con un archivo externo de cordenadas y ángulos

    El problema es que estas tratando de darle un valor a una key entregando un vector de 3 valores. Si animas algo manualmente veras que cada componente de la posición tiene su propio controlador y por ende su propia colección de keys.

    Una forma de resolverlo sería usar la opción animate, prueba con esto
    Código:
    (
     fn AddKeysFromFile ctrl file =
     (
     f = openFile file
     t=0
     while not eof f do
     (
     animate on
     (
     at time te ctrl.value = [readValue f,readValue f,readValue f]
     )
     te += 10
     )
     close f
     )
     s = sphere()
     AddKeysFromFile s.pos.controller "infinity.dat"
    )

  3. #3
    Miembro Nuevo
    Fecha de ingreso
    Mar 2009
    Mensajes
    3

    Respuesta: animar un objeto con un archivo externo de cordenadas y angulos

    muchas gracias por tu rápida contestacion,
    pero he probado lo que me has dicho y no me funciona, y no se que pasa,

    si puedes ver que pasa, muchas gracias

    hasta lueoo

  4. #4
    pythonized... Avatar de Cesar Saez
    Fecha de ingreso
    Mar 2004
    Ubicación
    Granada, España
    Mensajes
    3,765

    Respuesta: animar un objeto con un archivo externo de cordenadas y ángulos

    Guardaste el script en la misma carpeta que el archivo infinity.datí quizás es eso.

  5. #5
    Senior Member Avatar de Ruramuq
    Fecha de ingreso
    Sep 2004
    Mensajes
    124

    Respuesta: animar un objeto con un archivo externo de cordenadas y ángulos

    Ahí mismo en cgtalque dan la respuesta a este script y varias opciones más..
    el error esta en la variable x que retorna OK en lugar del key como lo indica ZeBoxx2
    http://forums.cgsociety.org/showthre...ddKeysFromFile

    La respuesta de Bobo es muy buena :
    Cita Iniciado por Bobo de CGtalk
    Código:
    -- This Script will reset your scene, so save before running it.
    resetMaxFile #noPrompt
    s = sphere ()
    -- Function Definition
    fn AnimateObject spaz file=
    (
    	local f = openFile file
    	t=0
    	 while (not eof f) do
    	(
    		with animate on at time te spaz.pos = [readValue f,readValue f,readValue f]
    		 te += 10
    	)
    close f
    )		
    -- EVALUATE FUNCTION		
    AnimateObject s "test.dat"

  6. #6
    pythonized... Avatar de Cesar Saez
    Fecha de ingreso
    Mar 2004
    Ubicación
    Granada, España
    Mensajes
    3,765

    Respuesta: animar un objeto con un archivo externo de cordenadas y ángulos

    Que coincidencia, sugerí exactamente lo mismo que Bobo, vaya honor

  7. #7
    Miembro Nuevo
    Fecha de ingreso
    Mar 2009
    Mensajes
    3

    Respuesta: animar un objeto con un archivo externo de cordenadas y ángulos

    muchas gracias...
    ya para marear un poco la perdiz estoy intentando a parte de mover la "esfera" hacer que rote en sus tres ángulos de giro...,

    ¿Como podría hacerlo?

    muchas gracias de adelantado

  8. #8
    pythonized... Avatar de Cesar Saez
    Fecha de ingreso
    Mar 2004
    Ubicación
    Granada, España
    Mensajes
    3,765

    Thumbs up Respuesta: animar un objeto con un archivo externo de cordenadas y ángulos

    Depende como tengas la información en tu archivo .dat, suponiendo que tengas la información intercalada (una línea para posición y la siguiente rotación) podrías hacerlo así:
    Código:
    (
     fn AddKeysFromFile obj file =
     (
     f = openFile file
     t=0
     while (not eof f) do
     (
     animate on
     (
     at time t
     (
     obj.position = [readValue f, readValue f, readValue f]
     obj.rotation = eulerAngles (readValue f) (readValue f) (readValue f)
     )
     )
     te += 10
     )
     close f
     )
     s = sphere()
     AddKeysFromFile s "infinity.dat"
    )
    Ojo, el número de líneas con información de posición debe ser igual al de rotación

Temas similares

  1. Blender objeto o archivo .3ds a blender
    Por hectorsf21 en el foro Modelado
    Respuestas: 3
    Último mensaje: 26-08-2015, 12:47
  2. animar un biped mediante un archivo FBX
    Por ftejada en el foro Animación y Rigging
    Respuestas: 2
    Último mensaje: 19-11-2014, 05:14
  3. Pasar un objeto de un archivo a otro en 3ds Max
    Por liliani en el foro Infografía General
    Respuestas: 3
    Último mensaje: 13-12-2010, 02:48
  4. Respuestas: 12
    Último mensaje: 29-07-2010, 02:33
  5. Render en videopost:archivo externo
    Por Rekuen en el foro Render, Iluminación y Cámaras
    Respuestas: 3
    Último mensaje: 22-12-2005, 21:58

Actualmente estos son sus permisos de publicación en el foro.

  • -No puedes crear nuevos temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes responder temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes subir archivos adjuntos al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes editar tus mensajes al no estar registrado o no haber iniciado sesión en el foro.
  •