Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
7a91a493
Kaydet (Commit)
7a91a493
authored
Agu 09, 2014
tarafından
weigao
Kaydeden (comit)
Markus Mohrhard
Agu 13, 2014
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
add data update text rendering
Change-Id: I022bb00b3704fd3e6bc00a625016716cc7092a99
üst
76fa5481
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
46 additions
and
13 deletions
+46
-13
GL3DBarChart.cxx
chart2/source/view/charttypes/GL3DBarChart.cxx
+38
-10
GL3DBarChart.hxx
chart2/source/view/inc/GL3DBarChart.hxx
+8
-3
No files found.
chart2/source/view/charttypes/GL3DBarChart.cxx
Dosyayı görüntüle @
7a91a493
...
@@ -404,9 +404,11 @@ GL3DBarChart::GL3DBarChart(
...
@@ -404,9 +404,11 @@ GL3DBarChart::GL3DBarChart(
mSelectBarId
(
0
),
mSelectBarId
(
0
),
miScrollRate
(
0
),
miScrollRate
(
0
),
miFrameCount
(
0
),
miFrameCount
(
0
),
miDataUpdateCounter
(
0
),
mbScrollFlg
(
false
),
mbScrollFlg
(
false
),
mbScreenTextNewRender
(
false
),
mbScreenTextNewRender
(
false
),
maFPS
(
OUString
(
"Render FPS: 0"
))
maFPS
(
OUString
(
"Render FPS: 0"
)),
maDataUpdateFPS
(
OUString
(
"Data Update FPS: 0"
))
{
{
if
(
BENCH_MARK_MODE
)
if
(
BENCH_MARK_MODE
)
{
{
...
@@ -423,8 +425,10 @@ GL3DBarChart::GL3DBarChart(
...
@@ -423,8 +425,10 @@ GL3DBarChart::GL3DBarChart(
maTimer
.
SetTimeout
(
DATA_UPDATE_TIME
);
maTimer
.
SetTimeout
(
DATA_UPDATE_TIME
);
maTimer
.
SetTimeoutHdl
(
LINK
(
this
,
GL3DBarChart
,
updateTimer
));
maTimer
.
SetTimeoutHdl
(
LINK
(
this
,
GL3DBarChart
,
updateTimer
));
maTimer
.
Start
();
maTimer
.
Start
();
osl_getSystemTime
(
&
mafpsRenderStartTime
);
osl_getSystemTime
(
&
maFPSRenderStartTime
);
osl_getSystemTime
(
&
mafpsRenderEndTime
);
osl_getSystemTime
(
&
maFPSRenderEndTime
);
osl_getSystemTime
(
&
maDataUpdateStartTime
);
osl_getSystemTime
(
&
maDataUpdateEndTime
);
}
}
Size
aSize
=
mrWindow
.
GetSizePixel
();
Size
aSize
=
mrWindow
.
GetSizePixel
();
mpRenderer
->
SetSize
(
aSize
);
mpRenderer
->
SetSize
(
aSize
);
...
@@ -665,6 +669,7 @@ void GL3DBarChart::create3DShapes(const boost::ptr_vector<VDataSeries>& rDataSer
...
@@ -665,6 +669,7 @@ void GL3DBarChart::create3DShapes(const boost::ptr_vector<VDataSeries>& rDataSer
mrWindow
.
getContext
().
resetCurrent
();
mrWindow
.
getContext
().
resetCurrent
();
mpRenderThread
->
launch
();
mpRenderThread
->
launch
();
}
}
miDataUpdateCounter
++
;
mbNeedsNewRender
=
true
;
mbNeedsNewRender
=
true
;
}
}
...
@@ -912,9 +917,9 @@ void GL3DBarChart::contextDestroyed()
...
@@ -912,9 +917,9 @@ void GL3DBarChart::contextDestroyed()
mbValidContext
=
false
;
mbValidContext
=
false
;
}
}
void
GL3DBarChart
::
addScreenTextShape
(
OUString
&
nStr
,
glm
::
vec2
rLeftTop
,
float
nTextHeight
,
glm
::
vec3
rPos
)
void
GL3DBarChart
::
addScreenTextShape
(
OUString
&
nStr
,
glm
::
vec2
rLeftTop
,
float
nTextHeight
,
glm
::
vec3
rPos
,
sal_uInt32
nEvent
)
{
{
maScreenTextShapes
.
push_back
(
new
opengl3D
::
ScreenText
(
mpRenderer
.
get
(),
*
mpTextCache
,
nStr
,
0
));
maScreenTextShapes
.
push_back
(
new
opengl3D
::
ScreenText
(
mpRenderer
.
get
(),
*
mpTextCache
,
nStr
,
nEvent
));
opengl3D
::
TextCacheItem
tmpTextCache
=
mpTextCache
->
getText
(
nStr
);
opengl3D
::
TextCacheItem
tmpTextCache
=
mpTextCache
->
getText
(
nStr
);
float
rectWidth
=
(
float
)
tmpTextCache
.
maSize
.
Width
()
/
(
float
)
tmpTextCache
.
maSize
.
Height
()
*
0.05
;
float
rectWidth
=
(
float
)
tmpTextCache
.
maSize
.
Width
()
/
(
float
)
tmpTextCache
.
maSize
.
Height
()
*
0.05
;
opengl3D
::
ScreenText
*
pScreenText
=
static_cast
<
opengl3D
::
ScreenText
*>
(
&
maScreenTextShapes
.
back
());
opengl3D
::
ScreenText
*
pScreenText
=
static_cast
<
opengl3D
::
ScreenText
*>
(
&
maScreenTextShapes
.
back
());
...
@@ -923,17 +928,17 @@ void GL3DBarChart::addScreenTextShape(OUString &nStr, glm::vec2 rLeftTop, float
...
@@ -923,17 +928,17 @@ void GL3DBarChart::addScreenTextShape(OUString &nStr, glm::vec2 rLeftTop, float
void
GL3DBarChart
::
updateRenderFPS
()
void
GL3DBarChart
::
updateRenderFPS
()
{
{
int
aDeltaMs
=
calcTimeInterval
(
ma
fpsRenderStartTime
,
mafps
RenderEndTime
);
int
aDeltaMs
=
calcTimeInterval
(
ma
FPSRenderStartTime
,
maFPS
RenderEndTime
);
if
(
aDeltaMs
>=
500
)
if
(
aDeltaMs
>=
500
)
{
{
osl_getSystemTime
(
&
ma
fps
RenderEndTime
);
osl_getSystemTime
(
&
ma
FPS
RenderEndTime
);
aDeltaMs
=
calcTimeInterval
(
ma
fpsRenderStartTime
,
mafps
RenderEndTime
);
aDeltaMs
=
calcTimeInterval
(
ma
FPSRenderStartTime
,
maFPS
RenderEndTime
);
int
iFPS
=
miFrameCount
*
1000
/
aDeltaMs
;
int
iFPS
=
miFrameCount
*
1000
/
aDeltaMs
;
maFPS
=
OUString
(
"Render FPS: "
)
+
OUString
::
number
(
iFPS
);
maFPS
=
OUString
(
"Render FPS: "
)
+
OUString
::
number
(
iFPS
);
miFrameCount
=
0
;
miFrameCount
=
0
;
osl_getSystemTime
(
&
ma
fps
RenderStartTime
);
osl_getSystemTime
(
&
ma
FPS
RenderStartTime
);
}
}
osl_getSystemTime
(
&
ma
fps
RenderEndTime
);
osl_getSystemTime
(
&
ma
FPS
RenderEndTime
);
addScreenTextShape
(
maFPS
,
glm
::
vec2
(
-
0.99
f
,
0.99
f
),
0.1
f
,
glm
::
vec3
(
0.0
,
0.0
,
0.0
));
addScreenTextShape
(
maFPS
,
glm
::
vec2
(
-
0.99
f
,
0.99
f
),
0.1
f
,
glm
::
vec3
(
0.0
,
0.0
,
0.0
));
}
}
...
@@ -953,9 +958,32 @@ void GL3DBarChart::updateScreenText()
...
@@ -953,9 +958,32 @@ void GL3DBarChart::updateScreenText()
maScreenTextShapes
.
clear
();
maScreenTextShapes
.
clear
();
mpRenderer
->
ReleaseScreenTextShapes
();
mpRenderer
->
ReleaseScreenTextShapes
();
updateRenderFPS
();
updateRenderFPS
();
updateDataUpdateFPS
();
mbScreenTextNewRender
=
true
;
mbScreenTextNewRender
=
true
;
}
}
void
GL3DBarChart
::
updateDataUpdateFPS
()
{
int
aDeltaMs
=
calcTimeInterval
(
maDataUpdateStartTime
,
maDataUpdateEndTime
);
if
(
aDeltaMs
>=
500
)
{
int
iFPS
=
miDataUpdateCounter
*
1000
/
aDeltaMs
;
if
(
iFPS
)
{
maDataUpdateFPS
=
OUString
(
"Data Update FPS: "
)
+
OUString
::
number
(
iFPS
);
}
else
{
float
fFPS
=
(
float
)
miDataUpdateCounter
*
1000
/
(
float
)
aDeltaMs
;
maDataUpdateFPS
=
OUString
(
"Data Update FPS: "
)
+
OUString
::
number
(
fFPS
);
}
miDataUpdateCounter
=
0
;
osl_getSystemTime
(
&
maDataUpdateStartTime
);
}
osl_getSystemTime
(
&
maDataUpdateEndTime
);
addScreenTextShape
(
maDataUpdateFPS
,
glm
::
vec2
(
-
0.69
f
,
0.99
f
),
0.1
f
,
glm
::
vec3
(
0.0
,
0.0
,
0.0
));
}
IMPL_LINK_NOARG
(
GL3DBarChart
,
updateTimer
)
IMPL_LINK_NOARG
(
GL3DBarChart
,
updateTimer
)
{
{
maTimer
.
Stop
();
maTimer
.
Stop
();
...
...
chart2/source/view/inc/GL3DBarChart.hxx
Dosyayı görüntüle @
7a91a493
...
@@ -88,9 +88,10 @@ private:
...
@@ -88,9 +88,10 @@ private:
void
updateTimer
();
void
updateTimer
();
void
updateScreenText
();
void
updateScreenText
();
void
updateRenderFPS
();
void
updateRenderFPS
();
void
updateDataUpdateFPS
();
DECL_LINK
(
updateTimer
,
void
*
);
DECL_LINK
(
updateTimer
,
void
*
);
int
calcTimeInterval
(
TimeValue
&
startTime
,
TimeValue
&
endTime
);
int
calcTimeInterval
(
TimeValue
&
startTime
,
TimeValue
&
endTime
);
void
addScreenTextShape
(
OUString
&
nStr
,
glm
::
vec2
rLeftTop
,
float
nTextHeight
,
glm
::
vec3
rPos
);
void
addScreenTextShape
(
OUString
&
nStr
,
glm
::
vec2
rLeftTop
,
float
nTextHeight
,
glm
::
vec3
rPos
,
sal_uInt32
nEvent
=
0
);
css
::
uno
::
Reference
<
css
::
chart2
::
XChartType
>
mxChartType
;
css
::
uno
::
Reference
<
css
::
chart2
::
XChartType
>
mxChartType
;
boost
::
ptr_vector
<
opengl3D
::
Renderable3DObject
>
maShapes
;
boost
::
ptr_vector
<
opengl3D
::
Renderable3DObject
>
maShapes
;
...
@@ -148,9 +149,13 @@ private:
...
@@ -148,9 +149,13 @@ private:
bool
mbScreenTextNewRender
;
bool
mbScreenTextNewRender
;
boost
::
ptr_vector
<
opengl3D
::
Renderable3DObject
>
maScreenTextShapes
;
boost
::
ptr_vector
<
opengl3D
::
Renderable3DObject
>
maScreenTextShapes
;
OUString
maFPS
;
OUString
maFPS
;
OUString
maDataUpdateFPS
;
sal_uInt32
miFrameCount
;
sal_uInt32
miFrameCount
;
TimeValue
mafpsRenderStartTime
;
sal_uInt32
miDataUpdateCounter
;
TimeValue
mafpsRenderEndTime
;
TimeValue
maFPSRenderStartTime
;
TimeValue
maFPSRenderEndTime
;
TimeValue
maDataUpdateStartTime
;
TimeValue
maDataUpdateEndTime
;
};
};
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a 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