ВУЗ:
Составители:
Рубрика:
void shape_refresh() /*-построение фигур списка на экране;*/
{ screen_clear();/*-очистка модельного экрана; */
sp_gslist_iter next(shape_list);/*-итератор списка;*/
shape* p; /*-указатель фигуры,заносимой в модель; */
while((p=next())!=0) p->draw();/*-занесение фигур; */
screen_refresh(); /*-построение фигур на экране; */
} /*-конец функции построения фигур на экране; */
Сервисная функция ставит одну фигуру на другую,задавая,
что south() одной должен быть сразу над north()другой:
void stack(shape* q,shape* p) /*-функция компоновки фигур;*/
{ point n=p->north();/*-север нижней фигуры; */
point s=q->south();/*-юг верхней фигуры; */
q->move(n.x-s.x,n.y-s.y+1);/*-изменение координат */
/* базовых точек переме-*/
/* щаемой фигуры; */
};/*-конец функции компоновки фигур для построения; */
4.3.Прикладная программа
Перейдем теперь к рассмотрению прикладной программы,раз-
рабатываемой с ориентацией на набор функций для управления
экраном и библиотеку построения геометрических фигур.Эти
компоненты могут быть представлены в виде заголовочных фай-
лов,содержащих определение типов,и библиотеки,составленной
из откомпилированных вариантов определяемых функций.
В прикладной программе определяется новая более сложная
фигура,немного похожая на лицо человека,а затем в главной
функции осуществляется ее построение и одевание на нее шля-
пы.Наконец,все это изображение перемещается по экрану.
class myshape:public rectangle /*-лицо человека; */
{ line* l_eye; /*-левый глаз; */
line* r_eye; /*-правый глаз; */
line* mouth; /*-рот; */
74
void shape_refresh() /*-построение фигур списка на экране;*/ { screen_clear();/*-очистка модельного экрана; */ sp_gslist_iter next(shape_list);/*-итератор списка;*/ shape* p; /*-указатель фигуры,заносимой в модель; */ while((p=next())!=0) p->draw();/*-занесение фигур; */ screen_refresh(); /*-построение фигур на экране; */ } /*-конец функции построения фигур на экране; */ Сервисная функция ставит одну фигуру на другую,задавая, что south() одной должен быть сразу над north()другой: void stack(shape* q,shape* p) /*-функция компоновки фигур;*/ { point n=p->north();/*-север нижней фигуры; */ point s=q->south();/*-юг верхней фигуры; */ q->move(n.x-s.x,n.y-s.y+1);/*-изменение координат */ /* базовых точек переме-*/ /* щаемой фигуры; */ };/*-конец функции компоновки фигур для построения; */ 4.3.Прикладная программа Перейдем теперь к рассмотрению прикладной программы,раз- рабатываемой с ориентацией на набор функций для управления экраном и библиотеку построения геометрических фигур.Эти компоненты могут быть представлены в виде заголовочных фай- лов,содержащих определение типов,и библиотеки,составленной из откомпилированных вариантов определяемых функций. В прикладной программе определяется новая более сложная фигура,немного похожая на лицо человека,а затем в главной функции осуществляется ее построение и одевание на нее шля- пы.Наконец,все это изображение перемещается по экрану. class myshape:public rectangle /*-лицо человека; */ { line* l_eye; /*-левый глаз; */ line* r_eye; /*-правый глаз; */ line* mouth; /*-рот; */ 74
Страницы
- « первая
- ‹ предыдущая
- …
- 72
- 73
- 74
- 75
- 76
- …
- следующая ›
- последняя »