Opentk/Source/OpenTK/Fonts/DisplayListTextPrinter.cs

50 lines
1.2 KiB
C#
Raw Normal View History

2007-11-08 15:56:19 +00:00
#region --- License ---
/* Copyright (c) 2006, 2007 Stefanos Apostolopoulos
* See license.txt for license info
*/
#endregion
using System;
2007-11-06 20:59:15 +00:00
using System.Collections.Generic;
using System.Text;
using OpenTK.Graphics.OpenGL;
2007-11-06 20:59:15 +00:00
namespace OpenTK.Fonts
{
/// <summary>
/// Provides text printing through OpenGL 1.1 Display Lists.
/// </summary>
class DisplayListTextPrinter : ITextPrinterImplementation
{
#region IPrinter Members
public TextHandle Load(OpenTK.Math.Vector2[] vertices, ushort[] indices, int index_count)
2007-11-06 20:59:15 +00:00
{
DisplayListTextHandle handle = new DisplayListTextHandle(GL.GenLists(1));
GL.NewList(handle.Handle, ListMode.Compile);
GL.Begin(BeginMode.Triangles);
2007-11-06 20:59:15 +00:00
for (int i = 0; i < index_count; i++)
//foreach (ushort index in indices)
2007-11-06 20:59:15 +00:00
{
GL.TexCoord2(vertices[indices[i] + 1]);
GL.Vertex2(vertices[indices[i]]);
2007-11-06 20:59:15 +00:00
}
GL.End();
GL.EndList();
return handle;
}
public void Draw(TextHandle handle)
{
GL.CallList(handle.Handle);
}
#endregion
}
}