Target position and Visual Angle
Peter Quain
pquain at une.edu.au
Sat Aug 1 05:42:23 UTC 2009
Screen placement can be a pain.
Using the six stimuli- say font characters - in a
clockface paradigm as an example. In slide
objects it is probably trial and errror using
callipers, protractor etc that allows you to
place 6 elements- say text boxes - arranged
neatly around circumference of circle so that
(having decided on an appropriate viewing
distance) the entire display subtends x degrees
visual angle, and the individual stimuli drawn in
each text box subtend y*z degrees, and are
appropriately located. The text boxes on the
slide object are just rectangles (which can be
square) with ceratin fill properties. When the
slide object draws the stimuli to screen it will
draw the necessary pixels for the dimensions (x
y) of each text (or image object), which will
include values for the background colour and for
the stimulus colour(s), size, and location.
It makes sense to organise location of screen
elements in terms of rectangles, or arrays of
rectangles (a grid, or grids), which utilise
functions that draw collections of pixels within them.
The top bit of this page has 2 nice diagrams of
drawing to screen, a line, and a circle.
http://sol.gfxile.net/gp/ch06.html
With the line, 2 or 3 pixels are active at each
vertical coordinate. Which ones is centre?
Imagine enclosing the entire grid of pixels
around the line in a rectangle and using line
function to draw in the rectangle allows precise
placement of the rectangle, and stumulus within
it (centred, left etc.; size in %)), without any
pixel drawing computation which are all handled
underneath. Same with the circle.
The other interesting thing next on this page is
the function for circle. I don't understand C,
but ... something like this could be implemented
in VB to generate x y coordinates of points on a circle of r radius.
So, I think that one way to get precise placement
of the clock face elements in e-prime could be to
use the canvas object and, roughly:
- run a similar function, 'drawing' a circle
screen centred, and trap the x y values at 0, 60,
120, ... 300 degrees in an array
- populate another array with font character(s)
- feed the x y coordinate values into a loop creating rectangles
- populate the rectangle(s) with font characters
- draw to screen
To get the correct size of the whole stimulus
display you'd just need to adjust the radius
value in the circle function, and measure the
stimulus display with callipers until the correct
visual angle was subtended. If the font stimuli
are too small (or large) adjust size property a couple of times until OK.
At 09:05 PM 31/07/2009, you wrote:
>Hi Ashraf,
> Sorry for responding so late - the
> message below should be seen as answer here and
> off-list. The numbers are either centimetres
> (i.e. 1 inch is about 2.5 cm), or - more
> traditionally angles. The paper you seem to be
> reading will mention it, and if you just give a
> reference, or paste the relevant passage here,
> we would possibly be able to help you. At the
> moment, your English makes it very difficult to
> understand what you are saying. As a fellow
> non-natively English speaker, I can empathise
> with the difficulty you might be experiencing,
> but as you will most likely be wanting to
> publish in English, I believe you should try a little harder.
>
> Anyway, if the numbers are cm:
>1. Write down the size of your monitor,
>typically given in the diagonal size, in inches.
>Mine used to be 19 inch, for example, which is about 47.5 cm.
>2. Write down the resolution used in your
>experiment. This you can find under
>edit>experiment>properties>devices>display>properties
>(or something like that). It is 640x480 by
>default, which is X (number of pixels) by Y
>(number of pixels). I'll stick to this resolution for the current example.
>3. Calculate the diagonal number of pixels by
>using Pythagoras' wisdom: A^2 + B^2 = C^2 -->
>640^2 + 480^2 = C^2 --> 409600 + 230400 = 640000 --> SQRT(640000) = 800.
>4. Divide number of pixels (from 3) by number of
>centimetres (from 1) to get the number of pixels
>per centimetres: 800 / 47.5 = about 16.84
>pixel/cm (also useful is number of cm per pixel): about 0.05 cm/pixel.
>
>
>Okay, so now we can use the fact that 1 cm
>equals about 16.84 pixels on the monitor to
>calculate the number of pixels used to create a
>0.61 by 0.41 letter: about 10 by 7.
>
>It's a bit small, though, so I am actually
>thinking that the authors use visual angle
>rather than cm - 0.41 cm is pretty small for any
>stimulus. Still, to understand visual angles
>requires the information above. Also, you will
>need to make a good guess (er.. I mean measure)
>as to how far the monitor is placed from the
>participant - typically about 40 to 60 cm.
>Visual angle refers to the angle of the stimulus as relative to the eye, i.e:
>
> s
> /s
>Eye< s
> \s
> s
>
>..in which s is stimulus. Sorry if this becomes scrambled.
>
>Given that your screen is 40 cm away and 47.5 cm
>in diagonal width, you can calculate that the
>entire screen has a visual angle of the
>arctangent of Y / X, i.e. ATAN(47.5/40), which
>is about 38.66 degrees. As you may remember,
>43.53 degrees should be equal to both 47.5 cm
>(1) but also 800 pixels (3), you will realise 1
>degree should be about 800 / 38.66 = 20.69
>pixels. Therefore, if you want your stimulus to
>be 0.61 degrees, it should be about 13 pixels.
>
>Okay, I'm not the best at trigonometry, so maybe
>I made a few mistakes in the above simple
>calculus. There are, of course, age old tools
>which will give you the information without
>headache: just use your measuring tape and
>trigonometry triangle. Sit where you think a
>participant sits, put the triangle in your eye
>(note: I'm not liable for any damage) use a marker, note the angle, good.
>
>Best,
>Mich
>
>
>
>Michiel Spapé
>Research Fellow
>Perception & Action group
>University of Nottingham
>School of Psychology
>
>-----Original Message-----
>From: e-prime at googlegroups.com
>[mailto:e-prime at googlegroups.com] On Behalf Of ashraf
>Sent: 30 July 2009 22:14
>To: E-Prime
>Subject: Re: Target position
>
>
>Thank you very much , you said "do not forget to tell e-prime the
>dimensions of your screen first" . execuse me i do not understand ,...
>Tell me how could i make circle letters subtended, 0.61 by 0.41
>exactly
>and the Flanker letter out of the Circle subtended 0.81 by 0.51.
>
>Target position differs according to six possible position ,how
> Flanker letter position differs according to two possible position :
>right/Lift,how
>
>On Jul 30, 11:40 am, liwenna <liwe... at gmail.com> wrote:
> > Hello Ashraf,
> >
> > E-prime does not offer the possibility to control target positions
> > relative to each other not in terms of 'place one target a centimeter
> > left to the other, and not in terms of place 6 targets in a circle).
> > The only way to position targets is by positioning each target
> > separately. In the slide object you can place multiple targets and
> > give each target an x (horizontal) and an y (vertical) position, this
> > can be done in eather pixels from the top left corner or percentages
> > of the total screen size.
> >
> > For your setup you should make an slide object with 7 textboxes: 6 in
> > the circle and 1 to the left or right. For the circle letters figure
> > out the correct x and y positions either by simply trial and error and
> > controlling with a set triangle. Yet I also think it should be
> > possible to simply calculate the desired x and y positons if you know
> > what the dimensions of your screen are, how big your textboxes are and
> > how big the circle should be. (do not forget to tell e-prime the
> > dimensions of your screen first however... find display properties
> > under the square with the e-prime E at the top of your experiment
> > tree). For the target letter-textbox the x position (left or right)
> > should be drawn from a list that holds the value for x (in a variable
> > called targetposition for instance) and is set to the value for left
> > (ie 25%) or rigth (75%) both in half of the trials. In the properties
> > of the targettextbox set the y value to center (assuming that it
> > shoudl appear in the vertical middle of the screen) and set the x
> > value to [xtargetposition] to make it refer t1o the variable with 25%
> > or 75% in it. The content of the textboxes (i.e. the letters that
> > make up the target and distractors) should also be drawn from a list.
> > Make a list with 7 variables: distractor1 distractor2 etc and target:
> > and place your letters into this list. In the properties of the 7
> > textboxes do not fill in a text but fill in [distractor1],
> > [distractor2], etc. For each of the trials the textboxes will now take
> > their content from (the same level of ) the list.
> >
> > Alternatively, you could make the distractor circle arrays in a
> > separate program (perhaps paint, it is more easy I think with
> > photoshop, Gimp or another programs that offers working in multiple
> > layers). Then you can use an image like this
> one:http://www.mathsisfun.com/geometry/images/degrees-360.gif, and place
> > it in a layer. In a new layer you can then place your letters and
> > delete the circle layer and save the image to use in in e-prime. (as
> > an imageobject in your slide). You would need to make quite a bunch of
> > these images however in order to not have the same circle of
> > distractoritems repeat too often.
> >
> > I hope that this info will help you start your experiment.
> >
> > Good luck and best regards,
> >
> > liwenna
> >
> > On Jul 30, 12:45 am, ashraf ashraf <ash2003r... at yahoo.com> wrote:
> >
> >
> >
> > > . I want to make of six letters in E-prime
> , and I want to present target letter
> appears in one out of six possible positions
> in a circle and a distractor letter presented
> to the left or right of the circle,
> > > how can i maniplute Target position and distractor position .
> > >
> > > I read in some papers properties of stimuli
> as " The task display consisted of
> > > a circle (1.61 radius) of six letters
> centered at fixation, plus aperipheral
> distractor letter, presented to the left or
> right of the circle, 1.41 away from the nearest circle letter. Each of the
> > > circle letters subtended 0.61 by 0.41, and
> the distractor letter subtended 0.81 by 0.51. "
> > > what do these numbers mean and how could I control it with E-prime
> > > - Hide quoted text -
> >
> > - Show quoted text -
>
>
>This message has been checked for viruses but the contents of an attachment
>may still contain software viruses, which could damage your computer system:
>you are advised to perform your own checks. Email communications with the
>University of Nottingham may be monitored as permitted by UK legislation.
>
>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "E-Prime" group.
To post to this group, send email to e-prime at googlegroups.com
To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com
For more options, visit this group at http://groups.google.com/group/e-prime?hl=en
-~----------~----~----~----~------~----~------~--~---
More information about the Eprime
mailing list