Заполните эллипс случайными строками в C#

Как следует из названия, этот пример рисует эллипс, заполненный случайными строками. Однако он не может просто нарисовать эллипс в обработчике событий Paint формы. Это заставило бы программу генерировать новый набор случайных строк каждый раз, когда форма обновляется и создает странный результат.

Программа использует следующий код для генерации данных линии, когда форма загружается или изменяется.

Метод MakeDrawingObjects выполняет всю работу. Он начинается с вычисления размеров эллипса. Затем он использует формулу C = 2 * Pi * Sqrt (ширина 2 + Height 2 ), чтобы приблизить окружность эллипса. Затем он делит окружность на 40, чтобы определить, сколько генерируемых случайных строк.

Для каждой строки программа генерирует две случайные точки на краю эллипса. См. Приведенный выше код для используемых им формул. Это в основном уравнения для точек на окружности, масштабируемые по ширине и высоте эллипса в направлениях X и Y.

Поскольку эта программа генерирует точки на краю эллипса, строки не выходят за пределы краев эллипса, поэтому коду не нужно устанавливать какой-либо области рисования перед рисованием линий.

Следующий код показывает, как программа рисует эллипс и строки.

Этот код заполняет эллипс и очерчивает его. Затем он вызывает DrawLines для рисования строк.

Источник: http://csharphelper.com/blog/2016/06/fill-an-ellipse-with-random-lines-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)

Add a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *