public void StopAttracting()
 {
     if (nodeAttractionDefinition != null)
     {
         ForceDefinitions.Remove(nodeAttractionDefinition);
         nodeAttractionDefinition = null;
     }
 }
 public UmlDiagramSimulator(Diagram diagram)
 {
     this.diagram = diagram;
     ForceDefinitions.Add(new Node2NodeRepulsionDefinition());
     ForceDefinitions.Add(new LinkAttractionDefinition());
     ForceDefinitions.Add(new NodeAttractionDefinition());
     ForceDefinitions.Add(new LinkMomentDefinition());
     ForceDefinitions.Add(new TagLaneCaptureDefinition());
 }
 public void StartAttracting()
 {
     nodeAttractionDefinition = new NodeAttractionDefinition();
     ForceDefinitions.Add(nodeAttractionDefinition);
 }