TC官方合作论坛

标题: 颜色值=图像.坐标点取色(x1+(x2-x1)*血值百分比,y) [打印本页]

作者: 司马源    时间: 2014-3-30 10:13
标题: 颜色值=图像.坐标点取色(x1+(x2-x1)*血值百分比,y)
颜色值=图像.坐标点取色(x1+(x2-x1)*血值百分比,y)
如果X坐标算出来带小数点,那应该怎么弄?

作者: qjj754    时间: 2014-3-30 12:52
不会出现你说的情况吧.  
图像.坐标点取色(x1+(x2-x1)*血值百分比,y)
我们用实际坐标来对比,如下:
图像.坐标点取色(30+(150-30)*50/100,y)
除非你取的坐标有小数点的.(估计没哪个奇葩游戏能取到带有小数点的坐标值吧)
作者: icyleaves    时间: 2014-3-30 14:12
int a1,b1
a1 = x1+(x2-x1)*血值百分比
b1 = y
颜色值=图像.坐标点取色(a1,b1)
这样不就没小数点了
作者: 司马源    时间: 2014-3-30 16:31
颜色值=图像.坐标点取色(数学.浮点绝对值(199+48*血值百分比/100),47)
这样的话,咋办,会有小数点
作者: 司马源    时间: 2014-3-30 16:33
qjj754 发表于 2014-3-30 12:52
不会出现你说的情况吧.  
图像.坐标点取色(x1+(x2-x1)*血值百分比,y)
我们用实际坐标来对比,如下:

你取的这个坐标个位带0的不会出现小数点,个位不带0的就会出小数点
作者: 司马源    时间: 2014-3-30 16:34
icyleaves 发表于 2014-3-30 14:12
int a1,b1
a1 = x1+(x2-x1)*血值百分比
b1 = y

a1是否应该取整,不然的话结果是一样的
作者: icyleaves    时间: 2014-3-30 16:46
看了下TC函数 得这么来,直接定义整型不靠谱
int a1,b1
a1 = 类型.转整型(x1+(x2-x1)*血值百分比,0)
b1 = 类型.转整型(y,0)
颜色值=图像.坐标点取色(a1,b1)

作者: 司马源    时间: 2014-3-30 17:50
icyleaves 发表于 2014-3-30 16:46
看了下TC函数 得这么来,直接定义整型不靠谱
int a1,b1
a1 = 类型.转整型(x1+(x2-x1)*血值百分比,0)

类型.取整(var)

取整行不?
作者: icyleaves    时间: 2014-3-30 19:47
司马源 发表于 2014-3-30 17:50
类型.取整(var)

取整行不?

应该也是可以的
作者: 司马源    时间: 2014-3-31 10:57
icyleaves 发表于 2014-3-30 16:46
看了下TC函数 得这么来,直接定义整型不靠谱
int a1,b1
a1 = 类型.转整型(x1+(x2-x1)*血值百分比,0)

我试过了,转整型和取整出来的结果是一样的
作者: icyleaves    时间: 2014-3-31 17:04
可行还是不可行呢~
作者: 司马源    时间: 2014-3-31 18:30
icyleaves 发表于 2014-3-31 17:04
可行还是不可行呢~

可行的
作者: qjj754    时间: 2014-4-1 22:59
本帖最后由 qjj754 于 2014-4-1 23:01 编辑
司马源 发表于 2014-3-30 16:31
颜色值=图像.坐标点取色(数学.浮点绝对值(199+48*血值百分比/100),47)
这样的话,咋办,会有小数点 ...


你的写法错误.  少个值  当然会有小数点呢.
把意思理解下你就清楚呢. 百分比取坐标点色值是绝对不会有小数点的 往下看说明:
例子: 图像.坐标点取色(x1+(x2-x1)*血值百分比,y)
首先 X1指的是血条的最左边  X2是血条的最右边  那么看例子里的(X2-X1) 这里得到的是 血条的总长度数值
重点: (x2-x1)*血值百分比  这里是血条总长度的某个点 假设血条是100的长度 如果取百分比为50 那么 这里就是50    最后 x1+(x2-x1)*血值百分比 这个最终值 应该是 50  明白了么?

指出你的错误所在:  颜色值=图像.坐标点取色(数学.浮点绝对值(199+48*血值百分比/100),47)
               修改后:  颜色值=图像.坐标点取色(48+(199-48)*血值百分比/100,47)

好呢 请采纳我的答案吧

作者: 司马源    时间: 2014-4-2 08:48
谢谢您的帮助,写了这么多。不过您可以算算,修改后:  颜色值=图像.坐标点取色(48+(199-48)*血值百分比/100,47),把这个值换成90或80代进去,最后得出来一定是带小数点的。我后来是加了个取整或转整型就可以了。




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1