非常简单的数学问题

时间:2010-12-24 21:59:22

标签: math

非常简单的数学问题。

假设我有一个图像,其中有一个点被跟踪。以下是我的变量:

图像高度
图像宽度
点(左边的像素)坐标X
点(顶部的像素)坐标Y

例如宽度,我希望它返回-0.5的值,它表示距中心的距离,这样1将是总权利,-1将是总数左边。

那么,我将如何计算

该点是(宽度)整个画面的四分之一,或横跨画面左侧的一半。变量等于:

图像宽度:40
第X点:10

我知道这是基本的,但我现在非常认真地有一个心灵抽筋O_o。

谢谢,
基督徒

2 个答案:

答案 0 :(得分:3)

Xnew = 2*X/Width - 1
Ynew = 2*Y/Height - 1

说明:

X/Width为您提供从0(左起)到1(右起)的值。 2*X/Width然后给出一个从0(总左)到2(右总)的值。减1以得到-1(左总)到1(右总)的值。

对于Y来说同样如此。

答案 1 :(得分:1)

如果图像宽度为40,并且点x为10,则在“您的”坐标中,PointX将为0.5(假设坐标为-20到20)。所以:

PointX = 1 - 2 * (X / ImageWidth)
PointY = 1 - 2 * (Y / ImageHeight)

结帐:

PointX = 1 - 2 * (10 / 40) = 0.5(或右侧10个像素)