private void GetBlockAfterMerge(List <Line2D> orderAddedLines, List <Rectangle2D> minimumRectangles, List <Line2D> leftLines)
        {
            List <Line2D> remainLines = new List <Line2D>();

            Merge(orderAddedLines, minimumRectangles, leftLines);
            remainLines.AddRange(leftLines);
            GraphicAlgorithm.MergeLine(leftLines);
            GraphicAlgorithm.OrderLinesByLength(leftLines);
            if (remainLines.Count != leftLines.Count)
            {
                orderAddedLines = new List <Line2D>(leftLines);
                GetBlockAfterMerge(orderAddedLines, minimumRectangles, leftLines);
            }
        }