Новичок
Профиль
Группа: Участник
Сообщений: 1
Регистрация: 18.4.2012
Репутация: нет Всего: нет
|
помогите пожалуйста есть решенная задача физически,  я сделал чтобы каркас вращался,но я не понимаю,.как и что сделать,,чтобы этот шарик катался по желобу. Код | void rigidBody() { //Рисуем стержень glPushMatrix(); glTranslated(0, 0, -12); glLineWidth(9); glBegin(GL_LINES); glVertex3f(0, 0, 0); glVertex3f(0, 5, 0); glEnd(); glPopMatrix();
//Рисуем нижнюю грань glPushMatrix(); glTranslated(0, 0, -12); glLineWidth(9); glBegin(GL_LINES); glVertex3f(0, 1, 0); glVertex3f(deltaXa(), 1, deltaYa()); glEnd(); glPopMatrix();
//Рисуем верхнюю грань glPushMatrix(); glTranslated(0, 0, -12); glLineWidth(9); glBegin(GL_LINES); glVertex3f(0, 4, 0); glVertex3f(2*deltaXa(), 4, 2*deltaYa()); glEnd(); glPopMatrix();
//Рисуем желоб glPushMatrix(); glTranslated(0, 0, -12); glLineWidth(9); glBegin(GL_LINES); glVertex3f(2*deltaXa(), 4, 2*deltaYa()); glVertex3f(1.5*deltaXa(), 2.5, 1.5*deltaYa()); glEnd(); glPopMatrix();
//Рисуем желоб glPushMatrix(); glTranslated(0, 0, -12); glLineWidth(9); glBegin(GL_LINES); glVertex3f(1.5*deltaXa(), 2.5, 1.5*deltaYa()); glVertex3f(deltaXa(), 1, deltaYa()); glEnd(); glPopMatrix();
//Рисуем соединительную точку1 glPushMatrix(); glTranslated(0, 0, -12); glTranslated(2*deltaXa(), 4, 2*deltaYa()); glutSolidSphere(0.1, 15, 15); glPopMatrix();
//Рисуем соединительную точку2(нижняя) glPushMatrix(); glTranslated(0, 0, -12); glTranslated(deltaXa(), 1, deltaYa()); glutSolidSphere(0.1, 3, 3); glPopMatrix();
//Рисуем соединительную точку3(средняя) glPushMatrix(); glTranslated(0, 0, -12); glTranslated(1.5*deltaXa(), 2.5, 1.5*deltaYa()); glutSolidSphere(0.1, 15, 15); glPopMatrix();
}
|
надеюсь кто-нить поможет.
|