Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
OpenFlipper-Free
OpenFlipper
Commits
0ebf86d3
Commit
0ebf86d3
authored
Feb 21, 2019
by
Jan Möbius
Browse files
Merge branch 'GLUT' into 'master'
Removed glut Closes #1 See merge request
!133
parents
7d591916
0c5383bd
Changes
15
Hide whitespace changes
Inline
Side-by-side
CoreApp/CMakeLists.txt
View file @
0ebf86d3
...
...
@@ -10,7 +10,6 @@ include_directories (
${
CMAKE_CURRENT_BINARY_DIR
}
${
OPENGL_INCLUDE_DIR
}
${
GLEW_INCLUDE_DIR
}
${
GLUT_INCLUDE_DIR
}
)
# Linking for apple is special here as the linker pulls in the dependencies, we have to set them like in PluginLib!
...
...
@@ -156,7 +155,6 @@ if (WIN32)
-DUSEACG
-DPLUGINLIBDLL
-DUSEPLUGINLIBDLL
-DFREEGLUT_LIB_PRAGMAS=0
)
endif
()
...
...
@@ -228,7 +226,6 @@ target_link_libraries (${OPENFLIPPER_PRODUCT_STRING}
${
QT_LIBRARIES
}
${
OPENGL_LIBRARIES
}
${
GLEW_LIBRARY
}
${
GLUT_LIBRARIES
}
${
COREAPP_ADDITIONAL_LINK_LIBRARIES
}
${
OPENFLIPPER_STATIC_PLUGINS
}
)
...
...
Documentation/DeveloperHelpSources/building.docu
View file @
0ebf86d3
...
...
@@ -10,7 +10,6 @@ OpenFlipper.
\section reqlibs Required libraries
<ul>
<li> 5.9 >= Qt >= 5.5.1 ( http://www.qt.io/download/ ) Use the OpenGL version for Qt >= 5.0</li>
<li> GLUT ( http://www.opengl.org/resources/libraries/glut/ )</li>
<li> GLEW (>=1.6) ( http://glew.sourceforge.net )</li>
</ul>
...
...
@@ -82,9 +81,6 @@ directory.
<li> Download the glew library and install it (The best way is to install it to c:\\libs\\glew directory ).)<br />
The c:\\libs\\glew\\lib subdirectory should contain the dll and the *.lib files)<br />
The headers should be located in the c:\\libs\\glew\\include\\gl subdirectory</li>
<li> Rearrange the files in the glut-3.7 directory such that)<br />
all *.lib and *.dll files are in a c:\\libs\\glut-3.7\\lib subdirectory)<br />
and the glut.h file is moved to the subdirectory c:\\libs\\glut-3.7\\include\\gl\\glut.h</li>
<li> Get cmake for windows from http://www.cmake.org/cmake/resources/software.html </li>
<li> Start the cmake gui and select the OpenFlipper toplevel directory as source directory </li>
\image html cmake-source.png
...
...
@@ -121,7 +117,6 @@ Don't forget setting up the "OpenFlipper" target as startup project as shown in
Install at least the following ports: <br />
qt4-mac +debug<br />
glew<br />
glut<br />
cmake<br />
br />
As additional ports we recommend the following<br />
...
...
OpenFlipper.cc
View file @
0ebf86d3
...
...
@@ -762,10 +762,6 @@ int main(int argc, char **argv)
return
-
1
;
}
#ifndef __APPLE__
glutInit
(
&
argc
,
argv
);
#endif
// create core ( this also reads the ini files )
Core
*
w
=
new
Core
(
);
#ifdef PYTHON_ENABLED
...
...
PluginLib/CMakeLists.txt
View file @
0ebf86d3
...
...
@@ -43,7 +43,6 @@ include_directories (
${
CMAKE_CURRENT_BINARY_DIR
}
${
OPENGL_INCLUDE_DIR
}
${
GLEW_INCLUDE_DIR
}
${
GLUT_INCLUDE_DIR
}
${
ADDITIONAL_PLUGINLIB_INCS
}
${
PACKAGE_INCLUDES
}
)
...
...
@@ -63,7 +62,6 @@ if (WIN32)
-DPLUGINLIBDLL
-DACGDLL
-DUSEACG
-DFREEGLUT_LIB_PRAGMAS=0
)
endif
()
...
...
@@ -145,7 +143,6 @@ target_link_libraries (OpenFlipperPluginLib
${
QT_LIBRARIES
}
${
OPENGL_LIBRARIES
}
${
GLEW_LIBRARY
}
${
GLUT_LIBRARIES
}
${
FTGL_LIBS
}
${
ADDITIONAL_PLUGINLIB_LIBS
}
)
...
...
cmake/CMakeLists.txt
View file @
0ebf86d3
...
...
@@ -202,7 +202,7 @@ include (ACGOutput)
acg_openmp
()
# check for OpenGL, GLEW
and GLUT
as our required dependencies
# check for OpenGL, GLEW as our required dependencies
find_package
(
OpenGL
)
if
(
NOT OPENGL_FOUND
)
message
(
FATAL_ERROR
"OpengGL not found!"
)
...
...
@@ -213,11 +213,6 @@ if (NOT GLEW_FOUND)
message
(
FATAL_ERROR
"GLEW not found!"
)
endif
()
find_package
(
GLUT
)
if
(
NOT GLUT_FOUND
)
message
(
FATAL_ERROR
"GLUT not found!"
)
endif
()
# using the internal openmesh delivered by the svn repo (default) or use some external installation
set
(
USE_INTERNAL_OPENMESH ON CACHE BOOL
"Use and build internal version of OpenMesh found in libs_required"
)
...
...
cmake/FindGLUT.cmake
deleted
100644 → 0
View file @
7d591916
# - try to find glut library and include files
# GLUT_INCLUDE_DIR, where to find GL/glut.h, etc.
# GLUT_LIBRARIES, the libraries to link against
# GLUT_FOUND, If false, do not try to use GLUT.
# Also defined, but not for general use are:
# GLUT_glut_LIBRARY = the full path to the glut library.
# GLUT_Xmu_LIBRARY = the full path to the Xmu library.
# GLUT_Xi_LIBRARY = the full path to the Xi Library.
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distributed this file outside of CMake, substitute the full
# License text for the above reference.)
IF
(
WIN32
)
# Check if the base path is set
if
(
NOT CMAKE_WINDOWS_LIBS_DIR
)
# This is the base directory for windows library search used in the finders we shipp.
set
(
CMAKE_WINDOWS_LIBS_DIR
"c:\libs"
CACHE STRING
"Default Library search dir on windows."
)
endif
()
if
(
CMAKE_GENERATOR MATCHES
"^Visual Studio 11.*Win64"
)
SET
(
VS_SEARCH_PATH
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/vs2012/x64/"
)
elseif
(
CMAKE_GENERATOR MATCHES
"^Visual Studio 11.*"
)
SET
(
VS_SEARCH_PATH
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/vs2012/x32/"
)
elseif
(
CMAKE_GENERATOR MATCHES
"^Visual Studio 12.*Win64"
)
SET
(
VS_SEARCH_PATH
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/vs2013/x64/"
)
elseif
(
CMAKE_GENERATOR MATCHES
"^Visual Studio 12.*"
)
SET
(
VS_SEARCH_PATH
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/vs2013/x32/"
)
elseif
(
CMAKE_GENERATOR MATCHES
"^Visual Studio 14.*Win64"
)
SET
(
VS_SEARCH_PATH
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/vs2015/x64/"
)
elseif
(
CMAKE_GENERATOR MATCHES
"^Visual Studio 14.*"
)
SET
(
VS_SEARCH_PATH
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/vs2015/x32/"
)
elseif
(
CMAKE_GENERATOR MATCHES
"^Visual Studio 15.*Win64"
)
SET
(
VS_SEARCH_PATH
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/vs2017/x64/"
)
elseif
(
CMAKE_GENERATOR MATCHES
"^Visual Studio 15.*"
)
SET
(
VS_SEARCH_PATH
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/vs2017/x32/"
)
endif
()
FIND_PATH
(
GLUT_INCLUDE_DIR NAMES GL/glut.h
PATHS
${
GLUT_ROOT_PATH
}
/include
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/glut-3.7/include"
"
${
VS_SEARCH_PATH
}
/freeglut-3.0.0/include"
"
${
VS_SEARCH_PATH
}
/freeglut-2.8.1/include"
)
FIND_LIBRARY
(
GLUT_release_LIBRARY NAMES glut32 glut freeglut
PATHS
${
OPENGL_LIBRARY_DIR
}
${
GLUT_ROOT_PATH
}
/Release
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/glut-3.7/lib"
"
${
VS_SEARCH_PATH
}
/freeglut-3.0.0/lib"
"
${
VS_SEARCH_PATH
}
/freeglut-2.8.1/lib"
)
GET_FILENAME_COMPONENT
(
GLUT_LIBRARY_DIR
${
GLUT_release_LIBRARY
}
PATH
)
FIND_LIBRARY
(
GLUT_debug_LIBRARY NAMES glut32d glutd freeglutd
PATHS
${
OPENGL_LIBRARY_DIR
}
${
GLUT_ROOT_PATH
}
/Release
"
${
CMAKE_WINDOWS_LIBS_DIR
}
/glut-3.7/lib"
"
${
VS_SEARCH_PATH
}
/freeglut-3.0.0/lib"
"
${
VS_SEARCH_PATH
}
/freeglut-2.8.1/lib"
)
set
(
GLUT_glut_LIBRARY optimized
${
GLUT_release_LIBRARY
}
debug
${
GLUT_debug_LIBRARY
}
CACHE STRING
"Path to the glut libraries"
)
ELSE
(
WIN32
)
IF
(
APPLE
)
# These values for Apple could probably do with improvement.
FIND_PATH
(
GLUT_INCLUDE_DIR glut.h
/System/Library/Frameworks/GLUT.framework/Versions/A/Headers
${
OPENGL_LIBRARY_DIR
}
)
SET
(
GLUT_glut_LIBRARY
"-framework GLUT"
CACHE STRING
"GLUT library for OSX"
)
SET
(
GLUT_cocoa_LIBRARY
"-framework Cocoa"
CACHE STRING
"Cocoa framework for OSX"
)
ELSE
(
APPLE
)
FIND_PATH
(
GLUT_INCLUDE_DIR GL/glut.h
/usr/include/GL
/usr/openwin/share/include
/usr/openwin/include
/opt/graphics/OpenGL/include
/opt/graphics/OpenGL/contrib/libglut
)
FIND_LIBRARY
(
GLUT_glut_LIBRARY glut
/usr/openwin/lib
)
FIND_LIBRARY
(
GLUT_Xi_LIBRARY Xi
/usr/openwin/lib
)
FIND_LIBRARY
(
GLUT_Xmu_LIBRARY Xmu
/usr/openwin/lib
)
ENDIF
(
APPLE
)
ENDIF
(
WIN32
)
SET
(
GLUT_FOUND
"NO"
)
IF
(
GLUT_INCLUDE_DIR
)
IF
(
GLUT_glut_LIBRARY
)
# Is -lXi and -lXmu required on all platforms that have it?
# If not, we need some way to figure out what platform we are on.
SET
(
GLUT_LIBRARIES
${
GLUT_glut_LIBRARY
}
${
GLUT_Xmu_LIBRARY
}
${
GLUT_Xi_LIBRARY
}
${
GLUT_cocoa_LIBRARY
}
)
SET
(
GLUT_FOUND
"YES"
)
#The following deprecated settings are for backwards compatibility with CMake1.4
SET
(
GLUT_LIBRARY
${
GLUT_LIBRARIES
}
)
SET
(
GLUT_INCLUDE_PATH
${
GLUT_INCLUDE_DIR
}
)
ENDIF
(
GLUT_glut_LIBRARY
)
ENDIF
(
GLUT_INCLUDE_DIR
)
MARK_AS_ADVANCED
(
GLUT_INCLUDE_DIR
GLUT_glut_LIBRARY
GLUT_Xmu_LIBRARY
GLUT_Xi_LIBRARY
)
cmake/plugin.cmake
View file @
0ebf86d3
...
...
@@ -528,7 +528,6 @@ function (_build_openflipper_plugin plugin)
${${
_PLUGIN
}
_INCDIRS
}
${
OPENGL_INCLUDE_DIR
}
${
GLEW_INCLUDE_DIR
}
${
GLUT_INCLUDE_DIR
}
${
CMAKE_BINARY_DIR
}
/OpenFlipper/PluginLib
${
PACKAGE_INCLUDES
}
${${
_PLUGIN
}
_TYPE_INCLUDES
}
...
...
@@ -693,15 +692,12 @@ function (_build_openflipper_plugin plugin)
)
if
(
WIN32
)
# Visual studio requires our plugins to link with GLUT
find_package
(
GLUT
)
# generate dllinport defines
add_definitions
(
-DACGDLL -DUSEACG -DPLUGINLIBDLL -DUSEPLUGINLIBDLL
-DFREEGLUT_LIB_PRAGMAS=0
)
add_definitions
(
-DACGDLL -DUSEACG -DPLUGINLIBDLL -DUSEPLUGINLIBDLL
)
target_link_libraries
(
Plugin-
${
plugin
}
${
OPENMESH_LIBRARIES
}
ACG
OpenFlipperPluginLib
${
GLUT_LIBRARIES
}
)
# copy plugin dll file to "Build" directory
...
...
cmake/type.cmake
View file @
0ebf86d3
...
...
@@ -17,7 +17,6 @@ if (WIN32)
-DBUILDOBJECTTYPEDLL
-DACGDLL
-DUSEACG
-DFREEGLUT_LIB_PRAGMAS=0
)
endif
()
...
...
@@ -43,7 +42,6 @@ include_directories (
${
CMAKE_CURRENT_BINARY_DIR
}
${
OPENGL_INCLUDE_DIR
}
${
GLEW_INCLUDE_DIR
}
${
GLUT_INCLUDE_DIR
}
)
# remove template cc files from source file list
...
...
@@ -73,7 +71,6 @@ target_link_libraries (${TYPENAME}
${
QT_LIBRARIES
}
${
OPENGL_LIBRARIES
}
${
GLEW_LIBRARY
}
${
GLUT_LIBRARIES
}
OpenFlipperPluginLib
)
libs_required/ACG/CMakeLists.txt
View file @
0ebf86d3
...
...
@@ -16,7 +16,7 @@ endif ()
acg_openmp
()
# check for OpenGL, GLEW
and GLUT
as our required dependencies
# check for OpenGL, GLEW as our required dependencies
find_package
(
OpenGL
)
if
(
NOT OPENGL_FOUND
)
message
(
FATAL_ERROR
"OpengGL not found!"
)
...
...
@@ -27,11 +27,6 @@ if (NOT GLEW_FOUND)
message
(
FATAL_ERROR
"GLEW not found!"
)
endif
()
find_package
(
GLUT
)
if
(
NOT GLUT_FOUND
)
message
(
FATAL_ERROR
"GLUT not found!"
)
endif
()
find_package
(
OpenMesh
)
if
(
NOT OPENMESH_FOUND
)
message
(
FATAL_ERROR
"OpenMesh not found!"
)
...
...
@@ -42,8 +37,7 @@ set(INCLUDE_DIRS ${OPENMESH_INCLUDE_DIRS}
${
CMAKE_CURRENT_SOURCE_DIR
}
/ShaderUtils
${
CMAKE_CURRENT_BINARY_DIR
}
${
OPENGL_INCLUDE_DIR
}
${
GLEW_INCLUDE_DIR
}
${
GLUT_INCLUDE_DIR
}
)
${
GLEW_INCLUDE_DIR
}
)
set
(
ADDITIONAL_LINK_LIBRARIES
""
)
set
(
ADDITIONAL_BUILD_DIRS
""
)
...
...
@@ -99,7 +93,7 @@ set (directories
# generate dllexport macros on windows
if
(
WIN32
)
add_definitions
(
-DACGDLL
-DFREEGLUT_LIB_PRAGMAS=0
)
add_definitions
(
-DACGDLL
)
remove_definitions
(
-DUSEACG
)
endif
()
...
...
@@ -142,7 +136,6 @@ target_link_libraries ( ACG ${OPENMESH_LIBRARIES}
${
QT_LIBRARIES
}
${
OPENGL_LIBRARIES
}
${
GLEW_LIBRARY
}
${
GLUT_LIBRARIES
}
${
ADDITIONAL_LINK_LIBRARIES
}
)
#===================================================================
...
...
libs_required/ACG/GL/gl.hh
View file @
0ebf86d3
...
...
@@ -55,7 +55,6 @@
#if defined(ARCH_DARWIN)
#include
<glut.h>
#include
<OpenGL/gl.h>
#elif defined(WIN32)
...
...
@@ -65,11 +64,9 @@
// but a lot with static linking
// # define GLEW_STATIC 1
#include
<gl/glew.h>
#include
<gl/glut.h>
#else
#include
<GL/glut.h>
#include
<GL/gl.h>
#endif
...
...
libs_required/ACG/GL/gltext.cc
deleted
100644 → 0
View file @
7d591916
/*===========================================================================*\
* *
* 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.0
f
,
float
(
viewport
[
2
]),
0.0
f
,
float
(
viewport
[
3
]),
-
1.0
f
,
1.0
f
);
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
//=============================================================================
libs_required/ACG/GL/gltext.hh
deleted
100644 → 0
View file @
7d591916
/*===========================================================================*\
* *
* 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
//=============================================================================
libs_required/ACG/Scenegraph/CoordFrameNode.cc
View file @
0ebf86d3
...
...
@@ -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
;
...
...
libs_required/ACG/Scenegraph/ManipulatorNode.cc
View file @
0ebf86d3
...
...
@@ -230,7 +230,6 @@ ManipulatorNode::draw(GLState& _state, const DrawModes::DrawMode& /* _drawMode *
sphere
.
draw_primitive
();
glPolygonMode
(
GL_FRONT
,
previous
[
0
]);
glPolygonMode
(
GL_BACK
,
previous
[
1
]);
}
}
...
...
libs_required/ACG/Scenegraph/TextNode.cc
View file @
0ebf86d3
...
...
@@ -434,8 +434,8 @@ updateVBO() {
// *--*--*----*-*
QFontMetricsF
metric
(
qfont_
);
qreal
avgWidth
=
metric
.
averageCharWidth
();
int
height
=
nearestPowerOfTwo
(
metric
.
height
());
float
lastCharRight
=
0.0
f
;
const
int
height
=
nearestPowerOfTwo
(
metric
.
height
());
const
float
lastCharRight
=
0.0
f
;
for
(
unsigned
int
i
=
0
;
i
<
text_
.
size
();
++
i
)
{
// left and right vertex coordinates
...
...
@@ -459,14 +459,14 @@ updateVBO() {
metricWidth
+=
leftBearing
+
rightBearing
;
#endif
float
widthTx
=
(
float
)
metricWidth
/
(
float
)
imageWidth_
;
float
heightTx
=
(
float
)
height
/
(
float
)
imageHeight_
;
const
float
widthTx
=
(
float
)
metricWidth
/
(
float
)
imageWidth_
;
const
float
heightTx
=
(
float
)
height
/
(
float
)
imageHeight_
;
// get the starting position of the character in the texture
// note that the characters are drawn aligned to the bottom left in in the texture
float
leftTx
=
((
float
)
charToIndex_
[
text_
[
i
]].
first
)
/
(
float
)
columns_
;
float
rightTx
=
leftTx
+
widthTx
;
float
bottomTx
=
charToIndex_
[
text_
[
i
]].
second
/
(
float
)
rows_
;
float
topTx
=
bottomTx
+
heightTx
;
const
float
leftTx
=
((
float
)
charToIndex_
[
text_
[
i
]].
first
)
/
(
float
)
columns_
;
const
float
rightTx
=
leftTx
+
widthTx
;
const
float
bottomTx
=
charToIndex_
[
text_
[
i
]].
second
/
(
float
)
rows_
;
const
float
topTx
=
bottomTx
+
heightTx
;
// bottom left
vertexBuffer_
.
push_back
(
left
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment