class_docstr: Draws text in 3D.
class_docstr_tok: ["Draws","text","in","3D","."]
code: def paint(self):
      if len(self.text) < 1:
          return
      self.setupGLState()
  
      modelview = glGetDoublev(GL_MODELVIEW_MATRIX)
      projection = glGetDoublev(GL_PROJECTION_MATRIX)
  
      viewport = [0, 0, self.view().width(), self.view().height()]
      text_pos = self.__project(
          self.pos, modelview, projection, viewport
      )
  
      text_pos.setY(viewport[3] - text_pos.y())
  
      painter = QtGui.QPainter(self.view())
      painter.setPen(self.color)
      painter.setFont(self.font)
      painter.setRenderHints(
          QtGui.QPainter.RenderHint.Antialiasing
          | QtGui.QPainter.RenderHint.TextAntialiasing
      )
      painter.drawText(text_pos, self.text)
      painter.end()
  
file_path: pyqtgraph/pyqtgraph/opengl/items/GLTextItem.py
imports: from OpenGL.GL import *
  import numpy
  from ...None import functions
  from ...Qt import QtCore, QtGui
  from ..GLGraphicsItem import GLGraphicsItem
label_desc: Use image node_id 3 for calling the GLTextItem obj's underlying member method code with example usage: obj.paint() without return types