69 fFont.SetDepth(
fM->GetExtrude());
75 fFont.BBox(
fM->GetText(), bbox[0], bbox[1], bbox[2],
76 bbox[3], bbox[4], bbox[5]);
81 bbox[2] = bbox[5] *
fM->GetExtrude();
82 bbox[5] = tmp *
fM->GetExtrude();
84 bbox[2] = -0.005*(bbox[4] - bbox[1]);
85 bbox[5] = -0.005*(bbox[4] - bbox[1]);
98 fFont.PreRender(
fM->GetAutoLighting(),
fM->GetLighting());
99 switch (
fFont.GetMode())
108 glGetDoublev(GL_MODELVIEW_MATRIX, mm);
109 glGetIntegerv(GL_VIEWPORT, vp);
111 fX[0][0] =
fX[0][1] =
fX[0][2] = 0;
113 gluProject(
fX[0][0],
fX[0][1],
fX[0][2], mm, pm, vp, &
x, &
y, &z);
115 fFont.BBox(
fM->GetText(), bbox[0], bbox[1], bbox[2],
116 bbox[3], bbox[4], bbox[5]);
117 gluUnProject(
x + bbox[0],
y + bbox[1], z, mm, pm, vp, &
fX[0][0], &
fX[0][1], &
fX[0][2]);
118 gluUnProject(
x + bbox[3],
y + bbox[1], z, mm, pm, vp, &
fX[1][0], &
fX[1][1], &
fX[1][2]);
119 gluUnProject(
x + bbox[3],
y + bbox[4], z, mm, pm, vp, &
fX[2][0], &
fX[2][1], &
fX[2][2]);
120 gluUnProject(
x + bbox[0],
y + bbox[4], z, mm, pm, vp, &
fX[3][0], &
fX[3][1], &
fX[3][2]);
129 glRasterPos3i(0, 0, 0);
136 glPolygonOffset(
fM->GetPolygonOffset(0),
fM->GetPolygonOffset(1));
137 if (
fM->GetExtrude() != 1.0) {
139 glScalef(1.0f, 1.0f,
fM->GetExtrude());
147 glPolygonOffset(
fM->GetPolygonOffset(0),
fM->GetPolygonOffset(1));
151 throw(eH +
"unsupported FTGL-type.");
Bool_t SetModel(TObject *obj, const Option_t *opt=nullptr) override
Set model object.
void DirectDraw(TGLRnrCtx &rnrCtx) const override
Actual rendering code.
TEveTextGL(const TEveTextGL &)