如何知道LineShape的中间部分

时间:2016-05-03 18:30:01

标签: c# forms math point

我的表单中有一个LineShape,我需要点击一个标签,正好在这一行的中间,我应该做些什么来确定这个中间点?

1 个答案:

答案 0 :(得分:2)

LineShape使用X1X2Y1Y2公开其坐标。找到它的中心是基本几何:

LineShape line = /*...*/;
Label label = /*..*/;

// calculate the center of the line
var center = new Point((line.X1 + line.X2) / 2, (line.Y1 + line.Y2) / 2);

// center the label on the line
label.Top = center.Y - label.Height / 2
label.Left = center.X - label.Width / 2