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

opengl (переменные из хедера не считаются действительными) - C++

Восстановить пароль Регистрация
 
nazarg
0 / 0 / 0
Регистрация: 26.12.2012
Сообщений: 21
29.04.2013, 13:50     opengl (переменные из хедера не считаются действительными) #1
есть код ниже написан, в нём есть переменные (x, y, z, N, G, mastab) которые прописаны в хедер файле.проблема в том, что функции SKeyboard и Draw считает не опредиленными.в чем может быть дело?


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
94
95
96
97
98
99
100
101
102
#include "Point.h"
#include <stdio.h>
#include <conio.h>
#include <locale.h>
#include <string.h>
#include <cmath>
#include <GL/glut.h>
 
float WinWid=700.0;
float WinHei=700.0;
float Angle=0.0, Scale=1.0;
 
const double M_PI =3.1415926535898;
 
 
void Initialize()
{
        glClearColor(0.0, 0.0, 0.0, 1.0);
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();
        glOrtho(-WinWid/2, WinWid/2, -WinHei/2, WinHei/2, -200.0, 200.0);
        glMatrixMode(GL_MODELVIEW);
}
 
Pointsoon::Pointsoon( const Pointsoon& Point ) 
    : Point( Point )
{
    mastab = Point.mastab;
    ANgle_ = Point.ANgle_;
}
 
void Pointsoon::SKeyboard(int key, int ANgle_)
{
    for( ; ANgle_ > 0; ANgle_--)
        switch(key)
        {
        case GLUT_KEY_LEFT: Angle++;
                break;
        case GLUT_KEY_RIGHT: Angle--;
                break;
        }
}
 
Point::Point(const Point&Point)
{
    N = Point.N;
    x = Point.x;
    y = Point.y;
    z = Point.z;
    mastab = Point.mastab;
}
 
 
void Point:: Draw()
{
    glClear(GL_COLOR_BUFFER_BIT);
    glPushMatrix();
    Scale = mastab - abs(sin(3.14*Angle/90.0)/sqrt(3.0)/2);
    glTranslated(x , y, z);  
    glRotatef(Angle, 0.0, 0.0, 1.0);
    glScalef(Scale, Scale, 1.1);
 
    glLineWidth(2);
    glBegin(GL_LINE_LOOP);
    
    for (int i = 0; i < N; ++i)
        for (int j = i + 0.5; j < N; ++j)
        {
            glVertex2f(cos(2 * M_PI * i  / N), sin(2 * M_PI * i / N));
 
        }
    glEnd();
    glPopMatrix();
    glutSwapBuffers();
}
 
void Timer(int value)
{
      //Draw();
        glutPostRedisplay();
        glutTimerFunc(50, Timer, 0);
}
 
int main(int argc, char **argv)
{   
        glutInit(&argc, argv);
        glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);
        glutInitWindowSize(WinWid, WinHei);
        glutInitWindowPosition(300, 200);
        glutCreateWindow("Mnogogrannik");
 
        Initialize();
        void Vvod();
 
        glutInitWindowSize(1000, 1600);
        glutDisplayFunc(Draw);
        glutTimerFunc(50, Timer, 0);
        glutSpecialFunc(SKeyboard);
        glutMainLoop();
 
        return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2013, 13:50     opengl (переменные из хедера не считаются действительными)
Посмотрите здесь:

Переменные,значение функции,вспомогательные переменные. C++
Компилятор ругается на cmatch при подключения хедера C++
Помогите написать программу с действительными числами. C++
Определить, являются ли все символы строки уникальными. Малые и большие буквы считаются разными C++
Числа считаются равными если они отличаются не более, чем на (10^-12) / c++ / как реализовать эту возможность? C++
Заполнение действительными числами в диапозоне C++
C++ Строки с действительными числами, операции над ними
Строки с действительными числами, операции над ними C++

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

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

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