Построить круг из точек

153
12 января 2022, 23:10

Всем привет! Нужно построить круг из точек( заполненный), каждая точка будет иметь свое значение и из-за этого свой оттенок цвета, в результате должен получиться некий рисунок в круге. Сейчас строю примитивно, из центра по углу наклона, и отрисовка с помощью JFreeChar, получается мало точек(соотв. малая точность рисунка) и градусы надо забивать в код. Возник вопрос, может кто знает как проще и эффективнее сделать? Что-то вроде матрицы точек заполнять

Answer 1

Для рисования линий и окружностей используют алгоритм Брезенхема.

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

Пример.

Алгоритм Брезенхема строит окружность вокруг центра координат (0, 0). Получив на очередном шаге следующую координату (xi, yi), можем провести линии от (-xi, yi) к (xi, yi) и от (-xi, -yi) к (xi, -yi) — это даст заполненный круг.

Для узора при рисовании линии от (-xi, yi) к (xi, yi) надо брать каждую отдельную точку для xj от -xi до xi и вычислять её цвет по вашей формуле.

c = f(xj, yi)

READ ALSO
Натяжка уникальной верстки на билдер WP

Натяжка уникальной верстки на билдер WP

Вообщем есть уникальный дизайнНеобходимо привязать к WP с возможностью редактирования контента из админки

105
С помощью какого заголовка сервер возвращает браузеру jpg и png?

С помощью какого заголовка сервер возвращает браузеру jpg и png?

Я пишу небольшой http сервер,так как кроме html текста ничего возвращать еще не прихоидлось в качестве заголовка я отсылал просто "HTTP/11 200 OK\n\n",...

94
JNI. управление памятью при возврате в java

JNI. управление памятью при возврате в java

Например если я выделяю память в c/c++ коде вот так и возвращаю это в java код, то что будет с памятью, она освободиться в java когда не будет уже нужна?

92