From 194fa49bfa52a3d0d3fb7fdc26b25523bfe1a769 Mon Sep 17 00:00:00 2001 From: wmayer Date: Fri, 27 Dec 2019 13:52:34 +0100 Subject: [PATCH] Gui: [skip ci] add option to grab 3D view as is --- src/Gui/View3DInventorViewer.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/Gui/View3DInventorViewer.cpp b/src/Gui/View3DInventorViewer.cpp index 06df7acbf9..33f26ecd32 100644 --- a/src/Gui/View3DInventorViewer.cpp +++ b/src/Gui/View3DInventorViewer.cpp @@ -1479,11 +1479,15 @@ void View3DInventorViewer::savePicture(int w, int h, int s, const QColor& bg, QI ("User parameter:BaseApp/Preferences/View")->GetASCII("SavePicture"); bool useFramebufferObject = false; + bool useGrabFramebuffer = false; bool usePixelBuffer = false; bool useCoinOffscreenRenderer = false; if (saveMethod == "FramebufferObject") { useFramebufferObject = true; } + else if (saveMethod == "GrabFramebuffer") { + useGrabFramebuffer = true; + } else if (saveMethod == "PixelBuffer") { usePixelBuffer = true; } @@ -1496,6 +1500,12 @@ void View3DInventorViewer::savePicture(int w, int h, int s, const QColor& bg, QI self->imageFromFramebuffer(w, h, s, bg, img); return; } + else if (useGrabFramebuffer) { + View3DInventorViewer* self = const_cast(this); + img = self->grabFramebuffer(); + img = img.mirrored(); + return; + } // if no valid color use the current background bool useBackground = false;