CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
pieslice
pieslice
Функция Рисует и закрашивает сектор круга.
Синтаксис #include <graphics.h>
void far pieslice(int x,int y,int stangle,
int endangle,int radius);
Файл, содержащий graphics.h
прототип
Описание pieslice рисует и закрашивает сектор круга с
центром в точке (x,y) и радиусом radius. Сектор
рисуется от угла stangle до угла endangle. Сектор
вычерчивается текущим цветом и закрашивается
текущим цветом закраски с помощью текущего
шаблона.
Угол для pieslice измеряется в градусах и
отсчитывается против часовой стрелки, где 0
градусов соответствует 3 часам на циферблате, 90
градусов - 12 часам и т.д.
Замечание. Если вы используете CGA или монохромный
адаптер, примеры на использование графических
функций, приведенные в этой книге, могут не дать
ожидаемого результата. Если ваша система работает
на CGA или монохромном адаптере, используйте
значение 1 вместо символической константы цвета.
Смотрите второй приведенный пример на
использование функций pieslice,приведенный в
разделе функции arc. (В функции arc приведен
только один пример, повидимому это опечатка. Прим.
пер.)
Возвращаемое Нет.
значение
Переносимость Эта функция уникальна для Borland C++. Она
работает только на компьютерах IBM PC и
совместимых с ними, оснащенных дисплейными
адаптерами, поддерживающими графический режим.
Функция не совместима с Windows.
Смотрите также fillellipse, fill_patterns(перечисляемый тип),
graphresult, sector, setfillstyle.
Пример:
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
/* Запрос автоопределения */
int graphdriver = DETECT, gmode, errorcode;
int midx,midy;
int stangle = 45,endangle = 135;
int radius = 100;
/* инициализация графики и локальных переменных */
initgraph(&graphdriver,&gmode,"");
/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk) /* если ошибка */
{
printf("Ошибка :%s\n",grapherrormessage(errorcode));
printf("Для останова нажмите любую клавишу\n");
getch();
exit(1); /* завершение с кодом ошибки */
}
midx = getmaxx() / 2;
midy = getmaxy() / 2;
/* определить тип закраски и нарисовать сектор */
setfillstyle(EMPTY_FILL,getmaxcolor());
pieslice(midx,midy,stangle,endangle,radius);
/* очистка */
getch();
closegraph();
return 0;
}
