drawing join dots on stroke fonts is now optional (and default off)

git-svn-id: https://svn.code.sf.net/p/freeglut/code/trunk@1705 7f0cb862-5218-0410-a997-914c9d46530a
This commit is contained in:
dcnieho 2014-09-28 04:04:08 +00:00
parent 804a62ab58
commit f1df2e76d1
6 changed files with 22 additions and 4 deletions

View File

@ -88,6 +88,8 @@
#define GLUT_GEOMETRY_VISUALIZE_NORMALS 0x0205
#define GLUT_STROKE_FONT_DRAW_JOIN_DOTS 0x0206 /* Draw dots between line segments of stroke fonts? */
/*
* New tokens for glutInitDisplayMode.
* Only one GLUT_AUXn bit may be used at a time.

View File

@ -278,10 +278,14 @@ void FGAPIENTRY glutStrokeCharacter( void* fontID, int character )
for( j = 0; j < strip->Number; j++ )
glVertex2f( strip->Vertices[ j ].X, strip->Vertices[ j ].Y );
glEnd( );
glBegin( GL_POINTS );
for( j = 0; j < strip->Number; j++ )
glVertex2f( strip->Vertices[ j ].X, strip->Vertices[ j ].Y );
glEnd( );
if (fgState.StrokeFontDrawJoinDots)
{
glBegin( GL_POINTS );
for( j = 0; j < strip->Number; j++ )
glVertex2f( strip->Vertices[ j ].X, strip->Vertices[ j ].Y );
glEnd( );
}
}
glTranslatef( schar->Right, 0.0, 0.0 );
}

View File

@ -87,6 +87,7 @@ SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */
1, /* AuxiliaryBufferNumber */
4, /* SampleNumber */
GL_FALSE, /* SkipStaleMotion */
GL_FALSE, /* StrokeFontDrawJoinDots */
1, /* OpenGL context MajorVersion */
0, /* OpenGL context MinorVersion */
0, /* OpenGL ContextFlags */

View File

@ -342,6 +342,8 @@ struct tagSFG_State
GLboolean SkipStaleMotion; /* skip stale motion events */
GLboolean StrokeFontDrawJoinDots;/* Draw dots between line segments of stroke fonts? */
int MajorVersion; /* Major OpenGL context version */
int MinorVersion; /* Minor OpenGL context version */
int ContextFlags; /* OpenGL context flags */

View File

@ -118,6 +118,10 @@ void FGAPIENTRY glutSetOption( GLenum eWhat, int value )
fgStructure.CurrentWindow->State.VisualizeNormals = value;
break;
case GLUT_STROKE_FONT_DRAW_JOIN_DOTS:
fgState.StrokeFontDrawJoinDots = value;
break;
default:
fgWarning( "glutSetOption(): missing enum handle %d", eWhat );
break;
@ -218,6 +222,9 @@ int FGAPIENTRY glutGet( GLenum eWhat )
return GL_FALSE;
return fgStructure.CurrentWindow->State.VisualizeNormals;
case GLUT_STROKE_FONT_DRAW_JOIN_DOTS:
return fgState.StrokeFontDrawJoinDots;
default:
return fgPlatformGlutGet ( eWhat );
break;

View File

@ -1527,6 +1527,8 @@ windows if GLUT_MULTISAMPLE was set in the displayMode.</li>
<li>GLUT_GEOMETRY_VISUALIZE_NORMALS - Set whether <a
href="#GeometricObject"><i>FreeGLUT</i>'s geometric object rendering
functions</a> also visualize the object's normals or not.</li>
<li>GLUT_STROKE_FONT_DRAW_JOIN_DOTS - Set whether join dots are drawn
between line segments when drawing letters of stroke fonts or not.</li>
</ul>
</p>