Table Of ContentScripting Reference Manual
for
BrainVoyager 20.4
HesterBremanandRainerGoebel
Copyright2017(cid:13)c BrainInnovationB.V.
Contents
1 Introduction 4
1.1 Locationofscriptfiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.1 ScriptinginBrainVoyager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 Documentationhistory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 SwitchingfromscriptinginBrainVoyagerQX2.0to2.1orhigher . . . . . . . . . . . . . . 8
2 TheBrainVoyagerScriptEditor 10
2.1 GeneralpropertiesoftheBrainVoyagerScriptEditor. . . . . . . . . . . . . . . . . . . . . . 10
2.1.1 Theuserinterface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Creatingscripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3 Runningscripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4 Usingtheinterpreter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5 Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.5.1 Settingbreakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3 BrainVoyagerScriptingCommands(API) 17
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1.1 InvokingBrainVoyagerscriptingfunctionsfromotherprograms . . . . . . . . . . 17
3.1.2 Examplescript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2 Listofallmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 BrainVoyagerQX-specificclasses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.4 FunctionsoftheBrainVoyagerobject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.4.1 Listofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.4.2 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.5 Createprojects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5.1 ListofMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5.2 CreateFMRproject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5.3 CreateDMRprojects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.5.4 CreateVMRprojects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.5.5 CreateAMRprojects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5.6 Forallprojects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.5.7 Examplescripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.6 BVDocumentfunctions: Preprocessingoffunctionaldata(FMR) . . . . . . . . . . . . . . 31
3.6.1 Listofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.6.2 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.6.3 Examplescript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.6.4 Examplescript‘HighPassFilterUsingGLM.js’ . . . . . . . . . . . . . . . . . . . . . . 38
3.7 BVdocumentfunctions: Preprocessingoffunctionaldata(VTC) . . . . . . . . . . . . . . . 39
3.7.1 Listofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.7.2 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.7.3 Examplescript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.8 BVdocument(mesh)functions: Preprocessingoffunctionaldata(MTC) . . . . . . . . . . 42
3.8.1 Listofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.8.2 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.8.3 Examplescript“MeshMTCPreprocessing.js” . . . . . . . . . . . . . . . . . . . . . . 44
3.9 BVProjectfunctions: Experimentaldesign. . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
1
3.9.1 ListofMethodsforstimulationprotocols . . . . . . . . . . . . . . . . . . . . . . . . 45
3.9.2 ListofPropertiesforstimulationprotocols . . . . . . . . . . . . . . . . . . . . . . . 45
3.9.3 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.9.4 Examplescripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.9.5 ListofMethodsfordesignmatrices . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.9.6 ListofPropertiesfordesignmatrices . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.9.7 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.9.8 Someelaborationondesignmatrixproperties . . . . . . . . . . . . . . . . . . . . . 51
3.9.9 Examplescripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.10 BVProjectfunctions: Statistics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.10.1 ListofMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.10.2 ListofProperties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.10.3 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.10.4 Examplescript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.11 BVProjectfunctions: Statisticsonregions-of-interest(ROI/VOI) . . . . . . . . . . . . . . . 60
3.11.1 ListofMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.11.2 ListofProperties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.11.3 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.11.4 Examplescript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.12 BVProjectfunctions: TransformationsandNormalization . . . . . . . . . . . . . . . . . . 64
3.12.1 Listofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.12.2 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.12.3 ExamplescripttocreateaVMRandtransformtoTalairachspace . . . . . . . . . . 72
3.12.4 ExamplescripttocreateVTCfiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.12.5 Creatingdiffusionweighted(VDW)files . . . . . . . . . . . . . . . . . . . . . . . . 74
3.12.6 ExamplescripttocreateVDWfiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.13 BVProjectfunctions: Surfacefunctions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.13.1 ListofMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.13.2 ListofProperties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.13.3 DescriptionofVMRobjectmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.13.4 DescriptionofMeshobjectandMeshSceneobjectmethods . . . . . . . . . . . . . . 79
3.13.5 Descriptionofproperties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
3.13.6 Examplescript: visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
3.13.7 Examplescript: createMTC(viaVMR) . . . . . . . . . . . . . . . . . . . . . . . . . 89
3.13.8 Examplescript: createMTC(viameshobject) . . . . . . . . . . . . . . . . . . . . . 89
3.13.9 Examplescript: Cortex-BasedAlignment(viameshsceneobject) . . . . . . . . . . 90
3.13.10Examplescript: loadingamesh(viameshsceneobject) . . . . . . . . . . . . . . . . 91
3.13.11Examplescript: smoothingandinflatingamesh(viameshobject) . . . . . . . . . . 92
3.13.12Examplescript: createMTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.13.13Examplescript: preprocessingan*.mtcfile(viameshobject) . . . . . . . . . . . . . 93
3.13.14Examplescript: singlestudyGLMonmeshdata(viameshobject) . . . . . . . . . 94
4 Fileinputandoutput(I/O) 95
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.1.1 UsingtheBrainVoyagerobject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.1.2 UsingQtobjects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.1.3 Listof(some)methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.1.4 Detaileddescriptionofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.2 ClassQIODevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.2.1 Listofmethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.2.2 ClassQTextStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.3 Examplescripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.3.1 Examplescripts: getfilenameanddirectoryname . . . . . . . . . . . . . . . . . . . 98
4.3.2 Examplescripts: writeafileI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.3.3 Examplescript: writeafileII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.3.4 Examplescript: readafile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.3.5 Example: deleteafile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
2
5 Creatingscriptswithdialogs 102
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.2 WritingGUIscripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.2.1 Capturingemittedsignals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.2.2 Collectinginformationinthedialog . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.3 Otherfunctionsthatcanbeusedwiththewidgets . . . . . . . . . . . . . . . . . . . . . . . 103
5.3.1 ComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.3.2 QListWidget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.3.3 Functionsfornon-GUIscriptsvs. functionsinGUIscripts: theScriptObject . . . . 105
5.3.4 Anexamplescriptwithdifferentwidgets . . . . . . . . . . . . . . . . . . . . . . . . 106
5.3.5 TheJavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
5.3.6 Theuserinterface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
5.4 ProceduretocreateaGUIscript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.4.1 Theuserinterface(*.ui) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.4.2 Runningascriptwithuserinterface . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
5.4.3 Catchingerrors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
6 JavaScriptlanguagereference 116
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.2 Keywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.2.1 Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
6.2.2 Declarations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.2.3 Controlstatements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.2.4 Errorhandling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.2.5 Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.3 Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6.3.1 Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
6.3.2 String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.3.3 Math . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
6.3.4 RegExp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.3.5 Dateandtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
6.4 Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
6.4.1 Creatingobjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
6.4.2 UsingQtObjects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
3
Chapter 1
Introduction
WelcometotheBrainVoyagerScriptingReferenceManual!1 Inadditiontothenewdatamanagement
tools,scriptingcanbeanoptiontoautomatedataanalysisprocesses.
ThisreferencemanualcanbeusedforscriptinginBrainVoyager20.x(BrainVoyagerQX3.0),butmost
commands can also be used in BrainVoyager QX 2.8, 2.6, 2.4 and 2.3, some even in BrainVoyager QX
2.2,andsomeinBrainVoyagerQX2.1. ThismanualcontainstheBrainVoyagerfunctions(Application
Programmer’s Interface (API), see Chapter 3), some introduction to the JavaScript language (Chapter
6)andashortsectiononwritingscriptsinBrainVoyagerwithauserinterface(seeChapter5).
Whenstartingwithscripting,inBrainVoyageroringeneral,pleasealsocheckoutourGettingStarted
withScripting inBrainVoyagerGuide. This canbefoundin the“GettingStartedGuides”folder ofthe
BrainVoyagerdirectoryoronlineattheBrainVoyagersupportsite.
Latestupdate: 09-05-2017
1.1 Location of script files
Scripts(*.js)forBrainVoyagercanbestoredinthefolder
(My) Documents/BVExtensions/Scripts/,sothattheywillbepresentintheBrainVoyager“Scripts”
menu. ScriptsforBrainVoyagerQXcanbestoredinthefolder
(My) Documents/BVQXExtensions/Scripts/. An option to specify a custom scripts folder has
beenaddedinv2.4.1. Userscanswitchbetweenstandardandcustomfolderin“Settings”dialog.
1Thisusedtobecalledthe‘ScriptingGuide’butthenewnames‘GettingStartedGuideforscripting’and‘ScriptingReference
Manual’arehopefullymoreclear.
4
1.2 History
1.2.1 ScriptinginBrainVoyager
BrainVoyager20.4/BrainVoyagerQX3.4
The BrainVoyagerQX object can now be replaced by BrainVoyager, but it will remain backwards
compatible (until version 21.0). A new function for obtaining an isovoxel anatomical image, Trans-
formToIsoVoxel(),hasbeenadded. Furthernewfunctionsare: CoregisterFMRToVMR(),CoregisterFM-
RToVMRUsingBBR(), NormalizeToMNISpace(), CreateVTCInMNISpace() and property Path. Note
also that the “CreateProjectFMR/DMR/VMR/AMR” commands have been renamed to “CreateDoc-
umentFMR/DMR/VMR/AMR”tobeconsistentwiththeterminologyusedinthedataanalysisman-
agerandnowgenerallyinBrainVoyager. Forthe20.xreleases,the“CreateProject...” namescanstillbe
used,buttheywillberemovedinversion21.
BrainVoyager20/BrainVoyagerQX3.0
Alargepartofthescriptingforanalysisinvolumespacecannowbeperformedviathenewdataman-
agement tools, which may replace scripting. There is one new scripting function GetMeshScene(),
whichreplacestheVMRpropertyCurrentMeshScene(seesection3.13). InadditiontoJavaScript,it
isnowpossibletousethePythonscriptinglanguage.
BrainVoyagerQX2.8
Therearealotofnewfunctionsforsurfaceprocessinginthisversion,forexampleforinhomogeneity
correction,transformationofanatomicaldatatoAC-PCandTalairachspace,morphingmeshes,running
single-studyGLMsandcortex-basedalignment. Seesections3.12(transformationsandnormalisation)
and3.13(surfacefunctions)oftheAPIformoreinformation. Also,therearenowmeshandmeshscene
objects,whichcanbeobtainedviatheanatomicalobject(seeexamplescripts).
v2.8.2 Two new functions and a property, concerning correction of slice timing and mean intensity
adjustment,havebeenintroduced.
v2.8.4 Added new script commands to handle VOIs, including loading .voi files, selecting and dis-
playing VOIs in VMR windows; furthermore, a single-study VOI-GLM command has been added
that is useful for batch analyzing VOI data from multiple subjects, e.g. in the context of analyz-
ing neurofeedback modulation results; new VOI-GLM contrast commands allow to specify contrasts
and to access resulting contrast statistics. For details, see section 3.11 including the example script
“NewCommands_v284.js”.
BrainVoyagerQX2.6
The property UseBoundingBoxForVTCCreation is now default set to false, so one only needs to
mention the property in a script (set to ‘true’) in case one wishes to use this numerical bounding box
creation.
BrainVoyagerQX2.4.1
It is now possible to perform temporal high-pass filtering (drift removal) using the GLM approach using
Fourier or discrete cosine transform (DCT) basis functions. In previous versions, only the FFT-based
high-passfilteringwasavailable.Thenewcommandsare“TemporalHighPassFilterGLMFourier()”and
“TemporalHighPassFilterGLMDCT()”withoneparameterthatspecifiesthenumberofcycles(pairsof
two basis functions) used to build an appropriate design matrix. The installed script “HighPassFil-
terUsingGLM.js”showshowtousethenewcommands.Othernewscriptingcommandsallowtointer-
rogateinformationabouttherunningBrainVoyagerversionincludingthebuildnumberandwhether
the program is running in 32 or 64 bit mode. The installed script “VersionScript.js” shows how these
commandscanbeused.
Scriptsareinstalledinastandardlocationwithintheuser’s”Documents”folder(”BVQXExtensions/Scripts”).
Forsomescenarios,itwouldbebeneficialifscriptscouldbeaccessedfromacustomfolderasdefault,
5
i.e. whenwrittenscriptsaremadeavailabletomembersofaresearchgroupinasharednetworkfolder.
For such scenarios it is now possible to change the default scripts folder in the ”Scripts” tab of the
”GlobalPreferences”dialog.
There are two new possibilities for manipulating VTCs. The first is that the manual specification
of bounding boxes is enabled. This works for any target reference space. Use the property ‘Use-
BoundingBoxForVTCCreation’incombinationwithTargetVTCBoundingBoxXStart(orY,orZ)andTar-
getVTCBoundingBoxXEnd(orY,orZ).
ItisnowpossibletosavetheVTCafteraprotocolhasbeenlinked,usingthecommandSaveVTC().
BrainVoyagerQX2.3
BrainVoyagerQXcannowbeusedincombinationwithAppleScriptonMacOSX.Formoreinforma-
tion,seethe‘BVQXAppleScripting.pdf’guide.
For Qt Script there are the following additions. When creating VMR projects, the internally created
V16datasetisnowstoredtodisk. WhensavingtheVMRdatawithanewname(“saveas”command
used usually after VMR creation), both files will be renamed as long as they have the default “unti-
tled.vmr/.v16”filename.
Thenewcommand“CorrectSliceTimingWithSliceOrder”allowstorunslicescancorrectionwithacus-
tomsliceorder(see“Preprocessing.js”script). The“getCurrentDirectory()”functionisnowaproperty,
i.e. youcanuse“BrainVoyagerQX.CurrentDirectory”toreadandsetitsvalue.
Therearealsonewpropertiespointingtocommonlocations:
The“PathToData”propertypointsasdefaulttothe“BVQXData”folderintheuser’s“(My)Documents”
folderandthe“PathToSampleData”pointsasdefaulttothe“BVQXSampleData”folder.
PleasenotethattheFileNameOfPreprocessedFMRnowprovidesthefilenameandthepath,notjust
thefilename.
BrainVoyagerQX2.2
There are now reading and writing (File I/O) possibilities. Also, the COM (component object model)
functionalityhasbeenimplemented, whichmeansthatcommunicationbetweenCOM-enabledappli-
cationsonWindowsispossible,forexamplescriptingBrainVoyagerfromMatlab.
New BrainVoyager script functions are available for preprocessing VTC files, creation of MTC from
VTCandcreatefunctionhandles.
BrainVoyagerQX2.1
ThelanguageisnowfullyECMA-scriptcompliant,whichmeansitisbasicallyJavaScript. Mostofthe
languagefeaturesarethesame;thegraphicaluserinterface(GUI)widgetscanbemadeusingexternal
userinterfacefiles(*.ui)(seesection5).
TheparameterdataTypehasbeenaddedforcreatingVTCandVDWfiles.Twopropertiesforchanging
theconfoundinSDMfileshavebeenadded.
BrainVoyagerQX2.0
Nochanges.
BrainVoyagerQX1.10
InBrainVoyagerQX1.10.4,itisalsopossibletocreateVDWfilesviascripting.
InBrainVoyagerQX1.10.3,thetypesofinterpolationthatcanbeselectedhavebeenextended.Formore
information,pleaseconsulttheInterpolationinmotioncorrectionpage.
BrainVoyagerQX1.9
ThisversionisupdatedforBrainVoyagerQX1.9. TwoimportantnewchangesinBrainVoyagerQX1.9
aretheDTIanalysisfunctionalityandscriptingviathecomponentobjectmodel(COM)(thisworkson
Windowsplatforms).ConcerningCOM,aseparateguideappearedcalledScriptingBrainVoyagerQXfrom-
Matlab.pdf. Forashortintroduction,pleaseseethetopicUsingBrainVoyagerviaCOM.
6
Also,thereare5newscriptingfunctions:
RenameDicomFilesInDirectory(),BrowseFile(),BrowseDirectory(),CreateProjectDMR()andCreatePro-
jectMosaicDMR().
Fordetailsoncreatingdiffusionweightedprojects(DMR),seethetopicCreatingDMRprojects.
ForthefunctiontorenameDICOMfilesandtheuseofBrowseDirectory(),pleaseseethenewrename
DICOMfilespage.
ThenewBrainVoyagerGettingScriptedGuidecanbeconsultedforastep-by-stepapproachintoscript-
ing.
In 1.9.10, the number of interpolation options has increased for slice scan time correction* and VTC
creation. Fordetails,seetheBrainVoyagerQX1.9.10ReleaseNotes.
Changesintheprogramminglanguageitselfconcern,forexample,theundefinedwhichisinBrain-
VoyagerQX1.9anobject(sonodoublequotesareneeded). Also, theargumentsforthegetOpenFile-
Name(s) functions have changed. The language specification for Qt Script 1.2.2 by Trolltech can be
foundalsointhisguide.
1.2.2 Documentationhistory
09-05-2017,11-04-17
ChangeddescriptionofstandardparametersforCorrectMotion()(interpolation). Addedremarkabout
resultingfilenamewith_SCCTBL_forCorrectSliceTimingUsingTimeTable().
27-02-2017
AddeddescriptionofRemove(),whichdeservedmoreattention.Added‘imageregistrationinBrainVoyager’-
diagram.
31-01-2017
Corrected CreateVTCInMNISpace() description. Added AddPredictor(), SaveAs(), which were some-
howomittedbefore.
24-01-2017
AddednewscriptingfunctionsforBrainVoyager20.4.
v2.1
AddedremarkaboutBrainVoyagerobject.
v2.0
AfixintheVOI-GLMscript(thankstoDavidMehler).FurtheraddedsomeVOIfunctionsthatwerenot
yet documented. Changed the naming in the text from ‘BrainVoyager QX’ to ‘BrainVoyager’. Added
diagram3.4forcontrasts. Finally,fixinglinksandomissionsinthetext.
v1.9
Addedadiagramandexamplestothedescriptionofregularexpressions(section6.3.4).Also,diagrams
forstatisticalprocedureswereadded(figures3.2,3.3).
v1.8
Removed the section ‘Switching from BrainVoyager QX 2.0 to 2.1’, because it is outdated. Elaborated
theFileI/OchapterandaddeddescriptionsperwidgetinthechapteraboutGUIscripts. Addedfilter
optionsforBrowseFile().
7
v1.7
AddedtheROI/VOIfunctionsandpropertiestolistoffunctionsandassection3.1124-11-14.
v1.6
Addedinformationaboutnewslicescantimecorrectionandmeanintensityadjustmentfunctionsand
paragraph 2.5.1 about setting breakpoints during debugging. Also, paid some more attention to the
BrainVoyagerQXobjectfunctionsBrowseFile()andBrowseDirectory().
v1.5
AddednewVMRfunctionsandmeshsceneobjectfunctionstodocumentation.
v1.4
Addedmeshobjectfunctions.
v1.3
AddeddescriptionsofStringfunctions(section6.3.2).
v1.2
CorrecteddescriptionofSliceScanTimeCorrection().
v1.1
03-04-2013CorrectedthepropertyCorrectForSerialCorrelations: valueisintegersothatboth
AR(1)andAR(2)canbeapplied.
v1.0
08-06-2012Addedasectionondesignmatrixproperties(inparticular,settingconfoundsandconstant
predictors)andbriefinformationaboutsettingboundingboxesforVTCsandsavingVTCs.
v0.9
08-03-2012Addedshortsectionaboutthescriptobject,addedthenewfunctionsfromBrainVoyagerQX
2.4.1totheAPIdocumentation.
v0.8
07-02-2012AddedasectionaboutusingQtObjectsinBrainVoyagerscripting(section6.4.2)andadded
someinformationtotheFileI/Ochapter(Chapter4). Improvedlayoutandmarkupofthedocument.
v0.7
21-11-2011 Added the GUI scripts example, moved the “Switching from BrainVoyager QX 2.0 to 2.1
scripting”totheAppendix.
1.3 Switching from scripting in BrainVoyager QX 2.0 to 2.1 or higher
HowtouseQtScriptandwhatarethedifferenceswithrespecttoQSA?
-Tostart,callthescriptingdialogclickingon“Scripts”→“Scripting...” menu.
-Filesarestoredas“.js”(JavaScript)textfilesallowingtousealsoexternaleditors(bysimpledouble-
clicking).
- Instead of “Application.BrainVoyagerQX”, you only need “BrainVoyagerQX” global symbol to get
accesstotheBVQXAPI,pleasehavealookattheexamplescripts.
8
-There(atpresent)nosupportfor“projects”,i.e. onlyonefileisevaluated(thismightchange).
- The script editor has syntax highlighting. Furthermore the QScript debugger is integrated, which
allowsforeasyhuntingofbugs.
-OnWindows,COMsupportisavailablefromversion2.2.
-QScriptismuchfasterthanQSA,sosome“plugin”processingwillbepossiblewithoutrequiringC++
code.
-Scriptswithagraphicaluserinterface(GUI)havetobestartedfromwithinthescripteditor.
-ScriptGUIsaresavedinuserinterface(*.ui)filesthatcanbecreatedwiththefreeQtDesignersoftware.
9
Description:umentFMR/DMR/VMR/AMR” to be consistent with the terminology used in the data analysis man- ager and now generally in BrainVoyager. For the