setlinestyle

setlinestyle,计算机函数。功能为设置当前画线宽度和类型。

void far setlinestyle(int linestyle, unsigned pattern,int width);

#include <graphics.h>

#include <stdlib.h>

#include <string.h>

#include <stdio.h>

#include <conio.h>

/* the names of the line styles supported */

char *lname[] = {

"SOLID_LINE",

"DOTTED_LINE",

"CENTER_LINE",

"DASHED_LINE",

"USERBIT_LINE"

};

int main(void)

{

/* request auto detection */

int gdriver = DETECT, gmode, errorcode;

int style, midx, midy, userpat;

char stylestr[40];

/* initialize graphics and local variables */

initgraph(&gdriver, &gmode, "");

/* read result of initialization */

errorcode = graphresult();

if (errorcode != grOk) /* an error occurred */

{

printf("Graphics error: %s\n", grapherrormsg(errorcode));

printf("Press any key to halt:");

getch();

exit(1); /* terminate with an error code */

}

midx = getmaxx() / 2;

midy = getmaxy() / 2;

/* a user defined line pattern */

/* binary: "0000000000000001" */

userpat = 1;

for (style=SOLID_LINE; style<=USERBIT_LINE; style++)

{

/* select the line style */

setlinestyle(style, userpat, 1);

/* convert style into a string */

strcpy(stylestr, lname[style]);

/* draw a line */

line(0, 0, midx-10, midy);

/* draw a rectangle */

rectangle(0, 0, getmaxx(), getmaxy());

/* output a message */

outtextxy(midx, midy, stylestr);

/* wait for a key */

getch();

cleardevice();

}

/* clean up */

closegraph();

return 0;

}

linestyle为整数型,用来定义所画直线类型,具体内容如下:

数值 英文说明 中文说明

0 SOLID_LINE 实心线

1 DOTTED_LINE 点线

2 CENTER_LINE 中心线

3 DASHED_LINE 断续线

4 USERBIT_LINE 用户自定义线

pattern为无符号整数型,该参数在需要用户自定义线型时使用 ,如果是使用系统预定义的线型则参数取0值

width为整数型,用来指定所画直线的粗细,可选值1(NORM_WIDTH)和3(THICK_WIDTH)

相关词汇