class_docstr: Prop3D wrapper for vtkProp3D.
  
  Used to represent an entity in a rendering scene. It handles functions
  related to the position, orientation and scaling. Used as parent class
  in Actor and Volume class.
class_docstr_tok: ["Prop3D","wrapper","for","vtkProp3D",".","Used","to","represent","an","entity","in","a","rendering","scene",".","It","handles","functions","related","to","the","position",",","orientation","and","scaling",".","Used","as","parent","class","in","Actor","and","Volume","class","."]
code: def user_matrix(
      self, value: Union[_vtk.vtkMatrix4x4, np.ndarray]
  ):  # numpydoc ignore=GL08
      if isinstance(value, np.ndarray):
          if value.shape != (4, 4):
              raise ValueError("User matrix array must be 4x4.")
          value = vtkmatrix_from_array(value)
  
      if isinstance(value, _vtk.vtkMatrix4x4):
          self.SetUserMatrix(value)
      else:
          raise TypeError(
              "Input user matrix must be either:\n"
              "\tvtk.vtkMatrix4x4\n"
              "\t4x4 np.ndarray\n"
          )
  
imports: from typing import Tuple, Union
  import numpy
  from pyvista.core._typing_core import BoundsLike, Vector
  from pyvista.core.utilities.arrays import array_from_vtkmatrix, vtkmatrix_from_array
  from .None import _vtk
label_desc: Use image node_id 14 for calling the Prop3D obj's underlying member method code with example usage: obj.user_matrix(value) without return types