📄 plworldini.m
字号:
function plworldini (eph,tsat,xsat,ysat,zsat,satpos,colpos,coltrack);%PLWORLD: Plot satellite tracks over the world%% The function create a plot showing the tracks of satellites over% the world.%% Syntax:% plworld (eph,tsat,xsat,ysat,zsat);%% Input arguments:% eph - Ephemerides% tsat - Times on which positions are computed% xsat - X-coordinates in earth-fixed WGS'84 coordinates% ysat - Y-coordinates in earth-fixed WGS'84 coordinates% zsat - Z-coordinates in earth-fixed WGS'84 coordinates% satpos - string with date and time for which to show the % satellite positions as red points in the plot% Optional input arguments:% colpos - color string for satellite positions (default 'r')% coltrack - color string for satellite tracks (default 'b')%% Output arguments:% none% ----------------------------------------------------------------------% File..... : plworldini.m% Date..... : 20-JUN-2001% Version.. : 1.0% Created by : Sandra Verhagen% Based on : plworld.m (in SKYLAB)% Author... : Peter Joosten% Mathematical Geodesy and Positioning% Delft University of Technology% ----------------------------------------------------------------------if nargin < 7 colpos = 'r'; coltrack = 'b';end% --------------------------------------% --- Create the figure, set options ---% --------------------------------------hold on;% -----------------------------------------------------% --- Coastlines, limits, grid, labels and such ... ---% -----------------------------------------------------set (gca,'Xlim',[-180 180]);set (gca,'Ylim',[-90 90]);load coast;h = plot (long,lat,'k-');% ------------------------------% --- Plot satellites tracks ---% ------------------------------tnow = mktsat ( satpos, satpos, 300);idx2 = find(abs(tsat-tnow)==min(abs(tsat-tnow)));for i = 1:size(eph,1); plh = xyz2plh ([xsat(i,:); ysat(i,:); zsat(i,:)]); idx = [0 find(abs(plh(2,1:size(plh,2)-1)-plh(2,2:size(plh,2)))>deg2rad(180)) size(plh,2)]; for j = 1:length(idx)-1; h = plot (rad2deg(plh(2,idx(j)+1:idx(j+1))),rad2deg(plh(1,idx(j)+1:idx(j+1))),coltrack); set (h,'LineWidth',0.5); hold on end; h = plot (rad2deg(plh(2,idx2)),rad2deg(plh(1,idx2)),colpos); set (h,'Marker','p','Markersize',7,'LineWidth',4); % [tx,ty] = pol2cart (deg2rad(-azim(i,idx1(idx2(j)+1))+90),90-elev(i,idx1(idx2(j)+1)));% tx = tx - 2; ty = ty + 2;% h = text(tx,ty,num2str(eph(i,1)));% set (h,'Color',lcol(mod(i,size(lcol,1))+1,:)); end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -