Representación gráfica en 3D muy fácil

Colapsar
X
 
  • Hora
  • Mostrar
Borrar todo
nuevos mensajes
  • Pepealej
    Nube molecular (masiva)
    BloggerUsuario regular

    • Apr
    • 468

    #1

    Matlab Representación gráfica en 3D muy fácil

    Hola, tengo el siguiente programa con el que tengo que representar la trayectoria de una partícula lanzada con ángulos z y f y velocidad v, de forma que, con el uso del pause, no se represente una línea contínua sino que la partícula se vaya moviendo.

    Para ello escribí este programa, pero cuando lo ejecuto me da un error en el comando axis, que me dice que contiene argumentos que no son números. No se como solucionarlo, ¿alguien me echa una mano? Gracias

    El programa:

    function dibujatiroparabolico(z,f,v)
    %Valores previos
    g=9.81;
    tmax=2*v*sin(z)/g;
    xmax=v*cos(z)*cos(f)*tmax;
    ymax=v*cos(z)*sin(f)*tmax;
    zmax=v*sin(z)*tmax-.5*g*tmax^2;
    %Gráfico
    figure;
    for t=0:tmax/100:tmax
    %Componentes del tiro parabólico
    x=v*cos(z)*cos(f)*t;
    y=v*cos(z)*sin(f)*t;
    z=v*sin(z)*t-.5*g*t^2;
    %Gráfico
    plot3(x,y,z);grid on;axis([0 xmax 0 ymax 0 zmax]); <---Aquí me da el error
    pause;
    end
    end
    Última edición por Pepealej; 09/11/2012, 04:16:05.

  • Al2000
    Agujero negro
    Usuario de confianza

    • Feb
    • 6073

    #2
    Re: Representación gráfica en 3D muy fácil

    Advertencia: Se ha determinado que yo no se nada de Matlab.

    ¿Eso es Matlab? ¿La instrucción axis no debería estar antes del bucle para dibujar? ¿La instrucción ax1s no debería incluir la escala de colores? ¿La instrucción grid on no debería estar antes del bucle?

    Saludos,

    Al
    Última edición por Al2000; 09/11/2012, 06:05:49. Motivo: Corregir pregunta sobre axis.
    Don't wrestle with a pig in the mud. You'll both get dirty, but the pig will enjoy it. - Parafraseando a George Bernard Shaw

    Comentario

    • Pepealej
      Nube molecular (masiva)
      BloggerUsuario regular

      • Apr
      • 468

      #3
      Re: Representación gráfica en 3D muy fácil

      ¿Crees que no he intentado hacerlo? Sí, es Matlab. No se porque ocurre eso

      Comentario

      • hennin
        Secuencia principal (masiva)
        Usuario regular

        • Sep
        • 507

        #4
        Re: Representación gráfica en 3D muy fácil

        function [C]=dibujatiroparabolico(phi,theta,vo)
        for t=1:360 % puedes ponerle más valores si quieres


        x=vo*cosd(phi)*cosd(theta)*t
        y=vo*cosd(theta)*sind(phi)*t
        z=vo*sind(theta)*t-4.9*t.^2
        plot3(x,y,z)
        pause
        hold on
        end

        Comentario

        • Pepealej
          Nube molecular (masiva)
          BloggerUsuario regular

          • Apr
          • 468

          #5
          Re: Representación gráfica en 3D muy fácil

          Hola henin, la estructura de la función la entiendo perfectamente. El único problema es que quiero que los ejes estén definidos justamente por los valores que intenté darle. No quiero que cambien como Matlab quiera para cada punto, quiero que sean fijos, por eso puse: axis([0 xmax 0 ymax 0 zmax]); aquí está mi problema.

          Gracias

          Comentario

          Contenido relacionado

          Colapsar

          Trabajando...