数学建模社区-数学中国

标题: OpenGL里画线 [打印本页]

作者: xShandow    时间: 2004-11-19 09:21
标题: OpenGL里画线
<>在OpenGL里画线语句:. b& L6 Z1 Q. \: W& |2 q
glBegin(GL_LINES);5 Z) q+ o* l- }, U8 y4 k
   glVertex2f(x,y);% h* ]% {, ], L) @) N+ J$ ?
   glVertex2f(a,b);* r8 ?2 U) m  t1 A9 o# d, S2 o* ^
glEnd();</P>/ L) h; D* v( T3 ?- [2 m
<>注意:目前只讨论OpenGL 2D模式.1 R6 r9 c  n' i0 d2 B+ `
7 n/ D: X( i7 G9 ~  A$ w$ k% }
下面是一个画线实例和效果图
) ^1 ]0 I5 F0 E( y; I#define GL_PI 3.1415f</P>
$ E4 m+ l* @) y<>void Draw()
" i  o! m) e4 r! O  ~8 B{1 c/ Y9 m! T' V6 o( O
GLfloat x,y,angle;</P>. Y. o/ m5 t( x1 w# G
<> glPushMatrix();</P>' v2 x' u7 {" [' [/ u; K6 t
<> glTranslatef(300,200,0);
' a6 Z& U; Q' u: ^ glColor3f(0.6f,0.6f,0.1f);. ^# A; J* W. S3 f% w- ^7 ]
glBegin(GL_LINES);
& w& j; ^$ N: m4 }% y* o$ G  for(angle=0.0f;angle&lt;3*GL_PI;angle+=0.5f). n- x5 e2 {8 C
  {
% Z6 E. G6 i7 e! ?: ?" J1 |+ S   x=150.0f*sin(angle);
; l; V8 H, e5 [1 F, }1 o# S   y=150.0f*cos(angle);</P>
8 I- w9 Y4 w! u+ I<>   glVertex2f(x,y);</P>
5 j! Y" G/ c2 |2 K) L) r6 i<>   x=150.0f*sin(angle+3.1415f);
* j$ z9 r: b- _  Y$ E$ M6 p' J   y=150.0f*cos(angle+3.1415f);, E( D. @; t& W8 _# v
   glVertex2f(x,y);4 l& @4 g% }$ @8 M2 [( C
  }4 }6 P0 R; K2 S4 Y' L+ {* _$ D7 x
  ! V) g6 ]* Q- F
glEnd();</P>2 V# h! Y  ^$ P$ w: {: o) t
<> glPopMatrix();7 m+ x6 Z' ], \8 r" U/ N5 g
}! k, b  Z. i% O$ F
</P>[attach]711[/attach]

OpenGL里画线.jpg (45.84 KB, 下载次数: 211)

OpenGL里画线

OpenGL里画线






欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5