public OpticalParams(OpticalParams data) { if (data == null) { MinEl = "0"; MaxEl = "90"; MinRange = "4800"; MaxRange = "90000"; LunarExAngle = "10"; SunElAngle = "-12"; HalfAngle = "70"; MinAz = "0"; MaxAz = "360"; } else { LunarExAngle = data.LunarExAngle; SunElAngle = data.SunElAngle; MaxAlt = data.MaxAlt; MinRange = data.MinRange; MaxRange = data.MaxRange; MinEl = data.MinEl; MaxEl = data.MaxEl; HalfAngle = data.HalfAngle; MinAz = data.MinAz; MaxAz = data.MaxAz; } }
public FcFacility(FcFacility curFac) { Name = curFac.Name; Type = curFac.Type; Latitude = curFac.Latitude; Longitude = curFac.Longitude; Altitude = curFac.Altitude; CadanceName = curFac.CadanceName; IsOpt = curFac.IsOpt; RParams = new RadarParams(curFac.RParams); OParams = new OpticalParams(curFac.OParams); UseDefaultCnst = curFac.UseDefaultCnst; }
public static IAgStkObject AttachFacilityOptical(IAgStkObject parent, string radarName, OpticalParams rParams) { IAgStkObject sensorObj = CreatorFunctions.GetCreateSensor(parent, radarName); IAgSensor sensor = sensorObj as IAgSensor; sensor.Graphics.IsObjectGraphicsVisible = false; IAgSnSimpleConicPattern pattern = sensor.Pattern as IAgSnSimpleConicPattern; pattern.ConeAngle = Double.Parse(rParams.HalfAngle); IAgAccessConstraintCollection constraints = sensor.AccessConstraints; IAgAccessCnstrMinMax elConstraint; IAgAccessCnstrMinMax rangeConstraint; IAgAccessCnstrMinMax sunElConstraint; IAgAccessCnstrAngle lunExConstraint; elConstraint = CreatorFunctions.GetElCnst(constraints); CreatorFunctions.SetCnstMinMax(elConstraint, Double.Parse(rParams.MinEl), Double.Parse(rParams.MaxEl)); sunElConstraint = CreatorFunctions.GetSunElCnst(constraints); CreatorFunctions.SetCnstMinMax(sunElConstraint, -90, Double.Parse(rParams.SunElAngle)); rangeConstraint = CreatorFunctions.GetRangeCnst(constraints); CreatorFunctions.SetCnstMinMax(rangeConstraint, Double.Parse(rParams.MinRange), Double.Parse(rParams.MaxRange)); lunExConstraint = CreatorFunctions.GetLunExCnst(constraints); lunExConstraint.Angle = rParams.LunarExAngle; return(sensorObj); }