Получение текущей матрицы проекции

#processing

Вопрос:

Как мне получить и установить текущую матрицу проекции в Processing (бета-версия 4, P3D renderer)? Обработка обеспечивает printProjection() ; но не предоставляет способ получения данных. Текущую матрицу преобразования можно сохранить, получить и задать с помощью pushMatrix() , getMatrix() , и setMatrix() . Существует ли эквивалент (или надежное решение) для проекционных матриц?

Я искал версию документации javadoc и ничего не мог найти.

Я попытался посмотреть, что printProjection() происходит в исходном коде. PApplet.g -> PGraphicsOpenGL.projection -> PMatrix3D и PGraphicsOpenGL.pushProjection. Оба объекта g и projection являются общедоступными членами.

Происхождение этого вопроса: у меня есть класс, который настраивает камеру (он вызывает camera() и perspective() ). У меня есть другой класс, которому необходимо временно сбросить матрицу преобразования и проекции, чтобы она могла накладываться text() на экран. Матрицу преобразования можно легко push редактировать и pop редактировать. Существует ли эквивалент для матрицы проекции.

Я не хочу вручную отслеживать вызовы, для perspective() которых устанавливается матрица проекции. Одна из причин заключается в том, что это станет бременем для конечного пользователя, а другая причина заключается в том, что мне нужна исходная матрица проекции, установленная size() функцией, для правильного размещения text() на экране.