EXPORT BBMP={32,32,"ӇҲϲұҰ϶үүϲƽƻҬҭĘĘЬҭƸćҬńƟҳƉćLJńҸÉćLJńҷÉDŽćƧҷÉƸƗƿҷÉƈƗƿҸÍĸƻƧҹÉÈƻħŇҬDžƋÉÈƻçåŅĥƍϯƻçŅƋҬDŽϮƻħćÔƸƻËÈƛŇƗҭƈËϭċҭDŽүϱËDžćҲϰËƼćұϱËĘǁøҭϱËϬDžãҬϱ×ϬDžþLJƈϭË×ϭŅüÔÔϬËćϮÑƼÌϮ×LJϯÉŅϭË×LJϴÝÈËćҬϴÉøƸ×ҭϲÙÔƸćүϰËËҮҰϰËƸҭҲϲұ"}; PMode,Mw:=64,Mh:=64,X1,Y1,X2,Y2; Ml0:={" P0"," P3"," P1"," P2"," Tool."," File."}; Ml1:={" Line"," Rect"," Arc",""," Tool.",""}; Ml2:={" Load"," Save","","",""," File "}; DrawMenu(Ml) BEGIN LOCAL N; FOR N FROM 1 TO 6 DO RECT_P(43*N-43,112,43*N-2,126,0,0); TEXTOUT_P(Ml(N),43*N-40,114,1,3); END; END; Menu(X,Y) BEGIN LOCAL K,N; GETKEY►K; IF PMode==0 THEN IF K==4 THEN //Tool PMode:=1;DrawMenu(Ml1);END; IF K==5 THEN //File PMode:=2;DrawMenu(Ml2);END; ELSE IF PMode==1 THEN IF K==0 THEN IF X1==.1 OR Y1==.1 THEN X1:=X;Y1:=Y; ELSE LINE_P(X1,Y1,X,Y,0);.1►X1;.1►Y1; END;END; IF K==2 THEN IF X1==.1 OR Y1==.1 THEN X1:=X;Y1:=Y; ELSE ARC_P(X1,Y1,√((X-X1)²+(Y-Y1)²)); .1►X1;.1►Y1;END;END; IF K==4 THEN PMode:=0;DrawMenu(Ml0); END; ELSE IF PMode==2 THEN IF K==0 THEN BLOAD(G0,0,0,BBMP); PMode:=0;END; IF K==1 THEN BSAVE(G0,0,0,Mw,Mh)►BBMP; PMode:=0;END; IF K≠−1 THEN PMode:=0; DrawMenu(Ml0); END; END; END; END; END; EXPORT PointPad() BEGIN LOCAL X,Y,I,N,K,on,Ch; 0►PMode;.1►X1;.1►Y1; CHOOSE(Ch,"模板","8*8","16*16", "32*32","64*64","128*128","自定义"); IF Ch≠0 THEN Mw:=2^(Ch+2);Mh:=2^(Ch+2);END; IF Ch==6 THEN INPUT(Mw,"自定义","Mw:="); INPUT(Mh,"自定义","Mh:="); END; RECT(); RECT_P(−1,−1,Mw,Mh,1,3); DrawMenu(Ml0); WHILE 1 DO I:=I+1; IF ISKEYDOWN(14) OR ISKEYDOWN(10) OR ISKEYDOWN(9) OR ISKEYDOWN(15) THEN on:=on+1; IF on≥18 OR on=1THEN IF N MOD 2 == 1 THEN INVERT_P(X,Y,X,Y);N:=0;END; X:=X-ISKEYDOWN(14)+ISKEYDOWN(10); Y:=Y-ISKEYDOWN(9)+ISKEYDOWN(15); I:=18; END; ELSE on:=0;END; IF PMode==0 THEN IF ISKEYDOWN(0)THEN N:=0;PIXON_P(X,Y,0)END; IF ISKEYDOWN(1)THEN N:=0;PIXON_P(X,Y,3)END; IF ISKEYDOWN(2)THEN N:=0;PIXON_P(X,Y,1)END; IF ISKEYDOWN(3)THEN N:=0;PIXON_P(X,Y,2)END; END; Menu(X,Y); IF I MOD 18==0 THEN N:=N+1;INVERT_P(X,Y,X,Y); TEXTOUT_P(X+" ",237,0,1,0,20,3); TEXTOUT_P(Y+" ",237,11,1,0,20,3); TEXTOUT_P(PMode+" ",237,22,1,0,20,3); END; WAIT(0.025); END; END;