|
|
|||
File indexing completed on 2025-12-16 10:15:00
0001 /* 0002 * FTGL - OpenGL font library 0003 * 0004 * Copyright (c) 2001-2004 Henry Maddocks <ftgl@opengl.geek.nz> 0005 * Copyright (c) 2008 Sam Hocevar <sam@hocevar.net> 0006 * Copyright (c) 2008 Sean Morrison <learner@brlcad.org> 0007 * 0008 * Permission is hereby granted, free of charge, to any person obtaining 0009 * a copy of this software and associated documentation files (the 0010 * "Software"), to deal in the Software without restriction, including 0011 * without limitation the rights to use, copy, modify, merge, publish, 0012 * distribute, sublicense, and/or sell copies of the Software, and to 0013 * permit persons to whom the Software is furnished to do so, subject to 0014 * the following conditions: 0015 * 0016 * The above copyright notice and this permission notice shall be 0017 * included in all copies or substantial portions of the Software. 0018 * 0019 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 0020 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 0021 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 0022 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 0023 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 0024 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 0025 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 0026 */ 0027 0028 #ifndef __ftgl__ 0029 # warning This header is deprecated. Please use <FTGL/ftgl.h> from now. 0030 # include <FTGL/ftgl.h> 0031 #endif 0032 0033 #ifndef __FTExtrudeGlyph__ 0034 #define __FTExtrudeGlyph__ 0035 0036 #ifdef __cplusplus 0037 0038 0039 /** 0040 * FTExtrudeGlyph is a specialisation of FTGlyph for creating tessellated 0041 * extruded polygon glyphs. 0042 */ 0043 class FTGL_EXPORT FTExtrudeGlyph : public FTGlyph 0044 { 0045 public: 0046 /** 0047 * Constructor. Sets the Error to Invalid_Outline if the glyph isn't 0048 * an outline. 0049 * 0050 * @param glyph The Freetype glyph to be processed 0051 * @param depth The distance along the z axis to extrude the glyph 0052 * @param frontOutset outset contour size 0053 * @param backOutset outset contour size 0054 * @param useDisplayList Enable or disable the use of Display Lists 0055 * for this glyph 0056 * <code>true</code> turns ON display lists. 0057 * <code>false</code> turns OFF display lists. 0058 */ 0059 FTExtrudeGlyph(FT_GlyphSlot glyph, float depth, float frontOutset, 0060 float backOutset, bool useDisplayList); 0061 0062 /** 0063 * Destructor 0064 */ 0065 virtual ~FTExtrudeGlyph(); 0066 0067 /** 0068 * Render this glyph at the current pen position. 0069 * 0070 * @param pen The current pen position. 0071 * @param renderMode Render mode to display 0072 * @return The advance distance for this glyph. 0073 */ 0074 virtual const FTPoint& Render(const FTPoint& pen, int renderMode); 0075 }; 0076 0077 #define FTExtrdGlyph FTExtrudeGlyph 0078 0079 #endif //__cplusplus 0080 0081 FTGL_BEGIN_C_DECLS 0082 0083 /** 0084 * Create a specialisation of FTGLglyph for creating tessellated 0085 * extruded polygon glyphs. 0086 * 0087 * @param glyph The Freetype glyph to be processed 0088 * @param depth The distance along the z axis to extrude the glyph 0089 * @param frontOutset outset contour size 0090 * @param backOutset outset contour size 0091 * @param useDisplayList Enable or disable the use of Display Lists 0092 * for this glyph 0093 * <code>true</code> turns ON display lists. 0094 * <code>false</code> turns OFF display lists. 0095 * @return An FTGLglyph* object. 0096 */ 0097 FTGL_EXPORT FTGLglyph *ftglCreateExtrudeGlyph(FT_GlyphSlot glyph, float depth, 0098 float frontOutset, float backOutset, 0099 int useDisplayList); 0100 0101 FTGL_END_C_DECLS 0102 0103 #endif // __FTExtrudeGlyph__ 0104
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|