docs: def to_mapping(self,**values):
          """
          Create a JSON-serializable representation of the plane that is usable with the
          javascript frontend
          """
          strike, dip, rake = self.strike_dip_rake()
          min, max = self.angular_errors()
  
          try:
              disabled = self.disabled
          except AttributeError:
              disabled = False
  
          mapping = dict(
              uid=self.hash,
              axes=self.axes.tolist(),
              hyperbolic_axes=self.hyperbolic_axes.tolist(),
              max_angular_error=max,
              min_angular_error=min,
              strike=strike,
              dip=dip,
              rake=rake,
              disabled=disabled)
  
          # Add in user-provided-values, overwriting if
          # necessary
          for k,v in values.items():
              mapping[k] = v
          return mapping