class_docstr: Internal data structure for rectangle based selections.
  
  Parameters
  ----------
  frustum : _vtk.vtkPlanes
      Frustum that defines the selection.
  viewport : Tuple[float, float, float, float]
      The selected viewport coordinates, given as ``(x0, y0, x1, y1)``.
class_docstr_tok: ["Internal","data","structure","for","rectangle","based","selections",".","Parameters","--","--","--","--","--","frustum",":","_vtk.vtkPlanes","Frustum","that","defines","the","selection",".","viewport",":","Tuple","[","float",",","float",",","float",",","float","]","The","selected","viewport","coordinates",",","given","as","``","(","x0",",","y0",",","x1",",","y1",")","``","."]
docstr: Get the selected viewport coordinates.
  
  Coordinates are given as: ``(x0, y0, x1, y1)``
docstr_tok: ["Get","the","selected","viewport","coordinates",".","Coordinates","are","given","as",":","``","(","x0",",","y0",",","x1",",","y1",")","``"]
code: def viewport(
      self,
  ) -> Tuple[float, float, float, float]:  # numpydoc ignore=RT01
      """Get the selected viewport coordinates.
  
      Coordinates are given as: ``(x0, y0, x1, y1)``
      """
      return self._viewport
  
imports: from functools import partial, wraps
  from typing import Tuple, cast
  import warnings
  import weakref
  import numpy
  import pyvista
  from pyvista.core.errors import PyVistaDeprecationWarning
  from pyvista.core.utilities.misc import try_callback
  from .None import _vtk
  from .composite_mapper import CompositePolyDataMapper
  from .errors import PyVistaPickingError
  from .opts import ElementType, PickerType
label_desc: Use image node_id 4 for calling the RectangleSelection obj's underlying member method code with example usage: obj.viewport() and returns: self