A circular checkerboard (dartboard) pattern. Properties set options for size, pattern, scaling of radial check sizes (e.g. for cortical scaling), amplitude/contrast, and color. This element type includes three animation options commonly used in retinotopy tasks:

(1) flicker: switch dark and light checks at a specified frequency.
(2) wedges: show a repeating sequence of isolated wedges, moving angularly around the checkerboard in steps.
(3) rings: show a repeating sequence of isolated rings, moving radially through the checkerboard in steps.

You can also show solid concentric rings if you set number of angular checks = 1.

For just a static dartboard or with flicker only, see also element type dartboard. For fixation see element types dots, cross, fixationGrid, etc.

▸ Object ends on its own?

"Ends on its own" means ends automatically at that point. If an element can end on its own, you don't need to set end conditions for it in property end (unless you want it to maybe end earlier).

No—runs until any condition you set in property end.

Input properties

Adjustable properties

You can vary or allow the subject to adjust the following properties of an object of this type when it's running. If you need to make other properties adjustable, you can edit the element type code—see Element Type Programming Manual.

Adjustable properties

Adjustable properties





Default: diameter = 10 deg
Default: centerDiameter = 0.2 deg

diameter is diameter of the checkerboard (deg).

centerDiameter is diameter of the center area, which is transparent (deg).


Default: numAngularChecks = 20
Default: numRadialChecks = 8

numAngularChecks is integer number of segments (light or dark) around the dartboard at any radius.

numRadialChecks is integer number of segments in any radial line, from edge of the transparent center area to outer edge of the dartboard.

e.g. numAngularChecks = 4, numRadialChecks = 1 → a dartboard consisting of four segments in quadrants.


Default: equal radial check sizes

You can use this property to apply cortical (or other) scaling factors to check sizes in the radial direction. A row vector of numbers > 0 that are scale factors for radial sizes, from innermost to outermost. Number of factors must = numRadialChecks above. The absolute magnitudes of the factors don't matter, only relative magnitudes. Final radial sizes are automatically scaled to fit numRadialChecks into the radius from edge of the transparent center area to outer edge of the dartboard.


<cd>[]<cd> = equal radial check sizes.


Default: immediate check in quadrant 1 = light

0/1 setting the initial pattern: 0 = check innermost, right, and below display center = dark, 1 = light. Note currently the dartboard is always centered at element position, with a boundary between checks along the right horizontal bisector. Element position can be set in property position.


Defaults: mean intensity = 0.5, amplitude = 0.5 → black & maximum intensity

These properties work together to set the two intensities in the checkerboard.

meanIntensity is a number between 0–1 (black-maximum) setting the mean intensity of light and dark areas.

Also set one of:

amplitude is max intensity − mean intensity.


contrast is Michelson contrast, amplitude / mean intensity. If you set contrast, meanIntensity must be > 0.

It's possible to set a combination of these properties that causes the grating to clip at intensity 0 or 1. See record properties maxAmplitude and maxContrast below.


Default: white

A 1×3 RGB vector with numbers between 0–1. This defines color at intensity = 1. Color at intensity = 0 is <cd>[0 0 0]<cd> (black).


Default: no flicker

Frequency of switching between dark–light (cycles/sec). 0 = no flicker.


Default: show whole checkerboard

You can set one of these properties:

wedgeVelocity lets you show a repeating sequence of isolated wedges, moving angularly around the checkerboard in steps. Each wedge is an integer number of angular checks wide (apertureSize below). Velocity is rate and direction (angular checks/sec, + = clockwise, − = counterclockwise). 0 = don't do wedges.

ringVelocity is similar but for isolated rings moving radially through the checkerboard in steps. Each ring is an integer number of radial checks wide. Velocity is rate and direction (radial checks/sec, + = outward, − = inward). 0 = don't do rings.

If you leave both = 0 (default), it just shows the whole checkerboard.


Default: apertureSize = 2 checks
Default: apertureStepSize = 1 check
Default: aperturePhase = 0 → see below

If you set wedgeVelocity or ringVelocity:

apertureSize is integer wedge or ring width as number of checks.

apertureStepSize is integer number of checks the wedge or ring moves by each time. Rate is set by the respective velocity above.

aperturePhase is for wedges only. It sets the initial wedge shown. It is an integer number of angular checks clockwise. The zero point depends on wedgeVelocity: 0 = first wedge below the right horizontal bisector if wedgeVelocity > 0, or first wedge above if wedgeVelocity < 0.

For rings, initial ring is always the ring starting with the innermost radial checks if ringVelocity > 0, or the outermost checks if ringVelocity < 0.

Input properties all visual elements have


Input properties all adjuster elements have


Input properties all objects have


Record properties

PsychBench uses record properties to record information during experiments. You can't set record properties but you can see them in experiment results using input property report.


Values for input properties amplitude and contrast that would cause intensity to clip at 0 or 1 given the current value of meanIntensity.