Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
36
Добавлен:
02.05.2014
Размер:
765.95 Кб
Скачать

Getlinesettings

-----------------------------------------------------------------

Назначение:Получает текущий стиль линии, шаблон и толщину.

Синтаксис: #include<graphics.h>

void far getlinesettings(struct

linesettingstype far *lineinfo);

Замечания: getlinesettings заносит в структуру

linesettingstype, на которую указывает

lineinfo, информацию о текущем стиле линии,

шаблоне и толщине.

Структура linesettingstype описана в graphics.h

следующим образом:

struct linesettingstype {

int linestyle;

unsigned upattern;

int thickness;

};

linestyle определяет в каком из нескольких сти-

лей будут вычерчиваться последующие линии (нап-

ример, сплошной, точечный и т.п.). Перечисление

line_styles, описанное graphics.h, задает имена

для этих стилей:

-----------------------------------------------

Имя Значение Описание

-----------------------------------------------

SOLID_LINE 0 Сплошная линия

DOTTED_LINE 1 Точечная линия

CENTER_LINE 2 Штрихпунктирная линия

DASHED_LINE 3 Штриховая линия

USERBIT_LINE 4 Стиль пользователя

-----------------------------------------------

thickness определяет, будет ли толщина последу-

ющих вычерчиваемых линий нормальной или толс-

той.

-----------------------------------------------

Имя Значение Описание

-----------------------------------------------

NORM_WIDTH 1 Ширина в 1 точку растра

THICK_WIDTH 3 Ширина в 3 точки растра

-----------------------------------------------

upattern является 16-битным шаблоном, использу-

емым только в случае, если linestyle равно

USERBIT_LINE(4). В этом случае всякий бит шаб-

лона, установленный в 1, соответствует точке

линии, вычерчиваемой в текущем цвете. Например,

сплошная линия соответствует uputern равным

0xFFFF, а штриховая линия может быть представ-

лена как 0x3333 или 0x0F0F. Если же параметр

linestyle не равен USERBIT_LINE (!=4), то, хотя

параметр upattern все равно должен быть исполь-

зован, он игнорируется.

ВозвращаемоеНет.

значение

Переносимость:Данная функция работает только на IBM PC и сов-

местимых моделях при наличии соответствующих

графических адаптеров.

Пример

#include<conio.h>

#include<graphics.h>

main()

{

/* требование автоопределения */

int graphdriver = DETECT, graphmode;

struct linesettingstype saveline;

/* инициализация графики */

initgraph(&graphdriver, &graphmode, "");

/* сохраняет текущий стиль линии*/

getlinesettings(&saveline);

setlinestyle(SOLID_LINE, 0, THICK_WIDTH);

/* вычертить толстой линией

маленький прямоугольник */

rectangle(10, 10, 17, 15);

/* восстановить стиль */

setlinestyle(saveline.linestyle,

saveline.pattern,

saveline.thickness);

getche();

closegraph();

}

-----------------------------------------------------------------