private void CalcLinkLocation()
{
//CalcLink();
if (!needCalcLinkLocation)
return;
Point[] points = new Point[lines.Length * 2];
int i = 0;
foreach(LineElement ln in lines)
{
points[i] = ln.Point1;
points[i + 1] = ln.Point2;
i+=2;
}
location = DiagramUtil.GetUpperPoint(points);
needCalcLinkLocation = false;
}