数学建模社区-数学中国

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

作者: xShandow    时间: 2004-11-19 09:21
标题: OpenGL里画线
<>在OpenGL里画线语句:
8 u# i2 U$ G+ Z: X* A* J+ ?glBegin(GL_LINES);( J. K6 Z" Q' s8 `2 Y& f( t
   glVertex2f(x,y);
3 a& y8 y/ ~# k( q# m4 V+ m: r   glVertex2f(a,b);$ b1 O& D& D- T% {$ u6 Z: h/ \
glEnd();</P>+ X8 h. {: U! [2 \4 x( d- E
<>注意:目前只讨论OpenGL 2D模式.
9 n+ S- T. U' [3 r2 o; R8 ?' u" {5 E* ^
下面是一个画线实例和效果图- e' {* ~" D3 V5 S5 ^' B
#define GL_PI 3.1415f</P>+ [) v9 a! g$ x3 i( Q' x
<>void Draw()  L: m5 C4 o! l& `4 w: y9 @
{
, u' d. z: E8 d  D. d GLfloat x,y,angle;</P>
' r1 ]- \" {" S5 j& o  a<> glPushMatrix();</P>
! ?  W4 B' w4 t- S3 @<> glTranslatef(300,200,0);
+ }9 \2 w* _4 J glColor3f(0.6f,0.6f,0.1f);: K2 L* s2 s1 B; _9 `8 |, F. A
glBegin(GL_LINES);/ A0 p% {  Z5 }
  for(angle=0.0f;angle&lt;3*GL_PI;angle+=0.5f)1 u! ?3 L2 w: i8 Y' J
  {
* L' ~& V, b# ]   x=150.0f*sin(angle);
' t: s9 l) r9 _4 L' e   y=150.0f*cos(angle);</P>
: s4 b' v+ G6 O/ _( A8 d<>   glVertex2f(x,y);</P>
5 s2 v5 [) c' b' T" H; H<>   x=150.0f*sin(angle+3.1415f);
8 _' z: H' K) m   y=150.0f*cos(angle+3.1415f);! _& P9 B/ X0 X) M- Y7 u3 \
   glVertex2f(x,y);% a/ t7 C, a2 l5 U+ i8 E
  }" o! v1 x8 @6 F+ E0 P2 m% ]+ {, n1 P- K
  
4 q! M) R+ i' H& @1 Y2 D glEnd();</P>; W) b$ H* d; Z" ~( e( ?
<> glPopMatrix();$ g! B$ Q& V2 |9 t3 p
}
0 P( r7 i9 t: j1 Z" x7 ^</P>[attach]711[/attach]

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

OpenGL里画线

OpenGL里画线






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