Advertisement
Guest User

Untitled

a guest
Apr 28th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.92 KB | None | 0 0
  1. private DrawingGroup GetDrawingHierarchy()
  2. {
  3. var result = new DrawingGroup();
  4. var geometryGroup = new GeometryGroup();
  5. var textGroup = new GeometryGroup();
  6. var horisontalGroup = new GeometryGroup();
  7. foreach (var line in lines)
  8. {
  9. var distance = line.To.Y;
  10. var yfrom = line.From.Y;
  11. line.From = new Point(line.From.X, GetCurrentY(line.From.Y) - downSpace);
  12. line.To = new Point(line.To.X, GetCurrentY(line.To.Y) - downSpace);
  13.  
  14. if (Math.Abs(line.From.Y - line.To.Y) < 1)
  15. {
  16. if ((distance > 10 || distance < 1 / 10) && Math.Abs(yfrom) > 1)
  17. {
  18. horisontalGroup.Children.Add(new LineGeometry(line.From, line.From));
  19. } else {
  20. horisontalGroup.Children.Add(new LineGeometry(line.From, line.To)); }
  21. }
  22. else
  23. {
  24. if ((distance > 10 || distance < 1 / 10) && Math.Abs(yfrom) > 1)
  25. {
  26. continue;
  27. }
  28. geometryGroup.Children.Add(new LineGeometry(line.From, line.To));
  29. }
  30. textGroup.Children.Add(GetTextGeometry(line.From + new Vector(-2, 5), line.XName));
  31. textGroup.Children.Add(GetTextGeometry(new Point(0, line.From.Y), line.YName));
  32. }
  33. result.Children.Add(new GeometryDrawing(new SolidColorBrush(Colors.Green), new Pen(new SolidColorBrush(Colors.Green), 2), geometryGroup));
  34. result.Children.Add(new GeometryDrawing(new SolidColorBrush(Colors.Yellow), new Pen(new SolidColorBrush(Colors.Yellow), 2), horisontalGroup));
  35. result.Children.Add(new GeometryDrawing(MainBrush, MainPen, textGroup));
  36. return result;
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement