I am working on a retina screen macbook (1440 x 900). I wanted to draw a stimulus containing a luminance ramp that’s the same size as the window. Code snippet:

```
from __future__ import division
from psychopy import visual, core, event
import numpy as np
win_x = 800
win_y = 600
win = visual.Window([win_x, win_y], units='pix')
# create a floating point high precision numpy ramp:
xvals = np.linspace(-1, 1, win_x)
yvals = np.ones(win_y)
xv, yv = np.meshgrid(xvals, yvals)
im = visual.ImageStim(win=win,
name='ramp',
image=xv,
# size=(win_x, win_y),
size=(1600, 1200),
interpolate=False)
im.draw()
win.flip()
event.waitKeys()
win.close()
core.quit()
```

If `size=(win_x, win_y)`

then the stimulus appears at half the window size; if `size=(1600, 1200)`

then it appears the same size as the opened window.

I get that retina screens are doing a funny double-pixel scaling thing, but why should this have a different effect for the opened window object than for the presented stimulus?

I’m using the current development version of PsychoPy (forked from Github; `psychopy.__version__ Out[4]: '1.90.0'`

).