private static int height = 50; // высота public Detail(MyColor color, TypeSide leftSide, TypeSide rightSide, TypeSide upSide, TypeSide downSide, Graphics gr) { this.color = color; this.leftSide = leftSide; this.rightSide = rightSide; this.upSide = upSide; this.downSide = downSide; this.gr = gr; }
public IActionResult GetValue(TypeSide val) { return(Ok(val)); }
/// <summary> /// Отрисовка номера (по 1 на каждую грань) /// </summary> /// <param name="_X">Координата X</param> /// <param name="_Y">Координата Y</param> /// <param name="type">Тип грани</param> /// <param name="p">Полотно</param> private void drawNumber(int _X, int _Y, TypeSide type, Graphics p) { p.DrawString(((int)type).ToString(), mnForm.DefaultFont, new SolidBrush(Color.Black), _X, _Y); }
/// <summary> /// Рандомная генерация правильного пазла. Потом его надо перемешать. /// </summary> public void randomGeneratePuzzle() { for (int i = 0; i < countElem; i++) { TypeSide leftSide = TypeSide.NONE_SIDE; // тип левой стороны TypeSide rightSide = TypeSide.NONE_SIDE; // тип правой стороны TypeSide upSide = TypeSide.NONE_SIDE; // тип верхней стороны TypeSide downSide = TypeSide.NONE_SIDE; // тип нижней стороны if ((i >= 0) && (i < countColomns)) { upSide = TypeSide.STRAIGHT_SIDE; } if ((i >= (countElem - countColomns)) && (i < countElem)) { downSide = TypeSide.STRAIGHT_SIDE; } if ((i % countColomns) == 0) { leftSide = TypeSide.STRAIGHT_SIDE; } if ((i % countColomns) == (countColomns - 1)) { rightSide = TypeSide.STRAIGHT_SIDE; } if ((i == 0)) { if (rightSide == TypeSide.NONE_SIDE) { rightSide = (TypeSide)rand.Next(-2, 2); } if (downSide == TypeSide.NONE_SIDE) { downSide = (TypeSide)rand.Next(-2, 2); } } if ((i > 0) && (i < countColomns)) { if (leftSide == TypeSide.NONE_SIDE) { leftSide = Detail.reverseSide(arrayDetails[i - 1].RightSide); } if (rightSide == TypeSide.NONE_SIDE) { rightSide = (TypeSide)rand.Next(-2, 2); } if (downSide == TypeSide.NONE_SIDE) { downSide = (TypeSide)rand.Next(-2, 2); } } if ((i >= countColomns) && (i < countElem)) { if (leftSide == TypeSide.NONE_SIDE) { leftSide = Detail.reverseSide(arrayDetails[i - 1].RightSide); } if (upSide == TypeSide.NONE_SIDE) { upSide = Detail.reverseSide(arrayDetails[i - countColomns].DownSide); } if (rightSide == TypeSide.NONE_SIDE) { rightSide = (TypeSide)rand.Next(-2, 2); } if (downSide == TypeSide.NONE_SIDE) { downSide = (TypeSide)rand.Next(-2, 2); } } arrayDetails[i] = new Detail(matrColor[i], leftSide, rightSide, upSide, downSide, gr); } // перемешиваем пазл matrixMix(); }