//public ISignal GetSignalById(int id) //{ // return signals.GetSignalById(id); //} public Tuple <ISignal, int> AddSignal(SignalStuff material) { var signal = signals.AddSignal(material); var id = ManageModel.RegisterSignal(signal); SignalsChanged(); transform.Transform(GetSum()); TransformChanged(); return(Tuple.Create(signal, id)); }
static public string GetDescriptionByStuff(SignalStuff stuff) { if (stuff.Mult == 0) { return("0"); } if (stuff.Freq == 0) { return((Math.Sin(stuff.PhaseOffset)).ToString()); } var argStr = (stuff.PhaseOffset > 0) ? "(x + " + stuff.PhaseOffset + ")" : (stuff.PhaseOffset < 0) ? "(x - " + Math.Abs(stuff.PhaseOffset) + ")" : "x"; var freqStr = (stuff.Freq != 1) ? stuff.Freq.ToString() + "PI" : "PI"; var multStr = (stuff.Mult != 1) ? stuff.Mult + " * " : ""; return(multStr + "sin(" + freqStr + argStr + ")"); }