Millisecond Forums

Presenting an image randomly in each of the squares of a matrix

https://forums.millisecond.com/Topic9428.aspx

By limebar - 1/8/2013

Hi all, 


I'm programming a task in which people have to click a target image in a 4 by 4 square matrix. Each trial, the target image needs to be presented in a different square of the matrix (until all 16 squares have been used). I haven't been able to get the image to appear randomly in each of the 16 squares. Here's what I have so far:



*****************


<counter hpositions>


/ items = (112mm, 144mm,176mm, 208mm, 112mm,144mm,176mm, 208mm,112mm,144mm,176mm, 208mm,112mm,144mm,176mm, 208mm) 


/ select = noreplacenorepeat


/ selectionrate = always


</counter>



<counter vpositions>


/ items = (52mm, 52mm, 52mm, 52mm, 84mm, 84mm, 84mm, 84mm, 116mm, 116mm, 116mm, 116mm, 148mm, 148mm,148mm, 148mm) 


/ select = current(hpositions)


/ selectionrate = always


</counter>



*****************



<picture p01>


/ items = ("sm1.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p02>


/ items = ("fr2.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p03>


/ items = ("fr3.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p04>


/ items = ("fr4.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p05>


/ items = ("fr5.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p06>


/ items = ("fr6.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p07>


/ items = ("fr7.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p08>


/ items = ("fr8.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p09>


/ items = ("fr9.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p10>


/ items = ("fr10.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p11>


/ items = ("fr11.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p12>


/ items = ("fr12.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p13>


/ items = ("fr13.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p14>


/ items = ("fr14.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p15>


/ items = ("fr15.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



<picture p16>


/ items = ("fr16.bmp")


/ position = (0,0)


/ size = (30mm, 30mm)


</picture>



**************



<trial identify>


/ pretrialpause = 0


/ trialcode = "io"


/ stimulusframes = [1=p01, p02, p03, p04, p05, p06, p07, p08, p09, p10, p11, p12, p13, p14, p15, p16]


/ inputdevice = mouse


/ posttrialpause=500


/ validresponse = ("p01")


/ ontrialbegin = [picture.p01.hposition=counter.hpositions.selectedvalue;


 picture.p01.vposition=counter.vpositions.selectedvalue;


 picture.p02.hposition=counter.hpositions.selectedvalue;


 picture.p02.vposition=counter.vpositions.selectedvalue;


 picture.p03.hposition=counter.hpositions.selectedvalue;


 picture.p03.vposition=counter.vpositions.selectedvalue;


 picture.p04.hposition=counter.hpositions.selectedvalue;


 picture.p04.vposition=counter.vpositions.selectedvalue;


 picture.p05.hposition=counter.hpositions.selectedvalue;


 picture.p05.vposition=counter.vpositions.selectedvalue;


 picture.p06.hposition=counter.hpositions.selectedvalue;


 picture.p06.vposition=counter.vpositions.selectedvalue;


 picture.p07.hposition=counter.hpositions.selectedvalue;


 picture.p07.vposition=counter.vpositions.selectedvalue;


 picture.p08.hposition=counter.hpositions.selectedvalue;


 picture.p08.vposition=counter.vpositions.selectedvalue;


picture.p09.hposition=counter.hpositions.selectedvalue;


 picture.p09.vposition=counter.vpositions.selectedvalue;


 picture.p10.hposition=counter.hpositions.selectedvalue;


 picture.p10.vposition=counter.vpositions.selectedvalue;


 picture.p11.hposition=counter.hpositions.selectedvalue;


 picture.p11.vposition=counter.vpositions.selectedvalue;


 picture.p12.hposition=counter.hpositions.selectedvalue;


 picture.p12.vposition=counter.vpositions.selectedvalue;


 picture.p13.hposition=counter.hpositions.selectedvalue;


 picture.p13.vposition=counter.vpositions.selectedvalue;


 picture.p14.hposition=counter.hpositions.selectedvalue;


 picture.p14.vposition=counter.vpositions.selectedvalue;


 picture.p15.hposition=counter.hpositions.selectedvalue;


 picture.p15.vposition=counter.vpositions.selectedvalue;


 picture.p16.hposition=counter.hpositions.selectedvalue;


 picture.p16.vposition=counter.vpositions.selectedvalue]


</trial>



****************************************************************************************



<block memory2>


/ trials = [1-16 = noreplacenorepeat (identify)]


</block>



*********************


<expt>


/ blocks = [1=memory2]


</expt>


*********************


What am I doing wrong? Any ideas?


By Dave - 1/8/2013

You sample all available 16 positions in every single trial. Thus you have no control over where the target image appears across all trials. You need to do something along the lines of http://www.millisecond.com/forums/Topic5506.aspx#5506 instead.

By limebar - 1/9/2013

Thank you! I'll look into it.