zoukankan
html css js c++ java
用整数乘法实现快速颜色混和
一段颜色混和的代码,研究了一下别人的alpha混和的代码,
这里把自己的代码贴出来,主要利用了整数乘法的特点
BYTE byte1,byte2;
byte1*byte2必然是一个不超过16位的数:
DWORD ColorLerp(DWORD color1,DWORD color2,
float
fWeight)
{
if
(fWeight
<=
0.01f
)
return
color1;
else
if
(fWeight
>=
1
)
return
color2;
else
{
BYTE Weight
=
(BYTE)(fWeight
*
255
);
BYTE IWeight
=~
Weight;
DWORD dwTemp
=
0
;
dwTemp
=
(((
0xFF00FF00
&
color1)
>>
8
)
*
IWeight
+
((
0xFF00FF00
&
color2)
>>
8
)
*
Weight
)
&
0xFF00FF00
;
dwTemp
|=
(((
0x00FF00FF
&
color1)
*
IWeight
+
(
0x00FF00FF
&
color2)
*
Weight
)
&
0xFF00FF00
)
>>
8
;
return
dwTemp;
}
}
查看全文
相关阅读:
linq to sql 扩展方法
跨线程的安全更新控件
WinForm程序启动控制台窗口Console
Winfrom巧用Using设置鼠标为WaitCursor
在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。
基于Token的身份验证——JWT(转)
jwt算法
session问题总既然(深入理解)&Token问题理解&sso单点登陆理解实现
1.spring boot要求最低jdk1.8,平安默认1.6问题,-》安装JDK1.8 2.maven 3.3.3要求最低jdk1.7->安装jdk 1.8
批量插入删除
原文地址:https://www.cnblogs.com/Tue/p/236311.html
最新文章
PS仿制图章
PS字体工具字体显示不出来
Word文献类型标志
Word添加新编号
Word续上表
Word中表格内容被遮挡
Word删除空白页
Word两端对齐问题
Word里插入表格不带左右边框
图示指针传值操作
热门文章
O(1)时间内删除指定链表结点
进程通信
同步机制
进程调度
死锁
多进程与多线程的区别
硬链接与软链接
RAID
TabControl控件的美化
EF如何正确的进行实体中修改
Copyright © 2011-2022 走看看