valid response syntax


Author
Message
nakayama
nakayama
Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)
Group: Forum Members
Posts: 72, Visits: 408
Hi Inquisit Community,
I wonder whether the valid response can be specified when presenting two overlapped stimuli.
I wish the valid response is specified as only the blue part but including not the overlapping part.
for example I was looking for something like
/ stimulustimes = [0=Layer1,Layer2]
/ validresponse = (Layer1 & -Layer2) 
Is there a way to do this?
Thank you in advance.
https://www.millisecond.com/forums/Uploads/Images/c1515164-24ad-4ef9-96af-38db.PNG

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
nakayama - Wednesday, November 7, 2018
Hi Inquisit Community,
I wonder whether the valid response can be specified when presenting two overlapped stimuli.
I wish the valid response is specified as only the blue part but including not the overlapping part.
for example I was looking for something like
/ stimulustimes = [0=Layer1,Layer2]
/ validresponse = (Layer1 & -Layer2) 
Is there a way to do this?
Thank you in advance.
https://www.millisecond.com/forums/Uploads/Images/c1515164-24ad-4ef9-96af-38db.PNG

Yes, this can be done via /isvalidresponse:

<shape layer1>
/ shape = rectangle
/ color = blue
/ size = (60%, 40%)
</shape>

<shape layer2>
/ shape = rectangle
/ color = red
/ size = (50%, 30%)
</shape>

// order in /validresponse matters, we'll check layer2 first
// we invalidate any click within layer2 per /isvalidresponse
// result: only clicks within layer1, excluding the area covered by layer2, are accepted as response.
<trial mytrial>
/ inputdevice = mouse
/ stimulusframes = [1=layer1, layer2]
/ validresponse = (layer2, layer1)
/ isvalidresponse = [
if (trial.mytrial.response == "layer2") false else true;
]

</trial>

<block myblock>
/ trials = [1-4 = mytrial]
</block>

nakayama
nakayama
Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)
Group: Forum Members
Posts: 72, Visits: 408
Dave - Thursday, November 8, 2018
nakayama - Wednesday, November 7, 2018
Hi Inquisit Community,
I wonder whether the valid response can be specified when presenting two overlapped stimuli.
I wish the valid response is specified as only the blue part but including not the overlapping part.
for example I was looking for something like
/ stimulustimes = [0=Layer1,Layer2]
/ validresponse = (Layer1 & -Layer2) 
Is there a way to do this?
Thank you in advance.
https://www.millisecond.com/forums/Uploads/Images/c1515164-24ad-4ef9-96af-38db.PNG

Yes, this can be done via /isvalidresponse:

<shape layer1>
/ shape = rectangle
/ color = blue
/ size = (60%, 40%)
</shape>

<shape layer2>
/ shape = rectangle
/ color = red
/ size = (50%, 30%)
</shape>

// order in /validresponse matters, we'll check layer2 first
// we invalidate any click within layer2 per /isvalidresponse
// result: only clicks within layer1, excluding the area covered by layer2, are accepted as response.
<trial mytrial>
/ inputdevice = mouse
/ stimulusframes = [1=layer1, layer2]
/ validresponse = (layer2, layer1)
/ isvalidresponse = [
if (trial.mytrial.response == "layer2") false else true;
]

</trial>

<block myblock>
/ trials = [1-4 = mytrial]
</block>

thank you Dave! it works very well:)

nakayama
nakayama
Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)Guru (5.1K reputation)
Group: Forum Members
Posts: 72, Visits: 408
Dave - Thursday, November 8, 2018
nakayama - Wednesday, November 7, 2018
Hi Inquisit Community,
I wonder whether the valid response can be specified when presenting two overlapped stimuli.
I wish the valid response is specified as only the blue part but including not the overlapping part.
for example I was looking for something like
/ stimulustimes = [0=Layer1,Layer2]
/ validresponse = (Layer1 & -Layer2) 
Is there a way to do this?
Thank you in advance.
https://www.millisecond.com/forums/Uploads/Images/c1515164-24ad-4ef9-96af-38db.PNG

Yes, this can be done via /isvalidresponse:

<shape layer1>
/ shape = rectangle
/ color = blue
/ size = (60%, 40%)
</shape>

<shape layer2>
/ shape = rectangle
/ color = red
/ size = (50%, 30%)
</shape>

// order in /validresponse matters, we'll check layer2 first
// we invalidate any click within layer2 per /isvalidresponse
// result: only clicks within layer1, excluding the area covered by layer2, are accepted as response.
<trial mytrial>
/ inputdevice = mouse
/ stimulusframes = [1=layer1, layer2]
/ validresponse = (layer2, layer1)
/ isvalidresponse = [
if (trial.mytrial.response == "layer2") false else true;
]

</trial>

<block myblock>
/ trials = [1-4 = mytrial]
</block>

Hi Dave,
may I add another question down here?
I want to know whether the Inquisit5 allows to create some rotating shapes (fro example rotate right 30deg) like this.
Is there one syntax to do this?
Thank you;)
https://www.millisecond.com/forums/Uploads/Images/0c2094ba-2f97-4e97-8a11-202e.PNG
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
nakayama - Tuesday, November 13, 2018
Dave - Thursday, November 8, 2018
nakayama - Wednesday, November 7, 2018
Hi Inquisit Community,
I wonder whether the valid response can be specified when presenting two overlapped stimuli.
I wish the valid response is specified as only the blue part but including not the overlapping part.
for example I was looking for something like
/ stimulustimes = [0=Layer1,Layer2]
/ validresponse = (Layer1 & -Layer2) 
Is there a way to do this?
Thank you in advance.
https://www.millisecond.com/forums/Uploads/Images/c1515164-24ad-4ef9-96af-38db.PNG

Yes, this can be done via /isvalidresponse:

<shape layer1>
/ shape = rectangle
/ color = blue
/ size = (60%, 40%)
</shape>

<shape layer2>
/ shape = rectangle
/ color = red
/ size = (50%, 30%)
</shape>

// order in /validresponse matters, we'll check layer2 first
// we invalidate any click within layer2 per /isvalidresponse
// result: only clicks within layer1, excluding the area covered by layer2, are accepted as response.
<trial mytrial>
/ inputdevice = mouse
/ stimulusframes = [1=layer1, layer2]
/ validresponse = (layer2, layer1)
/ isvalidresponse = [
if (trial.mytrial.response == "layer2") false else true;
]

</trial>

<block myblock>
/ trials = [1-4 = mytrial]
</block>

Hi Dave,
may I add another question down here?
I want to know whether the Inquisit5 allows to create some rotating shapes (fro example rotate right 30deg) like this.
Is there one syntax to do this?
Thank you;)
https://www.millisecond.com/forums/Uploads/Images/0c2094ba-2f97-4e97-8a11-202e.PNG

No, I'm afraid rotating stimuli is currently not among its capabilities.

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search