Использование FLTK & amp; C ++: Извлечь новый класс «Смайлик» из существующего класса «Круг»

Мое назначение — извлечь новый класс под названием Smiley из существующего класса под названием Circle. Я использую FLTK & C ++.

Круг это:


    struct Circle : Shape {
Circle(Point p, int rr) // center and radius
:r(rr) { add(Point(p.x-r,p.y-r)); }

void draw_lines() const;

Point center() const;

void set_radius(int rr) { set_point(0,Point(center().x-rr,center().y-rr)); r=rr;  }
int radius() const { return r; }
private:
int r;
};

(The add метод является бесплатным методом, а не частью круга)

И то, что я создал для Smiley до сих пор,


class Smiley : public Circle {
public:
Smiley (Point p, int r) : Circle (a, r){
return;
}
};

Я пытаюсь понять, как добавить круглые глаза и полукруглый рот. У меня очень смутное представление о том, как должны выглядеть глаза.


Circle left_eye(Point(p.x - (r/3), p.y - (r/3)), (r/8)); //left eye
Circle right_eye(Point(p.x + (r/3), p.y - (r/3)), (r/8)); //right eye

Но я даже не знаю, как включить это в мой класс Смайли, или, если это даже правильный формат. Помощь будет высоко ценится, спасибо.

0

Решение

Вы бы отодвинули взгляд на Vector_ref вместе с ртом и головой, а затем создали бы функцию, которая рисует каждый элемент vec_ref. Используйте цикл for в функции рисования (функция рисования должна переопределять функцию draw_lines () из Circle)

0

Другие решения


По вопросам рекламы ammmcru@yandex.ru
Adblock
detector