Skip to content

Commit

Permalink
Todorovic as toplevel stimulus module
Browse files Browse the repository at this point in the history
  • Loading branch information
JorisVincent committed Mar 20, 2023
1 parent 01b4451 commit ce67d50
Show file tree
Hide file tree
Showing 5 changed files with 56 additions and 39 deletions.
12 changes: 11 additions & 1 deletion stimupy/__init__.py
@@ -1,3 +1,13 @@
__version__ = "0.99.0"

from . import components, gabors, illusions, mondrians, noises, utils, wedding_cakes, whites
from . import (
components,
gabors,
illusions,
mondrians,
noises,
todorovics,
utils,
wedding_cakes,
whites,
)
10 changes: 0 additions & 10 deletions stimupy/illusions/__init__.py
Expand Up @@ -13,7 +13,6 @@
mueller_lyers,
ponzos,
sbcs,
todorovics,
)


Expand Down Expand Up @@ -104,15 +103,6 @@ def create_overview():
"sbc_dotted": sbcs.dotted(ppd=20, n_dots=5, dot_radius=3, distance=0.5, target_shape=3),
"2sided_sbc_with_dots": sbcs.two_sided_with_dots(ppd=20, n_dots=5, dot_radius=3, distance=0.5, target_shape=3),
"2sided_dotted_sbc": sbcs.two_sided_dotted(ppd=20, n_dots=5, dot_radius=3, distance=0.5, target_shape=3),
# Todorovic
"todorovic_rectangle_general": todorovics.rectangle_generalized(**p, target_size=4, target_position=3, covers_size=2, covers_x=(2, 6), covers_y=(2, 6)),
"todorovic_rectangle": todorovics.rectangle(**p, target_size=4, covers_size=2, covers_offset=2),
"todorovic_cross_general": todorovics.cross_generalized(**p, cross_size=4, cross_arm_ratios=1., cross_thickness=2, covers_size=2, covers_x=(2, 6), covers_y=(2, 6)),
"todorovic_cross": todorovics.cross(**p, cross_size=4, cross_thickness=2, covers_size=2),
"todorovic_equal": todorovics.equal(**p, cross_size=4, cross_thickness=2),
"2sided_todorovic_rectangle": todorovics.two_sided_rectangle(**p, target_size=3, covers_size=1.5, covers_offset=1.5),
"2sided_todorovic_cross": todorovics.two_sided_cross(**p, cross_size=3, cross_thickness=1.5, covers_size=1.5),
"2sided_todorovic_equal": todorovics.two_sided_equal(**p, cross_size=3, cross_thickness=1.5),
}
# fmt: on

Expand Down
16 changes: 8 additions & 8 deletions stimupy/papers/RHS2007.py
Expand Up @@ -1084,13 +1084,13 @@ def todorovic_equal(ppd=PPD, pad=True):
"intensity_target": v2,
}

