Advertisement
Guest User

Untitled

a guest
Jan 16th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.94 KB | None | 0 0
  1. float a=0, a2=0, b=0, b2=0, xt=0, yt=0;
  2. int Z = 20;
  3. if (vertex2.X - vertex1.X == 0)
  4. {
  5. drawPoint.X = vertex2.X + Z;//x punktu
  6. drawPoint.Y = (vertex1.Y + vertex2.Y) / 2;//y punktu
  7. }
  8. else
  9. {
  10. a = (float)(vertex2.Y - vertex1.Y) / (vertex2.X - vertex1.X);
  11. if (a == 0)
  12. {
  13. drawPoint.X = (float)(vertex1.X + vertex2.X) / 2;//x punktu
  14. drawPoint.Y = vertex2.Y + Z;//y puntku
  15. b = ((float)(vertex2.X * vertex1.Y - vertex1.X * vertex2.Y) / (vertex2.X - vertex1.X));
  16. }
  17. else
  18. {
  19. a2 = -1 / a;
  20. b = ((vertex2.X * vertex1.Y - vertex1.X * vertex2.Y) / (vertex2.X - vertex1.X));
  21. b2 = (float)((Math.Pow(vertex2.Y, 2) + Math.Pow(vertex2.X, 2) - Math.Pow(vertex1.Y, 2) - Math.Pow(vertex1.X, 2)) / (2 * vertex2.Y - 2 * vertex1.Y));
  22. float C = (float)Math.Sqrt(Math.Pow(a, 2) + 1);
  23. float D = (float)((vertex1.Y - vertex2.Y) * (vertex2.Y - vertex1.Y) + (vertex1.X - vertex2.X) * (vertex2.X - vertex1.X)) / ((vertex2.X - vertex1.X) * (vertex2.Y - vertex1.Y));
  24. xt = (float)(Z * C + b - b2) / D;
  25. yt = a2 * xt + b2;
  26. if ((a * xt + yt + b) > 0)
  27. {
  28. drawPoint.X = xt;
  29. drawPoint.Y = yt;
  30. }
  31. else
  32. {
  33. drawPoint.X = (float)(-Z * C + b - b2) / D;//x punktu
  34. drawPoint.Y = a2 * drawPoint.X + b2;//y punktu
  35. }
  36. }
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement