/// <summary> /// 获取相交点、穿刺点,如电离层 /// </summary> /// <param name="geoHeight">距离地球平均表面的距离 m, 默认 450 000 m</param> /// <returns></returns> public XYZ GetIntersectionXyz(double geoHeight = 450000) { var siteXyz = this.SiteInfo.EstimatedXyz; var satXyz = this.Ephemeris.XYZ; return(XyzUtil.GetIntersectionXyz(siteXyz, satXyz, geoHeight)); }
/// <summary> /// 斜距 /// </summary> /// <param name="time"></param> /// <param name="siteXyz"></param> /// <param name="satXyz"></param> /// <returns></returns> public RmsedNumeral GetSlope(Time time, XYZ siteXyz, XYZ satXyz) { var punctPoint = XyzUtil.GetIntersectionXyz(siteXyz, satXyz, HeightOfModel); var geocentricLonLat = Geo.Coordinates.CoordTransformer.XyzToSphere(punctPoint); var SpherePolar = CoordTransformer.XyzToSpherePolar(satXyz, siteXyz, AngleUnit.Degree); var tec = GetSlope(time, geocentricLonLat, SpherePolar.Elevation); return(tec); }