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

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 "glutint.h"
  6. #include "glutstroke.h"
  7. void APIENTRY 
  8. glutStrokeCharacter(GLUTstrokeFont font, int c)
  9. {
  10.   const StrokeCharRec *ch;
  11.   const StrokeRec *stroke;
  12.   const CoordRec *coord;
  13.   StrokeFontPtr fontinfo;
  14.   int i, j;
  15. #if defined(_WIN32)
  16.   fontinfo = (StrokeFontPtr) __glutFont(font);
  17. #else
  18.   fontinfo = (StrokeFontPtr) font;
  19. #endif
  20.   if (c < 0 || c >= fontinfo->num_chars)
  21.     return;
  22.   ch = &(fontinfo->ch[c]);
  23.   if (ch) {
  24.     for (i = ch->num_strokes, stroke = ch->stroke;
  25.       i > 0; i--, stroke++) {
  26.       glBegin(GL_LINE_STRIP);
  27.       for (j = stroke->num_coords, coord = stroke->coord;
  28.         j > 0; j--, coord++) {
  29.         glVertex2f(coord->x, coord->y);
  30.       }
  31.       glEnd();
  32.     }
  33.     glTranslatef(ch->right, 0.0, 0.0);
  34.   }
  35. }