Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
максим)
2 / 2 / 0
Регистрация: 02.10.2010
Сообщений: 36
#1

вращение фигуры - C++

02.03.2011, 23:07. Просмотров 1434. Ответов 2
Метки нет (Все метки)

Я прекрасно знаю что такое матрица поворота, а что делать к примеру если фигура описывается не уравнением а методами, вот к примеру эллипс (часть кода, ну и родительский класс):
  1. //----------------------------------------//
    class Elipse: public TPoint{
    protected: int rmin, rmax;
    public: Elipse( int ix, int iy ,int irmin ,int irmax,int icolor);
    void Draw(int c);
    void Move();
    void Color();
    };

    Elipse :: Elipse( int ix, int iy,int irmin, int irmax,int icolor):TPoint(ix,iy,icolor){ rmin=irmin; rmax=irmax;}
    void Elipse:: Draw(int c){
    setcolor(c);
    ellipse(x,y,0,360,rmin,rmax);
    }
    void Elipse::Move(){
    int v;
    Draw(4);
    while (v!=27)
    {
    v=getch();
    Draw(0);
    switch(v){
    case 77: x=x+5; break;
    case 75: x=x-5; break;
    case 80: y=y+5; break;
    case 72: y=y-5; break;
    }
    Draw(4);
    }
    }
    void Elipse::Color(){
    Show();
    int a;
    while(a!='e'){
    a=getch();
    Hide();
    if(a=='c')
    color++;
    Show();
    }
    }
    //----------------------------------------//


и вот точка с абстрактной фигурой:
class TShape {
protected : int x,y,color;
public : TShape(const int ix, const int iy, int icolor);
~TShape();
virtual void Draw(int c)=0;
void Show();
void Hide();
};
void TShape::Show(){
Draw(color);
}
void TShape::Hide(){
Draw(BLACK);
}
TShape::TShape(const int ix, const int iy,int icolor){
x=ix;
y=iy;
color=icolor;
}
TShape::~TShape(){}

//----------------------------------------//
class TPoint: public TShape{
public : TPoint (int ix, int iy, int icolor);
void Draw(int c);
};

TPoint::TPoint(int ix, int iy,int icolor):TShape(ix,iy,icolor){}

void TPoint:raw(int c){
putpixel(x,y,c);
}
вопрос- как вращать фигуру вокруг ее геометрического центра, если нельзя обращаться ко всем ее точкам ???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2011, 23:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос вращение фигуры (C++):

вращение фигуры - C++
Добрый день! помогите пожалуйста написать метод вращения фигуры по заданному углу. вот основной код программы: // laba2-9.cpp:...

Вращение фигуры - C++
Как можно сделать вращение фигуры?? Например, дан треугольник (имеется в виду графический режим в borland c++ 3.1)

вращение фигуры - C++
Здраствуйте. Необходимо реализовать вращение паралелепипеда в горизонтальной плоскости вокруг оси , которая проходит через центр фигуры и...

Вводить название фигуры, выводить формулу для вычисления площади этой фигуры - C++
Вводить название фигуры (треугольник, квадрат, ромб, прямоугольник) выводить формулу для вычисления площади этой фигуры.

Программа вычисления местонахождения точки относительно фигуры (лежит ли точка внутри, на контуре или вне фигуры) - C++
Нужно написать программу вычисления местонахождения точки относительно фигуры(лежит ли данная точка внутри неё, на контуре или вне фигуры)....

Вращение многоугольника - C++
Добрый вечер! Есть прога, которая рисует многоугольник с заданным числом вершин. Подскажите, пожалуйста, как сделать так, чтобы...

2
pavel876
2 / 4 / 0
Регистрация: 02.03.2011
Сообщений: 56
02.03.2011, 23:09 #2
ГЫГЫГЫ ЖЕСТКО))
0
максим)
2 / 2 / 0
Регистрация: 02.10.2010
Сообщений: 36
02.03.2011, 23:31  [ТС] #3
если бы я описывал как x*x/a*a+y*y/b*b=1 тут было бы все легко...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.03.2011, 23:31
Привет! Вот еще темы с ответами:

Вращение шара - C++
Как заставить один шар вращаться в форме восьмёрки?

вращение отрезка. - C++
осуществить вращение отрезка вокруг центра, лежащего внутри отрезка и не совпадающего с его центром

Вращение отрезка - C++
Осуществить вращение отрезка вокруг центра не совпадающего с центром на СИ

Вращение куба - C++
Возникают проблемы с циклами поворотов.Куб рисуется не полностью .Если кому -нибудь не сложно , подскажите в чем проблема. Часть программы...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.