⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fmath2.h

📁 一个定点数运算的模板类
💻 H
字号:
#pragma once

#include "resource.h"

#define ARGBTOARGB8888(a,r,g,b) ((a<<24)&0xff000000|(r<<16)&0x00ff0000|(g<<8)&0x0000ff00|b&0x000000ff)
#define ARGBTOARGB4444(a,r,g,b) ((a<<8)&0xf000|(r<<4)&0x0f00|(g)&0x00f0|(b>>4)&0x000f)
#define ARGBTOARGB0565(a,r,g,b) ((r<<8)&0xf800|(g<<3)&0x07e0|(b>>3)&0x001f)
#define ARGBTOARGB1555(a,r,g,b) ((a<<8)&0x8000|(r<<7)&0xec00|(g<<2)&0x03e0|(b>>3)&0x001f)

#define ARGB8888TOARGB(c,a,r,g,b) (a=(c>>24)&0xff,r=(c>>16)&0xff,g=(c>>8)&0xff,b=c&0xff)
//#define ARGB4444TOARGB(c,a,r,g,b) (a=(c>>12)&0xf0,r=(c>>4)&0xf0,g=(c)&0xf0,b=(c<<4)&0xf0)
//#define ARGB1555TOARGB(c,a,r,g,b) (a=(c>>12)&0x80,r=(c>>7)&0xf8,g=(c>>2)&0xf8,b=(c<<3)&0xf8)
//#define ARGB0565TOARGB(c,a,r,g,b) (a=0xff,r=(c>>))


#define ARGB8888TOARGB4444(c) ((c>>16)&0xf000|(c>>12)&0x0f00|(c>>8)&0x00f0|(c>>4)&0x000f)
#define ARGB8888TOARGB0565(c) ((c>>16)&0xf800|(c>>5)&0x07e0|(c>>3)&0x001f)
#define ARGB8888TOARGB1555(c) ((c>>16)&0x8000|(c>9)&0x7c00|(c>>6)&0x03e0|(c>>3)&0x001f)

#define ARGB4444TOARGB8888(c) ((c<<16)&0xf0000000|(c<<12)&0x00f00000|(c<<8)&0x0000f000|(c<<4)&0x000000f0)
#define ARGB4444TOARGB1555(c) ((c)&0x8000|(c<<3)&0x7800|(c<<2)&0x03c0|(c<<1)&0x001e)
#define ARGB4444TOARGB0565(c) ((c<<4)&0xf000|(c<<3)&0xe800|(c<<1)&0x001e)

#define ARGB1555TOARGB8888(c) ((c<<16)&0x80000000|(c<<9)&0x00f80000|(c<<6)&0x0000fc00|(c<<3)&0x000000f8)
#define ARGB1555TOARGB4444(c) ((c)&0x8000|(c>>3)&0x0f00|(c>>2)&0x00f0|(c>>1)&0x000f)
#define ARGB1555TOARGB0565(c) ((c<<1)&0xf800|(c<<1)&0x07c0|c&0x001f)

#define ARGB0565TOARGB8888(c) (0xff000000|(c<<8)&0x00f80000|(c<<5)&0x0000fc00|(c<<3)&0x000000f8)
#define ARGB0565TOARGB4444(c) (0xf000|(c>>4)&0x0f00|(c>>3)&0x00f0|(c>>1)&0x000f)
#define ARGB0565TOARGB1555(c) (0x8000|(c>>1)&0x7c00|(c>>1)&0x03e0|(c)&0x001f)



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -