test1.c
上传用户:xk288cn
上传日期:2007-05-28
资源大小:4876k
文件大小:2k
源码类别:

GIS编程

开发平台:

Visual C++

  1. /* Copyright (c) Mark J. Kilgard, 1994. */
  2. /* This program is freely distributable without licensing fees 
  3.    and is provided without guarantee or warrantee expressed or 
  4.    implied. This program is -not- in the public domain. */
  5. #include <stdlib.h>
  6. #include <stdio.h>
  7. #include <GL/glut.h>
  8. char *fake_argv[] =
  9. {
  10.   "program",
  11.   "-display",
  12.   ":0",
  13.   "-geometry",
  14.   "500x400-34-23",
  15.   "-indirect",
  16.   "-iconic",
  17.   NULL};
  18. int fake_argc = sizeof(fake_argv) / sizeof(char *) - 1;
  19. int
  20. main(int argc, char **argv)
  21. {
  22.   char *altdisplay;
  23.   int screen_width, screen_height;
  24.   int got;
  25.   altdisplay = getenv("GLUT_TEST_ALT_DISPLAY");
  26.   if (altdisplay) {
  27.     fake_argv[2] = altdisplay;
  28.   }
  29.   glutInit(&fake_argc, fake_argv);
  30.   if (fake_argc != 1) {
  31.     printf("FAIL: argument processingn");
  32.     exit(1);
  33.   }
  34.   if ((got = glutGet(GLUT_INIT_WINDOW_WIDTH)) != 500) {
  35.     printf("FAIL: width wrong, got %d, not 500n", got);
  36.     exit(1);
  37.   }
  38.   if ((got = glutGet(GLUT_INIT_WINDOW_HEIGHT)) != 400) {
  39.     printf("FAIL: width height, got %d, not 400n", got);
  40.     exit(1);
  41.   }
  42.   screen_width = glutGet(GLUT_SCREEN_WIDTH);
  43.   screen_height = glutGet(GLUT_SCREEN_HEIGHT);
  44.   if ((got = glutGet(GLUT_INIT_WINDOW_X)) != (screen_width - 500 - 34)) {
  45.     printf("FAIL: width x, got %d, not %dn", got, screen_width - 500 - 34);
  46.     exit(1);
  47.   }
  48.   if ((got = glutGet(GLUT_INIT_WINDOW_Y)) != (screen_height - 400 - 23)) {
  49.     printf("FAIL: width y, got %d, not %dn", got, screen_height - 400 - 23);
  50.     exit(1);
  51.   }
  52.   if (glutGet(GLUT_INIT_DISPLAY_MODE) !=
  53.     (GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH)) {
  54.     printf("FAIL: width wrongn");
  55.     exit(1);
  56.   }
  57.   glutInitWindowPosition(10, 10);
  58.   glutInitWindowSize(200, 200);
  59.   glutInitDisplayMode(
  60.     GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH | GLUT_STENCIL);
  61.   if (glutGet(GLUT_INIT_WINDOW_WIDTH) != 200) {
  62.     printf("FAIL: width wrongn");
  63.     exit(1);
  64.   }
  65.   if (glutGet(GLUT_INIT_WINDOW_HEIGHT) != 200) {
  66.     printf("FAIL: width wrongn");
  67.     exit(1);
  68.   }
  69.   if (glutGet(GLUT_INIT_WINDOW_X) != 10) {
  70.     printf("FAIL: width wrongn");
  71.     exit(1);
  72.   }
  73.   if (glutGet(GLUT_INIT_WINDOW_Y) != 10) {
  74.     printf("FAIL: width wrongn");
  75.     exit(1);
  76.   }
  77.   if (glutGet(GLUT_INIT_DISPLAY_MODE) !=
  78.     (GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH | GLUT_STENCIL)) {
  79.     printf("FAIL: width wrongn");
  80.     exit(1);
  81.   }
  82.   printf("PASS: test1n");
  83.   return 0;             /* ANSI C requires main to return int. */
  84. }