用什么语句和算法能实现图形的缩放?

来源:百度知道 编辑:UC知道 时间:2024/05/28 03:08:00
比如 一个图形 有圆和直线构成的,我想缩放它 怎么实现 用tc``

我给你个缩放函数,缩放一张图片2倍耗时 13ms,希望对你有帮助,我word编辑的,到baidu里排版有点乱了,不过程序正确,你要看不清,发消息给我你的email,我给你发个word版排好的源代码

const int __idecimal = 4096;inline int AverageResize32VergeLine(BYTE * p_out,BYTE * p_in1,BYTE * p_in2,int x_verge,int x_in2,int x_delta){ //ebx : x_in2 //ecx : x_out //edi : p_out //esi : p_in1 //edx : p_in2 __asm { xor ecx,ecx cmp ecx,x_verge ja __end mov edi,p_out mov esi,p_in1 mov edx,p_in2 mov ebx,x_in2__loop: mov eax,ebx shr eax,12 movd mm0,dword ptr [esi + eax * 4 + 0] movd mm3,dword ptr [edx + eax * 4 + 0] punpcklbw mm0,mm0 punpcklbw mm3,mm3 psrlw mm0,8 psrlw mm3,8 paddw mm0,mm3 psrlw mm0,1 packuswb mm0,mm0 movd dword ptr[edi + ecx * 4 + 0],mm0 add ebx,x_delta inc ecx cmp ecx,x_verge jbe __loop__end: mov x_in2,ebx } return x_in2;}void AverageResize32Line(BYTE * p_out,BYTE * p_in1,BYTE * p_in2,int x_verge,int out_width,int x_in2,int x_delta){ //ebx : x_in2 //ecx : x_out //edi : p_out //esi : p_in1 //edx : p_in2 __asm { mov ecx,x_verge cmp ecx