class_docstr: Rotation in 3 dimensions.
class_docstr_tok: ["Rotation","in","3","dimensions","."]
docstr: Represent as Euler angles.
docstr_tok: ["Represent","as","Euler","angles","."]
code: def as_euler(self, seq: str, degrees: bool = False):
      """Represent as Euler angles."""
      if len(seq) != 3:
          raise ValueError(f"Expected 3 axes, got {seq}.")
      intrinsic = re.match(r"^[XYZ]{1,3}$", seq) is not None
      extrinsic = re.match(r"^[xyz]{1,3}$", seq) is not None
      if not (intrinsic or extrinsic):
          raise ValueError(
              "Expected axes from `seq` to be from "
              "['x', 'y', 'z'] or ['X', 'Y', 'Z'], "
              "got {}".format(seq)
          )
      if any(seq[i] == seq[i + 1] for i in range(2)):
          raise ValueError(
              "Expected consecutive axes to be different, "
              "got {}".format(seq)
          )
      axes = jnp.array(
          [_elementary_basis_index(x) for x in seq.lower()]
      )
      return _compute_euler_from_quat(
          self.quat, axes, extrinsic, degrees
      )
  
imports: from __future__ import annotations
  import functools
  import re
  import typing
  import scipy.spatial.transform
  import jax
  import jax.numpy
  from jax._src.numpy.util import _wraps
label_desc: Use image node_id 13 for calling the Rotation obj's underlying member method code with example usage: obj.as_euler(seq, degrees) and returns: _compute_euler_from_quat