private void PublishContactPoints() { foreach (var cp in _contactPaths) { if (!_contactPathsPublished.Contains(cp)) { var contactPointAdded = new ContactPointAdded(cp); _subscribers.ForEach(s => s.Tell(contactPointAdded)); } } foreach (var cp in _contactPathsPublished) { if (!_contactPaths.Contains(cp)) { var contactPointRemoved = new ContactPointRemoved(cp); _subscribers.ForEach(s => s.Tell(contactPointRemoved)); } } _contactPathsPublished = _contactPaths; }