예제 #1
0
    public void InsertRow()
    {
        int mod = 0;

        if (mostWinningPoint.yIndex > mostDistantPoint.yIndex)
        {
            mod = 1;
        }

        for (int i = ySize - 1; i >= mostWinningPoint.yIndex - mod; i--)
        {
            for (int k = 0; k < xSize; k++)
            {
                points[k, i + 1] = DeepCopy.DeepCopyPoint(points[k, i]);
                points[k, i + 1].yIndex++;
            }
        }

        int index = mostWinningPoint.yIndex + 1 - mod;

        for (int i = 0; i < xSize; i++)
        {
            points[i, index].position = Vector3.Lerp(points[i, index].position, points[i, index + 1].position, 0.5f);
        }
        ySize++;
    }
예제 #2
0
    public void InsertColumn()
    {
        int mod = 0;

        if (mostWinningPoint.xIndex > mostDistantPoint.xIndex)
        {
            mod = 1;
        }

        for (int i = xSize - 1; i >= mostWinningPoint.xIndex - mod; i--)
        {
            for (int k = 0; k < ySize; k++)
            {
                points[i + 1, k] = DeepCopy.DeepCopyPoint(points[i, k]);
                points[i + 1, k].xIndex++;
            }
        }

        int index = mostWinningPoint.xIndex + 1 - mod;

        for (int i = 0; i < ySize; i++)
        {
            points[index, i].position = Vector3.Lerp(points[index, i].position, points[index + 1, i].position, 0.5f);
        }

        xSize++;
    }