Una manera de hacer la gráfica de una esfera hueca es primero construir el cascaron como una superficie expresada con coordenadas esféricas y después convertirlas a coordenadas cartesianas con la función sph2cart(). Matlab utiliza la convención alta-azimutal
para coordenadas esféricas por lo que se tiene que considerar a la hora
de traducir funciones expresadas con otras convenciones (por ejemplo, aquellas que miden theta desde el eje Z). En este ejemplo estoy graficando una esfera unitaria centrada en el origen pero pueden modificar el radio multiplicándolo por el valor que deseen y sumando un offset a las coordenadas cartesianas para moverla. Este ejemplo también funciona sin ningún problema en Octave, que es la versión abierta y gratuita de Matlab.
%Esfera de radio unitario en coordenadas esféricas
Az = linspace(0,2*pi,50); %phi
El = linspace(-pi,pi,50); %theta
r = ones(1,50);
%Construcción de malla
[El,Az] = meshgrid(El,Az);
r = meshgrid(r);
%La conversión se realiza después de construir la malla
[X,Y,Z] = sph2cart(Az,El,r);
mesh(X,Y,Z), axis equal
5 comentarios:
Y si la quiero con radio r y centro en(x,y). Tu ejemplo cubre muy pocas posibilidades.
Tan pocas como tu imaginación se limite a modificarlo :v.
Se puede usar el radio de la tierra con coordenadas y asi poder sacar la curvatura a x distancia?
si quiero un globo aeroestatico pero la esfera ya esta nadmas me falta hacer lo de abajo de la caja y los lazos del globo aeroestatico x q la esfera ya esta? me podrias ayudar por favor t dejo mi numero para q me puedas ayudar 5565317113
Rodolfo, muchas gracias. Me resultó de mucha utilidad este artículo. Felicitaciones por el blog.
Cordialmente,
Alexander
Publicar un comentario