使用 PsychoPy 改变原点坐标

Posted

技术标签:

【中文标题】使用 PsychoPy 改变原点坐标【英文标题】:Using PsychoPy changing origin coordinate 【发布时间】:2016-01-13 18:35:56 【问题描述】:

我正在尝试制作一个从 wacom 平板电脑获取 Pen 坐标的程序,我设法用这个来计算:

data = display.Display().screen().root.query_pointer()._data
X = data["root_x"]-cfg['winpos'][0]-(cfg['width']/2)
Y = cfg['height']-(data["root_y"]-cfg['winpos'][1])-(cfg['height']/2)
print "Pen Position is: ", X, Y

但问题是 Psychopy 在中心有屏幕的原点坐标请参考图片:

我正在使用 wacom INTUOS PTZ1230 12" 12" 平板电脑,我希望 (0, 0) 从顶部的常规显示器原点开始,请参阅第二张图片。

阅读时间很长,但我只需要使用 Psychopy 在 python 中更改我的坐标系。感谢任何帮助

【问题讨论】:

有很多方便的单位转换功能。也许其中之一适用于您的用例。请参阅:[psychopy.org/api/misc.html]. 【参考方案1】:

实验者通常在屏幕中心对称地展示他们的刺激物,因此,尽管左上角和左下角(两者)都更传统地表示原点,但屏幕中心对科学家来说最有意义。

该窗口确实具有 viewScaleviewPos 属性。虽然它们不是为此目的而设计的,但我认为您可以使用 viewPos 来转移原点。

乔恩

【讨论】:

以上是关于使用 PsychoPy 改变原点坐标的主要内容,如果未能解决你的问题,请参考以下文章

Leaflet 改变坐标原点

Leaflet 改变坐标原点

windows的度量单位有哪几种?

MFC开发绘图程序时,工作窗口坐标系是怎么样的,坐标原点在哪里

在用Matlab画图时,能不能改变原点的位置

在CAD中,怎么建立坐标系?