private void Start() { object counter = Convert.ToInt32(count.Text) + 1; count.Text = counter.ToString(); double marginX = (canvas.Width - 2 * _circleRadius) / 2; double marginY = (canvas.Height - 2 * _circleRadius) / 2; //рассчитываем координаты точек на окружности Point[] circlePoints = CirclePointsCalculator.CalcCirclePoints(_circlePointCount, _circleRadius, marginX + _circleRadius, marginY + _circleRadius); //рисуем основную окружность DrawCircle(_circleRadius, _mainCircleBrush, marginX, marginY); //рисуем точки на окружности ввиде маленьких кружочков foreach (var point in circlePoints) { DrawCircle(_pointRadius, _pointBrush, point.X - _pointRadius, point.Y - _pointRadius, true); } for (int i = 0; i < circlePoints.Length; i++) { Brush color = Color(); DrawLine(circlePoints[i], circlePoints[i * (int)counter % circlePoints.Length], color); } }
private void Start() { double marginX = (canvas.Width - 2 * _circleRadius) / 2; double marginY = (canvas.Height - 2 * _circleRadius) / 2; //рассчитываем координаты точек на окружности Point[] circlePoints = CirclePointsCalculator.CalcCirclePoints(_circlePointCount, _circleRadius, marginX + _circleRadius, marginY + _circleRadius); //рисуем основную окружность DrawCircle(_circleRadius, _mainCircleBrush, marginX, marginY); //рисуем точки на окружности ввиде маленьких кружочков foreach (var point in circlePoints) { DrawCircle(_pointRadius, _pointBrush, point.X - _pointRadius, point.Y - _pointRadius, true); } //todo: из каждой точки на окружности провести линию, используя метод DrawLine //Номер точки, в которую нужно вести линию вычисляется по формуле из видео //int k = 0; for (int i = 0; i < circlePoints.Length; i++) { int toPoint = (int)(i * _factor % _circlePointCount); //if (toPoint > (_circlePointCount - _factor)) //{ // toPoint = (int)(toPoint - (i * _factor) + k); // k++; //} DrawLine(circlePoints[i], circlePoints[toPoint], _lineBrush); } }
private void Start() { double marginX = (canvas.Width - 2 * _circleRadius) / 2; double marginY = (canvas.Height - 2 * _circleRadius) / 2; //рассчитываем координаты точек на окружности Point[] circlePoints = CirclePointsCalculator.CalcCirclePoints(_circlePointCount, _circleRadius, marginX + _circleRadius, marginY + _circleRadius); //рисуем основную окружность DrawCircle(_circleRadius, _mainCircleBrush, marginX, marginY); //рисуем точки на окружности ввиде маленьких кружочков foreach (var point in circlePoints) { DrawCircle(_pointRadius, _pointBrush, point.X - _pointRadius, point.Y - _pointRadius, true); } //todo: из каждой точки на окружности провести линию, используя метод DrawLine //Номер точки, в которую нужно вести линию вычисляется по формуле из видео int multiplier = 64; for (int i = 1; i < _circlePointCount; ++i) { DrawLine(circlePoints[i], circlePoints[multiplier * i % _circlePointCount], _lineBrush); } }
private void Start() { double marginX = (canvas.Width - 2 * _circleRadius) / 2; double marginY = (canvas.Height - 2 * _circleRadius) / 2; //рассчитываем координаты точек на окружности Point[] circlePoints = CirclePointsCalculator.CalcCirclePoints(_circlePointCount, _circleRadius, marginX + _circleRadius, marginY + _circleRadius); //рисуем основную окружность DrawCircle(_circleRadius, _mainCircleBrush, marginX, marginY); //рисуем точки на окружности ввиде маленьких кружочков foreach (var point in circlePoints) { DrawCircle(_pointRadius, _pointBrush, point.X - _pointRadius, point.Y - _pointRadius, true); } //todo: из каждой точки на окружности провести линию, используя метод DrawLine //Номер точки, в которую нужно вести линию вычисляется по формуле из видео for (int firstPoint = 0; firstPoint < _circlePointCount; firstPoint++) { double secondPoint = firstPoint * _factor % _circlePointCount; DrawLine(circlePoints[firstPoint], circlePoints[Convert.ToInt32(secondPoint)], _lineBrush); } }