diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-01-09 14:02:34 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-01-09 14:19:04 +0200 |
commit | 2a4cff24ce61a830f7a119f33cb94c4eff78772e (patch) | |
tree | 36edb625c5fa6119ebba786a9d9353053e3a4435 /src/datavisualization/utils | |
parent | 2203491ab2b639f3def805ea9cecbab1add32105 (diff) |
Implement public utility function for AA setup
qDefaultSurfaceFormat() can be used to set up antialiasing for QML
apps in just two lines:
...
viewer.setFormat(QtDataVisualization::qDefaultSurfaceFormat());
Task-number: QTRD-2734
Change-Id: I3f7ba728cef6310d794256e1dc4c28cc33b2f9a3
Reviewed-by: Pasi Keränen <pasi.keranen@digia.com>
Diffstat (limited to 'src/datavisualization/utils')
-rw-r--r-- | src/datavisualization/utils/qutils.h | 48 | ||||
-rw-r--r-- | src/datavisualization/utils/utils.pri | 3 |
2 files changed, 50 insertions, 1 deletions
diff --git a/src/datavisualization/utils/qutils.h b/src/datavisualization/utils/qutils.h new file mode 100644 index 00000000..9ae66e6b --- /dev/null +++ b/src/datavisualization/utils/qutils.h @@ -0,0 +1,48 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc +** All rights reserved. +** For any questions to Digia, please use contact form at http://qt.digia.com +** +** This file is part of the QtDataVisualization module. +** +** Licensees holding valid Qt Enterprise licenses may use this file in +** accordance with the Qt Enterprise License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. +** +** If you have questions regarding the use of this file, please use +** contact form at http://qt.digia.com +** +****************************************************************************/ + +#ifndef QUTILS_H +#define QUTILS_H + +#include <QtGui/QSurfaceFormat> + +namespace QtDataVisualization { + +inline static QSurfaceFormat qDefaultSurfaceFormat(bool antialias = true) +{ + QSurfaceFormat surfaceFormat; + + surfaceFormat.setDepthBufferSize(24); + surfaceFormat.setSwapBehavior(QSurfaceFormat::DoubleBuffer); +#if !defined(QT_OPENGL_ES_2) + surfaceFormat.setRenderableType(QSurfaceFormat::OpenGL); +#else + // Antialias not supported for ES + antialias = false; + surfaceFormat.setRenderableType(QSurfaceFormat::OpenGLES); +#endif + + if (antialias) + surfaceFormat.setSamples(8); + + return surfaceFormat; +} + +} + +#endif diff --git a/src/datavisualization/utils/utils.pri b/src/datavisualization/utils/utils.pri index cef5ebf0..8ce8794e 100644 --- a/src/datavisualization/utils/utils.pri +++ b/src/datavisualization/utils/utils.pri @@ -6,7 +6,8 @@ HEADERS += $$PWD/meshloader_p.h \ $$PWD/texturehelper_p.h \ $$PWD/utils_p.h \ $$PWD/abstractobjecthelper_p.h \ - $$PWD/surfaceobject_p.h + $$PWD/surfaceobject_p.h \ + $$PWD/qutils.h SOURCES += $$PWD/meshloader.cpp \ $$PWD/vertexindexer.cpp \ |