powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите разобраться с примером(из книги OpenGL RedBook) пример 2.5.
4 сообщений из 4, страница 1 из 1
Помогите разобраться с примером(из книги OpenGL RedBook) пример 2.5.
    #38405393
YaroslavIII
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не хочет запускаться, указвает на ошибку в четвертой строке, а так же 5, 6,7, где скобка открывается, никак не пойму чего он хочет((

#include<GL/glut.h>
#include <GL/gl.h>
#define drawOneLine(x1,y1,x2,y2)

glBegin(GL_LINES);
glVertex2f((x1),(y1));
glVertex2f((x2),(y2));
glEnd();

void init(void)
{
glClearColor(1.0,1.0,1.0,0.0);
glShadeModel(GL_FLAT);
}
void display(void)
{
int i;
glClear(GL_COLOR_BUFFER_BIT);
//Черный цвет для всех линий
glColor3f(0.0,0.0,0.0);
glEnable(GL_LINE_STIPPLE);
//В первом ряду три линии с разными шаблонами
glLineWidth(1.0);
glLineStipple(1,0x0101); //Пунктирная
drawOneLine(50.0,125.0,150.0,125.0);
glLineStipple(1,0x00FF); //Штриховая
drawOneLine(150.0,125.0,250.0,125.0);
glLineStipple(1,0x1C47); //Штрих-пунктирная
drawOneLine(250.0,125.0,350.0,125.0);
//Во втором ряду три толстые линии с аналогичными шаблонами
glLineWidth(5.0);
glLineStipple(1,0x0101); //Пунктирная
drawOneLine(50.0,100.0,150.0,100.0);
glLineStipple(1,0x00FF); //Штриховая
drawOneLine(150.0,100.0,250.0,100.0);
glLineStipple(1,0x1C47); //Штрих-пунктирная
drawOneLine(250.0,100.0,350.0,100.0);
//В третьем ряду шесть штрих-пунктирных линий, объединенных в ломаную
glLineWidth(1.0);
glLineStipple(1,0x1C47); //Штрих-пунктирная
glBegin(GL_LINE_STRIP);
for (i=0;i<7;i++)
glVertex2f(50.0+((GLfloat)i*50.0),75.0);
glEnd();
//В четвертом ряду шесть независимых линий того же шаблона
for (i=0;i<6;i++)
{
drawOneLine(50.0+((GLfloat)i*50.0),50.0,50.0+((GLfloat)(i+1)*50.0),50.0);
}
//В пятом ряду 1 штрих-пунктирная линия с фактором повторения=5
glLineStipple(5,0x1c47);
drawOneLine(50.0,25.0,350.0,25.0);
glDisable(GL_LINE_STIPPLE);
glFlush();
}
void reshape(int w,int h)
{
glViewport(0,0,(GLsizei) w, (GLsizei) h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0.0,400.0,0.0,150.0);
}
int main(int argc, char **argv)
{

glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(400,150);
glutInitWindowPosition(100,100);
glutCreateWindow("Line Stipple Patterns");
init();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutMainLoop();
return 0;
}
...
Рейтинг: 0 / 0
Помогите разобраться с примером(из книги OpenGL RedBook) пример 2.5.
    #38405395
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YaroslavIIIникак не пойму чего он хочет((
Прочитать текст ошибки может помочь.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Помогите разобраться с примером(из книги OpenGL RedBook) пример 2.5.
    #38405396
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YaroslavIII
Код: plaintext
1.
2.
3.
4.
5.
6.
#define drawOneLine(x1,y1,x2,y2)

glBegin(GL_LINES);
glVertex2f((x1),(y1));
glVertex2f((x2),(y2));
glEnd();


Тут был макрос, но вы его неверно переписали из книжки, и он превратился в тыкву.

Предполагаю, что было так:
Код: plaintext
1.
2.
3.
4.
5.
6.
#define drawOneLine(x1,y1,x2,y2) \
\
glBegin(GL_LINES); \
glVertex2f((x1),(y1)); \
glVertex2f((x2),(y2)); \
glEnd();




ЗЫ. Хотя конечно, книжки, где такое советуют, следует отправлять в топку.
ЗЫ2. А не пробовали сначала язык С/С++ хоть немного выучить, прежде чем сразу в бой?
...
Рейтинг: 0 / 0
Помогите разобраться с примером(из книги OpenGL RedBook) пример 2.5.
    #38405445
YaroslavIII
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoly Moskovsky,

Ну я где-то год назаж на с# прогал, с синтаксисом вроде хорошо разобрался)) А тут у нас прдмет новый в универе и мы сразу на с++ сели(( Вроде все не так, хотя может меня память подводит(
Вот ссылка на книжечку ( http://www3.msiu.ru/~kupri-ov/Books/RedBook_OpenGL.pdf) Там в оригинальном коде даже библиотеки не правмльно описаны вроде как (страница 39, пример 2-5))
Спасибо вам за помощь)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите разобраться с примером(из книги OpenGL RedBook) пример 2.5.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]