IEnumerable <Node> PushByNodeAndReportPushedAsFixed(Node pushingNode) { var ret = new List <Node>(); var pushingNodeBox = GetPaddedBoxOfNode(pushingNode); foreach (var rectNode in rtree.GetAllLeavesIntersectingRectangle(pushingNodeBox)) { if (fixedNodes.Contains(rectNode.UserData)) { continue; } if (PushNodeAndUpdateRTree(pushingNode, rectNode)) { ret.Add(rectNode.UserData); } } return(ret); }