code: def visible_settings(self):
      result = [self.image_name, self.cropped_image_name, self.shape]
      if self.shape.value in (SH_RECTANGLE, SH_ELLIPSE):
          result += [self.crop_method, self.individual_or_once]
          if self.crop_method == CM_COORDINATES:
              if self.shape == SH_RECTANGLE:
                  result += [
                      self.horizontal_limits,
                      self.vertical_limits,
                  ]
              elif self.shape == SH_ELLIPSE:
                  result += [
                      self.ellipse_center,
                      self.ellipse_x_radius,
                      self.ellipse_y_radius,
                  ]
      elif self.shape == SH_IMAGE:
          result += [self.image_mask_source]
      elif self.shape == SH_CROPPING:
          result.append(self.cropping_mask_source)
      elif self.shape == SH_OBJECTS:
          result.append(self.objects_source)
      else:
          raise NotImplementedError(
              "Unimplemented shape type: %s" % self.shape.value
          )
      result += [self.remove_rows_and_columns]
      return result
  
imports: import logging
  import math
  import centrosome.filter
  import matplotlib.axes
  import matplotlib.cm
  import matplotlib.figure
  import matplotlib.patches
  import numpy
  from cellprofiler_core.image import Image
  from cellprofiler_core.module import Module
  from cellprofiler_core.preferences import get_primary_outline_color
  from cellprofiler_core.setting import Coordinates
  from cellprofiler_core.setting.choice import Choice
  from cellprofiler_core.setting.range import IntegerOrUnboundedRange
  from cellprofiler_core.setting.subscriber import CropImageSubscriber
  from cellprofiler_core.setting.subscriber import ImageSubscriber
  from cellprofiler_core.setting.subscriber import LabelSubscriber
  from cellprofiler_core.setting.text import CropImageName
  from cellprofiler_core.setting.text import Integer
  from cellprofiler_core.utilities.image import crop_image
label_desc: Use image node_id 3 for calling the Crop obj's underlying member method code with example usage: obj.visible_settings() and returns: result