public void get_TargSeq_Segments(IAgVAMCSTargetSequence TargSeq, int local_depth) { IAgVAMCSSegmentCollection InnerSegments = TargSeq.Segments; local_depth++; for (int ii = 0; ii < InnerSegments.Count - 1; ii++) { IAgVAMCSSegment InnerSegmentObj = InnerSegments[ii] as IAgVAMCSSegment; l_depth.Add(local_depth); Astg_SegData thisSegment = new Astg_SegData(InnerSegmentObj, local_depth); SegmentDataList.Add(thisSegment); if (InnerSegmentObj.Type == AgEVASegmentType.eVASegmentTypeTargetSequence) { get_TargSeq_Segments(InnerSegmentObj as IAgVAMCSTargetSequence, local_depth); } } }
public MCS_Segments(IAgSatellite satellite) { IAgVAMCSSegmentCollection m_MainSequence = (satellite.Propagator as IAgVADriverMCS).MainSequence; var startTime = (m_MainSequence[0].InitialState as IAgVAState).Epoch; var stopTime = (m_MainSequence[m_MainSequence.Count - 1].InitialState as IAgVAState).Epoch; objectTimes.Add(startTime); objectTimes.Add(stopTime); for (int i = 0; i < m_MainSequence.Count - 1; i++) { IAgVAMCSSegment SegmentObj = m_MainSequence[i] as IAgVAMCSSegment; l_depth.Add(0); int local_depth = 0; Astg_SegData thisSegment = new Astg_SegData(SegmentObj, local_depth); SegmentDataList.Add(thisSegment); if (SegmentObj.Type == AgEVASegmentType.eVASegmentTypeTargetSequence) { get_TargSeq_Segments(SegmentObj as IAgVAMCSTargetSequence, local_depth); } } }
public int invoke_STKUpdate(int index, string STKVarName, double Value) { var returnID = 0; if (AccessClassName[index] == implem_Classes.Satellite_OrbitData) { Satellite_OrbitData toUpdate = new Satellite_OrbitData(AccessObject[index] as IAgStkObject); toUpdate.set_InitStateJx((AccessObject[index]), STKVarName, Value); returnID = 1; } if (AccessClassName[index] == implem_Classes.Satellite_MassData) { Satellite_MassData toUpdate = new Satellite_MassData(); toUpdate.set_MassProp((AccessObject[index]), STKVarName, Value); returnID = 1; } if (AccessClassName[index] == implem_Classes.Astg_InitState) { Astg_SegData toUpdate = new Astg_SegData(); toUpdate.set_InitialState((AccessObject[index]), STKVarName, Value); returnID = 1; } if (AccessClassName[index] == implem_Classes.Astg_SC_InitParams) { Astg_SegData toUpdate = new Astg_SegData(); toUpdate.set_SpacecraftParams((AccessObject[index]), STKVarName, Value); returnID = 1; } if (AccessClassName[index] == implem_Classes.Astg_FuelTankParams) { Astg_SegData toUpdate = new Astg_SegData(); toUpdate.set_FuelTankParams((AccessObject[index]), STKVarName, Value); returnID = 1; } return(returnID); }