请问各位高手,如何用matlab画地球模型,最好带有经纬线的那种!非常感谢!

如题所述

2010b帮助:
Mapping Toolbox\User's Guide\Map Projections Reference\Globe

Graticule
This map display is not a true map projection. It is constructed by calculating a three-dimensional frame and displaying the map objects on the surface of this frame.

Features
In the three-dimensional sense, globe is true in scale, equal-area, conformal, minimum error, and equidistant everywhere. When displayed, however, it looks like an Orthographic azimuthal projection, provided that the MATLAB axes Projection property is set to 'orthographic'.

Remarks
This is the only three-dimensional representation provided for display. Unless some other display purpose requires three dimensions, the Orthographic projection's display is equivalent.
=========================================
Example

% Set up axes
axesm ('globe','Grid', 'on');
view(60,60)
axis off

% Display a surface
load geoid
meshm(geoid, geoidrefvec)

% Display coastline vectors
load coast
plotm(lat, long)

=========================================
上面那个是线框模式有经纬示意
下面这个是地形彩色图,没线
没用过mapping工具箱,估计你要的功能都可以完美实现
如果有专门的相关书籍可以参考,没的话自己把该工具箱帮助好好看看
=========================================
帮助中的主题:Earth's Topography

load('topo.mat','topo','topomap1');
[x,y,z] = sphere(50);
cla reset
axis square off
props.AmbientStrength = 0.1;
props.DiffuseStrength = 1;
props.SpecularColorReflectance = .5;
props.SpecularExponent = 20;
props.SpecularStrength = 1;
props.FaceColor= 'texture';
props.EdgeColor = 'none';
props.FaceLighting = 'phong';
props.Cdata = topo;
surface(x,y,z,props);
light('position',[-1 0 1]);
light('position',[-1.5 0.5 -0.5], 'color', [.6 .2 .2]);
view(3)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-08
% 绘制地球仪,并标出我们的位置
cla reset;
load topo;
[x y z] = sphere(45);
s = surface(x,y,z,'FaceColor','texturemap','CData',topo);
colormap(topomap1);
% Brighten the colormap for better annotation visibility:
brighten(.6)
% Create and arrange the camera and lighting for better visibility:
campos([1.3239 -14.4250 9.4954]);
camlight;
lighting gouraud;
axis off vis3d;
% Set the x- and y-coordinates of the textarrow object:
x = [0.7698 0.5851];
y = [0.3593 0.5492];
% Create the textarrow object:
txtar = annotation('textarrow',x,y,'String','We are here.','FontSize',14);本回答被提问者和网友采纳
第2个回答  2011-08-08
zhge 问题解决不了
相似回答