public UILinkPoint[,] CreateUILinkPointGrid( ref int currentID, List <SnapPoint> pointsForGrid, int pointsPerLine, UILinkPoint topLinkPoint, UILinkPoint leftLinkPoint) { int length = (int)Math.Ceiling((double)pointsForGrid.Count / (double)pointsPerLine); UILinkPoint[,] uiLinkPointArray = new UILinkPoint[pointsPerLine, length]; for (int index1 = 0; index1 < pointsForGrid.Count; ++index1) { int index2 = index1 % pointsPerLine; int index3 = index1 / pointsPerLine; uiLinkPointArray[index2, index3] = this.MakeLinkPointFromSnapPoint(currentID++, pointsForGrid[index1]); } for (int index1 = 0; index1 < uiLinkPointArray.GetLength(0); ++index1) { for (int index2 = 0; index2 < uiLinkPointArray.GetLength(1); ++index2) { UILinkPoint uiLinkPoint = uiLinkPointArray[index1, index2]; if (uiLinkPoint != null) { if (index1 < uiLinkPointArray.GetLength(0) - 1) { UILinkPoint rightSide = uiLinkPointArray[index1 + 1, index2]; if (rightSide != null) { this.PairLeftRight(uiLinkPoint, rightSide); } } if (index2 < uiLinkPointArray.GetLength(1) - 1) { UILinkPoint downSide = uiLinkPointArray[index1, index2 + 1]; if (downSide != null) { this.PairUpDown(uiLinkPoint, downSide); } } if (index1 == 0) { uiLinkPoint.Left = leftLinkPoint.ID; } if (index2 == 0) { uiLinkPoint.Up = topLinkPoint.ID; } } } } return(uiLinkPointArray); }
public UILinkPoint[,] CreateUILinkPointGrid(ref int currentID, List <SnapPoint> pointsForGrid, int pointsPerLine, UILinkPoint topLinkPoint, UILinkPoint leftLinkPoint) { int num = (int)Math.Ceiling((float)pointsForGrid.Count / (float)pointsPerLine); UILinkPoint[,] array = new UILinkPoint[pointsPerLine, num]; for (int i = 0; i < pointsForGrid.Count; i++) { int num2 = i % pointsPerLine; int num3 = i / pointsPerLine; array[num2, num3] = MakeLinkPointFromSnapPoint(currentID++, pointsForGrid[i]); } for (int j = 0; j < array.GetLength(0); j++) { for (int k = 0; k < array.GetLength(1); k++) { UILinkPoint uILinkPoint = array[j, k]; if (uILinkPoint == null) { continue; } if (j < array.GetLength(0) - 1) { UILinkPoint uILinkPoint2 = array[j + 1, k]; if (uILinkPoint2 != null) { PairLeftRight(uILinkPoint, uILinkPoint2); } } if (k < array.GetLength(1) - 1) { UILinkPoint uILinkPoint3 = array[j, k + 1]; if (uILinkPoint3 != null) { PairUpDown(uILinkPoint, uILinkPoint3); } } if (j == 0) { uILinkPoint.Left = leftLinkPoint.ID; } if (k == 0) { uILinkPoint.Up = topLinkPoint.ID; } } } return(array); }