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

GIS编程

开发平台:

Visual C++

  1. /*
  2.  * (c) Copyright 1993, Silicon Graphics, Inc.
  3.  * ALL RIGHTS RESERVED 
  4.  * Permission to use, copy, modify, and distribute this software for 
  5.  * any purpose and without fee is hereby granted, provided that the above
  6.  * copyright notice appear in all copies and that both the copyright notice
  7.  * and this permission notice appear in supporting documentation, and that 
  8.  * the name of Silicon Graphics, Inc. not be used in advertising
  9.  * or publicity pertaining to distribution of the software without specific,
  10.  * written prior permission. 
  11.  *
  12.  * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS"
  13.  * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE,
  14.  * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR
  15.  * FITNESS FOR A PARTICULAR PURPOSE.  IN NO EVENT SHALL SILICON
  16.  * GRAPHICS, INC.  BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT,
  17.  * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY
  18.  * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION,
  19.  * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF
  20.  * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC.  HAS BEEN
  21.  * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON
  22.  * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE
  23.  * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE.
  24.  * 
  25.  * US Government Users Restricted Rights 
  26.  * Use, duplication, or disclosure by the Government is subject to
  27.  * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph
  28.  * (c)(1)(ii) of the Rights in Technical Data and Computer Software
  29.  * clause at DFARS 252.227-7013 and/or in similar or successor
  30.  * clauses in the FAR or the DOD or NASA FAR Supplement.
  31.  * Unpublished-- rights reserved under the copyright laws of the
  32.  * United States.  Contractor/manufacturer is Silicon Graphics,
  33.  * Inc., 2011 N.  Shoreline Blvd., Mountain View, CA 94039-7311.
  34.  *
  35.  * OpenGL(TM) is a trademark of Silicon Graphics, Inc.
  36.  */
  37. #include <GL/glut.h>
  38. float i_data[][2] = {
  39. {0.548767, 9.414791},
  40. {2.795284, 9.757771},
  41. {1.457663, 9.311897},
  42. {2.503751, 9.157557},
  43. {1.714898, 8.986067},
  44. {2.109325, 7.785638},
  45. {1.286174, 7.013934},
  46. {1.800643, 6.070740},
  47. {0.994641, 5.161843},
  48. {1.783494, 4.767417},
  49. {0.943194, 4.167202},
  50. {1.852090, 4.304394},
  51. {1.063237, 3.549839},
  52. {2.023580, 3.978564},
  53. {1.406217, 3.172562},
  54. {2.315113, 3.875670},
  55. {2.006431, 3.018221},
  56. {2.812433, 3.944266},
  57. {2.726688, 3.429796},
  58. {3.258307, 4.132905},
  59. {1.989282, 10.923902},
  60. {2.778135, 12.295820},
  61. {2.966774, 11.678456},
  62. {3.687031, 12.947481},
  63. };
  64. void draw_i(void) {
  65.     glBegin(GL_TRIANGLE_STRIP);
  66. glVertex2fv(i_data[0]);
  67. glVertex2fv(i_data[1]);
  68. glVertex2fv(i_data[2]);
  69. glVertex2fv(i_data[3]);
  70. glVertex2fv(i_data[4]);
  71. glVertex2fv(i_data[5]);
  72. glVertex2fv(i_data[6]);
  73. glVertex2fv(i_data[7]);
  74. glVertex2fv(i_data[8]);
  75. glVertex2fv(i_data[9]);
  76. glVertex2fv(i_data[10]);
  77. glVertex2fv(i_data[11]);
  78. glVertex2fv(i_data[12]);
  79. glVertex2fv(i_data[13]);
  80. glVertex2fv(i_data[14]);
  81. glVertex2fv(i_data[15]);
  82. glVertex2fv(i_data[16]);
  83. glVertex2fv(i_data[17]);
  84. glVertex2fv(i_data[18]);
  85. glVertex2fv(i_data[19]);
  86.     glEnd();
  87.     glBegin(GL_TRIANGLE_STRIP);
  88. glVertex2fv(i_data[20]);
  89. glVertex2fv(i_data[21]);
  90. glVertex2fv(i_data[22]);
  91. glVertex2fv(i_data[23]);
  92.     glEnd();
  93.     glBegin(GL_LINE_STRIP);
  94. glVertex2fv(i_data[0]);
  95. glVertex2fv(i_data[2]);
  96. glVertex2fv(i_data[4]);
  97. glVertex2fv(i_data[6]);
  98. glVertex2fv(i_data[8]);
  99. glVertex2fv(i_data[10]);
  100. glVertex2fv(i_data[12]);
  101. glVertex2fv(i_data[14]);
  102. glVertex2fv(i_data[16]);
  103. glVertex2fv(i_data[18]);
  104. glVertex2fv(i_data[19]);
  105. glVertex2fv(i_data[17]);
  106. glVertex2fv(i_data[15]);
  107. glVertex2fv(i_data[13]);
  108. glVertex2fv(i_data[11]);
  109. glVertex2fv(i_data[9]);
  110. glVertex2fv(i_data[7]);
  111. glVertex2fv(i_data[5]);
  112. glVertex2fv(i_data[3]);
  113. glVertex2fv(i_data[1]);
  114.     glEnd();
  115.     glBegin(GL_LINE_STRIP);
  116. glVertex2fv(i_data[20]);
  117. glVertex2fv(i_data[22]);
  118. glVertex2fv(i_data[23]);
  119. glVertex2fv(i_data[21]);
  120.     glEnd();
  121. }