MATLAB与STK互联15:卫星对象操作(6)—向量几何工具

STK软件除了能够建立基本的场景,还具有强大的分析功能,如可见性计算、覆盖性分析、角度关系等等。在COM互联方式中,卫星对象有“向量几何工具”,用来定义点、向量、角度及坐标系。
下面代码将带领大家一起学习相关属性设置及操作方法应用。
uiap = actxserver(‘STK11.application’);
root = uiap.Personality2;
root.NewScenario(‘exam’);

sc = root.CurrentScenario;
sat = sc.Children.New(18,‘mysat’);
set_ps = [‘SetState */Satellite/mysat Classical J2Perturbation "’,sc.StartTime,’" “’,sc.StopTime,’” 60 ICRF “’,sc.StartTime,’” 7378140 0 50 0 0 0’];
root.ExecuteCommand(set_ps);
sat.Propagator.Propagate;
%获取向量几何工具的属性
sat.vgt.get
在这里插入图片描述
可以看到卫星对象包括的属性有向量、点、角、面等等。下面的代码介绍默认点的获取、新建向量、新建角度。
(1)获取STK默认的点,如卫星中心、地球/太阳中心等
centerpt = sat.vgt.Points.Item(‘Center’);
%获取太阳中心、地球中心
centerptsun = root.CentralBodies.Sun.vgt.Points.Item(‘Center’);
centerptearth = root.CentralBodies.Earth.vgt.Points.Item(‘Center’);
新建点使用的语句:sat.vgt.Points.Factory,可以通过.invoke查询方法。
(2)新建向量
%新建向量使用的命令:sat.vgt.Vectors.Factory,可以使用.get、.invoke查
%询属性及操作方法
sat2sun_v = sat.vgt.Vectors.Factory.CreateDisplacementVector(‘sat2sun_v’,centerpt,centerptsun);
sat2earth_v = sat.vgt.Vectors.Factory.CreateDisplacementVector(‘sat2earth_v’,centerpt,centerptearth);
sat2sun_v:等号左边的是MATLAB中的控制向量控制句柄,等号右边的是向量在STK中的名称。
(3)新建角度
%新建角度,这里采用两个向量夹角的方式定义新角度。
bw_angle = sat.vgt.Angles.Factory.Create(‘sunsatearth’,’’,‘eCrdnAngleTypeBetweenVectors’);
bw_angle.FromVector.SetVector(sat2sun_v);
bw_angle.ToVector.SetVector(sat2earth_v);

注意要点:
1、所有新建的点、向量、角度,名字不能重复,否则会报错;
2、在建立新角度时,注意Create方法需要三个输入参数。参数1:角度名称,参数2:角度描述,可以为空,但必须用’’(单引号)占位;参数3:建立角度的方式

上述文字只是抛砖引玉,大家可以探索更多的应用方式。

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值