= Added citation to readme

parent d4aa236e
# tTraceTest8
tTraceTest8
Please cite as:
Morys-Carter, W.L. & Vu, A. (2022, January 24). *tTraceTest8* [Computer software]. Pavlovia. https://gitlab.pavlovia.org/vespr/tTraceTest8
This version of the Trail Making Test (Reitan, 1955) uses code to create the targets and text, setting the target list from a spreadsheet, which increases flexibility compared with Andrew Vu's original version. It will also run on mobile devices, since it is entirely mouse-based.
Reitan, R. M. (1955). The relation of the Trail Making Test to organic brain damage. *Journal of Consulting Psychology*, 19(5), 393-394. https://doi.org/10.1037/h0044509.
RTstep0,RTstep1,RTstep2,RTstep3,RTstep4,RTstep5,RTstep6,RTstep7,RTstep8,RTstep9,RTstep10,RTstep11,RTstep12,RTstep13,RTstep14,RTstep15,trialMouse.x,trialMouse.y,trialMouse.leftButton,trialMouse.midButton,trialMouse.rightButton,tasks.thisRepN,tasks.thisTrialN,tasks.thisN,tasks.thisIndex,tasks.ran,targetList,participant,session,date,expName,psychopyVersion,OS,frameRate
1126,1809,2824,4190,4856,5706,7171,12600,13282,13865,15497,16414,16897,17146,17413,18146,0.438888928,0.06759258,0,0,0,0,0,0,0,1,1A2B3C4D5E6F7G8H,,001,2022-01-23_10h56.09.427,tTraceTest8,2021.2.3,Win32,59.93407252
989,1887,2521,3120,3753,6717,7293,7960,8610,8993,,,,,,,0.387037075,0.284259239,0,0,0,0,1,1,1,1,1A2E3I4O5U,,001,2022-01-23_10h56.09.427,tTraceTest8,2021.2.3,Win32,59.93407252
tasks.thisRepN,tasks.thisTrialN,tasks.thisN,tasks.thisIndex,trials.thisRepN,trials.thisTrialN,trials.thisN,trials.thisIndex,instrText.started,instrText.stopped,participant,session,date,expName,psychopyVersion,frameRate,
,,,,,,,,58.85591679997742,None,,,,,,,
......@@ -104,8 +104,8 @@ async function experimentInit() {
trialTargets = [];
for (var Idx, _pj_c = 0, _pj_a = util.range(posArray1.length), _pj_b = _pj_a.length; (_pj_c < _pj_b); _pj_c += 1) {
Idx = _pj_a[_pj_c];
trialText.push(new visual.TextStim({"win": psychoJS.window, "name": ("trialText" + Idx), "text": " ", "font": "Arial", "pos": [posArray1[Idx], posArray2[Idx]], "height": 0.03, "wrapWidth": null, "ori": 0, "color": white}));
trialTargets.push(new visual.Polygon({"win": psychoJS.window, "name": "target", "fillColor": white, "lineColor": white, "edges": 36, "pos": [posArray1[Idx], posArray2[Idx]], "size": 0.05}));
trialText.push(new visual.TextStim({"win": psychoJS.window, "name": ("trialText" + Idx), "text": " ", "font": "Arial", "pos": [posArray1[Idx], posArray2[Idx]], "height": 0.06, "wrapWidth": null, "ori": 0, "color": white}));
trialTargets.push(new visual.Polygon({"win": psychoJS.window, "name": "target", "fillColor": white, "lineColor": white, "edges": 36, "pos": [posArray1[Idx], posArray2[Idx]], "size": 0.1}));
}
// Initialize components for Routine "instr"
......@@ -131,7 +131,7 @@ async function experimentInit() {
ori: 0, pos: [0, 0],
lineWidth: 1, lineColor: new util.Color([1, 1, 1]),
fillColor: new util.Color([1, 1, 1]),
opacity: 1, depth: -2, interpolate: true,
opacity: 1, depth: -3, interpolate: true,
});
clickHere = new visual.ShapeStim ({
......
......@@ -112,8 +112,8 @@ async function experimentInit() {
trialTargets = [];
for (var Idx, _pj_c = 0, _pj_a = util.range(posArray1.length), _pj_b = _pj_a.length; (_pj_c < _pj_b); _pj_c += 1) {
Idx = _pj_a[_pj_c];
trialText.push(new visual.TextStim({"win": psychoJS.window, "name": ("trialText" + Idx), "text": " ", "font": "Arial", "pos": [posArray1[Idx], posArray2[Idx]], "height": 0.03, "wrapWidth": null, "ori": 0, "color": white}));
trialTargets.push(new visual.Polygon({"win": psychoJS.window, "name": "target", "fillColor": white, "lineColor": white, "edges": 36, "pos": [posArray1[Idx], posArray2[Idx]], "size": 0.05}));
trialText.push(new visual.TextStim({"win": psychoJS.window, "name": ("trialText" + Idx), "text": " ", "font": "Arial", "pos": [posArray1[Idx], posArray2[Idx]], "height": 0.06, "wrapWidth": null, "ori": 0, "color": white}));
trialTargets.push(new visual.Polygon({"win": psychoJS.window, "name": "target", "fillColor": white, "lineColor": white, "edges": 36, "pos": [posArray1[Idx], posArray2[Idx]], "size": 0.1}));
}
// Initialize components for Routine "instr"
......@@ -139,7 +139,7 @@ async function experimentInit() {
ori: 0, pos: [0, 0],
lineWidth: 1, lineColor: new util.Color([1, 1, 1]),
fillColor: new util.Color([1, 1, 1]),
opacity: 1, depth: -2, interpolate: true,
opacity: 1, depth: -3, interpolate: true,
});
clickHere = new visual.ShapeStim ({
......
......@@ -75,8 +75,8 @@
<CodeComponent name="setupCode">
<Param name="Before Experiment" updates="constant" val="" valType="extendedCode"/>
<Param name="Before JS Experiment" updates="constant" val="" valType="extendedCode"/>
<Param name="Begin Experiment" updates="constant" val="# Maximum number of targets is the length of these two arrays&amp;#10;# posArray1 contains the x coordinates and posArray2 the y coordinates&amp;#10;posArray1 = [-0.05,-0.1,-0.15,-0.2,-0.25,-0.3,-0.35,-0.4,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4]&amp;#10;posArray2 = [-0.05,-0.1,-0.15,-0.2,-0.25,-0.3,-0.35,-0.4,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4]&amp;#10;&amp;#10;# Set up target text and circles&amp;#10;trialText = []&amp;#10;trialTargets = []&amp;#10;for Idx in range(len(posArray1)):&amp;#10; trialText.append(visual.TextStim(win=win, &amp;#10; name='trialText'+Idx,&amp;#10; text=' ',&amp;#10; font='Arial',&amp;#10; pos=(posArray1[Idx], posArray2[Idx]), &amp;#10; height=0.03, wrapWidth=None, ori=0, &amp;#10; color=white))&amp;#10; trialTargets.append(visual.Polygon(&amp;#10; win=win,&amp;#10; name=&quot;target&quot;,&amp;#10; fillColor=white,&amp;#10; lineColor=white,&amp;#10; edges=36,&amp;#10; pos=(posArray1[Idx], posArray2[Idx]), &amp;#10; size=.05&amp;#10; ))&amp;#10;" valType="extendedCode"/>
<Param name="Begin JS Experiment" updates="constant" val="posArray1 = [(- 0.05), (- 0.1), (- 0.15), (- 0.2), (- 0.25), (- 0.3), (- 0.35), (- 0.4), 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4];&amp;#10;posArray2 = [(- 0.05), (- 0.1), (- 0.15), (- 0.2), (- 0.25), (- 0.3), (- 0.35), (- 0.4), 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4];&amp;#10;trialText = [];&amp;#10;trialTargets = [];&amp;#10;for (var Idx, _pj_c = 0, _pj_a = util.range(posArray1.length), _pj_b = _pj_a.length; (_pj_c &lt; _pj_b); _pj_c += 1) {&amp;#10; Idx = _pj_a[_pj_c];&amp;#10; trialText.push(new visual.TextStim({&quot;win&quot;: psychoJS.window, &quot;name&quot;: (&quot;trialText&quot; + Idx), &quot;text&quot;: &quot; &quot;, &quot;font&quot;: &quot;Arial&quot;, &quot;pos&quot;: [posArray1[Idx], posArray2[Idx]], &quot;height&quot;: 0.03, &quot;wrapWidth&quot;: null, &quot;ori&quot;: 0, &quot;color&quot;: white}));&amp;#10; trialTargets.push(new visual.Polygon({&quot;win&quot;: psychoJS.window, &quot;name&quot;: &quot;target&quot;, &quot;fillColor&quot;: white, &quot;lineColor&quot;: white, &quot;edges&quot;: 36, &quot;pos&quot;: [posArray1[Idx], posArray2[Idx]], &quot;size&quot;: 0.05}));&amp;#10;}&amp;#10;" valType="extendedCode"/>
<Param name="Begin Experiment" updates="constant" val="# Maximum number of targets is the length of these two arrays&amp;#10;# posArray1 contains the x coordinates and posArray2 the y coordinates&amp;#10;posArray1 = [-0.05,-0.1,-0.15,-0.2,-0.25,-0.3,-0.35,-0.4,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4]&amp;#10;posArray2 = [-0.05,-0.1,-0.15,-0.2,-0.25,-0.3,-0.35,-0.4,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4]&amp;#10;&amp;#10;# Set up target text and circles&amp;#10;trialText = []&amp;#10;trialTargets = []&amp;#10;for Idx in range(len(posArray1)):&amp;#10; trialText.append(visual.TextStim(win=win, &amp;#10; name='trialText'+Idx,&amp;#10; text=' ',&amp;#10; font='Arial',&amp;#10; pos=(posArray1[Idx], posArray2[Idx]), &amp;#10; height=0.06, wrapWidth=None, ori=0, &amp;#10; color=white))&amp;#10; trialTargets.append(visual.Polygon(&amp;#10; win=win,&amp;#10; name=&quot;target&quot;,&amp;#10; fillColor=white,&amp;#10; lineColor=white,&amp;#10; edges=36,&amp;#10; pos=(posArray1[Idx], posArray2[Idx]), &amp;#10; size=.1&amp;#10; ))&amp;#10;" valType="extendedCode"/>
<Param name="Begin JS Experiment" updates="constant" val="posArray1 = [(- 0.05), (- 0.1), (- 0.15), (- 0.2), (- 0.25), (- 0.3), (- 0.35), (- 0.4), 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4];&amp;#10;posArray2 = [(- 0.05), (- 0.1), (- 0.15), (- 0.2), (- 0.25), (- 0.3), (- 0.35), (- 0.4), 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4];&amp;#10;trialText = [];&amp;#10;trialTargets = [];&amp;#10;for (var Idx, _pj_c = 0, _pj_a = util.range(posArray1.length), _pj_b = _pj_a.length; (_pj_c &lt; _pj_b); _pj_c += 1) {&amp;#10; Idx = _pj_a[_pj_c];&amp;#10; trialText.push(new visual.TextStim({&quot;win&quot;: psychoJS.window, &quot;name&quot;: (&quot;trialText&quot; + Idx), &quot;text&quot;: &quot; &quot;, &quot;font&quot;: &quot;Arial&quot;, &quot;pos&quot;: [posArray1[Idx], posArray2[Idx]], &quot;height&quot;: 0.06, &quot;wrapWidth&quot;: null, &quot;ori&quot;: 0, &quot;color&quot;: white}));&amp;#10; trialTargets.push(new visual.Polygon({&quot;win&quot;: psychoJS.window, &quot;name&quot;: &quot;target&quot;, &quot;fillColor&quot;: white, &quot;lineColor&quot;: white, &quot;edges&quot;: 36, &quot;pos&quot;: [posArray1[Idx], posArray2[Idx]], &quot;size&quot;: 0.1}));&amp;#10;}&amp;#10;" valType="extendedCode"/>
<Param name="Begin JS Routine" updates="constant" val="" valType="extendedCode"/>
<Param name="Begin Routine" updates="constant" val="" valType="extendedCode"/>
<Param name="Code Type" updates="None" val="Auto-&gt;JS" valType="str"/>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment