Объясните пример TexturedSphere в Обработка - PullRequest
0 голосов
/ 08 февраля 2010

На сайте проекта Processing есть пример реализации 3D текстурированной сферы с возможностью вращения. Я пытаюсь понять код, но у меня возникают проблемы с пониманием многих блоков кода, так как у меня нет фона в графике.

Любое объяснение более высокого уровня того, что каждый блок пытается выполнить, возможно, ссылаясь на соответствующий алгоритм, позволило бы мне прочитать концепции и лучше понять реализацию.

1 Ответ

1 голос
/ 08 февраля 2010

После нескольких минут просмотра кода я бы сказал, что функция draw () вызывается системой времени выполнения Processing каждый раз, когда изображение должно быть перерисовано. Это просто закрашивает черный фон, а затем отображает глобус с помощью функции renderGlobe ().

Функция renderGlobe () устанавливает среду для рисования земного шара, вычисления положения, измерения освещенности, установки текстуры на ИЗОБРАЖЕНИЕ и т. Д. Затем вызывается текстурированная сфера для рисования земного шара. После этого он очищает и корректирует переменные положения в следующий раз.

Функция initializeSphere () вычисляет расположение вершин для сферы. Это простая тригонометрия.

Функция текстурированная сфера () рисует сферу. Сначала он рисует южную шапку, которая на самом деле представляет собой конус, очень плоский конус. Затем он рисует кольца для каждой секции сферы, а затем завершает ее еще одним конусом для северной шапки.

Хотя я еще не прошел Обработка учебных материалов , заголовки указывают, что если вы начнете с начала и попробуете все по порядку, вы легко поймете этот код.

...