Форум программистов, компьютерный форум CyberForum.ru

Как нарисовать трапецию в кругу - C++

Восстановить пароль Регистрация
 
Ruslan4iQ
Сообщений: n/a
31.10.2012, 20:56     Как нарисовать трапецию в кругу #1
Все добрый вечер! Не могу понять как нарисовать трапецию в кругу... ( сам круг то нарисовал))) Проблемы с трапецией...
Добрые люди помогите с решением данной задачи:

Вот сам код:
У меня мысль таково задать определенные размером стороны, ведь в пространстве какая разница где нарисует главное что бы в кругу!?(в кругу, круг унаследовал я с фигуры треугольник я его там описал, я понимаю то что это не стандартный подход, но нас так учат)

Собственно сам круг в треугольнике, от куда унаследуем круг для трапеции...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
class CTreangle : virtual public CShapes \\ .H
{
public:
 
    CTreangle(float x0 = 0, float y0 = 0, int n0=3, float r0=1, Color lc = Color(0,0,0), Color fc = Color(255,255,255), int lw = 1):CShapes(x0,y0,lc,fc,lw){this-> r=r0;};
    CTreangle(CTreangle &c);
    ~CTreangle();
    
    float getR();
    void setR(float r);
 
    virtual void draw() const;
 
    float getMaxwidth() const;
    float getMaxheight() const;
 
    virtual ostream& write(ostream &output) ;
    virtual istream& read(istream &input);
 
protected:
     int n;
    float r;
};
 
CTreangle::~CTreangle() {};\\  .CPP
CTreangle::CTreangle(CTreangle &t)
{
    x = t.x;
    y = t.y;
    n = t.n;
    r = t.r;
    lineColor = t.lineColor;
    lineWidth = t.lineWidth;
    fillColor = t.fillColor;
};
 
void CTreangle::draw() const
{
    cout << "Treangle <""X="<< x << ",""Y="<< y <<",""R="<<r<<">";
};
 
void CTreangle::setR(float r) {this -> r = r;};
float CTreangle::getR() {return r;};
 
float CTreangle::getMaxheight() const {return 2 * r;};
float CTreangle::getMaxwidth() const {return 2 * r;};
 
ostream &CTreangle::write(ostream &output) 
{
    CShapes::write(output);
    output << n << "";
    return output;
 
    CShapes::write(output);
    output << r << "";
    return output;
};
 
istream &CTreangle::read(istream &input)
{
    CShapes::read(input);
    input >> n;
    return input;
 
    CShapes::read(input);
    input >> r;
    return input;
};
Собственно сама трапеция))))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
class CTrapeze : virtual public CTreangle\\ .H 
{
public:
    CTrapeze(float x0 = 0, float y0 = 0,float r0=1,  float a0=4, float b0=6, float c0=2, float d0=2, int n = 4, 
        Color lc = Color(0,0,0), Color fc = Color(255,255,255), int lw = 1)
        :CTreangle(x0,y0,n0,lc,fc,lw,r0),CShapes(x0, y0, lc, fc, lw) {};
    CTrapeze(CTrapeze &te);
    ~CTrapeze();
 
    float getA();
    void setA(float a);
    float getB();
    void setB(float b);
    float getC();
    void setC(float c);
    float getD();
    void setD(float d); 
 
    virtual void draw() const;
 
    virtual ostream& write(ostream &output) ;
    virtual istream& read(istream &input);
 
protected:
    int n;
    float a;//verhnya granica trapecii
    float b;//nijnyaya granica trapecii
    float c;//levaya gran trapecii
    float d;//pravaya gran trapecii
};
 
CTrapeze::~CTrapeze(){};\\ .CPP
    CTrapeze::CTrapeze(CTrapeze &te)
    {
        x = te.x;
        y = te.y;
        r=te.r;
        n=te.n;
        a=te.a;
        b=te.b;
        d=te.d;
        c=te.d;
        lineColor = te.lineColor;
        lineWidth = te.lineWidth;
        fillColor = te.fillColor;
    };
 
void CTrapeze::draw() const
{
    cout << "  Trapeze<  (  " << x << "," << y << ") R = " << r << ">";\\ Здесь допишу не страшно..)
};
 
void CTrapeze::setA(float a) {this -> a=a;};
float CTrapeze::getA() {return a;};
void CTrapeze::setB(float b) {this -> b=b;};
float CTrapeze::getB() {return b;};
void CTrapeze::setC(float c) {this -> c=c;};
float CTrapeze::getC() {return c;};
void CTrapeze::setD(float d) {this -> d=d;};
float CTrapeze::getD() {return d;};
istream &CTrapeze::read(istream &input)
{
    CTrapeze::read(input);
    input >> a;
    return input;
    CTrapeze::read(input);
    input >> b;
    return input;
    CTrapeze::read(input);
    input >> c;
    return input;
    CTrapeze::read(input);
    input >> d;
    return input;
 
 
};
 
ostream &CTrapeze::write(ostream &output) 
{
    CTrapeze::write(output);
    output << a << "";
    return output;
    CTrapeze::write(output);
    output << b << "";
    return output;
    CTrapeze::write(output);
    output << c << "";
    return output;
    CTrapeze::write(output);
    output << d << "";
    return output;
};
Братья по разуму: Я только учусь, не суди строго! Помогите пожалуйста)))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2012, 20:56     Как нарисовать трапецию в кругу
Посмотрите здесь:

заполнить массив по кругу C++
C++ движение пирамиды по кругу
Точки принадлежащие кругу C++
Определить класс, описывающий равнобочную трапецию C++
Класс, описывающий прямоугольную трапецию C++
C++ цикл по кругу
Написать условие: Можно ли по заданным координатам построить трапецию? C++
C++ Нарисовать трапецию в движении

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 07:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru