public void AddAttractor(IAttractorSource source, string name) { if (!attractors.ContainsKey(name)) { attractors.Add(name, source); } }
public PointD GetAttractorsMeanForce() { PointD mean = new PointD(0, 0); IDictionaryEnumerator i = attractors.GetEnumerator(); int j = 0; while (i.MoveNext()) { IAttractorSource source = i.Value as IAttractorSource; mean += source.GetAttractorForce(); j++; } if (j > 0) { mean.X /= j; mean.Y /= j; } return(mean); }