void YsClassSample::MainLoop(void) { int lb,mb,rb; long mx,my; eyeDistance=10.0; eyeLookAt.Set(0.0,0.0,0.0); eyeAtt.Set(0.0,0.0,0.0); pointOfInterest.Set(0.0,0.0,-1.0); PrepareSquare(p); PrepareSquare(q); RotatePolygon(q,YsDegToRad(90.0),0.0); PrepareSquare(r); RotatePolygon(r,0.0,YsDegToRad(90.0)); BiMouse(&lb,&mb,&rb,&mx,&my); mouseMode=0; while((key=BiInkey())!=BIKEY_ESC) { BIPROJ prj; BiUpdateDevice(); BiGetStdProjection(&prj); BiSetProjection(&prj); Key(key); Display(); lastX=mx; lastY=my; BiMouse(&lb,&mb,&rb,&mx,&my); if(lb==BI_ON && (mx!=lastX || my!=lastY)) { Motion(mx,my); } } }
int main(int argc, char** argv) { InitYsClass(); PrepareShell(sh1); PrepareShell(sh2); printf("Keys\n"); printf("A....Viewing Rotation Mode\n"); printf("B....Viewing Translation (Scroll) Mode\n"); printf("C....Rotate Shell 1\n"); printf("D....Move Shell 1\n"); printf("E....Rotate Shell 2\n"); printf("F....Move Shell 2\n"); printf("G....Polygon/Wireframe\n"); printf("O....Or(UNION)\n"); printf("I....And(INTERSECTION)\n"); printf("S....Minus(DIFFERENCE)\n"); printf("Z....Zoom\n"); printf("M....Mooz\n"); printf("----------\n"); eyeAtt.Set(0.0,0.0,0.0); eyeDistance=10.0; glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); glutInitWindowSize(500, 500); glutInitWindowPosition(100, 100); glutCreateWindow(argv[0]); InitOpenGL(); glutDisplayFunc(Display); glutReshapeFunc(Reshape); glutKeyboardFunc(Keyboard); glutMouseFunc(Mouse); glutMotionFunc(Motion); glutIdleFunc(Idle); glutMainLoop(); return 0; }
int main(int argc, char** argv) { InitYsClass(); PrepareSquare(p); PrepareSquare(q); RotatePolygon(q,YsDegToRad(90.0),0.0); PrepareSquare(r); RotatePolygon(r,0.0,YsDegToRad(90.0)); printf("Keys\n"); printf("A....Viewing Rotation Mode\n"); printf("B....Viewing Translation (Scroll) Mode\n"); printf("C....Rotate polygon 1(Target Polygon)\n"); printf("D....Rotate polygon 2(Slasher)\n"); printf("E....Rotate polygon 3(Slasher)\n"); printf("Z....Zoom\n"); printf("M....Mooz\n"); printf("----------\n"); mouseMode=3; eyeAtt.Set(0.0,0.0,0.0); eyeDistance=10.0; glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); glutInitWindowSize(500, 500); glutInitWindowPosition(100, 100); glutCreateWindow(argv[0]); InitOpenGL(); glutDisplayFunc(Display); glutReshapeFunc(Reshape); glutKeyboardFunc(Keyboard); glutMouseFunc(Mouse); glutMotionFunc(Motion); glutIdleFunc(Idle); glutMainLoop(); return 0; }
int main(int argc, char** argv) { InitYsClass(); axisOfOrbit.Set(1.0,1.0,1.0); axisOfOrbit.Normalize(); orbiter=axisOfOrbit.GetArbitraryParpendicularVector(); orbiter.Normalize(); rot.Set(axisOfOrbit,0.0); printf("Keys\n"); printf("A....Viewing Rotation Mode\n"); printf("B....Viewing Translation (Scroll) Mode\n"); printf("Z....Zoom\n"); printf("M....Mooz\n"); printf("----------\n"); eyeAtt.Set(YsPi/2.0,0.0,0.0); eyeDistance=10.0; glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); glutInitWindowSize(500, 500); glutInitWindowPosition(100, 100); glutCreateWindow(argv[0]); InitOpenGL(); glutDisplayFunc(Display); glutReshapeFunc(Reshape); glutKeyboardFunc(Keyboard); glutMouseFunc(Mouse); glutMotionFunc(Motion); glutIdleFunc(Idle); glutMainLoop(); return 0; }
int main(int argc, char** argv) { int i; InitYsClass(); for(i=0; i<nVtx; i++) { vtx[i].Set(&v[i*3]); } printf("Keys\n"); printf("A....Viewing Rotation Mode\n"); printf("B....Viewing Translation (Scroll) Mode\n"); printf("Z....Zoom\n"); printf("M....Mooz\n"); printf("----------\n"); eyeAtt.Set(0.0,0.0,0.0); eyeDistance=10.0; glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); glutInitWindowSize(500, 500); glutInitWindowPosition(100, 100); glutCreateWindow(argv[0]); InitOpenGL(); glutDisplayFunc(Display); glutReshapeFunc(Reshape); glutKeyboardFunc(Keyboard); glutMouseFunc(Mouse); glutMotionFunc(Motion); glutIdleFunc(Idle); glutMainLoop(); return 0; }