stim1 = illusions.todorovics.equal(
stim1 = stimupy.todorovics.equal(
intensity_background=1.0,
intensity_covers=0.0,
**params,
)

stim2 = illusions.todorovics.equal(
stim2 = stimupy.todorovics.equal(
intensity_background=0.0,
intensity_covers=1.0,
**params,
Expand Down Expand Up @@ -1151,12 +1151,12 @@ def todorovic_in_large(ppd=PPD, pad=True):
"intensity_target": v2,
}

stim1 = illusions.todorovics.rectangle(
stim1 = stimupy.todorovics.rectangle(
intensity_background=1.0,
intensity_covers=0.0,
**params,
)
stim2 = illusions.todorovics.rectangle(
stim2 = stimupy.todorovics.rectangle(
intensity_background=0.0,
intensity_covers=1.0,
**params,
Expand Down Expand Up @@ -1217,12 +1217,12 @@ def todorovic_in_small(ppd=PPD, pad=True):
"intensity_target": v2,
}

stim1 = illusions.todorovics.cross(
stim1 = stimupy.todorovics.cross(
intensity_background=1.0,
intensity_covers=0.0,
**params,
)
stim2 = illusions.todorovics.cross(
stim2 = stimupy.todorovics.cross(
intensity_background=0.0,
intensity_covers=1.0,
**params,
Expand Down Expand Up @@ -1285,12 +1285,12 @@ def todorovic_out(ppd=PPD, pad=True):
"intensity_target": v2,
}

stim1 = illusions.todorovics.cross(
stim1 = stimupy.todorovics.cross(
intensity_background=1.0,
intensity_covers=0.0,
**params,
)
stim2 = illusions.todorovics.cross(
stim2 = stimupy.todorovics.cross(
intensity_background=0.0,
intensity_covers=1.0,
**params,
Expand Down
4 changes: 2 additions & 2 deletions stimupy/papers/domijan2015.py
Expand Up @@ -772,13 +772,13 @@ def todorovic(visual_size=VSIZES["todorovic"], ppd=PPD, shape=SHAPES["todorovic"
"covers_offset": 2.0 * visual_resize,
}

stim1 = illusions.todorovics.rectangle(
stim1 = stimupy.todorovics.rectangle(
**params,
intensity_background=0.0,
intensity_target=0.5,
intensity_covers=1.0,
)
stim2 = illusions.todorovics.rectangle(
stim2 = stimupy.todorovics.rectangle(
**params,
intensity_background=1.0,
intensity_target=0.5,
Expand Down
53 changes: 35 additions & 18 deletions stimupy/illusions/todorovics.py → stimupy/todorovics.py
Expand Up @@ -813,33 +813,50 @@ def two_sided_equal(
return stim


if __name__ == "__main__":
from stimupy.utils import plot_stimuli
def overview(**kwargs):
"""Generate example stimuli from this module
p1 = {
Returns
-------
stims : dict
dict with all stimuli containing individual stimulus dicts.
"""
default_params = {
"visual_size": 10,
"ppd": 10,
"ppd": 30,
}
default_params.update(kwargs)

rectangle_params = {
"target_size": 3,
"covers_size": 1.5,
}

p2 = {
"visual_size": 10,
"ppd": 10,
cross_params = {
"cross_size": 4,
"cross_thickness": 1.5,
}

stims = {
"rectangle": rectangle(**p1, covers_offset=1.5),
"rectangle_general": rectangle_generalized(
**p1, target_position=3.5, covers_x=(2, 6), covers_y=(2, 6)
# fmt: off
stimuli = {
"rectangle": rectangle(**default_params, **rectangle_params, covers_offset=1.5),
"rectangle_general": rectangle_generalized(**default_params, **rectangle_params,
target_position=3.5, covers_x=(2, 6), covers_y=(2, 6)
),
"cross": cross(**p2, covers_size=2),
"cross_general": cross_generalized(**p2, covers_size=2, covers_x=(2, 6), covers_y=(2, 6)),
"equal": equal(**p2),
"two_sided_rectangle": two_sided_rectangle(**p1, covers_offset=1),
"two_sided_cross": two_sided_cross(**p2, covers_size=1),
"two_sided_equal": two_sided_equal(**p2),
"cross": cross(**default_params, **cross_params, covers_size=2),
"cross_general": cross_generalized(**default_params, **cross_params,
covers_size=2, covers_x=(2, 6), covers_y=(2, 6)),
"equal": equal(**default_params, **cross_params,),
"two_sided_rectangle": two_sided_rectangle(**default_params, **rectangle_params, covers_offset=1),
"two_sided_cross": two_sided_cross(**default_params, **cross_params, covers_size=1),
"two_sided_equal": two_sided_equal(**default_params, **cross_params,),
}
# fmt: on

return stimuli


if __name__ == "__main__":
from stimupy.utils import plot_stimuli

stims = overview()
plot_stimuli(stims, mask=True, save=None)

0 comments on commit ce67d50

Please sign in to comment.