public void Update() { Line line = EdgePart.UILine; MyPoint p = Statics.CalculateLabelPosition(line.X1, line.Y1, line.X2, line.Y2, Percent, Distance); if (Distance >= 0) { if (line.Y2 - line.Y1 > 0) { p.X -= UITextBlock.ActualWidth; } if (line.X2 - line.X1 < 0) { p.Y -= UITextBlock.ActualHeight; } } else { if (line.Y2 - line.Y1 < 0) { p.X -= UITextBlock.ActualWidth; } if (line.X2 - line.X1 > 0) { p.Y -= UITextBlock.ActualHeight; } } UITextBlock.Margin = new Thickness(p.X, p.Y, 0, 0); }
public void Break(object sender, RoutedEventArgs e) { MyPoint p = Statics.CalculateLabelPosition(UILine.X1, UILine.Y1, UILine.X2, UILine.Y2, 0.5f, 20); Edge.Graph.BreakEdgePartAtPoint(this, p.X, p.Y); }