public void Add(T item, float weight) { float left_spectrum_value = total_weight; float right_spectrum_value = left_spectrum_value + weight; spectrum.Add(new SpectrumBand <T>(item, left_spectrum_value, right_spectrum_value)); total_weight = right_spectrum_value; }
static public void Add <T>(this Spectrum <T> item, IEnumerable <SpectrumBand <T> > to_add) { to_add.Process(b => item.Add(b)); }
static public void Add <T>(this Spectrum <T> item, params SpectrumBand <T>[] to_add) { item.Add((IEnumerable <SpectrumBand <T> >)to_add); }