single disc stimulus, inherits from baseStimulus DISCSTIMULUS single disc stimulus, inherits from baseStimulus
Copyright ©2014-2022 Ian Max Andolina — released: LGPL3, see LICENCE.md
|
function | discStimulus (in varargin) |
| Class constructor.
|
|
function | setup (in me, in sM) |
| Setup the stimulus object. The major purpose of this is to create a series of properties that are copies of the user controlled ones. The user specifies properties in degrees etc., but internally we must convert to pixels etc. So the setup function uses dynamic transient properties, for each property we create a temporary propertyOut which is used for the actual drawing/animation.
|
|
function | set_sizeOut (in me, in value) |
|
function | set_alphaOut (in me, in value) |
|
function | set_contrastOut (in me, in value) |
|
function | set_xPositionOut (in me, in value) |
|
function | set_yPositionOut (in me, in value) |
|
function | set_colourOut (in me, in value) |
|
function | set_flashColourOut (in me, in value) |
|
function | update (in me) |
| Update a structure for runExperiment.
|
|
function | draw (in me) |
| Draw an structure for runExperiment.
|
|
function | animate (in me) |
| Animate an structure for runExperiment.
|
|
function | reset (in me) |
| Reset an structure for runExperiment.
|
|
function get | flashSwitch (in me) |
| flashSwitch Get method
|
|
virtual | setup (in runObject) |
| ALL Children must implement these 5 methods!
|
|
function | baseStimulus (in varargin) |
| Class constructor.
|
|
function set | colour (in me, in value) |
| colour set method Allow 1 (R=G=B) 3 (RGB) or 4 (RGBA) value colour
|
|
function set | alpha (in me, in value) |
| alpha set method
|
|
function get | delta (in me) |
| delta Get method delta is the normalised number of pixels per frame to move a stimulus
|
|
function get | dX (in me) |
| dX Get method X position increment for a given delta and angle
|
|
function get | dY (in me) |
| dY Get method Y position increment for a given delta and angle
|
|
function | show (in me) |
| Method to set isVisible=true.
|
|
function | hide (in me) |
| Method to set isVisible=false.
|
|
function | setOffTime (in me, in time) |
| set offTime
|
|
function | setDelayTime (in me, in time) |
| set delayTime
|
|
function | resetTicks (in me) |
| reset the various tick counters for our stimulus
|
|
function | getMousePosition (in me) |
| get mouse position we make sure this is only called once per animation tick to improve performance and ensure all stimuli that are following mouse position have consistent X and Y per frame update This sets mouseX and mouseY and mouseValid if mouse is within PTB screen (useful for mouse override positioning for stimuli)
|
|
function | run (in me, in benchmark, in runtime, in s, in forceScreen, in showVBL) |
| Run stimulus in a window to preview it.
|
|
function | makePanel (in me, in parent) |
| make a GUI properties panel for this object
|
|
function | selectFilePanel (in me, in varargin) |
| read values from a GUI properties panel for this object
|
|
function | readPanel (in me, in varargin) |
| read values from a GUI properties panel for this object
|
|
function | showPanel (in me) |
| show GUI properties panel for this object
|
|
function | hidePanel (in me) |
| hide GUI properties panel for this object
|
|
function | closePanel (in me, in varargin) |
| close GUI panel for this object
|
|
function | cleanHandles (in me, in ignoredArg) |
| clean any handles
|
|
function | getP (in me, in name, in range) |
| gets a property copy or original property
|
|
function | setP (in me, in name, in value) |
| sets a property copy or original property
|
|
function | updateXY (in me, in x, in y, in useDegrees) |
| Update only position info, faster and doesn't reset image etc.
|
|
function | optickaCore (in varargin) |
| Class constructor.
|
|
function get | fullName (in me) |
|
function | getALF (in me, in subject, in sessionPrefix, in lab, in create) |
|
function | findAttributes (in me, in attrName, in attrValue) |
|
function | findAttributesandType (in me, in attrName, in attrValue, in type) |
| find properties of object with specific attributes, for example all properties whose GetAcccess attribute is public and type is logical.
|
|
function | findPropertyDefault (in me, in propName) |
|
function | clone (in me) |
| Use this syntax to make a deep copy of the object, i.e. OBJ_OUT has the same field values, but will not behave as a handle-copy of me anymore.
|
|
function | checkSuperclasses (in List) |
|
function | editProperties (in me, in properties) |
| method to modify a set of properties
|
|
function | setProp (in me, in property, in value) |
| method to fast change a particular value. This is useful for use in anonymous functions, like in the state machine.
|
|
function | initialiseGlobals (in me, in doReset, in doOpen) |
|
function | initialiseSaveFile (in me) |
| Initialise Save prefix.
|
|
function | checkPaths (in me) |
| checks the paths are valid
|
|
|
Property | type |
| type can be "simple" or "flash"
|
|
Property | flashColour |
| colour for flash, empty to inherit from screen background with 0 alpha
|
|
Property | flashTime |
| time to flash on and off in seconds
|
|
Property | flashOn |
| is the ON flash the first flash we see?
|
|
Property | contrast |
| contrast scales from foreground to screen background colour
|
|
Property | sigma |
| cosine smoothing sigma in pixels for mask
|
|
Property | useAlpha |
| use colour or alpha [default] channel for smoothing?
|
|
Property | smoothMethod |
| use cosine (0), hermite (1, default), or inverse hermite (2)
|
|
Property | family |
| stimulus family
|
|
Property | type |
| stimulus type
|
|
Property | xPosition |
|
Property | yPosition |
|
Property | size |
|
Property | colour |
|
Property | alpha |
| Alpha (opacity) [0-1], this gets combined with the RGB colour.
|
|
Property | startPosition |
|
Property | speed |
|
Property | angle |
| angle in degrees (0 - 360)
|
|
Property | delayTime |
|
Property | offTime |
| time to turn stimulus off, relative to stimulus onset
|
|
Property | isVisible |
| true or false, whether to draw() this object
|
|
Property | mouseOverride |
| override X and Y position with mouse input? Useful for RF mapping
|
|
Property | showOnTracker |
| show the position on the Eyetracker display?
|
|
Property | verbose |
| Do we log extra details to the command-line?
|
|
Property | xFinal |
|
Property | yFinal |
|
Property | mvRect |
|
Property | szIsPx |
|
Property | szPx |
| computed size in pixels
|
|
Property | szD |
| computed size in °
|
|
Property | xFinalD |
| X and Y position in °
|
|
Property | yFinalD |
|
Property | isRect |
|
Property | tick |
| tick updates +1 on each call of draw (even if delay or off is true and no stimulus is drawn, resets on each update
|
|
Property | drawTick |
| draw tick only updates when a draw is actually performed, resets on each update
|
|
Property | ppd |
| pixels per degree (normally inhereted from screenManager)
|
|
Property | delta |
| What our per-frame motion delta is.
|
|
Property | dX |
| X update which is computed from our speed and angle.
|
|
Property | dY |
| X update which is computed from our speed and angle.
|
|
Property | name |
| object name
|
|
Property | comment |
| comment
|
|
Property | verbose |
| verbose logging, subclasses must assign this. This is normally logical true/false
|
|
Property | dateStamp |
| clock() dateStamp set on construction
|
|
Property | uuid |
| universal ID
|
|
Property | paths |
| storage of various paths
|
|
Property | fullName |
| The fullName is the object name combined with its uuid and class name.
|
|
|
function | setRect (in me) |
| setRect setRect makes the PsychRect based on the texture and screen values this is modified over parent method as textures have slightly different requirements.
|
|
function | computeColour (in me, in ignoredArg, in ignoredArg) |
| computeColour triggered event Use an event to recalculate as get method is slower (called many more times), than an event which is only called on update
|
|
function | setupFlash (in me) |
| setupFlash
|
|
function | mix (in me, in c) |
| linear interpolation between two arrays
|
|
function | addRuntimeProperties (in me) |
| These are transient properties that specify actions during runtime.
|
|
function | updateRuntimeProperties (in me) |
| Update transient properties that specify actions during runtime.
|
|
function | computePosition (in me) |
| compute xFinal and yFinal (in pixels) taking startPosition, xPosition, yPosition and direction/angle into account
|
|
function | setAnimationDelta (in me) |
|
function | setRect (in me) |
|
function | toStructure (in me, in tmp) |
| Converts properties to a structure.
|
|
function | removeTmpProperties (in me) |
| Finds and removes dynamic properties.
|
|
function | delete (in me) |
|
function | parseArgs (in me, in args, in allowedProperties) |
| Sets properties from a structure or normal arguments pairs, ignores invalid or non-allowed properties.
|
|
function | addArgs (in me, in args) |
|
function | setPaths (in me) |
| Sets properties from a structure or normal arguments pairs, ignores invalid or non-allowed properties.
|
|
function | getFonts (in me) |
| set paths for object
|
|
function | toStructure (in me) |
| Converts properties to a structure.
|
|
function | getType (in me, in in) |
|
function | logOutput (in me, in in, in message, in override) |
| Give a metaproperty return the likely property class.
|
|
function | salutation (in me, in varargin) |
| Prints messages dependent on verbosity.
|
|
|
enum | Events { readPanelUpdate
} |
|
static function | d2r (in degrees) |
| degrees2radians
|
|
static function | r2d (in r) |
| radians2degrees
|
|
static function | findDistance (in x1, in y1, in x2, in y2) |
| findDistance in X and Y coordinates
|
|
static function | updatePosition (in delta, in angle) |
| updatePosition returns dX and dY given an angle and delta
|
|
static function | makeArgs (in args) |
| Converts cell args to structure array.
|
|
static function | addDefaults (in args, in defs) |
| add default options to arg input
|
|
static function | hasKey (in in, in key) |
| check if a struct / object has a propery / field
|
|
static function | getKeys (in device) |
| PTB Get key presses, stops key bouncing.
|
|
Property | family |
| the stimulus family (grating, dots etc.)
|
|
Property | texture |
| Our texture pointer for texture-based stimuli.
|
|
Property | handles |
| handles for the GUI
|
|
Property | sM |
| our screen manager
|
|
Property | animator |
| animation manager
|
|
Property | screenVals |
| screen settings generated by sM on setup
|
|
Property | isSetup |
|
Property | isGUI |
| is panel constructed?
|
|
Property | dstRect |
| initial screen rectangle position [LEFT TOP RIGHT BOTTOM]
|
|
Property | mouseValid |
| is mouse position within screen co-ordinates?
|
|
Property | mouseX |
| mouse X position
|
|
Property | mouseY |
| mouse Y position
|
|
Property | delayTicks |
| delay ticks to wait until display
|
|
Property | offTicks |
| ticks before stimulus turns off
|
|
Property | inSetup |
| are we setting up?
|
|
Property | delta_ |
| delta cache
|
|
Property | dX_ |
| dX cache
|
|
Property | dY_ |
| dY cache
|
|
Property | isInSetColour |
| deal with interaction of colour and alpha
|
|
Property | setLoop |
|
Property | ignorePropertiesBase |
| Which properties to ignore cloning when making transient copies in setup.
|
|
Property | ignorePropertiesUIBase |
| Which properties to not draw in the UI panel.
|
|
Property | cloning |
| are we cloning this from another object
|
|
Property | mversion |
| Matlab version number, this is transient so it is not saved.
|
|
Property | sansFont |
| sans font
|
|
Property | monoFont |
| monoFont
|
|
Property | className |
| class name
|
|
Property | savePrefix |
| save prefix generated from clock time
|
|
Property | fullName_ |
| cached full name
|
|