/// <summary> /// Recompoute join path for given join /// </summary> /// <param name="join">Join which path will be recomputed</param> private void refreshJoinPath(JoinDrawing join) { //TODO avoid uneccessary path finding Navigator = new SceneNavigator(Items); Navigator.EnsureGraphInitialized(); if (Output.DiagramContext.Diagram.UseJoinAvoidance) { Navigator.Graph.Explore(join.From, join.To); join.PointPath = Navigator.Graph.FindPath(join.From, join.To); } else { join.PointPath = new[] { join.From.GlobalConnectPoint, join.To.GlobalConnectPoint }; } }