词条 | D2TRANSLATE |
释义 | DOS SVGACC图形开发库函数 原型 extern void far d2translate (int points, int xtrans, int ytrans, D2Point far *inary, D2Point far *outary) 输入 numpoints - 被平移的点数 xtrans - 沿X轴平移的距离 ytrans - 沿Y轴平移的距离 inary - 指向包含待平移点数组的D2Point型指针 输出 无返回值 outary - 指向包含平移后点数组的D2Point型指针 用法 D2TRANSLATE提取inary中的二维点并且将它们沿每个轴平移指定的象素点。结果通过outary返回,outary可与inary共用一个空间。此函数假定outary已合适分配. 例子 /* * shows d2translate works */ #include <stdlib.h> #include <conio.h> #include "svgacc.h" D2Point tri[3]; D2Point trio[3]; D2Point tri2[3]; void drwtri(void); void ertri(void); void main(void) { int vmode,i; vmode = videomodeget(); if (!whichvga()) exit(1); if (whichmem()<512) exit(1); res640(); trio[0].x = 0; trio[0].y = 0; trio[1].x = -80; trio[1].y = 60; trio[2].x = 80; trio[2].y = 60; drwtri(); for(i=0;i<=100;i+=4) { d2translate(3,i,i,trio,tri); drwtri(); sdelay(2); ertri(); } for(i=100;i>=0;i-=4) { d2translate(3,i,i,trio,tri); drwtri(); sdelay(2); ertri(); } drwtri(); getch(); videomodeset(vmode); exit(0); } void drwtri(void) { d2translate(3,320,240,tri,tri2); drwline(1,10,tri2[0].x,tri2[0].y,tri2[1].x,tri2[1].y); drwline(1,10,tri2[1].x,tri2[1].y,tri2[2].x,tri2[2].y); drwline(1,10,tri2[2].x,tri2[2].y,tri2[0].x,tri2[0].y); return; } void ertri(void) { d2translate(3,320,240,tri,tri2); drwline(1,0,tri2[0].x,tri2[0].y,tri2[1].x,tri2[1].y); drwline(1,0,tri2[1].x,tri2[1].y,tri2[2].x,tri2[2].y); drwline(1,0,tri2[2].x,tri2[2].y,tri2[0].x,tri2[0].y); return; } |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。