stimupy.components.lines#

Demos#

Functions#

line

Draw a line

dipole

Draw a two centered parallel lines

ellipse

Draw an ellipse

circle

Draw a circle given the input parameters

line(visual_size=None, ppd=None, shape=None, line_position=None, line_length=None, line_width=0, rotation=0.0, intensity_line=1.0, intensity_background=0.0, origin='corner')[source]#

Draw a line

Parameters:
  • visual_size (Sequence[Number, Number], Number, or None (default)) – visual size [height, width] of image, in degrees

  • ppd (Sequence[Number, Number], Number, or None (default)) – pixels per degree [vertical, horizontal]

  • shape (Sequence[Number, Number], Number, or None (default)) – shape [height, width] of image, in pixels

  • line_position (Sequence[Number, Number], Number, or None (default)) – line position (y, x) given the chosen origin; if None (default), the lines will go through the image center

  • line_length (Number) – length of the line, in degrees visual angle

  • line_width (Number) – width of the line, in degrees visual angle; if line_width=0 (default), line will be one pixel wide

  • rotation (float, optional) – rotation (in degrees), counterclockwise, by default 0.0 (horizontal)

  • intensity_line (Number) – intensity value of the line (default: 1)

  • intensity_background (Number) – intensity value of the background (default: 0)

  • origin ("corner", "mean" or "center") – if “corner”: set origin to upper left corner (default) if “mean” or “center”: set origin to center (closest existing value to mean)

Returns:

dict with the stimulus (key: “img”), mask with integer index for each line (key: “line_mask”), and additional keys containing stimulus parameters

Return type:

dict[str, Any]

dipole(visual_size=None, ppd=None, shape=None, line_length=None, line_width=0, line_gap=None, rotation=0.0, intensity_lines=(0.0, 1.0))[source]#

Draw a two centered parallel lines

Parameters:
  • visual_size (Sequence[Number, Number], Number, or None (default)) – visual size [height, width] of image, in degrees

  • ppd (Sequence[Number, Number], Number, or None (default)) – pixels per degree [vertical, horizontal]

  • shape (Sequence[Number, Number], Number, or None (default)) – shape [height, width] of image, in pixels

  • line_length (Number) – length of the line, in degrees visual angle

  • line_width (Number) – width of the line, in degrees visual angle; if line_width=0 (default), line will be one pixel wide

  • line_gap (Number) – distance between line centers, in degrees visual angle

  • rotation (float, optional) – rotation (in degrees), counterclockwise, by default 0.0 (horizontal)

  • intensity_lines ((Number, Number)) – intensity value of the line (default: (0, 1)); background intensity is the mean of these two values

Returns:

dict with the stimulus (key: “img”), mask with integer index for each line (key: “line_mask”), and additional keys containing stimulus parameters

Return type:

dict[str, Any]

ellipse(visual_size=None, ppd=None, shape=None, radius=None, line_width=0, intensity_line=1.0, intensity_background=0.0)[source]#

Draw an ellipse

Parameters:
  • visual_size (Sequence[Number, Number], Number, or None (default)) – visual size [height, width] of image, in degrees

  • ppd (Sequence[Number, Number], Number, or None (default)) – pixels per degree [vertical, horizontal]

  • shape (Sequence[Number, Number], Number, or None (default)) – shape [height, width] of image, in pixels

  • radius (Sequence[Number, Number], Number or None (default)) – ellipse radius [ry, rx] in degrees visual angle

  • line_width (Number) – width of the line, in degrees visual angle; if line_width=0 (default), line will be one pixel wide

  • intensity_line (Number) – intensity value of the line (default: 1)

  • intensity_background (Number) – intensity value of the background (default: 0)

Returns:

dict with the stimulus (key: “img”), mask with integer index for each line (key: “line_mask”), and additional keys containing stimulus parameters

Return type:

dict[str, Any]

circle(visual_size=None, ppd=None, shape=None, radius=None, line_width=0, intensity_line=1.0, intensity_background=0.0)[source]#

Draw a circle given the input parameters

Parameters:
  • visual_size (Sequence[Number, Number], Number, or None (default)) – visual size [height, width] of image, in degrees

  • ppd (Sequence[Number, Number], Number, or None (default)) – pixels per degree [vertical, horizontal]

  • shape (Sequence[Number, Number], Number, or None (default)) – shape [height, width] of image, in pixels

  • radius (Number) – radius of circle in degrees visual angle

  • line_width (Number) – width of the line, in degrees visual angle; if line_width=0 (default), line will be one pixel wide

  • intensity_line (Number) – intensity value of the line (default: 1)

  • intensity_background (Number) – intensity value of the background (default: 0)

Returns:

dict with the stimulus (key: “img”), mask with integer index for each line (key: “line_mask”), and additional keys containing stimulus parameters

Return type:

dict[str, Any]