By-experiment randomization of text locations


By-experiment randomization of text locations

Author
Message
AndrewJSchoen
AndrewJSchoen
Respected Member
Respected Member (405 reputation)Respected Member (405 reputation)Respected Member (405 reputation)Respected Member (405 reputation)Respected Member (405 reputation)Respected Member (405 reputation)Respected Member (405 reputation)Respected Member (405 reputation)Respected Member (405 reputation)

Group: Forum Members
Posts: 2, Visits: 33
Hi all,

I have a task that I am creating, during which the participant selects a choice from a set of 6 text-buttons, arranged in two columns (2x3). Therefore, there are 6 possible locations for the buttons, and locations cannot be repeated. Right now, the locations are statically set, but I would like to set them at the beginning of the experiment, and then use those locations for the rest of the experiment. Here is a snippet of the text code:

<text happiness>
/ items = ("Happiness")
/ hjustify = center
/ vjustify = center
/ fontstyle = ("Arial",5%, false, false, false, false, 5, 1)
/ txcolor = white
/ txbgcolor = grey
/ position = (30%, 20%) #As you read ahead, this will have to be set from values.happiness_position, or something similar...
/ size = (20%, 10%)
/erase = false
</text>


In order to do it, I thought I may make some variables as such:

<values>
/ anger_position = (0%,0%)
/ happiness_position = (0%,0%)
/ sadness_position = (0%,0%)
/ fear_position = (0%,0%)
/ disgust_position = (0%,0%)
/ surprise_position = (0%,0%)
</values>


And then also have some locations:

<list button_position_1>
/ items = (30%, 20%)
</list>

<list button_position_2>
/ items = (30%, 50%)
</list>

<list button_position_3>
/ items = (30%, 80%)
</list>

<list button_position_4>
/ items = (70%, 20%)
</list>

<list button_position_5>
/ items = (70%, 50%)
</list>

<list button_position_6>
/ items = (70%, 80%)
</list>



 Finally, I thought a noreplace would be the solution to set the values, but I do not have the syntax correct:


/ onexptbegin = [values.anger_position, values.happness_position, values.sadness_position, values.fear_position, values.disgust_position, values.surprise_position = noreplace(list.button_position_1.items, list.button_position_2.items, list.button_position_3.items, list.button_position_4.items, list.button_position_5.items,list.button_position_6.items)]



Any suggestions or solutions would be greatly appreciated!
Thanks!

Andy

Dave
Dave
Supreme Being
Supreme Being (703K reputation)Supreme Being (703K reputation)Supreme Being (703K reputation)Supreme Being (703K reputation)Supreme Being (703K reputation)Supreme Being (703K reputation)Supreme Being (703K reputation)Supreme Being (703K reputation)Supreme Being (703K reputation)

Group: Administrators
Posts: 9.8K, Visits: 47K
#1: You need separate <values> entries (variables) for each <text> element's x and y position.

<values>
/ anger_x = 0%
/ anger_y= 0%
/ happiness_x = 0%
/ happiness_y = 0%
...
</values>

#2: Reference those in your <text> elements like this:

<text happiness>
/ items = ("Happiness")
/ hjustify = center
/ vjustify = center
/ fontstyle = ("Arial",5%, false, false, false, false, 5, 1)
/ txcolor = white
/ txbgcolor = grey
/ hposition = values.happlness_x
/ vposition = values.happiness_y

/ size = (20%, 10%)
/erase = false
</text>

#3: You need two paired <list>s. One holding the x-positions, another one holding the corresponding y-positions:
<list button_x>
/ items = (30%, 30%, 30%, 70%, 70%, 70%)
/ selectionrate = always
</list>

<list button_y>
/ items = (20%, 50%, 80%, 20%, 50%, 80%)
/ selectionmode = list.button_x.currentindex
/ selectionrate = always
</list>

#4: Finally, you need to set the <values> to items sampled from those lists /onexptbegin:

/ onexptbegin = [values.anger_x = list.button_x.nextvalue; values.anger_y = list.button_y.nextvalue;
values.happiness_x = list.button_x.nextvalue; values.happiness_y = list.button_y.nextvalue; ...]
GO


Reading This Topic


Login
Existing Account
Email Address:


Password:


Social Logins

Select a Forum....






Millisecond Forums


Search