15#define OSGTEXT_GLYPH 1
93 texelMargin(margin) {}
262 const char*
className()
const {
return "GlyphTexture"; }
This class provides an object-oriented thread mutex interface.
Definition Mutex:31
Definition ReentrantMutex:24
GlyphGeometries _glyphGeometries
Definition Glyph:251
const osg::Vec3Array * getRawVertexArray() const
Definition Glyph:219
const osg::Geometry::PrimitiveSetList & getRawFacePrimitiveSetList() const
Definition Glyph:223
std::list< osg::ref_ptr< GlyphGeometry > > GlyphGeometries
Definition Glyph:250
float _horizontalAdvance
Definition Glyph:238
Font * _font
Definition Glyph:231
osg::BoundingBox _bb
Definition Glyph:243
void setWidth(float width)
Definition Glyph:191
osg::Geometry::PrimitiveSetList & getRawFacePrimitiveSetList()
Definition Glyph:222
void setBoundingBox(osg::BoundingBox &bb)
Definition Glyph:209
Font * getFont()
Definition Glyph:186
virtual void setThreadSafeRefUnref(bool threadSafe)
void setVerticalAdvance(float advance)
Definition Glyph:206
osg::Vec2 _verticalBearing
Definition Glyph:240
GlyphGeometry * getGlyphGeometry(const Style *style)
void setHorizontalBearing(const osg::Vec2 &bearing)
Definition Glyph:197
void setRawVertexArray(osg::Vec3Array *vertices)
Definition Glyph:217
float _height
Definition Glyph:235
float _width
Definition Glyph:234
float _verticalAdvance
Definition Glyph:241
void setVerticalBearing(const osg::Vec2 &bearing)
Definition Glyph:203
void setHeight(float height)
Definition Glyph:194
const osg::BoundingBox & getBoundingBox() const
Definition Glyph:210
unsigned int _glyphCode
Definition Glyph:232
osg::Vec2 _horizontalBearing
Definition Glyph:237
float getVerticalAdvance() const
Definition Glyph:207
float getHorizontalAdvance() const
Definition Glyph:201
unsigned int getGlyphCode() const
Definition Glyph:189
virtual ~Glyph3D()
Definition Glyph:229
float getWidth() const
Definition Glyph:192
float getHeight() const
Definition Glyph:195
Glyph3D(Font *font, unsigned int glyphCode)
const osg::Vec2 & getHorizontalBearing() const
Definition Glyph:198
void setHorizontalAdvance(float advance)
Definition Glyph:200
osg::Geometry::PrimitiveSetList _rawFacePrimitiveSetList
Definition Glyph:248
const Font * getFont() const
Definition Glyph:187
osg::ref_ptr< osg::Vec3Array > _rawVertexArray
Definition Glyph:247
osg::Vec3Array * getRawVertexArray()
Definition Glyph:218
const osg::Vec2 & getVerticalBearing() const
Definition Glyph:204
osg::ref_ptr< osg::Geode > _geode
Definition Glyph:169
void setVertexArray(osg::Vec3Array *va)
Definition Glyph:147
osg::ref_ptr< Style > _style
Definition Glyph:168
bool match(const Style *style) const
osg::ref_ptr< osg::Vec3Array > _vertices
Definition Glyph:171
osg::Geometry::PrimitiveSetList & getBackPrimitiveSetList()
Definition Glyph:161
void setup(const Glyph3D *glyph, const Style *style)
osg::Geometry::PrimitiveSetList _wallPrimitiveSetList
Definition Glyph:175
osg::Vec3Array * getVertexArray() const
Definition Glyph:149
osg::Geometry::PrimitiveSetList _backPrimitiveSetList
Definition Glyph:176
osg::ref_ptr< osg::Geometry > _geometry
Definition Glyph:170
osg::Geometry::PrimitiveSetList _frontPrimitiveSetList
Definition Glyph:174
osg::Geometry::PrimitiveSetList & getFrontPrimitiveSetList()
Definition Glyph:157
osg::Geometry * getGeometry() const
Definition Glyph:144
osg::ref_ptr< osg::Vec3Array > _normals
Definition Glyph:172
void setNormalArray(osg::Vec3Array *na)
Definition Glyph:152
virtual void setThreadSafeRefUnref(bool threadSafe)
osg::Geometry::PrimitiveSetList & getWallPrimitiveSetList()
Definition Glyph:159
osg::Vec3Array * getNormalArray() const
Definition Glyph:154
osg::Geode * getGeode() const
Definition Glyph:143
void addGlyph(Glyph *glyph, int posX, int posY)
virtual int compare(const osg::StateAttribute &rhs) const
std::vector< const Glyph * > GlyphPtrList
Definition Glyph:301
GlyphRefList _glyphs
Definition Glyph:304
ShaderTechnique _shaderTechnique
Definition Glyph:294
int _partUsedX
Definition Glyph:297
int getTexelMargin(const Glyph *glyph)
virtual void resizeGLObjectBuffers(unsigned int maxSize)
GlyphBuffer _glyphsToSubload
Definition Glyph:305
virtual void setThreadSafeRefUnref(bool threadSafe)
int getEffectMargin(const Glyph *glyph)
osg::Image * createImage()
void copyGlyphImage(Glyph *glyph, Glyph::TextureInfo *info)
int _partUsedY
Definition Glyph:298
const char * className() const
Definition Glyph:262
void setShaderTechnique(ShaderTechnique technique)
Definition Glyph:267
osg::buffered_object< GlyphPtrList > GlyphBuffer
Definition Glyph:302
ShaderTechnique getShaderTechnique() const
Definition Glyph:269
bool getSpaceForGlyph(Glyph *glyph, int &posX, int &posY)
std::vector< osg::ref_ptr< Glyph > > GlyphRefList
Definition Glyph:300
OpenThreads::Mutex _mutex
Definition Glyph:307
int _usedY
Definition Glyph:296
Font * getFont()
Definition Glyph:55
OpenThreads::ReentrantMutex _textureInfoListMutex
Definition Glyph:130
unsigned int _glyphCode
Definition Glyph:114
float _height
Definition Glyph:119
TextureInfoList _textureInfoList
Definition Glyph:128
void setHorizontalAdvance(float advance)
float _verticalAdvance
Definition Glyph:125
const Font * getFont() const
Definition Glyph:56
float _horizontalAdvance
Definition Glyph:122
float _width
Definition Glyph:118
const osg::Vec2 & getHorizontalBearing() const
void setFontResolution(const FontResolution &fontRes)
Definition Glyph:60
Glyph(Font *font, unsigned int glyphCode)
void setTextureInfo(ShaderTechnique technique, TextureInfo *info)
void setVerticalBearing(const osg::Vec2 &bearing)
osg::Vec2 _verticalBearing
Definition Glyph:124
unsigned int getGlyphCode() const
Definition Glyph:58
const TextureInfo * getTextureInfo(ShaderTechnique technique) const
TextureInfo * getOrCreateTextureInfo(ShaderTechnique technique)
void setHorizontalBearing(const osg::Vec2 &bearing)
float getVerticalAdvance() const
FontResolution _fontResolution
Definition Glyph:116
osg::Vec2 _horizontalBearing
Definition Glyph:121
std::vector< osg::ref_ptr< TextureInfo > > TextureInfoList
Definition Glyph:127
const FontResolution & getFontResolution() const
Definition Glyph:61
const osg::Vec2 & getVerticalBearing() const
float getHeight() const
Definition Glyph:67
void setHeight(float height)
Definition Glyph:66
Font * _font
Definition Glyph:113
float getWidth() const
Definition Glyph:64
float getHorizontalAdvance() const
void setWidth(float width)
Definition Glyph:63
void setVerticalAdvance(float advance)
Definition osgText/Style:72
Definition BoundingBox:34
std::vector< ref_ptr< PrimitiveSet > > PrimitiveSetList
Definition Geometry:102
Definition StateAttribute:77
A concrete array holding elements of type T.
Definition Array:243
std::pair< unsigned int, unsigned int > FontResolution
Definition KerningType:20
ShaderTechnique
Definition Glyph:42
@ SIGNED_DISTANCE_FIELD
Definition Glyph:45
@ ALL_FEATURES
Definition Glyph:46
@ GREYSCALE
Definition Glyph:44
@ NO_TEXT_SHADER
Definition Glyph:43
#define OSGTEXT_EXPORT
Definition osgText/Export:39
osg::Vec2 minTexCoord
Definition Glyph:98
GlyphTexture * texture
Definition Glyph:95
TextureInfo()
Definition Glyph:83
float texelMargin
Definition Glyph:100
int texturePositionX
Definition Glyph:96
osg::Vec2 maxTexCoord
Definition Glyph:99
int texturePositionY
Definition Glyph:97
TextureInfo(GlyphTexture *tex, int x, int y, const osg::Vec2 &mintc, const osg::Vec2 &maxtc, float margin)
Definition Glyph:87