表一:图形处理相关函数函数形式参数类型参数含义函数作用Setviewport(x1,y1,x2,y2)Call均为integer(2)(x1,y1):左上角坐标(x2,y2):右下角坐标物理坐标系下视口区域设置Setvieworg(x,y,t)Callt:xycoord派生类型结构体变量(type1)(x,y):新视口原点T:返回原视口原点物理坐标系下设置新的视口原点Setwindow(f,wx1,wy1,wx2,wy2)Result=f:逻辑型其余:双精度实型f:真,视窗y轴与视口y轴相反。(wx1,wy1):左下坐标(wx2,wy2):右上坐标视窗设置,将物理坐标映射到视窗中。Setcolorrgb(color)Setbkcolorrgb(color)Settextcolorrgb(color)Result=Result:integer(4)Color:integer(4)十六进制表示Result:储存先前的颜色值Color:当前色(表2)设置前景色设置背景色设置字体色Clearscreen(area)CallArea:integer(4)值:$gclearscreen$gviewport$gwindow清空:整子窗口视图区当前文本窗口Getcolorrgb()Getbkcolorrgb()Gettextcolorrgb()Result=Result:integer(4)Result:存储返回值获取颜色Setlinestyle(mask)CallMask:integer(2)Mask:十六进制(表3)设置线型Getlinestyle()Result=Result:integer(2)Result:存储返回值获取线型Setfillmask(mask)CallMask:integer(1)型数组,8个元Mask:每位二进制代表填充元中的像素设置填充样式Getfillmask(mask)CallMask同上存储返回样式(表4)获取填充样式Getwindowconfig(wc)Setwindowconfig(wc)Result=wc:windowconfig结构体类型变量Result:logicalwc:窗口属性(type2)Result:调用成功true否则为false获取窗口图形属性设置Open(unit=n,file='user',title=name,IOFOCUS=status)IOFOCUS:是否为焦点。默认status:true创建子窗口Inqfocusqq(unit)Result=Result:integer(4)Result:执行成功为0否则非0;unit存储返回具有焦点的窗口号获取当前具有焦点的窗口号Focusqq(unit)Result=Result:integer(4)Result:执行成功为0否则非0;使unit号窗口获得焦点SetActiveqq(unit)Result=Result:integer(4)Result:执行成功为0否则非0;设置活动窗口GetActiveqq()Result=Result:integer(4)Result:返回当前活动状态子窗口号;无返:$win$noactivewindow获取活动窗口号函数形式参数类型参数含义函数作用Setwsizeqq(unit,winfo)Result=Result:integer(4)Unit:integer(4)Winfo:qwinfo派生类型type(3)执行成功返0,否非0指定窗口号,0,5,6默认启动窗口号;调整窗口的大小和位置Getwsizeqq(unit,ireq,winfo)Result=Ireq:integer(4)其他同上Qwin$sizemax:获取指定窗口最大尺寸信息Qwin$sizecurr:获取指定窗口当前尺寸信息获取窗口的大小和位置信息Setpixelrgb(x,y,color)_w(wx,wy,color)Result=Result:同上x,y:integer(2)wx,wy:real(8)color:integer(8)存储该点先前颜色视口坐标值视窗坐标值绘制点颜色绘制像素点Moveto(x,y,xy)_w(wx,wy,wxy)Callx,y:integer(2)wx,wy:real(8)xy:xycoord派生wxy:wxycoord新点视口坐标新点视窗坐标存储先前视口坐标存储先前视窗坐标设置当前绘图点Lineto(x,y)_w(wx,wy)Result=Result:integer(2)x,y:integer(2)wx,wy:real(8)返回非0,划线成功终点视口坐标终点视窗坐标绘制直线Rectangle(control,x1,y1,x2,y2)_w(control,wx1,wy1,wx2,wy2)Result=Control:integer(2)x,y:integer(2)wx,wy:real(8)填充方式:1,$gfilllietrior用当前图形颜色和填充样式2,$gborder用当前图形颜色和线型(x1,y1)(x2,y2)左上右下坐标值绘制矩形Polygon(contral,p,c)_w(contral,wp,wc)Result=Result同上Control同上P:xycoordC:p数组个数同上同上多边形顶点坐标参数多边形顶点数绘制多边形Arc(x1,y1,…x4,y4)_w(……)Result=Result同上x,y:integer(2)wx,wy:real(8)返非0,成功;截断或部分出界,返回1;全部出界,返0;(x1,y1)(x2,y2)左上右下矩形坐标;(x3,y3)(x4,y4)圆弧从前者与中心连线开始;后者为结束。绘制弧线Pie(control,同上)_W(control,同上)Result=同上同上绘制扇形Ellipse(control,x1,y1,x2,y2)_w(……)Result=x,y:integer(2)wx,wy:real(8)(x1,y1)(x2,y2)外接矩形左上右下坐标绘制椭圆Floodfillrgb(x,y,color)_wResult=x,y:integer(2)填充区域起点坐标Color区域边框颜色封闭区域填充函数形式参数类型参数含义函数作用Initializefonts()Result=Result:integer(2)成功,则返回初始化字体信息数量初始化字体对outgtext有效Setfont(options)Result=Result:integer(2)Options:字符型(表5)设置成功,返回字型索引号,否则-1描述字体属性设置字体属性Setgtextrotation(d)Calld:integer(4)单位:0.1度;水平向右为0度;逆时针增设置文本显示角度Outgtext(text)CallText:字符型要被显示的字体输出字符表2常见标准颜色的RGB(red,green,bule)值颜色红色值绿色值蓝色值RGB值红色25500#0000FF绿色0255255#00FF00蓝色00255#FF0000黄色2552550#00FFFF紫色2550255#FF00FF白色255255255#FFFFFF黑色000#000000灰色192192192#C0C0C0表3线型图元表示位Mask1514131211109876543210#FFFF1111111111111111#FF001111111100000000#F0F01111000011110000对lineto、polygon、rectangle有效,其余无效。#FFFF为实线;#F0F0为长虚线表4虚线填充图元位元素76543210值(十六进制)mask(1)00011000#18mask(2)00000000#00mask(3)00000000#00mask(4)00011000#18mask(5)00011000#18mask(6)00000000#00mask(7)00000000#00mask(8)00011000#18对polygon,rectangle,pie,ellipsehe,floodfillrgb有效表5options数值说明Options值含义't''FontName'指定字体名hy字符高度,其中y为像素值Wx字符宽度,其中x为像素值f选择一种固定间距的字型p选择一种比例间距的字型v选择矢量字型r选择位图字型e粗体u下划线i斜体b选择最合适其他参数的字体nx选择字型数x,其中x是=initializefonts函数的返回值Eg:result=setfont('t''Arial''h18w10i')Type1:xycoordorwxycoordTYPExycoordInteger(2)xcoordInteger(2)ycoordENDTYPExycoordTYPEwxycoordInteger(2)wxcoordInteger(2)wycoordENDTYPEwxycoordType2:windowconfig结构体定义含义TYPEWINDOWCONFIGINTEGER(2)numxpixelsINTEGER(2)numypixelsINTEGER(2)numtextcolsINTEGER(2)numtextrowsINTEGER(2)numcolorsINTEGER*4fontsizeCHARACTER*(80)titleCHARACTER*(32)extendfontnameINTEGER*4extendfontsizeINTEGER*4extendfontattributesINTEGER(2)bitsperpixelENDTYPEWINDOWCONFIG!x轴的像素个数!y轴的像素个数!最大文本列数!最大文本行数!颜色索引!缺省的字体大小!窗口标题!系统提供的多字节字体,如中文仿宋!用于设置多字节符时的字体大小!字体属性,如粗体、斜体等!每像素的位数属性为-1,表示由系统指定,一般最大Type3:qwinfo结构体定义含义TYPEqwinfoINTEGER(2)typeINTEGER(2)xINTEGER(2)yINTEGER(2)hINTEGER(2)wENDTYPEqwinfo!窗口类型!窗口左上角的x坐标!窗口左上角的y坐标!窗口高度!窗口宽度Type值:QWIN$MIN:最小化窗口QWIN$MAX:最大化窗口QWIN$RESTORE:恢复窗口QWIN$SET:设置窗口的位置和尺寸