Russian Belarusian English German Japanese Ukrainian

Getarccoords

CuBook05

Функция

Выдает координаты последнего обращения к функции arc.
 
Синтаксис

#include <graphics.h>
void far getarccoords(struct arccoordstype far *arccoords);
 
Прототип

graphics.h
 
Описание

Функция getarccoords заполняет структуру arccoords type, на которую указывает arccoords, информацией о последнем вызове arc. Структура arccordstype определена в graphics.h следующим образом:
struct arccoordstype{
int x, y;
int xstart, ystart, xend, yend;
};

Элементы этой структуры используются для определения центра (x,y), начальной (xstart, ystart) и конечной (xend,yend) позиций дуги. Эти значения могут быть использованы если необходимо, чтобы линии пересекались на конце дуги.
 
Возвращаемое значение

Нет.
 
Переносимость

Функция уникальна для Borland C++. Она работает только на компьютерах IBM PC и совместимых с ними, оснащенных дисплейными адаптерами, поддерживающими графический режим. Функция не совместима с Windows.
 
Пример

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main(void)
{
/* Запрос автоопределения */
int graphdriver = DETECT, gmode, errorcode;
struct srccoordstype arcinfo;
int midx,midy;
int stangle = 45,endangle = 270;
char sstr[80],estr[80];

/* инициализация графики и локальных переменных */
initgraph(&graphdriver,&gmode,"");

/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk) /* если ошибка */
{
printf("Ошибка :%s\n",grapherrormessage(errorcode));
printf("Для останова нажмите любую клавишу\n");
getch();
exit(1); /* завершение с кодом ошибки */
}
midx = getmaxx() / 2;
midy = getmaxy() / 2;
setcolor(getmaxcolor(1));

/* рисует дугу */
arc(midx,midy,stangle,endangle,100);
getarccoords((&arcinfo);

/* преобразование информации в строки */
sprintf(sstr,"*- (%d, %d)",arcinfo.xstart,arcinfo.ystart);
sprintf(sstr,"*- (%d, %d)",arcinfo.xend,arcinfo.yend);
/* вывести информацию на экран */
outtextxy(arcinfo.xstart,arcinfo.ystart,estr);
outtextxy(arcinfo.xend,arcinfo.xend,estr);

/* очистка */
getch();
closegraph();
return 0;
}
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий