From 0714c0aba7ceb38ba73e11f6ee00ba876b3f48a0 Mon Sep 17 00:00:00 2001 From: xukai Date: Mon, 5 May 2014 11:54:26 +0800 Subject: [PATCH] Initial size of OpenGL3DRenderer Change-Id: Ibfed531e48848ea711be429d6e5c08094473f781 --- chart2/source/view/inc/3DChartObjects.hxx | 4 ++-- chart2/source/view/inc/GL3DRenderer.hxx | 1 + chart2/source/view/main/3DChartObjects.cxx | 8 ++++++-- chart2/source/view/main/GL3DRenderer.cxx | 6 ++++++ 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/chart2/source/view/inc/3DChartObjects.hxx b/chart2/source/view/inc/3DChartObjects.hxx index c953eeafa936..e3165e29a149 100644 --- a/chart2/source/view/inc/3DChartObjects.hxx +++ b/chart2/source/view/inc/3DChartObjects.hxx @@ -30,7 +30,7 @@ public: virtual void render(); - void getRender(); + OpenGL3DRenderer* getRender(); protected: sal_uInt32 mnUniqueId; @@ -94,7 +94,7 @@ private: namespace temporary { -class TemporaryContext +class TemporaryContext: public opengl3D::Renderable3DObject { public: TemporaryContext(); diff --git a/chart2/source/view/inc/GL3DRenderer.hxx b/chart2/source/view/inc/GL3DRenderer.hxx index abf611e0597f..b31a5ac2f010 100644 --- a/chart2/source/view/inc/GL3DRenderer.hxx +++ b/chart2/source/view/inc/GL3DRenderer.hxx @@ -178,6 +178,7 @@ public: void SetFPS(float fps); void SetClickPos(Point aMPos); void RenderClickPos(Point aMPos); + void SetSize(const Size& rSize); private: void MoveModelf(PosVecf3& trans,PosVecf3& angle,PosVecf3& scale); diff --git a/chart2/source/view/main/3DChartObjects.cxx b/chart2/source/view/main/3DChartObjects.cxx index 17d8111499fa..f7e0eb7f7902 100644 --- a/chart2/source/view/main/3DChartObjects.cxx +++ b/chart2/source/view/main/3DChartObjects.cxx @@ -25,7 +25,7 @@ void Renderable3DObject::render() (void) mnUniqueId; } -void Renderable3DObject::getRender() +OpenGL3DRenderer* Renderable3DObject::getRender() { if(mPrender==NULL) { @@ -33,6 +33,7 @@ void Renderable3DObject::getRender() mPrender->init(); mPrender->Set3DSenceInfo(); } + return mPrender; } @@ -73,6 +74,7 @@ Camera::Camera(): namespace temporary { TemporaryContext::TemporaryContext(): + Renderable3DObject(-1), miWidth(200), miHeight(200) { @@ -81,7 +83,9 @@ TemporaryContext::TemporaryContext(): void TemporaryContext::init() { maContext.init(); - maContext.setWinSize(Size(miWidth, miHeight)); + Size winSize(miWidth, miHeight); + maContext.setWinSize(winSize); + getRender()->SetSize(winSize); } void TemporaryContext::render() diff --git a/chart2/source/view/main/GL3DRenderer.cxx b/chart2/source/view/main/GL3DRenderer.cxx index 5b1ebe654ad7..baa8cbab1a2e 100644 --- a/chart2/source/view/main/GL3DRenderer.cxx +++ b/chart2/source/view/main/GL3DRenderer.cxx @@ -144,6 +144,12 @@ void OpenGL3DRenderer::init() m_IsOpenglInit = true; } +void OpenGL3DRenderer::SetSize(const Size& rSize) +{ + m_iWidth = rSize.Width(); + m_iHeight = rSize.Height(); +} + bool OpenGL3DRenderer::isOpenGLInitialized() { return m_IsOpenglInit;