Visual Basic数字映射

时间:2011-07-13 15:36:26

标签: math vb6

我正在编写一个将屏幕映射像素转换为实际分辨率的程序。作为屏幕上的示例,坐标是从(0,0)[左上]到(1,1)[右下]。我的电脑显示器的分辨率为1600x900。所以我需要一种方法来映射(0,0)到(0X0)和(1,1)到(1600x900)以及介于两者之间的所有东西,例如(0.56,0.7)到它在分辨率中转化的内容。有谁知道这样做的方法?

1 个答案:

答案 0 :(得分:2)

你只需要像这样缩放它们:

从实际到坐标:

  

x = x * actualmax / coordmax

所以在你的例子中,使用0.3坐标的y坐标

  

x = 0.333 * 900/1 = 300

从坐标到实际:

  

x = x * coordmax / actualmax

所以在你的例子中,使用300坐标

  

x = 300 * 1/900 = 0.333