class_docstr: Class to denote an axis orienter.
docstr: The rotation matrix corresponding to this orienter
  instance.
  
  Parameters
  ==========
  
  system : CoordSys3D
      The coordinate system wrt which the rotation matrix
      is to be computed
docstr_tok: ["The","rotation","matrix","corresponding","to","this","orienter","instance",".","Parameters","==========","system",":","CoordSys3D","The","coordinate","system","wrt","which","the","rotation","matrix","is","to","be","computed"]
code: def rotation_matrix(self, system):
      """
      The rotation matrix corresponding to this orienter
      instance.
  
      Parameters
      ==========
  
      system : CoordSys3D
          The coordinate system wrt which the rotation matrix
          is to be computed
      """
  
      axis = sympy.vector.express(self.axis, system).normalize()
      axis = axis.to_matrix(system)
      theta = self.angle
      parent_orient = (
          (eye(3) - axis * axis.T) * cos(theta)
          + Matrix(
              [
                  [0, -axis[2], axis[1]],
                  [axis[2], 0, -axis[0]],
                  [-axis[1], axis[0], 0],
              ]
          )
          * sin(theta)
          + axis * axis.T
      )
      parent_orient = parent_orient.T
      return parent_orient
  
imports: from sympy.core.basic import Basic
  from sympy.core.sympify import sympify
  from sympy.functions.elementary.trigonometric import cos, sin
  from sympy.matrices.dense import eye, rot_axis1, rot_axis2, rot_axis3
  from sympy.matrices.immutable import ImmutableDenseMatrix
  from sympy.core.cache import cacheit
  from sympy.core.symbol import Str
  import sympy.vector
label_desc: Use image node_id 3 for calling the AxisOrienter obj's underlying member method code with example usage: obj.rotation_matrix(system) and returns: parent_orient