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

легкая задача - график параболы - C++

Восстановить пароль Регистрация
 
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
27.02.2012, 15:57     легкая задача - график параболы #1
Нужно построить параболу вот из этого рисунка Название: рисун.png
Просмотров: 301

Размер: 3.6 Кб с прямоугольником все понятно, там используем процедуру rectangle! график параболы y=(x*x)/-2 но я не очень понимаю, как ее построить. Помогите пожалуйста!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
27.02.2012, 16:05     легкая задача - график параболы #2
С графикой не сталкивался, но все просто: делаешь цикл, и ставишь точки, исходя из функции, представь что строишь неизвестный тебе график на бумаге.
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
27.02.2012, 17:02     легкая задача - график параболы #3
Таки уточню. Сначала выбирается интервал, на котором будет строиться функция. Этот интервал равномерно разбивается на n-ое количество отрезков, чем больше n, тем плавнее получится график. Для каждой точки разбиения вычисляется значение функции и по полученным координатам выводятся точки на графике. Если точек будет слишком мало, их можно соединить отрезками.
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
28.02.2012, 20:49  [ТС]     легкая задача - график параболы #4
а нельзя ли помочь кодом?
HardMorg
2 / 25 / 3
Регистрация: 29.08.2010
Сообщений: 204
28.02.2012, 21:13     легкая задача - график параболы #5
Цитата Сообщение от gylayko Посмотреть сообщение
а нельзя ли помочь кодом?
с помощью opengl пойдет?

Добавлено через 17 минут
Цитата Сообщение от gylayko Посмотреть сообщение
а нельзя ли помочь кодом?
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
#include <iostream>
#include <GL\glut.h>
 
void draw() {
 
    glClear(GL_COLOR_BUFFER_BIT);
 
    glColor3f(1, 0, 0);
    glBegin(GL_LINES);
      glVertex2f(-10, 0);
      glVertex2f(10, 0);
      
      glVertex2f(0, 10);
      glVertex2f(0, -10);
 
    glEnd();
 
    float x1 = -1;
    float y1 = 0;
 
    float x2 = 1;
    float y2 = 1;
 
    glColor3f(1, 1, 0);
    glBegin(GL_LINE_LOOP);
        glVertex2f(x1, y1);
        glVertex2f(x1, y2);
        glVertex2f(x2, y2);
        glVertex2f(x2, y1);
        glVertex2f(x1, y1);
    glEnd();
 
    glColor3f(0, 0, 1);
    glBegin(GL_POINTS);
    for(float i = -100; i < 100; i+=0.01) {
        float func = (i*i /(-2));
        glVertex2f(i, func);
    }
 
    glEnd();
    glutSwapBuffers();
}
 
int main(int argc, char *argv[]) {
 
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
    glutInitWindowPosition(200, 200);
    glutInitWindowSize(300, 300);
    glutCreateWindow("grafic");
    glClearColor(0, 0, 0, 1);
 
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
 
    glOrtho(-10, 10, -10, 10, -10, 10);
 
    glutDisplayFunc(draw);
    glutMainLoop();
 
    return 0;
}
Yandex
Объявления
28.02.2012, 21:13     легкая задача - график параболы
Ответ Создать тему
Опции темы

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