Commit 94b005f6 authored by Jan Möbius's avatar Jan Möbius

Removed font rendering from coordframe node

parent 1445d3fe
/*===========================================================================*\
* *
* OpenFlipper *
* Copyright (c) 2001-2015, RWTH-Aachen University *
* Department of Computer Graphics and Multimedia *
* All rights reserved. *
* www.openflipper.org *
* *
*---------------------------------------------------------------------------*
* This file is part of OpenFlipper. *
*---------------------------------------------------------------------------*
* *
* Redistribution and use in source and binary forms, with or without *
* modification, are permitted provided that the following conditions *
* are met: *
* *
* 1. Redistributions of source code must retain the above copyright notice, *
* this list of conditions and the following disclaimer. *
* *
* 2. Redistributions in binary form must reproduce the above copyright *
* notice, this list of conditions and the following disclaimer in the *
* documentation and/or other materials provided with the distribution. *
* *
* 3. Neither the name of the copyright holder nor the names of its *
* contributors may be used to endorse or promote products derived from *
* this software without specific prior written permission. *
* *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS *
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED *
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER *
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, *
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, *
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR *
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF *
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING *
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS *
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
* *
\*===========================================================================*/
//=============================================================================
//== INCLUDES =================================================================
#include "gltext.hh"
#include <ACG/Math/GLMatrixT.hh>
//=============================================================================
namespace ACG {
//=============================================================================
void glText(const Vec3f& _pos,
const std::string& _text,
void* _font)
{
glRasterPos3fv(_pos.data());
std::string::const_iterator s_it(_text.begin()), s_end(_text.end());
for (; s_it!=s_end; ++s_it)
glutBitmapCharacter(_font, *s_it);
}
//-----------------------------------------------------------------------------
void glText( const Vec2i& _pos,
const std::string& _text,
void* _font)
{
GLint viewport[4];
glGetIntegerv(GL_VIEWPORT, viewport);
// set raster pos
glMatrixMode(GL_PROJECTION);
glPushMatrix();
GLMatrixf orthoProj;
orthoProj.identity();
orthoProj.ortho(0.0f, float(viewport[2]), 0.0f, float(viewport[3]), -1.0f, 1.0f);
glLoadMatrixf(orthoProj.data());
glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glLoadIdentity();
glRasterPos2i(_pos[0], _pos[1]);
// draw characters
std::string::const_iterator s_it(_text.begin()), s_end(_text.end());
for (; s_it!=s_end; ++s_it)
glutBitmapCharacter(_font, *s_it);
// restore matrices
glMatrixMode(GL_PROJECTION);
glPopMatrix();
glMatrixMode(GL_MODELVIEW);
glPopMatrix();
}
//=============================================================================
} // namespace ACG
//=============================================================================
/*===========================================================================*\
* *
* OpenFlipper *
* Copyright (c) 2001-2015, RWTH-Aachen University *
* Department of Computer Graphics and Multimedia *
* All rights reserved. *
* www.openflipper.org *
* *
*---------------------------------------------------------------------------*
* This file is part of OpenFlipper. *
*---------------------------------------------------------------------------*
* *
* Redistribution and use in source and binary forms, with or without *
* modification, are permitted provided that the following conditions *
* are met: *
* *
* 1. Redistributions of source code must retain the above copyright notice, *
* this list of conditions and the following disclaimer. *
* *
* 2. Redistributions in binary form must reproduce the above copyright *
* notice, this list of conditions and the following disclaimer in the *
* documentation and/or other materials provided with the distribution. *
* *
* 3. Neither the name of the copyright holder nor the names of its *
* contributors may be used to endorse or promote products derived from *
* this software without specific prior written permission. *
* *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS *
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED *
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER *
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, *
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, *
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR *
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF *
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING *
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS *
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
* *
\*===========================================================================*/
//=============================================================================
// overload some GL functions
//=============================================================================
#ifndef ACG_GL_TEXT_HH
#define ACG_GL_TEXT_HH
//== INCLUDES =================================================================
#include "../Math/VectorT.hh"
#include "gl.hh"
#include <string>
//=============================================================================
namespace ACG {
//=============================================================================
/// Text output in OpenGL, given 2D text position
void glText(const Vec2i& _pos,
const std::string& _text,
void* _font = GLUT_BITMAP_8_BY_13);
/// Text output in OpenGL, given 3D text position
void glText(const Vec3f& _pos,
const std::string& _text,
void* _font = GLUT_BITMAP_8_BY_13);
//=============================================================================
} // namespace ACG
//=============================================================================
#endif // ACG_GL_TEXT_HH defined
//=============================================================================
......@@ -55,7 +55,6 @@
#include "CoordFrameNode.hh"
#include "SceneGraph.hh"
#include "../GL/gltext.hh"
#include "../GL/stipple_alpha.hh"
#include <cstdio>
......@@ -218,8 +217,8 @@ CoordFrameNode::draw(GLState& /* _state */ , const DrawModes::DrawMode& /* _draw
// text
sprintf(s, "%c=%f", axis, *p_it);
glText(v0, s); glText(v1, s); glText(v2, s); glText(v3, s);
//sprintf(s, "%c=%f", axis, *p_it);
//glText(v0, s); glText(v1, s); glText(v2, s); glText(v3, s);
++p_it;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment