📄 hwhw.zip.txt
字号:
在液晶上画斜线的程序
/*///////////////////////////////////////////////
任意角度画线,只用到加减法,速度较快
适用于256*256以下液晶
CALL MOVETO(X,Y); 当前坐标移到X,Y
CALL LINETO(X2,Y2); 画线到X2,Y2点
CALL LINETO(X3,Y3); 画线到X3,Y3点
DRAW_PIXEL(CURX,CURY) 画点程序根据不同液晶自编
*////////////////////////////////////////////////
DECLARE CURX,CURY BYTE;
MOVETO: PROCEDURE(X,Y) PUBLIC;
DECLARE (X,Y) BYTE;
CURX=X;
CURY=Y;
END MOVETO;
LINETO: PROCEDURE(X,Y) PUBLIC;
DECLARE (X,Y) BYTE;
DECLARE (XERR,YERR) WORD;
DECLARE (I,DISTANCE) BYTE;
DECLARE (DTAX,DTAY) BYTE;
DECLARE (INCX,INCY) BYTE;
INCX,INCY,DTAX,DTAY=0;
XERR,YERR=0;
IF X>CURX THEN DO;
INCX=1;
DTAX=X-CURX;
END;
ELSE
IF X<CURX THEN DO;
INCX=-1;
DTAX=CURX-X;
END;
IF Y>CURY THEN DO;
INCY=1;
DTAY=Y-CURY;
END;
ELSE
IF Y<CURY THEN DO;
INCY=-1;
DTAY=CURY-Y;
END;
IF DTAX>DTAY THEN DISTANCE=DTAX;
ELSE DISTANCE=DTAY;
DO I=0 TO DISTANCE;
CALL DRAW_PIXEL(CURX,CURY); /* 画点 */
XERR=XERR+DTAX;
YERR=YERR+DTAY;
IF XERR>DISTANCE THEN DO;
XERR=XERR-DISTANCE;
CURX=CURX+INCX;
END;
IF YERR>DISTANCE THEN DO;
YERR=YERR-DISTANCE;
CURY=CURY+INCY;
END;
END;
END LINETO;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -