예제 #1
0
 def __init__(self, text, parent, size=72, shadow=0, hspace=8, font=None):
     self.transform = trinity.EveTransform()
     self.transform.mesh = trinity.Tr2Mesh()
     self.transform.mesh.geometryResPath = 'res:/Model/Global/zsprite.gr2'
     self.transform.modifier = 1
     self.measurer = trinity.Tr2FontMeasurer()
     self.measurer.limit = 0
     if font is None:
         font = _GetDefaultFont()
     self.measurer.font = font
     self.measurer.fontSize = size
     self.measurer.letterSpace = hspace
     area = trinity.Tr2MeshArea()
     self.transform.mesh.transparentAreas.append(area)
     area.effect = self.effect = trinity.Tr2Effect()
     sampler = list(self.effect.samplerOverrides.GetDefaultValue())
     sampler[0] = 'DiffuseMapSampler'
     sampler[1] = trinity.TRITADDRESS_CLAMP
     sampler[2] = trinity.TRITADDRESS_CLAMP
     self.effect.samplerOverrides.append(tuple(sampler))
     self.effect.effectFilePath = 'res:/Graphics/Effect/Managed/Space/SpecialFX/TextureColor.fx'
     diffuseColor = trinity.Tr2Vector4Parameter()
     diffuseColor.name = 'DiffuseColor'
     self.effect.parameters.append(diffuseColor)
     self.diffuseColor = diffuseColor
     self.diffuseMap = trinity.TriTextureParameter()
     self.diffuseMap.name = 'DiffuseMap'
     self.effect.resources.append(self.diffuseMap)
     parent.children.append(self.transform)
     trinity.device.RegisterResource(self)
     self.SetText(text)
예제 #2
0
 def ApplyAttributes(self, attributes):
     uiprimitives.VisibleBase.ApplyAttributes(self, attributes)
     self.fadeSize = self.ScaleDpi(COLUMNFADESIZE)
     self.rightAligned = False
     measurer = trinity.Tr2FontMeasurer()
     measurer.limit = 0
     measurer.fontSize = uicore.ScaleDpi(uicore.fontSizeFactor * attributes.fontSize)
     measurer.font = str(uicore.font.GetFontDefault())
     measurer.letterSpace = 0
     self.renderObject.fontMeasurer = measurer
     self.renderObject.shadowOffset = (0, 1)
     self.measurer = measurer
예제 #3
0
 def Load(self):
     self.isLoaded = True
     if self.measurer is None:
         measurer = trinity.Tr2FontMeasurer()
         measurer.limit = 0
         measurer.font = self.fontPath
         measurer.fontSize = ScaleDpi(self.fontSize)
         measurer.letterSpace = ScaleDpi(self.letterSpace)
         measurer.AddText(StripTags(self.GetLabelText()))
         measurer.CommitText(0, measurer.ascender)
         self.measurer = measurer
     textSprite = trinity.Tr2Sprite2dTextObject()
     textSprite.fontMeasurer = self.measurer
     textSprite.color = self.fontColor
     textSprite.blendMode = trinity.TR2_SBM_ADD
     self.markerContainer.renderObject.children.append(textSprite)
     self.textSprite = textSprite
     height = self.measurer.ascender - self.measurer.descender
     width = self.measurer.cursorX
     self.textSprite.textWidth = width
     self.textSprite.textHeight = height
     self.markerContainer.pos = (0, 0, ReverseScaleDpi(width),
                                 ReverseScaleDpi(height))
예제 #4
0
 def __init__(self, text, parent, size=72, shadow=0, hspace=8):
     self.transform = trinity.EveTransform()
     self.transform.mesh = trinity.Tr2Mesh()
     self.transform.mesh.geometryResPath = 'res:/Model/Global/zsprite.gr2'
     self.transform.modifier = 1
     self.measurer = trinity.Tr2FontMeasurer()
     self.measurer.limit = 0
     fontFamily = uicore.font.GetFontFamilyBasedOnClientLanguageID()[
         fontConst.STYLE_DEFAULT]
     self.measurer.font = fontFamily[2]
     self.measurer.fontSize = size
     self.measurer.letterSpace = hspace
     self.measurer.AddText(text.upper())
     height = self.measurer.ascender - self.measurer.descender
     width = self.measurer.cursorX
     self.measurer.CommitText(0, self.measurer.ascender)
     self.transform.scaling = (width, height, 0)
     area = trinity.Tr2MeshArea()
     self.transform.mesh.transparentAreas.append(area)
     area.effect = self.effect = trinity.Tr2Effect()
     sampler = list(self.effect.samplerOverrides.GetDefaultValue())
     sampler[0] = 'DiffuseMapSampler'
     sampler[1] = trinity.TRITADDRESS_CLAMP
     sampler[2] = trinity.TRITADDRESS_CLAMP
     self.effect.samplerOverrides.append(tuple(sampler))
     self.effect.effectFilePath = 'res:/Graphics/Effect/Managed/Space/SpecialFX/TextureColor.fx'
     diffuseColor = trinity.Tr2Vector4Parameter()
     diffuseColor.name = 'DiffuseColor'
     self.effect.parameters.append(diffuseColor)
     self.diffuseColor = diffuseColor
     self.diffuseMap = trinity.TriTextureParameter()
     self.diffuseMap.name = 'DiffuseMap'
     self.effect.resources.append(self.diffuseMap)
     parent.children.append(self.transform)
     trinity.device.RegisterResource(self)
     self.OnCreate(trinity.device)