Skip to content

Commit

Permalink
parallelogram: allow both directions
Browse files Browse the repository at this point in the history
  • Loading branch information
LynnSchmittwilken committed Jun 18, 2022
1 parent 28c3884 commit 969d959
Showing 1 changed file with 15 additions and 8 deletions.
23 changes: 15 additions & 8 deletions stimuli/components/components.py
Expand Up @@ -100,15 +100,22 @@ def cross(ppd=10, cross_size=(8., 8., 8., 8.), cross_thickness=4., vback=0., vcr
return img


def parallelogram(ppd=10, para_size=(2., 3., 1.), vback=0., vpara=0.5):
def parallelogram(ppd=10, para_size=(2., 3., -1.), vback=0., vpara=0.5):
para_height, para_width, para_depth = degrees_to_pixels(para_size, ppd)
para_depth = np.abs(para_depth)

# Create triangle to create parallelogram
tri1 = triangle(ppd, (para_size[0], para_size[2]), 0., -vpara+vback)
tri2 = triangle(ppd, (para_size[0], para_size[2]), -vpara+vback, 0.)

# Create image, add rectangle and subtract triangles
img = np.ones((para_height, para_width+para_depth)) * vpara
img[0:para_height, 0:para_depth] += tri1
img[0:para_height, para_width::] += tri2
if para_depth == 0.:
img = np.ones((para_height, para_width)) * vpara
else:
tri1 = triangle(ppd, (para_size[0], np.abs(para_size[2])), 0., -vpara+vback)
tri2 = triangle(ppd, (para_size[0], np.abs(para_size[2])), -vpara+vback, 0.)

# Create image, add rectangle and subtract triangles
img = np.ones((para_height, para_width+para_depth)) * vpara
img[0:para_height, 0:para_depth] += tri1
img[0:para_height, para_width::] += tri2

if para_size[2] < 0.:
img = np.fliplr(img)
return img

0 comments on commit 969d959

Please sign in to comment.