STK手动建链+matlab联调

在右边场景区选择你要建链的卫星,右键在弹出的选项中选择Access

STK手动建链+matlab联调_第1张图片

选择你要建链的卫星,这里我选择3轨10星与4轨8星建链,点击compute后再close就行了

建链完成,这里链路的颜色跟起始卫星的颜色一致,要想改变颜色只需改变卫星颜色即可。

clear
uiap = actxserver('STK11.application');
root = uiap.Personality2;
sc=root.CurrentScenario;
satCollection = sc.Children.GetElements('eSatellite');
name='leo1sat';%种子卫星名称
sm=10;%轨道数
sn=21;%每轨卫星数
for i = 1:sm
    for j = 1:sn
        chanName = ['chain',num2str(j+(i-1)*sn),'-',num2str(j+(i+1-1)*sn)];
        sta=sprintf('%s%02d%02d',name,i,j);

        p=sprintf('%s%02d%02d',name,i+1,j);
        if i==1
            p=sprintf('%s%00d%02d',name,2,j);
        end
        if i==sm
            continue;
        end

        Psta=satCollection.Item(p);

        % 创建一个链
        chain = sc.Children.New('eChain', chanName);
        
        % 将两个卫星添加到链中
        chain.Objects.AddObject(sta);
        chain.Objects.AddObject(Psta);
    end
end

你可能感兴趣的:(matlab,前端,linux)