diff options
Diffstat (limited to 'examples/qt3d')
136 files changed, 0 insertions, 6590 deletions
diff --git a/examples/qt3d/README b/examples/qt3d/README deleted file mode 100644 index 2a45154d..00000000 --- a/examples/qt3d/README +++ /dev/null @@ -1,14 +0,0 @@ -This directory contains examples for the Qt3D C++ API. - -Qt3D can be used to extend Qt Quick3D with custom 3D items. Qt3D is also -a general 3D toolkit, featuring a scenegraph API, support for OpenGL VBO's -and other utilities for general 3D programming. - -Research work on Qt3D also continues in the labs repository: - - http://qt.gitorious.org/qt-labs/qt3d - -...and is from time to time ported into Qt Quick3D. - -Check the labs version of Qt3D for additional cutting edge features such as -support for stereoscopic hardware. diff --git a/examples/qt3d/basket/README b/examples/qt3d/basket/README deleted file mode 100644 index 560fd74c..00000000 --- a/examples/qt3d/basket/README +++ /dev/null @@ -1,15 +0,0 @@ - -This example draws a rotating basket, textured with a basket weave, -to demonstrte how to use textures and how to create simple animated -effects. The basket model is based on the standard teapot model, -with the handle and spout removed. - -The texture came from www.cgtextures.com: - -http://www.cgtextures.com/texview.php?id=25208&s=S&PHPSESSID=2fd7273841dfba0001d8fb6e8c832cba - -The license details on the textures from the site is basically -royalty-free for the example use we are making of it. Consult the -license agreement for the full details: - -http://www.cgtextures.com/content.php?action=license diff --git a/examples/qt3d/basket/basket.desktop b/examples/qt3d/basket/basket.desktop deleted file mode 100644 index 3d16c486..00000000 --- a/examples/qt3d/basket/basket.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Basket -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/basket -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_basket diff --git a/examples/qt3d/basket/basket.jpg b/examples/qt3d/basket/basket.jpg Binary files differdeleted file mode 100644 index c292a83d..00000000 --- a/examples/qt3d/basket/basket.jpg +++ /dev/null diff --git a/examples/qt3d/basket/basket.pro b/examples/qt3d/basket/basket.pro deleted file mode 100644 index f3659e8c..00000000 --- a/examples/qt3d/basket/basket.pro +++ /dev/null @@ -1,16 +0,0 @@ -TEMPLATE = app -TARGET = basket -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES = basketview.cpp main.cpp -HEADERS = basketview.h basket_data.h -RESOURCES = basket.qrc - -OTHER_FILES += \ - basket.rc \ - basket.desktop - -RC_FILE = basket.rc diff --git a/examples/qt3d/basket/basket.qrc b/examples/qt3d/basket/basket.qrc deleted file mode 100644 index 590b65c7..00000000 --- a/examples/qt3d/basket/basket.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<!DOCTYPE RCC><RCC version="1.0"> -<qresource> - <file>basket.jpg</file> -</qresource> -</RCC> diff --git a/examples/qt3d/basket/basket.rc b/examples/qt3d/basket/basket.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/basket/basket.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/basket/basket_data.h b/examples/qt3d/basket/basket_data.h deleted file mode 100644 index d456a692..00000000 --- a/examples/qt3d/basket/basket_data.h +++ /dev/null @@ -1,404 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef BASKET_DATA_H -#define BASKET_DATA_H - -#include "qglbezierpatches.h" - -// Generated from basket_data.txt by meshcvt, depth = 4 - -#define BasketBezierVertexCount 306 -#define BasketPatchCount 24 -#define BasketDepth 4 -static float const BasketBezierVertexData[] = { - 0.700000f, 0.450000f, -0.000000f, - 0.700000f, 0.450000f, 0.392000f, - 0.392000f, 0.450000f, 0.700000f, - 0.000000f, 0.450000f, 0.700000f, - 0.668750f, 0.515625f, -0.000000f, - 0.668750f, 0.515625f, 0.374500f, - 0.374500f, 0.515625f, 0.668750f, - 0.000000f, 0.515625f, 0.668750f, - 0.718750f, 0.515625f, -0.000000f, - 0.718750f, 0.515625f, 0.402500f, - 0.402500f, 0.515625f, 0.718750f, - 0.000000f, 0.515625f, 0.718750f, - 0.750000f, 0.450000f, -0.000000f, - 0.750000f, 0.450000f, 0.420000f, - 0.420000f, 0.450000f, 0.750000f, - 0.000000f, 0.450000f, 0.750000f, - -0.392000f, 0.450000f, 0.700000f, - -0.700000f, 0.450000f, 0.392000f, - -0.700000f, 0.450000f, -0.000000f, - -0.374500f, 0.515625f, 0.668750f, - -0.668750f, 0.515625f, 0.374500f, - -0.668750f, 0.515625f, -0.000000f, - -0.402500f, 0.515625f, 0.718750f, - -0.718750f, 0.515625f, 0.402500f, - -0.718750f, 0.515625f, -0.000000f, - -0.420000f, 0.450000f, 0.750000f, - -0.750000f, 0.450000f, 0.420000f, - -0.750000f, 0.450000f, -0.000000f, - -0.700000f, 0.450000f, -0.392000f, - -0.392000f, 0.450000f, -0.700000f, - 0.000000f, 0.450000f, -0.700000f, - -0.668750f, 0.515625f, -0.374500f, - -0.374500f, 0.515625f, -0.668750f, - 0.000000f, 0.515625f, -0.668750f, - -0.718750f, 0.515625f, -0.402500f, - -0.402500f, 0.515625f, -0.718750f, - 0.000000f, 0.515625f, -0.718750f, - -0.750000f, 0.450000f, -0.420000f, - -0.420000f, 0.450000f, -0.750000f, - 0.000000f, 0.450000f, -0.750000f, - 0.392000f, 0.450000f, -0.700000f, - 0.700000f, 0.450000f, -0.392000f, - 0.374500f, 0.515625f, -0.668750f, - 0.668750f, 0.515625f, -0.374500f, - 0.402500f, 0.515625f, -0.718750f, - 0.718750f, 0.515625f, -0.402500f, - 0.420000f, 0.450000f, -0.750000f, - 0.750000f, 0.450000f, -0.420000f, - 0.875000f, 0.187500f, -0.000000f, - 0.875000f, 0.187500f, 0.490000f, - 0.490000f, 0.187500f, 0.875000f, - 0.000000f, 0.187500f, 0.875000f, - 1.000000f, -0.075000f, -0.000000f, - 1.000000f, -0.075000f, 0.560000f, - 0.560000f, -0.075000f, 1.000000f, - 0.000000f, -0.075000f, 1.000000f, - 1.000000f, -0.300000f, -0.000000f, - 1.000000f, -0.300000f, 0.560000f, - 0.560000f, -0.300000f, 1.000000f, - 0.000000f, -0.300000f, 1.000000f, - -0.490000f, 0.187500f, 0.875000f, - -0.875000f, 0.187500f, 0.490000f, - -0.875000f, 0.187500f, -0.000000f, - -0.560000f, -0.075000f, 1.000000f, - -1.000000f, -0.075000f, 0.560000f, - -1.000000f, -0.075000f, -0.000000f, - -0.560000f, -0.300000f, 1.000000f, - -1.000000f, -0.300000f, 0.560000f, - -1.000000f, -0.300000f, -0.000000f, - -0.875000f, 0.187500f, -0.490000f, - -0.490000f, 0.187500f, -0.875000f, - 0.000000f, 0.187500f, -0.875000f, - -1.000000f, -0.075000f, -0.560000f, - -0.560000f, -0.075000f, -1.000000f, - 0.000000f, -0.075000f, -1.000000f, - -1.000000f, -0.300000f, -0.560000f, - -0.560000f, -0.300000f, -1.000000f, - 0.000000f, -0.300000f, -1.000000f, - 0.490000f, 0.187500f, -0.875000f, - 0.875000f, 0.187500f, -0.490000f, - 0.560000f, -0.075000f, -1.000000f, - 1.000000f, -0.075000f, -0.560000f, - 0.560000f, -0.300000f, -1.000000f, - 1.000000f, -0.300000f, -0.560000f, - 1.000000f, -0.525000f, -0.000000f, - 1.000000f, -0.525000f, 0.560000f, - 0.560000f, -0.525000f, 1.000000f, - 0.000000f, -0.525000f, 1.000000f, - 0.750000f, -0.637500f, -0.000000f, - 0.750000f, -0.637500f, 0.420000f, - 0.420000f, -0.637500f, 0.750000f, - 0.000000f, -0.637500f, 0.750000f, - 0.750000f, -0.675000f, -0.000000f, - 0.750000f, -0.675000f, 0.420000f, - 0.420000f, -0.675000f, 0.750000f, - 0.000000f, -0.675000f, 0.750000f, - -0.560000f, -0.525000f, 1.000000f, - -1.000000f, -0.525000f, 0.560000f, - -1.000000f, -0.525000f, -0.000000f, - -0.420000f, -0.637500f, 0.750000f, - -0.750000f, -0.637500f, 0.420000f, - -0.750000f, -0.637500f, -0.000000f, - -0.420000f, -0.675000f, 0.750000f, - -0.750000f, -0.675000f, 0.420000f, - -0.750000f, -0.675000f, -0.000000f, - -1.000000f, -0.525000f, -0.560000f, - -0.560000f, -0.525000f, -1.000000f, - 0.000000f, -0.525000f, -1.000000f, - -0.750000f, -0.637500f, -0.420000f, - -0.420000f, -0.637500f, -0.750000f, - 0.000000f, -0.637500f, -0.750000f, - -0.750000f, -0.675000f, -0.420000f, - -0.420000f, -0.675000f, -0.750000f, - 0.000000f, -0.675000f, -0.750000f, - 0.560000f, -0.525000f, -1.000000f, - 1.000000f, -0.525000f, -0.560000f, - 0.420000f, -0.637500f, -0.750000f, - 0.750000f, -0.637500f, -0.420000f, - 0.420000f, -0.675000f, -0.750000f, - 0.750000f, -0.675000f, -0.420000f, - -0.800000f, 0.262500f, -0.000000f, - -0.800000f, 0.262500f, 0.150000f, - -0.750000f, 0.375000f, 0.150000f, - -0.750000f, 0.375000f, -0.000000f, - -1.150000f, 0.262500f, -0.000000f, - -1.150000f, 0.262500f, 0.150000f, - -1.250000f, 0.375000f, 0.150000f, - -1.250000f, 0.375000f, -0.000000f, - -1.350000f, 0.262500f, -0.000000f, - -1.350000f, 0.262500f, 0.150000f, - -1.500000f, 0.375000f, 0.150000f, - -1.500000f, 0.375000f, -0.000000f, - -1.350000f, 0.150000f, -0.000000f, - -1.350000f, 0.150000f, 0.150000f, - -1.500000f, 0.150000f, 0.150000f, - -1.500000f, 0.150000f, -0.000000f, - -0.750000f, 0.375000f, -0.150000f, - -0.800000f, 0.262500f, -0.150000f, - -1.250000f, 0.375000f, -0.150000f, - -1.150000f, 0.262500f, -0.150000f, - -1.500000f, 0.375000f, -0.150000f, - -1.350000f, 0.262500f, -0.150000f, - -1.500000f, 0.150000f, -0.150000f, - -1.350000f, 0.150000f, -0.150000f, - -1.350000f, 0.037500f, -0.000000f, - -1.350000f, 0.037500f, 0.150000f, - -1.500000f, -0.075000f, 0.150000f, - -1.500000f, -0.075000f, -0.000000f, - -1.250000f, -0.187500f, -0.000000f, - -1.250000f, -0.187500f, 0.150000f, - -1.325000f, -0.281250f, 0.150000f, - -1.325000f, -0.281250f, -0.000000f, - -1.000000f, -0.300000f, 0.150000f, - -0.950000f, -0.450000f, 0.150000f, - -0.950000f, -0.450000f, -0.000000f, - -1.500000f, -0.075000f, -0.150000f, - -1.350000f, 0.037500f, -0.150000f, - -1.325000f, -0.281250f, -0.150000f, - -1.250000f, -0.187500f, -0.150000f, - -0.950000f, -0.450000f, -0.150000f, - -1.000000f, -0.300000f, -0.150000f, - 0.850000f, -0.037500f, -0.000000f, - 0.850000f, -0.037500f, 0.330000f, - 0.850000f, -0.450000f, 0.330000f, - 0.850000f, -0.450000f, -0.000000f, - 1.300000f, -0.037500f, -0.000000f, - 1.300000f, -0.037500f, 0.330000f, - 1.550000f, -0.337500f, 0.330000f, - 1.550000f, -0.337500f, -0.000000f, - 1.150000f, 0.300000f, -0.000000f, - 1.150000f, 0.300000f, 0.125000f, - 1.200000f, 0.262500f, 0.125000f, - 1.200000f, 0.262500f, -0.000000f, - 1.350000f, 0.450000f, -0.000000f, - 1.350000f, 0.450000f, 0.125000f, - 1.650000f, 0.450000f, 0.125000f, - 1.650000f, 0.450000f, -0.000000f, - 0.850000f, -0.450000f, -0.330000f, - 0.850000f, -0.037500f, -0.330000f, - 1.550000f, -0.337500f, -0.330000f, - 1.300000f, -0.037500f, -0.330000f, - 1.200000f, 0.262500f, -0.125000f, - 1.150000f, 0.300000f, -0.125000f, - 1.650000f, 0.450000f, -0.125000f, - 1.350000f, 0.450000f, -0.125000f, - 1.400000f, 0.487500f, -0.000000f, - 1.400000f, 0.487500f, 0.125000f, - 1.762500f, 0.496875f, 0.125000f, - 1.762500f, 0.496875f, -0.000000f, - 1.450000f, 0.487500f, -0.000000f, - 1.450000f, 0.487500f, 0.075000f, - 1.725000f, 0.506250f, 0.075000f, - 1.725000f, 0.506250f, -0.000000f, - 1.400000f, 0.450000f, -0.000000f, - 1.400000f, 0.450000f, 0.075000f, - 1.600000f, 0.450000f, 0.075000f, - 1.600000f, 0.450000f, -0.000000f, - 1.762500f, 0.496875f, -0.125000f, - 1.400000f, 0.487500f, -0.125000f, - 1.725000f, 0.506250f, -0.075000f, - 1.450000f, 0.487500f, -0.075000f, - 1.600000f, 0.450000f, -0.075000f, - 1.400000f, 0.450000f, -0.075000f, - 0.000000f, 0.825000f, -0.000000f, - 0.000000f, 0.825000f, 0.001000f, - 0.001000f, 0.825000f, -0.000000f, - 0.400000f, 0.825000f, -0.000000f, - 0.400000f, 0.825000f, 0.225000f, - 0.225000f, 0.825000f, 0.400000f, - 0.000000f, 0.825000f, 0.400000f, - 0.000000f, 0.675000f, -0.000000f, - 0.100000f, 0.600000f, -0.000000f, - 0.100000f, 0.600000f, 0.056000f, - 0.056000f, 0.600000f, 0.100000f, - 0.000000f, 0.600000f, 0.100000f, - -0.001000f, 0.825000f, -0.000000f, - -0.225000f, 0.825000f, 0.400000f, - -0.400000f, 0.825000f, 0.225000f, - -0.400000f, 0.825000f, -0.000000f, - -0.056000f, 0.600000f, 0.100000f, - -0.100000f, 0.600000f, 0.056000f, - -0.100000f, 0.600000f, -0.000000f, - 0.000000f, 0.825000f, -0.001000f, - -0.400000f, 0.825000f, -0.225000f, - -0.225000f, 0.825000f, -0.400000f, - 0.000000f, 0.825000f, -0.400000f, - -0.100000f, 0.600000f, -0.056000f, - -0.056000f, 0.600000f, -0.100000f, - 0.000000f, 0.600000f, -0.100000f, - 0.225000f, 0.825000f, -0.400000f, - 0.400000f, 0.825000f, -0.225000f, - 0.056000f, 0.600000f, -0.100000f, - 0.100000f, 0.600000f, -0.056000f, - 0.200000f, 0.525000f, -0.000000f, - 0.200000f, 0.525000f, 0.112000f, - 0.112000f, 0.525000f, 0.200000f, - 0.000000f, 0.525000f, 0.200000f, - 0.650000f, 0.525000f, -0.000000f, - 0.650000f, 0.525000f, 0.364000f, - 0.364000f, 0.525000f, 0.650000f, - 0.000000f, 0.525000f, 0.650000f, - 0.650000f, 0.450000f, -0.000000f, - 0.650000f, 0.450000f, 0.364000f, - 0.364000f, 0.450000f, 0.650000f, - 0.000000f, 0.450000f, 0.650000f, - -0.112000f, 0.525000f, 0.200000f, - -0.200000f, 0.525000f, 0.112000f, - -0.200000f, 0.525000f, -0.000000f, - -0.364000f, 0.525000f, 0.650000f, - -0.650000f, 0.525000f, 0.364000f, - -0.650000f, 0.525000f, -0.000000f, - -0.364000f, 0.450000f, 0.650000f, - -0.650000f, 0.450000f, 0.364000f, - -0.650000f, 0.450000f, -0.000000f, - -0.200000f, 0.525000f, -0.112000f, - -0.112000f, 0.525000f, -0.200000f, - 0.000000f, 0.525000f, -0.200000f, - -0.650000f, 0.525000f, -0.364000f, - -0.364000f, 0.525000f, -0.650000f, - 0.000000f, 0.525000f, -0.650000f, - -0.650000f, 0.450000f, -0.364000f, - -0.364000f, 0.450000f, -0.650000f, - 0.000000f, 0.450000f, -0.650000f, - 0.112000f, 0.525000f, -0.200000f, - 0.200000f, 0.525000f, -0.112000f, - 0.364000f, 0.525000f, -0.650000f, - 0.650000f, 0.525000f, -0.364000f, - 0.364000f, 0.450000f, -0.650000f, - 0.650000f, 0.450000f, -0.364000f, - 0.000000f, -0.750000f, -0.000000f, - 0.750000f, -0.675000f, -0.000000f, - 0.750000f, -0.675000f, -0.420000f, - 0.420000f, -0.675000f, -0.750000f, - 0.000000f, -0.675000f, -0.750000f, - 0.750000f, -0.712500f, -0.000000f, - 0.750000f, -0.712500f, -0.420000f, - 0.420000f, -0.712500f, -0.750000f, - 0.000000f, -0.712500f, -0.750000f, - 0.712500f, -0.750000f, -0.000000f, - 0.712500f, -0.750000f, -0.399000f, - 0.399000f, -0.750000f, -0.712500f, - 0.000000f, -0.750000f, -0.712500f, - -0.420000f, -0.675000f, -0.750000f, - -0.750000f, -0.675000f, -0.420000f, - -0.750000f, -0.675000f, -0.000000f, - -0.420000f, -0.712500f, -0.750000f, - -0.750000f, -0.712500f, -0.420000f, - -0.750000f, -0.712500f, -0.000000f, - -0.399000f, -0.750000f, -0.712500f, - -0.712500f, -0.750000f, -0.399000f, - -0.712500f, -0.750000f, -0.000000f, - -0.750000f, -0.675000f, 0.420000f, - -0.420000f, -0.675000f, 0.750000f, - 0.000000f, -0.675000f, 0.750000f, - -0.750000f, -0.712500f, 0.420000f, - -0.420000f, -0.712500f, 0.750000f, - 0.000000f, -0.712500f, 0.750000f, - -0.712500f, -0.750000f, 0.399000f, - -0.399000f, -0.750000f, 0.712500f, - 0.000000f, -0.750000f, 0.712500f, - 0.420000f, -0.675000f, 0.750000f, - 0.750000f, -0.675000f, 0.420000f, - 0.420000f, -0.712500f, 0.750000f, - 0.750000f, -0.712500f, 0.420000f, - 0.399000f, -0.750000f, 0.712500f, - 0.712500f, -0.750000f, 0.399000f -}; - -static ushort const BasketPatchData[] = { - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 3, 16, 17, 18, 7, 19, 20, 21, 11, 22, 23, 24, 15, 25, 26, 27, - 18, 28, 29, 30, 21, 31, 32, 33, 24, 34, 35, 36, 27, 37, 38, 39, - 30, 40, 41, 0, 33, 42, 43, 4, 36, 44, 45, 8, 39, 46, 47, 12, - 12, 13, 14, 15, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 15, 25, 26, 27, 51, 60, 61, 62, 55, 63, 64, 65, 59, 66, 67, 68, - 27, 37, 38, 39, 62, 69, 70, 71, 65, 72, 73, 74, 68, 75, 76, 77, - 39, 46, 47, 12, 71, 78, 79, 48, 74, 80, 81, 52, 77, 82, 83, 56, - 56, 57, 58, 59, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 59, 66, 67, 68, 87, 96, 97, 98, 91, 99, 100, 101, 95, 102, 103, 104, - 68, 75, 76, 77, 98, 105, 106, 107, 101, 108, 109, 110, 104, 111, 112, 113, - 77, 82, 83, 56, 107, 114, 115, 84, 110, 116, 117, 88, 113, 118, 119, 92, - 203, 203, 203, 203, 206, 207, 208, 209, 210, 210, 210, 210, 211, 212, 213, 214, - 203, 203, 203, 203, 209, 216, 217, 218, 210, 210, 210, 210, 214, 219, 220, 221, - 203, 203, 203, 203, 218, 223, 224, 225, 210, 210, 210, 210, 221, 226, 227, 228, - 203, 203, 203, 203, 225, 229, 230, 206, 210, 210, 210, 210, 228, 231, 232, 211, - 211, 212, 213, 214, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 214, 219, 220, 221, 236, 245, 246, 247, 240, 248, 249, 250, 244, 251, 252, 253, - 221, 226, 227, 228, 247, 254, 255, 256, 250, 257, 258, 259, 253, 260, 261, 262, - 228, 231, 232, 211, 256, 263, 264, 233, 259, 265, 266, 237, 262, 267, 268, 241, - 269, 269, 269, 269, 278, 279, 280, 281, 274, 275, 276, 277, 270, 271, 272, 273, - 269, 269, 269, 269, 281, 288, 289, 290, 277, 285, 286, 287, 273, 282, 283, 284, - 269, 269, 269, 269, 290, 297, 298, 299, 287, 294, 295, 296, 284, 291, 292, 293, - 269, 269, 269, 269, 299, 304, 305, 278, 296, 302, 303, 274, 293, 300, 301, 270 -}; - -class BasketPatches : public QGLBezierPatches -{ -public: - BasketPatches() - { - QVector3DArray positions; - for (int pindex = 0; pindex < BasketPatchCount * 16; ++pindex) { - int vindex = BasketPatchData[pindex]; - positions.append(BasketBezierVertexData[vindex * 3], - BasketBezierVertexData[vindex * 3 + 1], - BasketBezierVertexData[vindex * 3 + 2]); - } - setPositions(positions); - setSubdivisionDepth(BasketDepth); - } -}; - -#endif diff --git a/examples/qt3d/basket/basket_data.txt b/examples/qt3d/basket/basket_data.txt deleted file mode 100644 index 6b693b5a..00000000 --- a/examples/qt3d/basket/basket_data.txt +++ /dev/null @@ -1,332 +0,0 @@ -24 -1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 -4,17,18,19,8,20,21,22,12,23,24,25,16,26,27,28 -19,29,30,31,22,32,33,34,25,35,36,37,28,38,39,40 -31,41,42,1,34,43,44,5,37,45,46,9,40,47,48,13 -13,14,15,16,49,50,51,52,53,54,55,56,57,58,59,60 -16,26,27,28,52,61,62,63,56,64,65,66,60,67,68,69 -28,38,39,40,63,70,71,72,66,73,74,75,69,76,77,78 -40,47,48,13,72,79,80,49,75,81,82,53,78,83,84,57 -57,58,59,60,85,86,87,88,89,90,91,92,93,94,95,96 -60,67,68,69,88,97,98,99,92,100,101,102,96,103,104,105 -69,76,77,78,99,106,107,108,102,109,110,111,105,112,113,114 -78,83,84,57,108,115,116,85,111,117,118,89,114,119,120,93 -204,204,204,204,207,208,209,210,211,211,211,211,212,213,214,215,4 -204,204,204,204,210,217,218,219,211,211,211,211,215,220,221,222,4 -204,204,204,204,219,224,225,226,211,211,211,211,222,227,228,229,4 -204,204,204,204,226,230,231,207,211,211,211,211,229,232,233,212,4 -212,213,214,215,234,235,236,237,238,239,240,241,242,243,244,245 -215,220,221,222,237,246,247,248,241,249,250,251,245,252,253,254 -222,227,228,229,248,255,256,257,251,258,259,260,254,261,262,263 -229,232,233,212,257,264,265,234,260,266,267,238,263,268,269,242 -270,270,270,270,279,280,281,282,275,276,277,278,271,272,273,274,4 -270,270,270,270,282,289,290,291,278,286,287,288,274,283,284,285,4 -270,270,270,270,291,298,299,300,288,295,296,297,285,292,293,294,4 -270,270,270,270,300,305,306,279,297,303,304,275,294,301,302,271,4 -306 -1.4,0.0,2.4 -1.4,-0.784,2.4 -0.784,-1.4,2.4 -0.0,-1.4,2.4 -1.3375,0.0,2.53125 -1.3375,-0.749,2.53125 -0.749,-1.3375,2.53125 -0.0,-1.3375,2.53125 -1.4375,0.0,2.53125 -1.4375,-0.805,2.53125 -0.805,-1.4375,2.53125 -0.0,-1.4375,2.53125 -1.5,0.0,2.4 -1.5,-0.84,2.4 -0.84,-1.5,2.4 -0.0,-1.5,2.4 --0.784,-1.4,2.4 --1.4,-0.784,2.4 --1.4,0.0,2.4 --0.749,-1.3375,2.53125 --1.3375,-0.749,2.53125 --1.3375,0.0,2.53125 --0.805,-1.4375,2.53125 --1.4375,-0.805,2.53125 --1.4375,0.0,2.53125 --0.84,-1.5,2.4 --1.5,-0.84,2.4 --1.5,0.0,2.4 --1.4,0.784,2.4 --0.784,1.4,2.4 -0.0,1.4,2.4 --1.3375,0.749,2.53125 --0.749,1.3375,2.53125 -0.0,1.3375,2.53125 --1.4375,0.805,2.53125 --0.805,1.4375,2.53125 -0.0,1.4375,2.53125 --1.5,0.84,2.4 --0.84,1.5,2.4 -0.0,1.5,2.4 -0.784,1.4,2.4 -1.4,0.784,2.4 -0.749,1.3375,2.53125 -1.3375,0.749,2.53125 -0.805,1.4375,2.53125 -1.4375,0.805,2.53125 -0.84,1.5,2.4 -1.5,0.84,2.4 -1.75,0.0,1.875 -1.75,-0.98,1.875 -0.98,-1.75,1.875 -0.0,-1.75,1.875 -2.0,0.0,1.35 -2.0,-1.12,1.35 -1.12,-2.0,1.35 -0.0,-2.0,1.35 -2.0,0.0,0.9 -2.0,-1.12,0.9 -1.12,-2.0,0.9 -0.0,-2.0,0.9 --0.98,-1.75,1.875 --1.75,-0.98,1.875 --1.75,0.0,1.875 --1.12,-2.0,1.35 --2.0,-1.12,1.35 --2.0,0.0,1.35 --1.12,-2.0,0.9 --2.0,-1.12,0.9 --2.0,0.0,0.9 --1.75,0.98,1.875 --0.98,1.75,1.875 -0.0,1.75,1.875 --2.0,1.12,1.35 --1.12,2.0,1.35 -0.0,2.0,1.35 --2.0,1.12,0.9 --1.12,2.0,0.9 -0.0,2.0,0.9 -0.98,1.75,1.875 -1.75,0.98,1.875 -1.12,2.0,1.35 -2.0,1.12,1.35 -1.12,2.0,0.9 -2.0,1.12,0.9 -2.0,0.0,0.45 -2.0,-1.12,0.45 -1.12,-2.0,0.45 -0.0,-2.0,0.45 -1.5,0.0,0.225 -1.5,-0.84,0.225 -0.84,-1.5,0.225 -0.0,-1.5,0.225 -1.5,0.0,0.15 -1.5,-0.84,0.15 -0.84,-1.5,0.15 -0.0,-1.5,0.15 --1.12,-2.0,0.45 --2.0,-1.12,0.45 --2.0,0.0,0.45 --0.84,-1.5,0.225 --1.5,-0.84,0.225 --1.5,0.0,0.225 --0.84,-1.5,0.15 --1.5,-0.84,0.15 --1.5,0.0,0.15 --2.0,1.12,0.45 --1.12,2.0,0.45 -0.0,2.0,0.45 --1.5,0.84,0.225 --0.84,1.5,0.225 -0.0,1.5,0.225 --1.5,0.84,0.15 --0.84,1.5,0.15 -0.0,1.5,0.15 -1.12,2.0,0.45 -2.0,1.12,0.45 -0.84,1.5,0.225 -1.5,0.84,0.225 -0.84,1.5,0.15 -1.5,0.84,0.15 --1.6,0.0,2.025 --1.6,-0.3,2.025 --1.5,-0.3,2.25 --1.5,0.0,2.25 --2.3,0.0,2.025 --2.3,-0.3,2.025 --2.5,-0.3,2.25 --2.5,0.0,2.25 --2.7,0.0,2.025 --2.7,-0.3,2.025 --3.0,-0.3,2.25 --3.0,0.0,2.25 --2.7,0.0,1.8 --2.7,-0.3,1.8 --3.0,-0.3,1.8 --3.0,0.0,1.8 --1.5,0.3,2.25 --1.6,0.3,2.025 --2.5,0.3,2.25 --2.3,0.3,2.025 --3.0,0.3,2.25 --2.7,0.3,2.025 --3.0,0.3,1.8 --2.7,0.3,1.8 --2.7,0.0,1.575 --2.7,-0.3,1.575 --3.0,-0.3,1.35 --3.0,0.0,1.35 --2.5,0.0,1.125 --2.5,-0.3,1.125 --2.65,-0.3,0.9375 --2.65,0.0,0.9375 --2.0,-0.3,0.9 --1.9,-0.3,0.6 --1.9,0.0,0.6 --3.0,0.3,1.35 --2.7,0.3,1.575 --2.65,0.3,0.9375 --2.5,0.3,1.125 --1.9,0.3,0.6 --2.0,0.3,0.9 -1.7,0.0,1.425 -1.7,-0.66,1.425 -1.7,-0.66,0.6 -1.7,0.0,0.6 -2.6,0.0,1.425 -2.6,-0.66,1.425 -3.1,-0.66,0.825 -3.1,0.0,0.825 -2.3,0.0,2.1 -2.3,-0.25,2.1 -2.4,-0.25,2.025 -2.4,0.0,2.025 -2.7,0.0,2.4 -2.7,-0.25,2.4 -3.3,-0.25,2.4 -3.3,0.0,2.4 -1.7,0.66,0.6 -1.7,0.66,1.425 -3.1,0.66,0.825 -2.6,0.66,1.425 -2.4,0.25,2.025 -2.3,0.25,2.1 -3.3,0.25,2.4 -2.7,0.25,2.4 -2.8,0.0,2.475 -2.8,-0.25,2.475 -3.525,-0.25,2.49375 -3.525,0.0,2.49375 -2.9,0.0,2.475 -2.9,-0.15,2.475 -3.45,-0.15,2.5125 -3.45,0.0,2.5125 -2.8,0.0,2.4 -2.8,-0.15,2.4 -3.2,-0.15,2.4 -3.2,0.0,2.4 -3.525,0.25,2.49375 -2.8,0.25,2.475 -3.45,0.15,2.5125 -2.9,0.15,2.475 -3.2,0.15,2.4 -2.8,0.15,2.4 -0.0,0.0,3.15 -0.0,-0.002,3.15 -0.002,0.0,3.15 -0.8,0.0,3.15 -0.8,-0.45,3.15 -0.45,-0.8,3.15 -0.0,-0.8,3.15 -0.0,0.0,2.85,0.0,0.0,1.0 -0.2,0.0,2.7 -0.2,-0.112,2.7 -0.112,-0.2,2.7 -0.0,-0.2,2.7 --0.002,0.0,3.15 --0.45,-0.8,3.15 --0.8,-0.45,3.15 --0.8,0.0,3.15 --0.112,-0.2,2.7 --0.2,-0.112,2.7 --0.2,0.0,2.7 -0.0,0.002,3.15 --0.8,0.45,3.15 --0.45,0.8,3.15 -0.0,0.8,3.15 --0.2,0.112,2.7 --0.112,0.2,2.7 -0.0,0.2,2.7 -0.45,0.8,3.15 -0.8,0.45,3.15 -0.112,0.2,2.7 -0.2,0.112,2.7 -0.4,0.0,2.55 -0.4,-0.224,2.55 -0.224,-0.4,2.55 -0.0,-0.4,2.55 -1.3,0.0,2.55 -1.3,-0.728,2.55 -0.728,-1.3,2.55 -0.0,-1.3,2.55 -1.3,0.0,2.4 -1.3,-0.728,2.4 -0.728,-1.3,2.4 -0.0,-1.3,2.4 --0.224,-0.4,2.55 --0.4,-0.224,2.55 --0.4,0.0,2.55 --0.728,-1.3,2.55 --1.3,-0.728,2.55 --1.3,0.0,2.55 --0.728,-1.3,2.4 --1.3,-0.728,2.4 --1.3,0.0,2.4 --0.4,0.224,2.55 --0.224,0.4,2.55 -0.0,0.4,2.55 --1.3,0.728,2.55 --0.728,1.3,2.55 -0.0,1.3,2.55 --1.3,0.728,2.4 --0.728,1.3,2.4 -0.0,1.3,2.4 -0.224,0.4,2.55 -0.4,0.224,2.55 -0.728,1.3,2.55 -1.3,0.728,2.55 -0.728,1.3,2.4 -1.3,0.728,2.4 -0.0,0.0,0.0,0.0,0.0,-1.0 -1.5,0.0,0.15 -1.5,0.84,0.15 -0.84,1.5,0.15 -0.0,1.5,0.15 -1.5,0.0,0.075 -1.5,0.84,0.075 -0.84,1.5,0.075 -0.0,1.5,0.075 -1.425,0.0,0.0 -1.425,0.798,0.0 -0.798,1.425,0.0 -0.0,1.425,0.0 --0.84,1.5,0.15 --1.5,0.84,0.15 --1.5,0.0,0.15 --0.84,1.5,0.075 --1.5,0.84,0.075 --1.5,0.0,0.075 --0.798,1.425,0.0 --1.425,0.798,0.0 --1.425,0.0,0.0 --1.5,-0.84,0.15 --0.84,-1.5,0.15 -0.0,-1.5,0.15 --1.5,-0.84,0.075 --0.84,-1.5,0.075 -0.0,-1.5,0.075 --1.425,-0.798,0.0 --0.798,-1.425,0.0 -0.0,-1.425,0.0 -0.84,-1.5,0.15 -1.5,-0.84,0.15 -0.84,-1.5,0.075 -1.5,-0.84,0.075 -0.798,-1.425,0.0 -1.425,-0.798,0.0 diff --git a/examples/qt3d/basket/basketview.cpp b/examples/qt3d/basket/basketview.cpp deleted file mode 100644 index 41b20dfb..00000000 --- a/examples/qt3d/basket/basketview.cpp +++ /dev/null @@ -1,93 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QPropertyAnimation> - -#include "basketview.h" -#include "basket_data.h" -#include "qglbuilder.h" -#include "qglscenenode.h" - -BasketView::BasketView(QWidget *parent) - : QGLView(parent) - , m_angle(0) -{ - setWindowTitle(tr("Basket")); - -//! [1] - QGLBuilder builder; - builder << BasketPatches(); - basket = builder.finalizedSceneNode(); - - QGLMaterial *mat = new QGLMaterial; - QUrl url; - url.setPath(QLatin1String(":/basket.jpg")); - url.setScheme(QLatin1String("file")); - mat->setTextureUrl(url); - basket->setMaterial(mat); - basket->setEffect(QGL::LitModulateTexture2D); -//! [1] - -//! [2] - QPropertyAnimation *animation; - animation = new QPropertyAnimation(this, "angle", this); - animation->setStartValue(0.0f); - animation->setEndValue(360.0f); - animation->setDuration(2000); - animation->setLoopCount(-1); - animation->start(); -//! [2] - - camera()->setEye(QVector3D(0, 4, 10)); -} - -BasketView::~BasketView() -{ - delete basket; -} - -//! [3] -void BasketView::paintGL(QGLPainter *painter) -{ - painter->modelViewMatrix().rotate(angle(), 0, 1, 0); - painter->modelViewMatrix().scale(1.5f); - basket->draw(painter); -} -//! [3] diff --git a/examples/qt3d/basket/basketview.h b/examples/qt3d/basket/basketview.h deleted file mode 100644 index 305b18c4..00000000 --- a/examples/qt3d/basket/basketview.h +++ /dev/null @@ -1,71 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef BASKETVIEW_H -#define BASKETVIEW_H - -#include "qglview.h" - -QT_BEGIN_NAMESPACE -class QGLSceneNode; -QT_END_NAMESPACE - -//! [1] -class BasketView : public QGLView -{ - Q_OBJECT - Q_PROPERTY(qreal angle READ angle WRITE setAngle) -public: - qreal angle() const { return m_angle; } - void setAngle(qreal angle) { m_angle = angle; update(); } -//! [1] - - BasketView(QWidget *parent = 0); - ~BasketView(); - -protected: - void paintGL(QGLPainter *painter); - -private: - QGLSceneNode *basket; - qreal m_angle; -}; - -#endif diff --git a/examples/qt3d/basket/main.cpp b/examples/qt3d/basket/main.cpp deleted file mode 100644 index 3963408c..00000000 --- a/examples/qt3d/basket/main.cpp +++ /dev/null @@ -1,63 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> -#include "basketview.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - BasketView view; - -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - return app.exec(); -} diff --git a/examples/qt3d/basket/qt3d.ico b/examples/qt3d/basket/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/basket/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/basket/qt3d.png b/examples/qt3d/basket/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/basket/qt3d.png +++ /dev/null diff --git a/examples/qt3d/basket/teapot-logo.png b/examples/qt3d/basket/teapot-logo.png Binary files differdeleted file mode 100644 index 3532b520..00000000 --- a/examples/qt3d/basket/teapot-logo.png +++ /dev/null diff --git a/examples/qt3d/builder/builder.cpp b/examples/qt3d/builder/builder.cpp deleted file mode 100644 index 3628b4d4..00000000 --- a/examples/qt3d/builder/builder.cpp +++ /dev/null @@ -1,192 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "builder.h" -#include "qglbuilder.h" -#include "qglmaterialcollection.h" -#include "qgltexture2d.h" -#include "qglmaterial.h" -#include "qglscenenode.h" -#include "qgllightmodel.h" - -#include <QtGui/qmatrix4x4.h> - -#include <QtCore/qmath.h> - -BuilderView::BuilderView(QWidget *parent) - : QGLView(parent) - , canScene(new QGLSceneNode(this)) -{ - //! [0] - QGLSceneNode *can = buildGeometry(); - canScene->addNode(can); - { - // rotate the can around so its label shows; and down - // so the base is facing down - QMatrix4x4 mat; - QQuaternion q1 = QQuaternion::fromAxisAndAngle(1.0f, 0.0f, 0.0f, 270.0f); - QQuaternion q2 = QQuaternion::fromAxisAndAngle(0.0f, 1.0f, 0.0f, 100.0f); - mat.rotate(q2 * q1); - can->setLocalTransform(mat); - } - - // display a copy of the can to the left - QGLSceneNode *node = new QGLSceneNode(canScene); - node->addNode(can); - { - QMatrix4x4 mat; - mat.translate(-2.0f, 0.0f, -2.0f); - node->setLocalTransform(mat); - } - - // display a copy of the can to the right - node = new QGLSceneNode(canScene); - node->addNode(can); - { - QMatrix4x4 mat; - mat.translate(2.0f, 0.0f, -2.0f); - node->setLocalTransform(mat); - } - //! [0] - - // rotate the whole scene about x-axis so that - // can tops are visible when scene is first displayed - { - QMatrix4x4 mat; - mat.rotate(1.0f, 0.0f, 0.0f, -30.0f); - canScene->setLocalTransform(mat); - } -} - -BuilderView::~BuilderView() -{ - delete canScene; -} - -void BuilderView::initializeGL(QGLPainter *painter) -{ - QGLLightParameters *light0 = new QGLLightParameters(this); - light0->setAmbientColor(Qt::white); - light0->setDiffuseColor(Qt::white); - light0->setDirection(QVector3D(0.0f, 0.2f, 2.0f)); - painter->setMainLight(light0); - QGLLightModel *model = new QGLLightModel(this); - model->setAmbientSceneColor(Qt::white); - painter->setLightModel(model); -} - -//! [1] -void BuilderView::paintGL(QGLPainter *painter) -{ - canScene->draw(painter); -} -//! [1] - -QGLSceneNode *BuilderView::buildGeometry() -{ - //! [2] - QGLBuilder builder; - QGLSceneNode *root = builder.sceneNode(); - - QGLMaterial *mat = new QGLMaterial; - mat->setAmbientColor(Qt::lightGray); - mat->setDiffuseColor(Qt::lightGray); - QUrl url; - url.setPath(QLatin1String(":/images/qt-soup.png")); - url.setScheme(QLatin1String("file")); - mat->setTextureUrl(url); - int canMat = root->palette()->addMaterial(mat); - root->setMaterialIndex(canMat); - root->setEffect(QGL::LitMaterial); - //! [2] - - // size data for can - const qreal canRadius = 1.0f; - const qreal canHeight = 2.5f; - const int numSlices = 32; - - QGeometryData canRim; - QVector3D canExtrudeVec(0.0f, 0.0f, -canHeight); - - // do the math for the defining points - for (int i = 0; i < numSlices; ++i) - { - qreal angle = (qreal(i) * 2.0 * M_PI) / numSlices; - canRim.appendVertex(QVector3D(canRadius * qCos(angle), - canRadius * qSin(angle), - canHeight / 2.0f)); - } - - //! [3] - // create the flat top lid of the can - builder.newSection(); - builder.currentNode()->setObjectName(QLatin1String("CanTop")); - QGeometryData top; - top.appendVertex(canRim.center()); - top.appendVertexArray(canRim.vertices()); - builder.addTriangulatedFace(top); - - // create the sides of the can - builder.newSection(); - builder.currentNode()->setObjectName(QLatin1String("CanSides")); - builder.currentNode()->setMaterialIndex(canMat); - builder.currentNode()->setEffect(QGL::LitModulateTexture2D); - QGeometryData canTop = canRim; - canTop.detach(); - canTop.appendVertex(canTop.vertex(0)); // doubled vert for texture seam - canTop.generateTextureCoordinates(); // generate x texture coords - QGeometryData canBase = canTop.translated(canExtrudeVec); // base has tex.y == 0 - for (int i = 0; i < canTop.count(); ++i) - canTop.texCoord(i).setY(1.0); // top has tex.y == 1 - builder.addQuadsInterleaved(canTop, canBase); - - // create the flat bottom lid of the can - builder.newSection(); - builder.currentNode()->setObjectName(QLatin1String("CanBottom")); - builder.currentNode()->setEffect(QGL::LitMaterial); - QGeometryData rimReversed = canRim.translated(canExtrudeVec).reversed(); - QGeometryData canBottom; - canBottom.appendVertex(rimReversed.center()); - canBottom.appendVertexArray(rimReversed.vertices()); - builder.addTriangulatedFace(canBottom); - - return builder.finalizedSceneNode(); - //! [3] -} diff --git a/examples/qt3d/builder/builder.desktop b/examples/qt3d/builder/builder.desktop deleted file mode 100644 index da231ad1..00000000 --- a/examples/qt3d/builder/builder.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Builder -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/builder -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_builder diff --git a/examples/qt3d/builder/builder.h b/examples/qt3d/builder/builder.h deleted file mode 100644 index 01df7d87..00000000 --- a/examples/qt3d/builder/builder.h +++ /dev/null @@ -1,68 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef BUILDER_H -#define BUILDER_H - -#include "qglview.h" - -QT_BEGIN_NAMESPACE -class QGLSceneNode; -class QGLBuilder; -QT_END_NAMESPACE - -class BuilderView : public QGLView -{ - Q_OBJECT -public: - BuilderView(QWidget *parent = 0); - ~BuilderView(); - -protected: - void initializeGL(QGLPainter *painter); - void paintGL(QGLPainter *painter); - -private: - QGLSceneNode *buildGeometry(); - - QGLSceneNode *canScene; -}; - -#endif diff --git a/examples/qt3d/builder/builder.pro b/examples/qt3d/builder/builder.pro deleted file mode 100644 index aaa1e5d8..00000000 --- a/examples/qt3d/builder/builder.pro +++ /dev/null @@ -1,17 +0,0 @@ -TEMPLATE = app -TARGET = builder -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES = builder.cpp \ - main.cpp -HEADERS = builder.h -RESOURCES += builder.qrc - -OTHER_FILES += \ - builder.rc \ - builder.desktop - -RC_FILE = builder.rc diff --git a/examples/qt3d/builder/builder.qrc b/examples/qt3d/builder/builder.qrc deleted file mode 100644 index 8eefbaf1..00000000 --- a/examples/qt3d/builder/builder.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<RCC> - <qresource prefix="/images" > - <file>qt-soup.png</file> - </qresource> -</RCC> diff --git a/examples/qt3d/builder/builder.rc b/examples/qt3d/builder/builder.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/builder/builder.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/builder/main.cpp b/examples/qt3d/builder/main.cpp deleted file mode 100644 index 29e9f1e6..00000000 --- a/examples/qt3d/builder/main.cpp +++ /dev/null @@ -1,63 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> - -#include "builder.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - BuilderView view; -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - return app.exec(); -} diff --git a/examples/qt3d/builder/qt-soup.png b/examples/qt3d/builder/qt-soup.png Binary files differdeleted file mode 100644 index 5b264fff..00000000 --- a/examples/qt3d/builder/qt-soup.png +++ /dev/null diff --git a/examples/qt3d/builder/qt3d.ico b/examples/qt3d/builder/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/builder/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/builder/qt3d.png b/examples/qt3d/builder/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/builder/qt3d.png +++ /dev/null diff --git a/examples/qt3d/cube/cube.desktop b/examples/qt3d/cube/cube.desktop deleted file mode 100644 index 8610bf06..00000000 --- a/examples/qt3d/cube/cube.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=cube Qt3D -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/cube -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_cube diff --git a/examples/qt3d/cube/cube.pro b/examples/qt3d/cube/cube.pro deleted file mode 100644 index a91ed947..00000000 --- a/examples/qt3d/cube/cube.pro +++ /dev/null @@ -1,17 +0,0 @@ -TEMPLATE = app -TARGET = cube -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES = cubeview.cpp main.cpp -HEADERS = cubeview.h -RESOURCES = cube.qrc - -OTHER_FILES += \ - cube.rc \ - cube.desktop - -RC_FILE = cube.rc - diff --git a/examples/qt3d/cube/cube.qrc b/examples/qt3d/cube/cube.qrc deleted file mode 100644 index 70f5024d..00000000 --- a/examples/qt3d/cube/cube.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<!DOCTYPE RCC><RCC version="1.0"> -<qresource> - <file>qtlogo.png</file> -</qresource> -</RCC> diff --git a/examples/qt3d/cube/cube.rc b/examples/qt3d/cube/cube.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/cube/cube.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/cube/cubeview.cpp b/examples/qt3d/cube/cubeview.cpp deleted file mode 100644 index e8de7516..00000000 --- a/examples/qt3d/cube/cubeview.cpp +++ /dev/null @@ -1,74 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "cubeview.h" -#include "qglbuilder.h" -#include "qglcube.h" - -#include <QtCore/qurl.h> - -CubeView::CubeView(QWidget *parent) - : QGLView(parent) -{ - QGLBuilder builder; - builder << QGL::Faceted << QGLCube(1.5f); - cube = builder.finalizedSceneNode(); - - QGLMaterial *mat = new QGLMaterial; - mat->setColor(QColor(170, 202, 0)); - QUrl url; - url.setPath(QLatin1String(":/qtlogo.png")); - url.setScheme(QLatin1String("file")); - mat->setTextureUrl(url); - cube->setMaterial(mat); - - cube->setEffect(QGL::LitDecalTexture2D); -} - -CubeView::~CubeView() -{ - delete cube; -} - -void CubeView::paintGL(QGLPainter *painter) -{ - painter->modelViewMatrix().rotate(45.0f, 1.0f, 1.0f, 1.0f); - cube->draw(painter); -} diff --git a/examples/qt3d/cube/cubeview.h b/examples/qt3d/cube/cubeview.h deleted file mode 100644 index 7398bdf5..00000000 --- a/examples/qt3d/cube/cubeview.h +++ /dev/null @@ -1,64 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef CUBEVIEW_H -#define CUBEVIEW_H - -#include "qglview.h" - -QT_BEGIN_NAMESPACE -class QGLSceneNode; -QT_END_NAMESPACE - -class CubeView : public QGLView -{ - Q_OBJECT -public: - CubeView(QWidget *parent = 0); - ~CubeView(); - -protected: - void paintGL(QGLPainter *painter); - -private: - QGLSceneNode *cube; -}; - -#endif diff --git a/examples/qt3d/cube/main.cpp b/examples/qt3d/cube/main.cpp deleted file mode 100644 index 79c75655..00000000 --- a/examples/qt3d/cube/main.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> -#include "cubeview.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - CubeView view; -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - return app.exec(); -} diff --git a/examples/qt3d/cube/qt3d.ico b/examples/qt3d/cube/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/cube/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/cube/qt3d.png b/examples/qt3d/cube/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/cube/qt3d.png +++ /dev/null diff --git a/examples/qt3d/cube/qtlogo.png b/examples/qt3d/cube/qtlogo.png Binary files differdeleted file mode 100644 index 7d3e97eb..00000000 --- a/examples/qt3d/cube/qtlogo.png +++ /dev/null diff --git a/examples/qt3d/cylinder/cubeview.cpp b/examples/qt3d/cylinder/cubeview.cpp deleted file mode 100644 index 4569caeb..00000000 --- a/examples/qt3d/cylinder/cubeview.cpp +++ /dev/null @@ -1,77 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include "cubeview.h" -#include "qglbuilder.h" -#include "qglcube.h" -#include "qglcylinder.h" - -#include <QtCore/qurl.h> - -CubeView::CubeView(QWidget *parent) - : QGLView(parent) -{ - QGLBuilder builder; - builder << QGL::Smooth << QGLCylinder(2.0, 1.5, 2.0, 36, 3); - cube = builder.finalizedSceneNode(); - - QGLMaterial *mat = new QGLMaterial; - mat->setColor(QColor(170, 202, 0)); - QUrl url; - url.setPath(QLatin1String(":/cupTexture.png")); - url.setScheme(QLatin1String("file")); - mat->setTextureUrl(url); - cube->setMaterial(mat); - - cube->setEffect(QGL::LitDecalTexture2D); -} - -CubeView::~CubeView() -{ - delete cube; -} - -void CubeView::paintGL(QGLPainter *painter) -{ - painter->modelViewMatrix().translate(0.0f, -1.0f, 0.0f); - painter->modelViewMatrix().rotate(-75.0f, 1.0f, 0.0f, 0.0f); - cube->draw(painter); -} diff --git a/examples/qt3d/cylinder/cubeview.h b/examples/qt3d/cylinder/cubeview.h deleted file mode 100644 index 8996fd34..00000000 --- a/examples/qt3d/cylinder/cubeview.h +++ /dev/null @@ -1,62 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef CUBEVIEW_H -#define CUBEVIEW_H - -#include "qglview.h" - -class QGLSceneNode; - -class CubeView : public QGLView -{ - Q_OBJECT -public: - CubeView(QWidget *parent = 0); - ~CubeView(); - -protected: - void paintGL(QGLPainter *painter); - -private: - QGLSceneNode *cube; -}; - -#endif diff --git a/examples/qt3d/cylinder/cupTexture.png b/examples/qt3d/cylinder/cupTexture.png Binary files differdeleted file mode 100644 index e099dea2..00000000 --- a/examples/qt3d/cylinder/cupTexture.png +++ /dev/null diff --git a/examples/qt3d/cylinder/cylinder.desktop b/examples/qt3d/cylinder/cylinder.desktop deleted file mode 100644 index da9d8102..00000000 --- a/examples/qt3d/cylinder/cylinder.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Cappucino -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/cylinder -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_cylinder diff --git a/examples/qt3d/cylinder/cylinder.pro b/examples/qt3d/cylinder/cylinder.pro deleted file mode 100644 index 229ae5b0..00000000 --- a/examples/qt3d/cylinder/cylinder.pro +++ /dev/null @@ -1,17 +0,0 @@ -TEMPLATE = app -TARGET = cylinder -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES = cylinderview.cpp main.cpp -HEADERS = cylinderview.h -RESOURCES = cylinder.qrc - -OTHER_FILES += \ - cylinder.rc \ - cylinder.desktop - -RC_FILE = cylinder.rc - diff --git a/examples/qt3d/cylinder/cylinder.qrc b/examples/qt3d/cylinder/cylinder.qrc deleted file mode 100644 index 20fa400f..00000000 --- a/examples/qt3d/cylinder/cylinder.qrc +++ /dev/null @@ -1,6 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>latte.png</file> - <file>cupTexture.png</file> - </qresource> -</RCC> diff --git a/examples/qt3d/cylinder/cylinder.rc b/examples/qt3d/cylinder/cylinder.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/cylinder/cylinder.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/cylinder/cylinderview.cpp b/examples/qt3d/cylinder/cylinderview.cpp deleted file mode 100644 index 2b347ab6..00000000 --- a/examples/qt3d/cylinder/cylinderview.cpp +++ /dev/null @@ -1,101 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - - -#include "cylinderview.h" -#include "qglbuilder.h" -#include "qglcylinder.h" -#include <QtCore/qurl.h> - -CylinderView::CylinderView(QWidget *parent) - : QGLView(parent) -{ - QGLBuilder builder; - builder << QGL::Smooth << QGLCylinder(2.0, 1.5, 2.0, 36, 3, true, true); - - QGLMaterial *matLid = new QGLMaterial; - matLid->setAmbientColor(Qt::gray); - matLid->setDiffuseColor(Qt::gray); - QUrl urlLid; - urlLid.setPath(QLatin1String(":/latte.png")); - urlLid.setScheme(QLatin1String("file")); - matLid->setTextureUrl(urlLid); - - QGLMaterial *matSides = new QGLMaterial; - matSides->setColor(QColor(170, 202, 0)); - QUrl urlSides; - urlSides.setPath(QLatin1String(":/cupTexture.png")); - urlSides.setScheme(QLatin1String("file")); - matSides->setTextureUrl(urlSides); - - QGLSceneNode *root = builder.sceneNode(); - - QGLSceneNode *lid = root->findChild<QGLSceneNode *>("Cylinder Top"); - int lidMat = root->palette()->addMaterial(matLid); - lid->setMaterialIndex(lidMat); - lid->setEffect(QGL::LitDecalTexture2D); - - QGLSceneNode *sides = root->findChild<QGLSceneNode *>("Cylinder Sides"); - int sideMat = root->palette()->addMaterial(matSides); - sides->setMaterialIndex(sideMat); - sides->setEffect(QGL::LitDecalTexture2D); - - - cylinder = builder.finalizedSceneNode(); - - QGLMaterial *mat = new QGLMaterial; - mat->setAmbientColor(Qt::gray); - mat->setDiffuseColor(Qt::gray); - cylinder->setMaterial(mat); - cylinder->setEffect(QGL::LitMaterial); -} - -CylinderView::~CylinderView() -{ - delete cylinder; -} - -void CylinderView::paintGL(QGLPainter *painter) -{ - painter->modelViewMatrix().translate(0.0f, -1.0f, 0.0f); - painter->modelViewMatrix().rotate(-75.0f, 1.0f, 0.0f, 0.0f); - cylinder->draw(painter); -} - diff --git a/examples/qt3d/cylinder/cylinderview.h b/examples/qt3d/cylinder/cylinderview.h deleted file mode 100644 index 0a4ac8bc..00000000 --- a/examples/qt3d/cylinder/cylinderview.h +++ /dev/null @@ -1,64 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef CYLINDERVIEW_H -#define CYLINDERVIEW_H - -#include "qglview.h" - -QT_BEGIN_NAMESPACE -class QGLSceneNode; -QT_END_NAMESPACE - -class CylinderView : public QGLView -{ - Q_OBJECT -public: - CylinderView(QWidget *parent = 0); - ~CylinderView(); - -protected: - void paintGL(QGLPainter *painter); - -private: - QGLSceneNode *cylinder; -}; - -#endif diff --git a/examples/qt3d/cylinder/latte.png b/examples/qt3d/cylinder/latte.png Binary files differdeleted file mode 100644 index 6902b96c..00000000 --- a/examples/qt3d/cylinder/latte.png +++ /dev/null diff --git a/examples/qt3d/cylinder/main.cpp b/examples/qt3d/cylinder/main.cpp deleted file mode 100644 index 8101853d..00000000 --- a/examples/qt3d/cylinder/main.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> -#include "cylinderview.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - CylinderView view; -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - return app.exec(); -} diff --git a/examples/qt3d/cylinder/qt3d.ico b/examples/qt3d/cylinder/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/cylinder/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/cylinder/qt3d.png b/examples/qt3d/cylinder/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/cylinder/qt3d.png +++ /dev/null diff --git a/examples/qt3d/geometry/EarthFlat_512x512.jpg b/examples/qt3d/geometry/EarthFlat_512x512.jpg Binary files differdeleted file mode 100644 index 28864977..00000000 --- a/examples/qt3d/geometry/EarthFlat_512x512.jpg +++ /dev/null diff --git a/examples/qt3d/geometry/bullseye.png b/examples/qt3d/geometry/bullseye.png Binary files differdeleted file mode 100644 index e67cf703..00000000 --- a/examples/qt3d/geometry/bullseye.png +++ /dev/null diff --git a/examples/qt3d/geometry/geometry.cpp b/examples/qt3d/geometry/geometry.cpp deleted file mode 100644 index 870d68d5..00000000 --- a/examples/qt3d/geometry/geometry.cpp +++ /dev/null @@ -1,210 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "geometry.h" -#include "qgltexture2d.h" -#include "qglmaterialcollection.h" -#include "qtriangle3d.h" - -#include <QImage> -#include <QPainter> - -// icosahedron is defined by phi, derived from the golden section -// http://en.wikipedia.org/wiki/Icosahedron#Cartesian_coordinates -const qreal phi = 1.618033988749894848f; - -Geometry::Geometry(QObject *parent, QGLMaterialCollection *materials) - : QGLSceneNode(parent) -{ - setPalette(materials); - - float ico[12][3] = { - { 0.0f, 1.0f, phi }, // A - 0 - { 0.0f, 1.0f, -phi }, // B - 1 - { 0.0f, -1.0f, phi }, // C - 2 - { 0.0f, -1.0f, -phi }, // D - 3 - { 1.0f, phi, 0.0f }, // E - 4 - { 1.0f, -phi, 0.0f }, // F - 5 - { -1.0f, phi, 0.0f }, // G - 6 - { -1.0f, -phi, 0.0f }, // H - 7 - { phi, 0.0f, 1.0f }, // I - 8 - { phi, 0.0f, -1.0f }, // J - 9 - { -phi, 0.0f, 1.0f }, // K - 10 - { -phi, 0.0f, -1.0f } // L - 11 - }; - - int face[20][3] = { - { 4, 0, 8 }, // E-A-I - { 6, 0, 4 }, // G-A-E - { 6, 10, 0 }, // G-K-A - { 11, 10, 6 }, // L-K-G - { 0, 2, 8 }, // A-C-I - { 10, 2, 0 }, // K-C-A - { 10, 7, 2 }, // K-H-C - { 11, 7, 10 }, // L-H-K - { 2, 5, 8 }, // C-F-I - { 7, 5, 2 }, // H-F-C - { 7, 3, 5 }, // H-D-F - { 11, 3, 7 }, // L-D-H - { 5, 9, 8 }, // F-J-I - { 3, 9, 5 }, // D-J-F - { 3, 1, 9 }, // D-B-J - { 11, 1, 3 }, // L-B-D - { 9, 4, 8 }, // J-E-I - { 1, 4, 9 }, // B-E-J - { 1, 6, 4 }, // B-G-E - { 11, 6, 1 } // L-G-B - }; - - const float u0 = 0.0f; - const float u1 = 0.173205081f; - const float u2 = 0.346410162f; - const float u3 = 0.519615242f; - const float u4 = 0.692820323f; - const float u5 = 0.866025402f; - const float v0 = 0.0f; - const float v1 = 0.111111111f; - const float v2 = 0.222222222f; - const float v3 = 0.333333333f; - const float v4 = 0.444444444f; - const float v5 = 0.555555555f; - const float v6 = 0.666666666f; - const float v7 = 0.777777777f; - const float v8 = 0.888888888f; - const float v9 = 1.0f; - - float tex[20][3][2] = { - { { u0, v1 }, { u1, v2 }, { u1, v0 } }, // E-A-I - { { u0, v3 }, { u1, v2 }, { u0, v1 } }, // G-A-E - { { u0, v3 }, { u1, v4 }, { u1, v2 } }, // G-K-A - { { u0, v5 }, { u1, v4 }, { u0, v3 } }, // L-K-G - { { u1, v2 }, { u2, v3 }, { u2, v1 } }, // A-C-I - { { u1, v4 }, { u2, v3 }, { u1, v2 } }, // K-C-A - { { u1, v4 }, { u2, v5 }, { u2, v3 } }, // K-H-C - { { u1, v6 }, { u2, v5 }, { u1, v4 } }, // L-H-K - { { u2, v3 }, { u3, v4 }, { u3, v2 } }, // C-F-I - { { u2, v5 }, { u3, v4 }, { u2, v3 } }, // H-F-C - { { u2, v5 }, { u3, v6 }, { u3, v4 } }, // H-D-F - { { u2, v7 }, { u3, v6 }, { u2, v5 } }, // L-D-H - { { u3, v4 }, { u4, v5 }, { u4, v3 } }, // F-J-I - { { u3, v6 }, { u4, v5 }, { u3, v4 } }, // D-J-F - { { u3, v6 }, { u4, v7 }, { u4, v5 } }, // D-B-J - { { u3, v8 }, { u4, v7 }, { u3, v6 } }, // L-B-D - { { u4, v5 }, { u5, v6 }, { u5, v4 } }, // J-E-I - { { u4, v7 }, { u5, v6 }, { u4, v5 } }, // B-E-J - { { u4, v7 }, { u5, v8 }, { u5, v6 } }, // B-G-E - { { u4, v9 }, { u5, v8 }, { u4, v7 } } // L-G-B - }; - -#ifdef Q_OS_SYMBIAN - const int imgSize = 256; - const int txtSize = 6; -#else - const int imgSize = 1024; - const int txtSize = 36; -#endif - - QImage uv(imgSize, imgSize, QImage::Format_ARGB32); - uv.fill(qRgba(196, 196, 196, 196)); - QPainter painter; - painter.begin(&uv); - painter.setRenderHint(QPainter::Antialiasing); - QPen pen = painter.pen(); - pen.setWidth(2.0); - painter.setPen(pen); - QFont font = painter.font(); - font.setPointSize(txtSize); - painter.setFont(font); - QFontMetrics metrics = painter.fontMetrics(); - - QGLBuilder b; - b.newSection(); - b.currentNode()->setEffect(QGL::LitDecalTexture2D); - for (int ix = 0; ix < 20; ++ix) - { - QVector3D v0(ico[face[ix][0]][0], ico[face[ix][0]][1], ico[face[ix][0]][2]); - QVector3D v1(ico[face[ix][1]][0], ico[face[ix][1]][1], ico[face[ix][1]][2]); - QVector3D v2(ico[face[ix][2]][0], ico[face[ix][2]][1], ico[face[ix][2]][2]); - - QVector2D t0(tex[ix][0][0], tex[ix][0][1]); - QVector2D t1(tex[ix][1][0], tex[ix][1][1]); - QVector2D t2(tex[ix][2][0], tex[ix][2][1]); - - // scale up and flip to draw the texture - QVector2D tv0 = t0 * static_cast<float>(imgSize); - QVector2D tv1 = t1 * static_cast<float>(imgSize); - QVector2D tv2 = t2 * static_cast<float>(imgSize); - - painter.setPen(QColor("darkblue")); - painter.drawLine(tv0.toPointF(), tv1.toPointF()); - painter.drawLine(tv1.toPointF(), tv2.toPointF()); - painter.drawLine(tv2.toPointF(), tv0.toPointF()); - QTriangle3D tri(tv0, tv1, tv2); - QVector3D cen = tri.center(); - QString n = QString::number(ix+1); - - painter.setPen(QColor("darkgreen")); - painter.drawText(QPointF(cen.x() - metrics.width(n) / 2.0, cen.y() + 3.0), n); - - // Qt's coordinate system is upside down. I'm ok with that. - t0.setY(1.0f - t0.y()); - t1.setY(1.0f - t1.y()); - t2.setY(1.0f - t2.y()); - - QGeometryData op; - op.appendVertex(v0, v1, v2); - op.appendTexCoord(t0, t1, t2); - b.addTriangles(op); - } - - painter.end(); - - QGLMaterial *mat = new QGLMaterial; - mat->setAmbientColor(QColor(32, 64, 196)); - mat->setDiffuseColor(QColor(32, 32, 32)); - - QGLTexture2D *texture = new QGLTexture2D(mat); - texture->setImage(uv); - mat->setTexture(texture); - - setMaterial(mat); - QGLSceneNode *n = b.finalizedSceneNode(); - addNode(n); -} diff --git a/examples/qt3d/geometry/geometry.desktop b/examples/qt3d/geometry/geometry.desktop deleted file mode 100644 index 62c79a41..00000000 --- a/examples/qt3d/geometry/geometry.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=D20 Qt3D -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/geometry -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_geometry diff --git a/examples/qt3d/geometry/geometry.h b/examples/qt3d/geometry/geometry.h deleted file mode 100644 index ff100449..00000000 --- a/examples/qt3d/geometry/geometry.h +++ /dev/null @@ -1,58 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef GEOMETRY_H -#define GEOMETRY_H - -#include "qglbuilder.h" - -#include <QImage> - -QT_BEGIN_NAMESPACE -class QGLTexture2D; -QT_END_NAMESPACE - -class Geometry : public QGLSceneNode -{ -public: - Geometry(QObject *parent = 0, QGLMaterialCollection *materials = 0); -}; - -#endif // GEOMETRY_H diff --git a/examples/qt3d/geometry/geometry.pro b/examples/qt3d/geometry/geometry.pro deleted file mode 100644 index f2a8fbde..00000000 --- a/examples/qt3d/geometry/geometry.pro +++ /dev/null @@ -1,22 +0,0 @@ -TEMPLATE = app -TARGET = geometry -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES = geometryview.cpp \ - main.cpp \ - geometry.cpp \ - quadplane.cpp -HEADERS = geometryview.h \ - geometry.h \ - quadplane.h -RESOURCES = geometry.qrc - -OTHER_FILES += \ - geometry.rc \ - geometry.desktop - -RC_FILE = geometry.rc - diff --git a/examples/qt3d/geometry/geometry.qrc b/examples/qt3d/geometry/geometry.qrc deleted file mode 100644 index 4599a46a..00000000 --- a/examples/qt3d/geometry/geometry.qrc +++ /dev/null @@ -1,6 +0,0 @@ -<RCC> - <qresource prefix="/" > - <file>bullseye.png</file> - <file>EarthFlat_512x512.jpg</file> - </qresource> -</RCC> diff --git a/examples/qt3d/geometry/geometry.rc b/examples/qt3d/geometry/geometry.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/geometry/geometry.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/geometry/geometryview.cpp b/examples/qt3d/geometry/geometryview.cpp deleted file mode 100644 index 762e56fc..00000000 --- a/examples/qt3d/geometry/geometryview.cpp +++ /dev/null @@ -1,122 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "geometryview.h" -#include "qray3d.h" - -#include <QImage> -#include <QPainter> -#include <QDir> -#include <QTimer> -#include <QWheelEvent> - -#include <math.h> - -#include "geometry.h" -#include "quadplane.h" -#include "qplane3d.h" -#include "qglmaterialcollection.h" -#include "qgraphicsscale3d.h" - -GeometryView::GeometryView(QWidget *parent) - : QGLView(parent) - , timer(new QTimer(this)) -{ - lp = new QGLLightParameters(this); - lp->setPosition(QVector3D(-3.0, 1.0, 15.0)); - lp->setSpotAngle(15.0); - lp->setSpotExponent(24); - lp->setSpotDirection(QVector3D(0.0, -1.0, -2.0)); - - palette = new QGLMaterialCollection(this); - - // first set up the geometry - an icosahedron - // this one handles all its own colors and textures - icosahedron = new Geometry(this, palette); - - // now a generic flat floor plane which will be painted grey - // and textured the same as the icosahedron - floor = new QuadPlane(this); - floor->setPalette(palette); - QGLMaterial *parms = new QGLMaterial; - parms->setAmbientColor(Qt::darkGray); - parms->setDiffuseColor(Qt::gray); - int m = palette->addMaterial(parms); - QGLTexture2D *tex = icosahedron->material()->texture(); - parms->setTexture(tex); - floor->setMaterialIndex(m); - floor->setPosition(QVector3D(0, 0, -5)); - QGraphicsScale3D *scale = new QGraphicsScale3D(floor); - scale->setScale(QVector3D(0.2, 0.2, 0.1)); - floor->addTransform(scale); - - mdl = new QGLLightModel(this); - mdl->setAmbientSceneColor(QColor(196,196,196)); -} - -GeometryView::~GeometryView() -{ - delete icosahedron; - delete floor; - delete timer; -} - -void GeometryView::initializeGL(QGLPainter *painter) -{ - painter->setLightModel(mdl); - - painter->setMainLight(lp); - - connect(timer, SIGNAL(timeout()), this, SLOT(rotate())); - timer->start(25); -} - -void GeometryView::paintGL(QGLPainter *painter) -{ - floor->draw(painter); - painter->modelViewMatrix().rotate(angle, 0.10f, 1.0f, 0.0f); - icosahedron->draw(painter); -} - -void GeometryView::rotate() -{ - angle = (angle + 2) % 360; - updateGL(); -} diff --git a/examples/qt3d/geometry/geometryview.h b/examples/qt3d/geometry/geometryview.h deleted file mode 100644 index e6cc33e4..00000000 --- a/examples/qt3d/geometry/geometryview.h +++ /dev/null @@ -1,88 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef GEOMETRYVIEW_H -#define GEOMETRYVIEW_H - -#include "qglview.h" -#include "qgltexture2d.h" - -QT_BEGIN_NAMESPACE -class QTimer; -class QGLLightParameters; -class QGLMaterial; -class QGLLightModel; -class QGLMaterialCollection; -class QWheelEvent; -QT_END_NAMESPACE - -class QuadPlane; -class Geometry; - -class GeometryView : public QGLView -{ - Q_OBJECT -public: - GeometryView(QWidget *parent = 0); - ~GeometryView(); - -protected: - void initializeGL(QGLPainter *painter); - void paintGL(QGLPainter *painter); - -private slots: - void rotate(); - -private: - void makeTexture(); - - QGLTexture2D texture; - Geometry *icosahedron; - QuadPlane *floor; - QTimer *timer; - int angle; - QGLLightParameters *lp; - QGLMaterialCollection *palette; - QGLMaterial *mat1; - QGLMaterial *mat2; - QGLLightModel *mdl; -}; - -#endif // GEOMETRYVIEW_H diff --git a/examples/qt3d/geometry/main.cpp b/examples/qt3d/geometry/main.cpp deleted file mode 100644 index b2f2025f..00000000 --- a/examples/qt3d/geometry/main.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> -#include "geometryview.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - GeometryView view; -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - return app.exec(); -} diff --git a/examples/qt3d/geometry/qt3d.ico b/examples/qt3d/geometry/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/geometry/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/geometry/qt3d.png b/examples/qt3d/geometry/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/geometry/qt3d.png +++ /dev/null diff --git a/examples/qt3d/geometry/quadplane.cpp b/examples/qt3d/geometry/quadplane.cpp deleted file mode 100644 index 3387002b..00000000 --- a/examples/qt3d/geometry/quadplane.cpp +++ /dev/null @@ -1,92 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "quadplane.h" - -/*! - \class QuadPlane - \brief The QuadPlane class holds a 3D model of a large flat plane. - When drawing a large flat plane, such as a wall or a floor, it is desirable - to decompose it into smaller units to make the shading effects look correct. - This class composes a plane out of a configurable number of quads. -*/ - -/*! - Construct a new QuadPlane with \a size, subdivided \a level times. By default - the plane is 100.0f x 100.0f, and is subdivided 3 times - that is into an - 8 x 8 grid. - - It is centered on the origin, and lies in the z = 0 plane. -*/ -QuadPlane::QuadPlane(QObject *parent, QSizeF size, int level) - : QGLSceneNode(parent) -{ - setObjectName(QLatin1String("QuadPlane")); - if (level > 8) - level = 8; - if (level < 1) - level = 1; - int divisions = 1; - for ( ; level--; divisions *= 2) {} // integer 2**n - QSizeF div = size / float(divisions); - QSizeF half = size / 2.0f; - QGLBuilder builder; - QGeometryData zip; - QGeometryData zip2; - for (int yy = 0; yy <= divisions; ++yy) - { - qreal y = half.height() - float(yy) * div.height(); - qreal texY = float(yy) / divisions; - for (int xx = 0; xx <= divisions; ++xx) - { - qreal x = half.width() - float(xx) * div.width(); - qreal texX = float(xx) / divisions; - zip.appendVertex(QVector3D(x, y, 0)); - zip.appendTexCoord(QVector2D(1.0f - texX, 1.0f - texY)); - } - if (yy > 0) - builder.addQuadsInterleaved(zip, zip2); - zip2 = zip; - zip2.detach(); - zip.clear(); - } - QGLSceneNode *n = builder.finalizedSceneNode(); - addNode(n); -} diff --git a/examples/qt3d/geometry/quadplane.h b/examples/qt3d/geometry/quadplane.h deleted file mode 100644 index e95d1907..00000000 --- a/examples/qt3d/geometry/quadplane.h +++ /dev/null @@ -1,57 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QUADPLANE_H -#define QUADPLANE_H - -#include "qglbuilder.h" - -#include <QSizeF> - -class QPlane3D; - -class QuadPlane : public QGLSceneNode -{ -public: - QuadPlane(QObject *parent = 0, - QSizeF size = QSizeF(100.0f, 100.0f), int level = 3); -}; - -#endif // QUADPLANE_H diff --git a/examples/qt3d/graphicsview/cubeicon.png b/examples/qt3d/graphicsview/cubeicon.png Binary files differdeleted file mode 100644 index 9979fb58..00000000 --- a/examples/qt3d/graphicsview/cubeicon.png +++ /dev/null diff --git a/examples/qt3d/graphicsview/cubeitem.cpp b/examples/qt3d/graphicsview/cubeitem.cpp deleted file mode 100644 index 10c7609f..00000000 --- a/examples/qt3d/graphicsview/cubeitem.cpp +++ /dev/null @@ -1,193 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "cubeitem.h" -#include "qglpainter.h" -#include "qglcube.h" -#include "qray3d.h" -#include "qplane3d.h" -#include "qtriangle3d.h" -#include "qgraphicsembedscene.h" - -const qreal CubeSize = 2.0f; - -CubeItem::CubeItem(QGraphicsItem *parent) - : ModelItem(parent) -{ - QGLBuilder builder; - builder.newSection(QGL::Faceted); - builder << QGLCube(CubeSize); - cube = builder.finalizedSceneNode(); -} - -CubeItem::~CubeItem() -{ - delete cube; -} - -void CubeItem::paintGL(QGLPainter *painter) -{ - GLuint textureId = this->textureId(); - if (textureId) { - glDisable(GL_DEPTH_TEST); - glEnable(GL_BLEND); - painter->setFaceColor(QGL::AllFaces, QColor(0, 0, 0, 200)); - painter->setStandardEffect(QGL::LitDecalTexture2D); - glBindTexture(GL_TEXTURE_2D, textureId); - glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); - if (painter->isFixedFunction()) - glEnable(GL_TEXTURE_2D); - glCullFace(GL_FRONT); - glEnable(GL_CULL_FACE); - cube->draw(painter); - glCullFace(GL_BACK); - cube->draw(painter); - glDisable(GL_CULL_FACE); - glBindTexture(GL_TEXTURE_2D, 0); - if (painter->isFixedFunction()) - glDisable(GL_TEXTURE_2D); - } else { - painter->setStandardEffect(QGL::LitMaterial); - cube->draw(painter); - } -} - -static const int vertexDataLen = 6 * 4 * 3; - -static const float vertexData[vertexDataLen] = { - -0.5f * CubeSize, -0.5f * CubeSize, -0.5f * CubeSize, - -0.5f * CubeSize, -0.5f * CubeSize, 0.5f * CubeSize, - -0.5f * CubeSize, 0.5f * CubeSize, 0.5f * CubeSize, - -0.5f * CubeSize, 0.5f * CubeSize, -0.5f * CubeSize, - - -0.5f * CubeSize, 0.5f * CubeSize, -0.5f * CubeSize, - -0.5f * CubeSize, 0.5f * CubeSize, 0.5f * CubeSize, - 0.5f * CubeSize, 0.5f * CubeSize, 0.5f * CubeSize, - 0.5f * CubeSize, 0.5f * CubeSize, -0.5f * CubeSize, - - 0.5f * CubeSize, 0.5f * CubeSize, -0.5f * CubeSize, - 0.5f * CubeSize, 0.5f * CubeSize, 0.5f * CubeSize, - 0.5f * CubeSize, -0.5f * CubeSize, 0.5f * CubeSize, - 0.5f * CubeSize, -0.5f * CubeSize, -0.5f * CubeSize, - - 0.5f * CubeSize, -0.5f * CubeSize, -0.5f * CubeSize, - 0.5f * CubeSize, -0.5f * CubeSize, 0.5f * CubeSize, - -0.5f * CubeSize, -0.5f * CubeSize, 0.5f * CubeSize, - -0.5f * CubeSize, -0.5f * CubeSize, -0.5f * CubeSize, - - 0.5f * CubeSize, -0.5f * CubeSize, 0.5f * CubeSize, - 0.5f * CubeSize, 0.5f * CubeSize, 0.5f * CubeSize, - -0.5f * CubeSize, 0.5f * CubeSize, 0.5f * CubeSize, - -0.5f * CubeSize, -0.5f * CubeSize, 0.5f * CubeSize, - - 0.5f * CubeSize, 0.5f * CubeSize, -0.5f * CubeSize, - 0.5f * CubeSize, -0.5f * CubeSize, -0.5f * CubeSize, - -0.5f * CubeSize, -0.5f * CubeSize, -0.5f * CubeSize, - -0.5f * CubeSize, 0.5f * CubeSize, -0.5f * CubeSize -}; - -QPointF CubeItem::intersection(const QRay3D &ray, int *actualFace) const -{ - // Determine which face of the cube contains the point. - QMatrix4x4 mv = camera()->modelViewMatrix(); - QVector3D pt1, pt2, pt3, pt4; - QVector2D tc1, tc2, tc3; - bool singleFace = (pressedFace() != -1); - for (int face = 0; face < 6; ++face) { - if (singleFace && face != pressedFace()) - continue; - - // Test the two triangles on the face for an intersection. - pt1 = QVector3D(vertexData[face * 4 * 3], - vertexData[face * 4 * 3 + 1], - vertexData[face * 4 * 3 + 2]); - pt2 = QVector3D(vertexData[face * 4 * 3 + 3], - vertexData[face * 4 * 3 + 4], - vertexData[face * 4 * 3 + 5]); - pt3 = QVector3D(vertexData[face * 4 * 3 + 6], - vertexData[face * 4 * 3 + 7], - vertexData[face * 4 * 3 + 8]); - pt4 = QVector3D(vertexData[face * 4 * 3 + 9], - vertexData[face * 4 * 3 + 10], - vertexData[face * 4 * 3 + 11]); - pt1 = mv.map(pt1); - pt2 = mv.map(pt2); - pt3 = mv.map(pt3); - pt4 = mv.map(pt4); - QTriangle3D triangle(pt1, pt2, pt3); - qreal t = triangle.intersection(ray); - if (qIsNaN(t)) { - triangle.setQ(pt3); - triangle.setR(pt4); - t = triangle.intersection(ray); - if (qIsNaN(t)) { - if (!singleFace) - continue; - // The mouse probably moved outside the face while the - // mouse button was held down. Use the triangle's plane - // to compute a virtual texture co-ordinate. - t = triangle.plane().intersection(ray); - } - tc1 = QVector2D(1.0f, 0.0f); - tc2 = QVector2D(0.0f, 1.0f); - tc3 = QVector2D(0.0f, 0.0f); - } else { - tc1 = QVector2D(1.0f, 0.0f); - tc2 = QVector2D(1.0f, 1.0f); - tc3 = QVector2D(0.0f, 1.0f); - } - - // We want the face that is pointing towards the user. - QVector3D v = QVector3D::crossProduct(pt2 - pt1, pt3 - pt1); - if (!singleFace && v.z() <= 0.0f) - continue; - - // Get the texture co-ordinate corresponding to the intersection. - QVector2D uv = triangle.uv(ray.point(t)); - QVector2D tc = - uv.x() * tc1 + uv.y() * tc2 + (1 - uv.x() - uv.y()) * tc3; - *actualFace = face; - return QPointF(tc.x(), tc.y()); - } - - *actualFace = -1; - return QPointF(); -} diff --git a/examples/qt3d/graphicsview/cubeitem.h b/examples/qt3d/graphicsview/cubeitem.h deleted file mode 100644 index 67b4aa25..00000000 --- a/examples/qt3d/graphicsview/cubeitem.h +++ /dev/null @@ -1,61 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef CUBEITEM_H -#define CUBEITEM_H - -#include "modelitem.h" - -class CubeItem : public ModelItem -{ - Q_OBJECT -public: - CubeItem(QGraphicsItem *parent = 0); - ~CubeItem(); - -protected: - void paintGL(QGLPainter *painter); - QPointF intersection(const QRay3D &ray, int *actualFace) const; - -private: - QGLSceneNode *cube; -}; - -#endif diff --git a/examples/qt3d/graphicsview/edge.cpp b/examples/qt3d/graphicsview/edge.cpp deleted file mode 100644 index bf480ec4..00000000 --- a/examples/qt3d/graphicsview/edge.cpp +++ /dev/null @@ -1,151 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QPainter> - -#include "edge.h" -#include "node.h" - -#include <math.h> - -static const double Pi = 3.14159265358979323846264338327950288419717; -static double TwoPi = 2.0 * Pi; - -Edge::Edge(Node *sourceNode, Node *destNode) - : arrowSize(10) -{ - setAcceptedMouseButtons(0); - source = sourceNode; - dest = destNode; - source->addEdge(this); - dest->addEdge(this); - adjust(); -} - -Edge::~Edge() -{ -} - -Node *Edge::sourceNode() const -{ - return source; -} - -void Edge::setSourceNode(Node *node) -{ - source = node; - adjust(); -} - -Node *Edge::destNode() const -{ - return dest; -} - -void Edge::setDestNode(Node *node) -{ - dest = node; - adjust(); -} - -void Edge::adjust() -{ - if (!source || !dest) - return; - - QLineF line(mapFromItem(source, 0, 0), mapFromItem(dest, 0, 0)); - qreal length = line.length(); - - prepareGeometryChange(); - - if (length > qreal(20.)) { - QPointF edgeOffset((line.dx() * 10) / length, (line.dy() * 10) / length); - sourcePoint = line.p1() + edgeOffset; - destPoint = line.p2() - edgeOffset; - } else { - sourcePoint = destPoint = line.p1(); - } -} - -QRectF Edge::boundingRect() const -{ - if (!source || !dest) - return QRectF(); - - qreal penWidth = 1; - qreal extra = (penWidth + arrowSize) / 2.0; - - return QRectF(sourcePoint, QSizeF(destPoint.x() - sourcePoint.x(), - destPoint.y() - sourcePoint.y())) - .normalized() - .adjusted(-extra, -extra, extra, extra); -} - -void Edge::paint(QPainter *painter, const QStyleOptionGraphicsItem *, QWidget *) -{ - if (!source || !dest) - return; - - QLineF line(sourcePoint, destPoint); - if (qFuzzyCompare(line.length(), qreal(0.))) - return; - - // Draw the line itself - painter->setPen(QPen(Qt::black, 2, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin)); - painter->drawLine(line); - - // Draw the arrows - double angle = ::acos(line.dx() / line.length()); - if (line.dy() >= 0) - angle = TwoPi - angle; - - QPointF sourceArrowP1 = sourcePoint + QPointF(sin(angle + Pi / 3) * arrowSize, - cos(angle + Pi / 3) * arrowSize); - QPointF sourceArrowP2 = sourcePoint + QPointF(sin(angle + Pi - Pi / 3) * arrowSize, - cos(angle + Pi - Pi / 3) * arrowSize); - QPointF destArrowP1 = destPoint + QPointF(sin(angle - Pi / 3) * arrowSize, - cos(angle - Pi / 3) * arrowSize); - QPointF destArrowP2 = destPoint + QPointF(sin(angle - Pi + Pi / 3) * arrowSize, - cos(angle - Pi + Pi / 3) * arrowSize); - - painter->setBrush(Qt::black); - painter->drawPolygon(QPolygonF() << line.p1() << sourceArrowP1 << sourceArrowP2); - painter->drawPolygon(QPolygonF() << line.p2() << destArrowP1 << destArrowP2); -} diff --git a/examples/qt3d/graphicsview/edge.h b/examples/qt3d/graphicsview/edge.h deleted file mode 100644 index d50c403a..00000000 --- a/examples/qt3d/graphicsview/edge.h +++ /dev/null @@ -1,77 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef EDGE_H -#define EDGE_H - -#include <QGraphicsItem> - -class Node; - -class Edge : public QGraphicsItem -{ -public: - Edge(Node *sourceNode, Node *destNode); - ~Edge(); - - Node *sourceNode() const; - void setSourceNode(Node *node); - - Node *destNode() const; - void setDestNode(Node *node); - - void adjust(); - - enum { Type = UserType + 2 }; - int type() const { return Type; } - -protected: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); - -private: - Node *source, *dest; - - QPointF sourcePoint; - QPointF destPoint; - qreal arrowSize; -}; - -#endif diff --git a/examples/qt3d/graphicsview/graph.cpp b/examples/qt3d/graphicsview/graph.cpp deleted file mode 100644 index 2aa28b10..00000000 --- a/examples/qt3d/graphicsview/graph.cpp +++ /dev/null @@ -1,130 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "graph.h" -#include "edge.h" -#include "node.h" -#include "scene.h" - -#include <QDebug> -#include <QGraphicsScene> - -#include <math.h> - -Graph::Graph(QObject *parent) - : QObject(parent), timerId(0) -{ - QGraphicsEmbedScene *scene = new Scene(this); - sceneObject = scene; - scene->setItemIndexMethod(QGraphicsScene::NoIndex); - scene->setSceneRect(-128, -128, 256, 256); - - Node *node1 = new Node(this); - Node *node2 = new Node(this); - Node *node3 = new Node(this); - Node *node4 = new Node(this); - centerNode = new Node(this); - Node *node6 = new Node(this); - Node *node7 = new Node(this); - Node *node8 = new Node(this); - Node *node9 = new Node(this); - scene->addItem(node1); - scene->addItem(node2); - scene->addItem(node3); - scene->addItem(node4); - scene->addItem(centerNode); - scene->addItem(node6); - scene->addItem(node7); - scene->addItem(node8); - scene->addItem(node9); - scene->addItem(new Edge(node1, node2)); - scene->addItem(new Edge(node2, node3)); - scene->addItem(new Edge(node2, centerNode)); - scene->addItem(new Edge(node3, node6)); - scene->addItem(new Edge(node4, node1)); - scene->addItem(new Edge(node4, centerNode)); - scene->addItem(new Edge(centerNode, node6)); - scene->addItem(new Edge(centerNode, node8)); - scene->addItem(new Edge(node6, node9)); - scene->addItem(new Edge(node7, node4)); - scene->addItem(new Edge(node8, node7)); - scene->addItem(new Edge(node9, node8)); - - node1->setPos(-50, -50); - node2->setPos(0, -50); - node3->setPos(50, -50); - node4->setPos(-50, 0); - centerNode->setPos(0, 0); - node6->setPos(50, 0); - node7->setPos(-50, 50); - node8->setPos(0, 50); - node9->setPos(50, 50); -} - -void Graph::itemMoved() -{ - if (!timerId) - timerId = startTimer(1000 / 25); -} - -void Graph::timerEvent(QTimerEvent *event) -{ - Q_UNUSED(event); - - QList<Node *> nodes; - foreach (QGraphicsItem *item, scene()->items()) { - if (Node *node = qgraphicsitem_cast<Node *>(item)) - nodes << node; - } - - foreach (Node *node, nodes) - node->calculateForces(); - - bool itemsMoved = false; - foreach (Node *node, nodes) { - if (node->advance()) - itemsMoved = true; - } - - if (!itemsMoved) { - killTimer(timerId); - timerId = 0; - } -} diff --git a/examples/qt3d/graphicsview/graph.h b/examples/qt3d/graphicsview/graph.h deleted file mode 100644 index 0fa897ce..00000000 --- a/examples/qt3d/graphicsview/graph.h +++ /dev/null @@ -1,67 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef GRAPHWIDGET_H -#define GRAPHWIDGET_H - -#include "qgraphicsembedscene.h" - -class Node; - -class Graph : public QObject -{ - Q_OBJECT -public: - Graph(QObject *parent = 0); - - QGraphicsEmbedScene *scene() const { return sceneObject; } - - void itemMoved(); - -protected: - void timerEvent(QTimerEvent *event); - -private: - QGraphicsEmbedScene *sceneObject; - int timerId; - Node *centerNode; -}; - -#endif diff --git a/examples/qt3d/graphicsview/graphicsview.desktop b/examples/qt3d/graphicsview/graphicsview.desktop deleted file mode 100644 index 3a38c3a6..00000000 --- a/examples/qt3d/graphicsview/graphicsview.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=GraphicsView -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/graphicsview -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_graphicsview diff --git a/examples/qt3d/graphicsview/graphicsview.pro b/examples/qt3d/graphicsview/graphicsview.pro deleted file mode 100644 index 48523320..00000000 --- a/examples/qt3d/graphicsview/graphicsview.pro +++ /dev/null @@ -1,36 +0,0 @@ -TEMPLATE = app -TARGET = graphicsview -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -VPATH += $$PWD/../../src/threed/geometry -SOURCES = \ - cubeitem.cpp \ - modelitem.cpp \ - teapotitem.cpp \ - main.cpp \ - edge.cpp \ - node.cpp \ - graph.cpp \ - scene.cpp \ - view.cpp -HEADERS = \ - cubeitem.h \ - modelitem.h \ - teapotitem.h \ - edge.h \ - node.h \ - graph.h \ - scene.h \ - view.h -RESOURCES = \ - graphicsview.qrc - -OTHER_FILES += \ - graphicsview.rc \ - graphicsview.desktop - -RC_FILE = graphicsview.rc - diff --git a/examples/qt3d/graphicsview/graphicsview.qrc b/examples/qt3d/graphicsview/graphicsview.qrc deleted file mode 100644 index 37a99a11..00000000 --- a/examples/qt3d/graphicsview/graphicsview.qrc +++ /dev/null @@ -1,6 +0,0 @@ -<!DOCTYPE RCC><RCC version="1.0"> -<qresource> - <file>cubeicon.png</file> - <file>teapoticon.png</file> -</qresource> -</RCC> diff --git a/examples/qt3d/graphicsview/graphicsview.rc b/examples/qt3d/graphicsview/graphicsview.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/graphicsview/graphicsview.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/graphicsview/main.cpp b/examples/qt3d/graphicsview/main.cpp deleted file mode 100644 index d9eae41c..00000000 --- a/examples/qt3d/graphicsview/main.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> -#include <QtOpenGL/qgl.h> -#include <QtCore/qmath.h> -#include <QtCore/qdatetime.h> -#include "view.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - - QGLFormat format(QGLFormat::defaultFormat()); - format.setSampleBuffers(true); - View view; - view.setViewport(new QGLWidget(format)); - view.show(); - -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#endif - return app.exec(); -} diff --git a/examples/qt3d/graphicsview/modelitem.cpp b/examples/qt3d/graphicsview/modelitem.cpp deleted file mode 100644 index 41ba1383..00000000 --- a/examples/qt3d/graphicsview/modelitem.cpp +++ /dev/null @@ -1,220 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "modelitem.h" -#include "qglpainter.h" -#include "qgraphicsembedscene.h" -#include <QtGui/qgraphicssceneevent.h> -#include <QtGui/qapplication.h> - -const qreal CubeSize = 2.0f; - -ModelItem::ModelItem(QGraphicsItem *parent) - : QGLGraphicsViewportItem(parent) - , mScene(0) - , mTextureId(0) - , navigating(false) - , mPressedFace(-1) - , pressedButton(Qt::NoButton) -{ - startNavCamera = new QGLCamera(); - - setFlag(ItemIsFocusable, true); -} - -ModelItem::~ModelItem() -{ - delete startNavCamera; -} - -void ModelItem::setScene(QGraphicsEmbedScene *scene) -{ - mScene = scene; - connect(scene, SIGNAL(changed(QList<QRectF>)), this, SLOT(updateScene())); -} - -void ModelItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) -{ - // Render the inner scene into a framebuffer object. - // We do this while the ordinary Qt paint engine has - // control of the GL context rather than later when the - // QGLPainter has control of the GL context. - if (mScene) - mTextureId = mScene->renderToTexture(); - - // Now render the GL parts of the item using QGLPainter. - QGLGraphicsViewportItem::paint(painter, option, widget); -} - -void ModelItem::updateScene() -{ - update(); -} - -void ModelItem::mousePressEvent(QGraphicsSceneMouseEvent *event) -{ - int face; - QPointF tc = intersection - (event->widget(), event->pos().toPoint(), &face); - if (!navigating && mPressedFace == -1 && face != -1) { - mPressedFace = face; - pressedButton = event->button(); - mScene->deliverEvent(event, tc); - return; - } else if (!navigating && face == -1) { - navigating = true; - pressedButton = event->button(); - pressedPos = event->pos().toPoint(); - startNavCamera->setEye(camera()->eye()); - startNavCamera->setCenter(camera()->center()); - startNavCamera->setUpVector(camera()->upVector()); -#ifndef QT_NO_CURSOR - setCursor(Qt::ClosedHandCursor); -#endif - return; - } - QGraphicsItem::mousePressEvent(event); -} - -void ModelItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event) -{ - if (navigating) { - QPoint delta = event->pos().toPoint() - pressedPos; - int deltax = delta.x(); - int deltay = delta.y(); - QGLCamera *camera = this->camera(); - int rotation = camera->screenRotation(); - if (rotation == 90 || rotation == 270) { - qSwap(deltax, deltay); - } - if (rotation == 90 || rotation == 180) { - deltax = -deltax; - } - if (rotation == 180 || rotation == 270) { - deltay = -deltay; - } - qreal anglex = deltax * 90.0f / rect().width(); - qreal angley = deltay * 90.0f / rect().height(); - QQuaternion q = startNavCamera->pan(-anglex); - q *= startNavCamera->tilt(-angley); - camera->setEye(startNavCamera->eye()); - camera->setCenter(startNavCamera->center()); - camera->setUpVector(startNavCamera->upVector()); - camera->rotateCenter(q); - } else if (mPressedFace != -1) { - int face; - QPointF tc = intersection - (event->widget(), event->pos().toPoint(), &face); - if (face != mPressedFace) - tc = QPointF(-1, -1); - mScene->deliverEvent(event, tc); - return; - } - QGraphicsItem::mouseMoveEvent(event); -} - -void ModelItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) -{ - if (navigating && pressedButton == event->button()) { - navigating = false; - pressedButton = Qt::NoButton; -#ifndef QT_NO_CURSOR - unsetCursor(); -#endif - return; - } else if (mPressedFace != -1) { - int face; - QPointF tc = intersection - (event->widget(), event->pos().toPoint(), &face); - if (face != mPressedFace) - tc = QPoint(-1, -1); - if (pressedButton == event->button()) { - mPressedFace = -1; - pressedButton = Qt::NoButton; - } - mScene->deliverEvent(event, tc); - return; - } - QGraphicsItem::mouseReleaseEvent(event); -} - -void ModelItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) -{ - int face; - QPointF tc = intersection - (event->widget(), event->pos().toPoint(), &face); - if (mPressedFace == -1 && face != -1) { - mPressedFace = face; - pressedButton = event->button(); - mScene->deliverEvent(event, tc); - return; - } - QGraphicsItem::mouseDoubleClickEvent(event); -} - -QPointF ModelItem::intersection - (QWidget *widget, const QPoint &point, int *actualFace) const -{ - // Bail out if no scene. - if (!mScene) { - *actualFace = -1; - return QPointF(); - } - - // Get the combined matrix for the projection. - int dpiX = widget->logicalDpiX(); - int dpiY = widget->logicalDpiY(); - QRectF bounds = boundingRect(); - qreal aspectRatio = (bounds.width() * dpiY) / (bounds.height() * dpiX); - QMatrix4x4 proj = camera()->projectionMatrix(aspectRatio); - - // Find the relative position of the point within (-1, -1) to (1, 1). - QPointF relativePoint = - QPointF((point.x() - bounds.center().x()) * 2 / bounds.width(), - -(point.y() - bounds.center().y()) * 2 / bounds.height()); - - // Get the ray extending from the eye through the point the user selected. - QVector3D eyept = proj.inverted().map - (QVector3D(relativePoint.x(), relativePoint.y(), -1.0f)); - QRay3D ray(QVector3D(0, 0, 0), eyept); - - // Intersect with the ray using a model-specific intersection method. - return intersection(ray, actualFace); -} diff --git a/examples/qt3d/graphicsview/modelitem.h b/examples/qt3d/graphicsview/modelitem.h deleted file mode 100644 index 7ab55219..00000000 --- a/examples/qt3d/graphicsview/modelitem.h +++ /dev/null @@ -1,91 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef MODELITEM_H -#define MODELITEM_H - -#include "qglgraphicsviewportitem.h" -#include "qglbuilder.h" -#include "qray3d.h" - -QT_BEGIN_NAMESPACE -class QGraphicsEmbedScene; -QT_END_NAMESPACE - -class ModelItem : public QObject, public QGLGraphicsViewportItem -{ - Q_OBJECT -public: - ModelItem(QGraphicsItem *parent = 0); - ~ModelItem(); - - QGraphicsEmbedScene *scene() const { return mScene; } - void setScene(QGraphicsEmbedScene *scene); - - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); - -protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseMoveEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); - void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); - -private Q_SLOTS: - void updateScene(); - -protected: - virtual QPointF intersection(const QRay3D &ray, int *actualFace) const = 0; - GLuint textureId() const { return mTextureId; } - int pressedFace() const { return mPressedFace; } - -private: - QGraphicsEmbedScene *mScene; - GLuint mTextureId; - bool navigating; - int mPressedFace; - Qt::MouseButton pressedButton; - QPoint pressedPos; - QGLCamera *startNavCamera; - - QPointF intersection - (QWidget *widget, const QPoint &point, int *actualFace) const; -}; - -#endif diff --git a/examples/qt3d/graphicsview/node.cpp b/examples/qt3d/graphicsview/node.cpp deleted file mode 100644 index 4723b0ab..00000000 --- a/examples/qt3d/graphicsview/node.cpp +++ /dev/null @@ -1,185 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QGraphicsScene> -#include <QGraphicsSceneMouseEvent> -#include <QPainter> -#include <QStyleOption> - -#include "edge.h" -#include "node.h" -#include "graph.h" - -Node::Node(Graph *graphWidget) - : graph(graphWidget) -{ - setFlag(ItemIsMovable); - setFlag(ItemSendsGeometryChanges); - //setCacheMode(DeviceCoordinateCache); - setZValue(-1); -} - -void Node::addEdge(Edge *edge) -{ - edgeList << edge; - edge->adjust(); -} - -QList<Edge *> Node::edges() const -{ - return edgeList; -} - -void Node::calculateForces() -{ - if (!scene() || scene()->mouseGrabberItem() == this) { - newPos = pos(); - return; - } - - // Sum up all forces pushing this item away - qreal xvel = 0; - qreal yvel = 0; - foreach (QGraphicsItem *item, scene()->items()) { - Node *node = qgraphicsitem_cast<Node *>(item); - if (!node) - continue; - - QLineF line(mapFromItem(node, 0, 0), QPointF(0, 0)); - qreal dx = line.dx(); - qreal dy = line.dy(); - double l = 2.0 * (dx * dx + dy * dy); - if (l > 0) { - xvel += (dx * 150.0) / l; - yvel += (dy * 150.0) / l; - } - } - - // Now subtract all forces pulling items together - double weight = (edgeList.size() + 1) * 10; - foreach (Edge *edge, edgeList) { - QPointF pos; - if (edge->sourceNode() == this) - pos = mapFromItem(edge->destNode(), 0, 0); - else - pos = mapFromItem(edge->sourceNode(), 0, 0); - xvel += pos.x() / weight; - yvel += pos.y() / weight; - } - - if (qAbs(xvel) < 0.1 && qAbs(yvel) < 0.1) - xvel = yvel = 0; - - QRectF sceneRect = scene()->sceneRect(); - newPos = pos() + QPointF(xvel, yvel); - newPos.setX(qMin(qMax(newPos.x(), sceneRect.left() + 10), sceneRect.right() - 10)); - newPos.setY(qMin(qMax(newPos.y(), sceneRect.top() + 10), sceneRect.bottom() - 10)); -} - -bool Node::advance() -{ - if (newPos == pos()) - return false; - - setPos(newPos); - return true; -} - -QRectF Node::boundingRect() const -{ - qreal adjust = 42; - return QRectF(-10 - adjust, -10 - adjust, - 23 + adjust * 2, 23 + adjust * 2); -} - -QPainterPath Node::shape() const -{ - QPainterPath path; - path.addEllipse(-20, -20, 40, 40); - return path; -} - -void Node::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *) -{ - painter->setPen(Qt::NoPen); - painter->setBrush(Qt::darkGray); - painter->drawEllipse(-7, -7, 20, 20); - - QRadialGradient gradient(-3, -3, 10); - if (option->state & QStyle::State_Sunken) { - gradient.setCenter(3, 3); - gradient.setFocalPoint(3, 3); - gradient.setColorAt(1, QColor(Qt::yellow).light(120)); - gradient.setColorAt(0, QColor(Qt::darkYellow).light(120)); - } else { - gradient.setColorAt(0, Qt::yellow); - gradient.setColorAt(1, Qt::darkYellow); - } - painter->setBrush(gradient); - painter->setPen(QPen(Qt::black, 0)); - painter->drawEllipse(-10, -10, 20, 20); -} - -QVariant Node::itemChange(GraphicsItemChange change, const QVariant &value) -{ - switch (change) { - case ItemPositionHasChanged: - foreach (Edge *edge, edgeList) - edge->adjust(); - graph->itemMoved(); - break; - default: - break; - }; - - return QGraphicsItem::itemChange(change, value); -} - -void Node::mousePressEvent(QGraphicsSceneMouseEvent *event) -{ - update(); - QGraphicsItem::mousePressEvent(event); -} - -void Node::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) -{ - update(); - QGraphicsItem::mouseReleaseEvent(event); -} diff --git a/examples/qt3d/graphicsview/node.h b/examples/qt3d/graphicsview/node.h deleted file mode 100644 index 45208610..00000000 --- a/examples/qt3d/graphicsview/node.h +++ /dev/null @@ -1,83 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef NODE_H -#define NODE_H - -#include <QGraphicsItem> -#include <QList> - -class Edge; -class Graph; -QT_BEGIN_NAMESPACE -class QGraphicsSceneMouseEvent; -QT_END_NAMESPACE - -class Node : public QGraphicsItem -{ -public: - Node(Graph *graphWidget); - - void addEdge(Edge *edge); - QList<Edge *> edges() const; - - enum { Type = UserType + 1 }; - int type() const { return Type; } - - void calculateForces(); - bool advance(); - - QRectF boundingRect() const; - QPainterPath shape() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); - -protected: - QVariant itemChange(GraphicsItemChange change, const QVariant &value); - - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); - -private: - QList<Edge *> edgeList; - QPointF newPos; - Graph *graph; -}; - -#endif diff --git a/examples/qt3d/graphicsview/qt3d.ico b/examples/qt3d/graphicsview/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/graphicsview/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/graphicsview/qt3d.png b/examples/qt3d/graphicsview/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/graphicsview/qt3d.png +++ /dev/null diff --git a/examples/qt3d/graphicsview/scene.cpp b/examples/qt3d/graphicsview/scene.cpp deleted file mode 100644 index 5fe55105..00000000 --- a/examples/qt3d/graphicsview/scene.cpp +++ /dev/null @@ -1,54 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "scene.h" -#include <QtGui/qpainter.h> - -void Scene::drawBackground(QPainter *painter, const QRectF &rect) -{ - painter->save(); - QLinearGradient gradient(rect.topLeft(), rect.bottomRight()); - gradient.setColorAt(0, QColor(0, 128, 192, 255)); - gradient.setColorAt(1, QColor(0, 0, 128, 255)); - painter->setPen(QPen(Qt::black, 3)); - painter->setBrush(gradient); - painter->drawRect(rect); - painter->restore(); -} diff --git a/examples/qt3d/graphicsview/scene.h b/examples/qt3d/graphicsview/scene.h deleted file mode 100644 index 73be795a..00000000 --- a/examples/qt3d/graphicsview/scene.h +++ /dev/null @@ -1,56 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef SCENE_H -#define SCENE_H - -#include "qgraphicsembedscene.h" - -class Scene : public QGraphicsEmbedScene -{ - Q_OBJECT -public: - Scene(QObject *parent = 0) : QGraphicsEmbedScene(parent) {} - -protected: - void drawBackground(QPainter *painter, const QRectF &rect); -}; - -#endif diff --git a/examples/qt3d/graphicsview/teapoticon.png b/examples/qt3d/graphicsview/teapoticon.png Binary files differdeleted file mode 100644 index 17392361..00000000 --- a/examples/qt3d/graphicsview/teapoticon.png +++ /dev/null diff --git a/examples/qt3d/graphicsview/teapotitem.cpp b/examples/qt3d/graphicsview/teapotitem.cpp deleted file mode 100644 index 72161a5a..00000000 --- a/examples/qt3d/graphicsview/teapotitem.cpp +++ /dev/null @@ -1,129 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "teapotitem.h" -#include "qglpainter.h" -#include "qplane3d.h" -#include "qtriangle3d.h" -#include <QtCore/qnumeric.h> - -TeapotItem::TeapotItem(QGraphicsItem *parent) - : ModelItem(parent) -{ - QGLBuilder builder; - builder.newSection(QGL::Faceted); - builder << teapot; - teapotNode = builder.finalizedSceneNode(); -} - -TeapotItem::~TeapotItem() -{ - delete teapotNode; -} - -void TeapotItem::paintGL(QGLPainter *painter) -{ - GLuint textureId = this->textureId(); - if (textureId) { - glDisable(GL_DEPTH_TEST); - glEnable(GL_BLEND); - painter->setFaceColor(QGL::AllFaces, QColor(0, 0, 0, 200)); - painter->setStandardEffect(QGL::LitDecalTexture2D); - glBindTexture(GL_TEXTURE_2D, textureId); - glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); - if (painter->isFixedFunction()) - glEnable(GL_TEXTURE_2D); - glCullFace(GL_FRONT); - glEnable(GL_CULL_FACE); - teapotNode->draw(painter); - glCullFace(GL_BACK); - teapotNode->draw(painter); - glDisable(GL_CULL_FACE); - glBindTexture(GL_TEXTURE_2D, 0); - if (painter->isFixedFunction()) - glDisable(GL_TEXTURE_2D); - } else { - painter->setStandardEffect(QGL::LitMaterial); - teapotNode->draw(painter); - } -} - -QPointF TeapotItem::intersection(const QRay3D &ray, int *actualFace) const -{ - QVector2D tc; - QGLBezierPatches patches = teapot.transformed(camera()->modelViewMatrix()); - if (pressedFace() == -1) { - // Intersect with the whole teapot. - qreal t = patches.intersection(ray, &tc, actualFace); - if (!qIsNaN(t)) - return QPointF(tc.x(), tc.y()); - } else { - // Only intersect with the patch that was pressed previously. - QGLBezierPatches subpatches; - subpatches.setPositions - (patches.positions().mid(pressedFace() * 16, 16)); - qreal t = subpatches.intersection(ray, &tc); - if (!qIsNaN(t)) { - *actualFace = pressedFace(); - return QPointF(tc.x(), tc.y()); - } - - // The mouse has moved outside the boundary of the patch. - // Use the plane containing the patch to extend the hit - // area out to infinity. - QTriangle3D triangle(subpatches.positions()[0], - subpatches.positions()[3], - subpatches.positions()[12]); - t = triangle.plane().intersection(ray); - if (!qIsNaN(t)) { - *actualFace = pressedFace(); - QVector2D uv = triangle.uv(ray.point(t)); - QVector2D tc1(0, 0); - QVector2D tc2(1, 0); - QVector2D tc3(0, 1); - QVector2D tc = - uv.x() * tc1 + uv.y() * tc2 + (1 - uv.x() - uv.y()) * tc3; - return QPointF(tc.x(), tc.y()); - } - } - *actualFace = -1; - return QPointF(); -} diff --git a/examples/qt3d/graphicsview/teapotitem.h b/examples/qt3d/graphicsview/teapotitem.h deleted file mode 100644 index f2706eeb..00000000 --- a/examples/qt3d/graphicsview/teapotitem.h +++ /dev/null @@ -1,63 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef TEAPOTITEM_H -#define TEAPOTITEM_H - -#include "modelitem.h" -#include "qglteapot.h" - -class TeapotItem : public ModelItem -{ - Q_OBJECT -public: - TeapotItem(QGraphicsItem *parent = 0); - ~TeapotItem(); - -protected: - void paintGL(QGLPainter *painter); - QPointF intersection(const QRay3D &ray, int *actualFace) const; - -private: - QGLTeapot teapot; - QGLSceneNode *teapotNode; -}; - -#endif diff --git a/examples/qt3d/graphicsview/view.cpp b/examples/qt3d/graphicsview/view.cpp deleted file mode 100644 index 73f4bb6c..00000000 --- a/examples/qt3d/graphicsview/view.cpp +++ /dev/null @@ -1,121 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "view.h" -#include "cubeitem.h" -#include "teapotitem.h" -#include "graph.h" -#include "qglcamera.h" -#include <QtGui/qgraphicssceneevent.h> - -View::View(QWidget *parent) - : QGraphicsView(parent) -{ - setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); - setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); - setViewportUpdateMode(QGraphicsView::FullViewportUpdate); - - scene.setBackgroundBrush(Qt::black); - setScene(&scene); - - cube = new CubeItem(); - cube->setRect(0, 0, 600, 480); - cube->camera()->setEye(QVector3D(-5.0f, 3.0f, 6.0f)); - cube->setVisible(false); - - teapot = new TeapotItem(); - teapot->setRect(0, 0, 600, 480); - teapot->camera()->setEye(QVector3D(-5.0f, 3.0f, 6.0f)); - - Button *cubeButton = new Button - (QPixmap(QLatin1String(":/cubeicon.png")), teapot); - Button *teapotButton = new Button - (QPixmap(QLatin1String(":/teapoticon.png")), cube); - - connect(cubeButton, SIGNAL(clicked()), this, SLOT(switchToCube())); - connect(teapotButton, SIGNAL(clicked()), this, SLOT(switchToTeapot())); - - scene.addItem(cube); - scene.addItem(teapot); - - Graph *graph = new Graph(this); - cube->setScene(graph->scene()); - teapot->setScene(graph->scene()); -} - -void View::resizeEvent(QResizeEvent *e) -{ - QGraphicsView::resizeEvent(e); - cube->setRect(0, 0, width(), height()); - teapot->setRect(0, 0, width(), height()); -} - -void View::switchToCube() -{ - teapot->setVisible(false); - cube->setVisible(true); -} - -void View::switchToTeapot() -{ - cube->setVisible(false); - teapot->setVisible(true); -} - -Button::Button(const QPixmap &pixmap, QGraphicsItem *parent) - : QGraphicsPixmapItem(pixmap, parent) - , pressed(false) -{ - setFlag(ItemIsSelectable, true); -} - -void Button::mousePressEvent(QGraphicsSceneMouseEvent *event) -{ - pressed = true; - QGraphicsItem::mousePressEvent(event); -} - -void Button::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) -{ - if (pressed && boundingRect().contains(event->scenePos())) - emit clicked(); - pressed = false; - QGraphicsItem::mouseReleaseEvent(event); -} diff --git a/examples/qt3d/graphicsview/view.h b/examples/qt3d/graphicsview/view.h deleted file mode 100644 index f47a7249..00000000 --- a/examples/qt3d/graphicsview/view.h +++ /dev/null @@ -1,87 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef VIEW_H -#define VIEW_H - -#include <QtGui/qgraphicsview.h> -#include <QtGui/qgraphicsscene.h> -#include <QtGui/qgraphicsitem.h> - -class CubeItem; -class TeapotItem; - -class View : public QGraphicsView -{ - Q_OBJECT -public: - View(QWidget *parent = 0); - -protected: - void resizeEvent(QResizeEvent *e); - -private Q_SLOTS: - void switchToCube(); - void switchToTeapot(); - -private: - QGraphicsScene scene; - CubeItem *cube; - TeapotItem *teapot; -}; - -class Button : public QObject, public QGraphicsPixmapItem -{ - Q_OBJECT -public: - Button(const QPixmap &pixmap, QGraphicsItem *parent); - -Q_SIGNALS: - void clicked(); - -protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); - -private: - bool pressed; -}; - -#endif diff --git a/examples/qt3d/nesting/cubeview.cpp b/examples/qt3d/nesting/cubeview.cpp deleted file mode 100644 index d14b5048..00000000 --- a/examples/qt3d/nesting/cubeview.cpp +++ /dev/null @@ -1,209 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "cubeview.h" -#include "qglcube.h" -#include "qglteapot.h" -#include <QtOpenGL/qglframebufferobject.h> -#include <QtCore/qpropertyanimation.h> - -//! [1] -CubeView::CubeView(QWidget *parent) - : QGLView(parent) - , fbo(0) - , tangle(0.0f) - , cangle(0.0f) - , oangle(0.0f) -{ - QGLBuilder builder; - builder.newSection(QGL::Faceted); - builder << QGLCube(1.5f); - cube = builder.currentNode(); - cube->setObjectName(QLatin1String("Cube")); - - builder.newSection(); - builder << QGLTeapot(); - teapot = builder.currentNode(); - teapot->setObjectName(QLatin1String("Teapot")); - - scene = builder.finalizedSceneNode(); - scene->setParent(this); -//! [1] - -//! [2] - QPropertyAnimation *animation; - - animation = new QPropertyAnimation(this, "teapotAngle", this); - animation->setStartValue(0.0f); - animation->setEndValue(360.0f); - animation->setDuration(1000); - animation->setLoopCount(-1); - animation->start(); - - animation = new QPropertyAnimation(this, "cubeAngle", this); - animation->setStartValue(0.0f); - animation->setEndValue(360.0f); - animation->setDuration(5000); - animation->setLoopCount(-1); - animation->start(); - - animation = new QPropertyAnimation(this, "orbitAngle", this); - animation->setStartValue(0.0f); - animation->setEndValue(360.0f); - animation->setDuration(5000); - animation->setLoopCount(-1); - animation->start(); -//! [2] - -//! [3] - innerCamera = new QGLCamera(this); -} -//! [3] - -CubeView::~CubeView() -{ - delete fbo; -} - -//! [4] -void CubeView::initializeGL(QGLPainter *) -{ - fbo = new QGLFramebufferObject(512, 512, QGLFramebufferObject::Depth); - fboSurface.setFramebufferObject(fbo); -//! [4] - -//! [5] - QImage textureImage(QLatin1String(":/qtlogo.png")); - qtlogo.setImage(textureImage); - - glEnable(GL_BLEND); -} -//! [5] - -//! [6] -void CubeView::paintGL(QGLPainter *painter) -{ - painter->modelViewMatrix().push(); - painter->projectionMatrix().push(); - painter->pushSurface(&fboSurface); -//! [6] - -//! [7] - painter->setCamera(innerCamera); - painter->modelViewMatrix().rotate(tangle, 0.0f, 1.0f, 0.0f); - - painter->setFaceColor(QGL::AllFaces, QColor(170, 202, 0)); - painter->setStandardEffect(QGL::LitMaterial); - - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - teapot->draw(painter); -//! [7] - -//! [8] - painter->popSurface(); - painter->projectionMatrix().pop(); - painter->modelViewMatrix().pop(); -//! [8] - -//! [9] - painter->modelViewMatrix().rotate(oangle, 0.0f, 1.0f, 0.0f); - QMatrix4x4 m = painter->modelViewMatrix(); - QVector3D cube1pos(-1.5f, 0.0f, 0.0f); - QVector3D cube2pos(1.5f, 0.0f, 0.0f); - - if (m.map(cube1pos).z() < m.map(cube2pos).z()) { - drawCube1(painter, cube1pos); - drawCube2(painter, cube2pos); - } else { - drawCube2(painter, cube2pos); - drawCube1(painter, cube1pos); - } -} -//! [9] - -//! [10] -void CubeView::drawCube1(QGLPainter *painter, const QVector3D &posn) -{ - painter->modelViewMatrix().push(); - - qtlogo.bind(); - painter->setFaceColor(QGL::AllFaces, QColor(202, 100, 0, 150)); - painter->setStandardEffect(QGL::LitDecalTexture2D); - - painter->modelViewMatrix().translate(posn); - painter->modelViewMatrix().rotate(cangle, 1.0f, -1.0f, 1.0f); - - glCullFace(GL_FRONT); - glEnable(GL_CULL_FACE); - cube->draw(painter); - glCullFace(GL_BACK); - cube->draw(painter); - glDisable(GL_CULL_FACE); - - painter->modelViewMatrix().pop(); -} -//! [10] - -//! [11] -void CubeView::drawCube2(QGLPainter *painter, const QVector3D &posn) -{ - painter->modelViewMatrix().push(); - - painter->setFaceColor(QGL::AllFaces, QColor(0, 160, 202, 125)); - painter->setStandardEffect(QGL::LitDecalTexture2D); - glBindTexture(GL_TEXTURE_2D, fbo->texture()); - glEnable(GL_TEXTURE_2D); - - painter->modelViewMatrix().translate(posn); - painter->modelViewMatrix().rotate(cangle, 1.0f, 1.0f, 1.0f); - - glCullFace(GL_FRONT); - glEnable(GL_CULL_FACE); - cube->draw(painter); - glCullFace(GL_BACK); - cube->draw(painter); - glDisable(GL_CULL_FACE); - - glBindTexture(GL_TEXTURE_2D, 0); - glDisable(GL_TEXTURE_2D); - - painter->modelViewMatrix().pop(); -} -//! [11] diff --git a/examples/qt3d/nesting/cubeview.h b/examples/qt3d/nesting/cubeview.h deleted file mode 100644 index 5bcce12a..00000000 --- a/examples/qt3d/nesting/cubeview.h +++ /dev/null @@ -1,92 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef CUBEVIEW_H -#define CUBEVIEW_H - -#include "qglview.h" -#include "qglbuilder.h" -#include "qglframebufferobjectsurface.h" - -QT_BEGIN_NAMESPACE -class QGLFramebufferObject; -class QGLCamera; -QT_END_NAMESPACE - -class CubeView : public QGLView -{ - Q_OBJECT - Q_PROPERTY(qreal teapotAngle READ teapotAngle WRITE setTeapotAngle) - Q_PROPERTY(qreal cubeAngle READ cubeAngle WRITE setCubeAngle) - Q_PROPERTY(qreal orbitAngle READ orbitAngle WRITE setOrbitAngle) -public: - CubeView(QWidget *parent = 0); - ~CubeView(); - - qreal teapotAngle() const { return tangle; } - void setTeapotAngle(qreal angle) { tangle = angle; update(); } - - qreal cubeAngle() const { return cangle; } - void setCubeAngle(qreal angle) { cangle = angle; update(); } - - qreal orbitAngle() const { return oangle; } - void setOrbitAngle(qreal angle) { oangle = angle; update(); } - -protected: - void initializeGL(QGLPainter *painter); - void paintGL(QGLPainter *painter); - -private: - QGLSceneNode *scene; - QGLSceneNode *cube; - QGLSceneNode *teapot; - QGLTexture2D qtlogo; - QGLFramebufferObject *fbo; - QGLFramebufferObjectSurface fboSurface; - QGLCamera *innerCamera; - qreal tangle; - qreal cangle; - qreal oangle; - - void drawCube1(QGLPainter *painter, const QVector3D &posn); - void drawCube2(QGLPainter *painter, const QVector3D &posn); -}; - -#endif diff --git a/examples/qt3d/nesting/main.cpp b/examples/qt3d/nesting/main.cpp deleted file mode 100644 index f0c849d2..00000000 --- a/examples/qt3d/nesting/main.cpp +++ /dev/null @@ -1,64 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> -#include "cubeview.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - CubeView view; - -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - - return app.exec(); -} diff --git a/examples/qt3d/nesting/nesting.desktop b/examples/qt3d/nesting/nesting.desktop deleted file mode 100644 index 85668cc3..00000000 --- a/examples/qt3d/nesting/nesting.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Nesting -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/nesting -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_nesting diff --git a/examples/qt3d/nesting/nesting.pro b/examples/qt3d/nesting/nesting.pro deleted file mode 100644 index 7725c2f3..00000000 --- a/examples/qt3d/nesting/nesting.pro +++ /dev/null @@ -1,17 +0,0 @@ -TEMPLATE = app -TARGET = nesting -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES = cubeview.cpp main.cpp -HEADERS = cubeview.h -RESOURCES = nesting.qrc - -OTHER_FILES += \ - nesting.rc \ - nesting.desktop - -RC_FILE = nesting.rc - diff --git a/examples/qt3d/nesting/nesting.qrc b/examples/qt3d/nesting/nesting.qrc deleted file mode 100644 index 70f5024d..00000000 --- a/examples/qt3d/nesting/nesting.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<!DOCTYPE RCC><RCC version="1.0"> -<qresource> - <file>qtlogo.png</file> -</qresource> -</RCC> diff --git a/examples/qt3d/nesting/nesting.rc b/examples/qt3d/nesting/nesting.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/nesting/nesting.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/nesting/qt3d.ico b/examples/qt3d/nesting/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/nesting/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/nesting/qt3d.png b/examples/qt3d/nesting/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/nesting/qt3d.png +++ /dev/null diff --git a/examples/qt3d/nesting/qtlogo.png b/examples/qt3d/nesting/qtlogo.png Binary files differdeleted file mode 100644 index 7d3e97eb..00000000 --- a/examples/qt3d/nesting/qtlogo.png +++ /dev/null diff --git a/examples/qt3d/qt3d.pro b/examples/qt3d/qt3d.pro deleted file mode 100644 index 07b7c8dc..00000000 --- a/examples/qt3d/qt3d.pro +++ /dev/null @@ -1,2 +0,0 @@ -TEMPLATE = subdirs -SUBDIRS += basket builder cube cylinder geometry graphicsview nesting solarsystem tank teapot diff --git a/examples/qt3d/qt3d.svg b/examples/qt3d/qt3d.svg deleted file mode 100644 index 4b25ec50..00000000 --- a/examples/qt3d/qt3d.svg +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> -<!-- Converted with SVG Converter - Version 0.9.5 (Compiled Mon May 30 09:08:51 2011) - Copyright (C) 2011 Nokia --> -<svg xmlns="http://www.w3.org/2000/svg" width="287" version="1.1" height="286" xmlns:xlink="http://www.w3.org/1999/xlink" baseProfile="tiny" id="svg2"> - <defs id="defs4"> - <linearGradient id="linearGradient4309"> - <stop offset="0" style="stop-color:#d4f301;stop-opacity:1;" id="stop4311"/> - <stop offset="1" style="stop-color:#d4f301;stop-opacity:0;" id="stop4313"/> - </linearGradient> - <linearGradient gradientTransform="matrix(1.0104795,0,0,1.004441,23.387309,76.758859)" id="linearGradient3730-2" y1="131.35715" y2="156.39526" x1="23.626827" gradientUnits="userSpaceOnUse" x2="303.57144"> - <stop offset="0" style="stop-color:#038d30;stop-opacity:1;" id="stop3726-7"/> - <stop offset="1" style="stop-color:#038d30;stop-opacity:0;" id="stop3728-1"/> - </linearGradient> - <linearGradient id="linearGradient3724-7"> - <stop offset="0" style="stop-color:#038d30;stop-opacity:1;" id="stop3726-7"/> - <stop offset="1" style="stop-color:#038d30;stop-opacity:0;" id="stop3728-1"/> - </linearGradient> - <linearGradient id="linearGradient4315" y1="62.920685" y2="62.920685" x1="72.492188" gradientUnits="userSpaceOnUse" x2="165.83203"> - <stop offset="0" style="stop-color:#d4f301;stop-opacity:1;" id="stop4311"/> - <stop offset="1" style="stop-color:#d4f301;stop-opacity:0;" id="stop4313"/> - </linearGradient> - </defs> - <metadata id="metadata7"/> - <g id="layer1" transform="translate(-25.071424,-77.933617)"> - <path style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#d4f301;stroke-width:8.85648727;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" id="path3722" d="M 149.39285,339.37194 C 118.29002,338.06386 93.410274,329.21846 78.267585,314.08502 66.239667,302.06444 58.159936,285.11057 54.818135,264.88047 c -1.962614,-11.881 -2.442596,-20.11519 -2.455216,-42.1199 -0.01051,-18.36712 0.160997,-23.0644 1.239861,-33.95521 2.529982,-25.53941 11.482605,-46.43472 25.677112,-59.93007 16.042727,-15.25252 39.462148,-23.21337 72.203768,-24.54383 6.77105,-0.27512 31.97542,0.38686 41.46813,1.08915 17.85829,1.32123 29.86273,4.01251 41.92069,9.39824 16.71724,7.46685 28.60768,18.52238 36.44553,33.88638 5.7477,11.26691 9.34961,23.29707 11.69339,39.05536 2.22754,14.97664 2.81073,44.00559 1.22086,60.77114 -2.76934,29.20404 -10.704,50.36949 -24.19378,64.53629 -8.65346,9.08774 -21.29946,16.39504 -35.37578,20.44137 -13.11053,3.76868 -25.14568,5.0858 -52.44498,5.73944 -13.81368,0.33078 -17.4242,0.35023 -22.82487,0.12311 l 0,0 z"/> - <rect width="236.93414" x="49.282932" y="102.78797" rx="95.84404" ry="92.255867" height="239.43414" style="opacity:0;fill:none;stroke:#008000;stroke-width:3.29858350999999980;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" id="rect2852"/> - <rect width="175" x="28.571428" y="19.214285" rx="95.84404" ry="92.255867" height="206.07143" style="opacity:0;fill:#b94b4b;fill-opacity:1;stroke:#05d105;stroke-width:4.147;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" id="rect3704" transform="translate(25.071424,77.933617)"/> - <image width="172.71428" x="86.571419" y="214.50505" height="93.14286" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIkAAABMCAYAAABZAZTOAAAABHNCSVQICAgIfAhkiAAAF+NJREFU eJztXVlzHMeR/qq6e06ABE9QomTJlu0IKdaxftmH/Xf783Zf1l7FWpbWFiXSFA+QIIDBYDBXd+1D ZlZlVdcMTpLYBTKi0T19d9fXmV8eVTAAHG7kRtaI/dg3cCNXX25AciMnSvmxb+CDiwEMAGPW7+Zc PL/Ocu1A0ukAvT5QdQFjAWsUYBzQOKBeAssFMD0GFvMboFwLkBgDdHtApwfc3wbubQMbt4CiBMoK sJa0S+OA5RyYToHpBNh9Dbx9DRwfAYsFri3FvxYgAYBuH9jcAh4+Bh59Bty+QwCpukBR0D5NA8yn wPGEgFFWwGxKWmWx+Lj3/zHleoDEUIN3e8CdB8CDT4BbW0BVkXaxBWmbpiZQTI6AyRiYHQM7L0jj XGe5Ho/vgMkhcY3Xz4mT1EsGSZdBYGjdfAYcHQLjEfD6BXDwjsByXU0NcE1A4hybkAnw0/fEPyrW LDBA6UiTLBekRXbfAO92gJ//h+Y3xPWayeyYTMliAVQdIq1lSZ6Oc4BraPtkTJ7NjVxDkBxPSFMc vCPCWnWA/pDAcmyA+Rx4+xLY3yXyet21CHANQeIccY53O2RuXEOmxhjaNjkERnvESZbX2KPRcu1A AhBBPT4id3fJgTNb0Hw2JVNU1zdaROTagaTTBe7cBwYbpFF++JY5iSFgTI6ArXtkhgRM110M/j86 d5yfcY6JaUWNLhyk6pCpMYYIq4TlHcj81EvSMHMOpDVNCNHLuYHro2mupCaRRut0QxzDWjIJlvPW Pu9iQ2PLfmVF6wrev6jI5bWW1jmoBs40tFH5HPF4plMCScNmyKkcT63WOUfndI7A1TR0TF3zvks+ T/OeX+IFxFh6ZpErBRJp7LKixhxuAP0NBkrB68sAgKII0VIBg4DEWs7JMLgKtd+Z9Cc3+HJJDdzU 1MACksWC1zGYBDBNTdsFHIs5ud/zOXA8prkA6H2LB70Cv/F/wnZ5l84Bi1kA+tUBiQFsScC4fZfM wa3bwGAT6A2okTtdjm0UxCPKkoAhD1iWQVsYGwBhlUnRLwxh5kWbEOf/MDAaNXcEgHoZGrupCUxN HfI9TU2AmB0zWZ4BhwfAaJ/WHR68X6BYS6mHwRAoO6RRiwoo1DuRj6jqUYHRaJ/SEYs50MyvEEgs Z2rv3KfcSn9ID9br00NqPiHaoigDIESrCCBEi5gMSPQXBSiOgXhBmyWnQSLmhsEhPEbMigcJr1vM CRyzTQLOcJOeazImrjM7fj/vtOoQQd9+TInNwQa9006PPijnQklEvQCOjoDxfvoyrhBIjAGqklP6 rDEKBQRtXsSUWAuYggCmzYsnpDYUGEUaRJFPveytUI6vGAB8PjDvsLzsjAIT72sdUDguQWAtt+S3 3elSVrppQgb6fUhZUUnE9mPgs18Dw1sE0G6frtvUpN3evSFP781r0iCjPQK18KYrA5Jun0zLcJNe YlkG4pkCAMpciERawCTLLr9JrxRvSPb3WiTRKn7u0AaRCbfmgerC/RcFHVNWpEkMqHxhPrv8wF1/ CPzun4D7j4Cvviag9AZ03aKkeNDxGHjzCvjHE2DvLfDLTwSY1Gs7F0iM/vQQiKT/itU2v7imXLAo AkB6A9YiZWJCeBJT4af4VmJyZlZf1rQWkuUcsV1DeD1uDWJN5kjbGX4W5+jZqg6d6+4DzjofrH4/ Z5VuD3j8JfCHfyEQ3t+m91uWpB3G74BXzwkY3/8JePI93cMqj+tsIDFAr8cVXZ3gMfT6wK07ZPOq iolQGbiA9ypsu1GNBQ73gd0dQr8HSKkAIgBEMC1GN4bWLhktk65vgbilXuJjDaixW8emgEy8CNEo 1hBRtBYAm56qousNNqi2ZT4NRPi8Ivdy/xHw+z8QOPpDoD+g68MR/3n6d+Db/6DKu5fPSJOti/mc CBJ58P6Q0Hj7DpkD+eJtQSAZbhKCS/EsVMNmPQpeNxnTC6o6wTvJmZhUe/hzIOEdrQc4+eVGPEQf 5+Kf6emymDLEUVIuJN6Wc0HLiEfW6QbQXMTRES9lsKHMdhU0mFTe7b6mj/Lw4HSgXAkSY+gim7eJ Lzx8DDz8BLj7kIuJB6RNrA3aQ9v1ls120cy/vNc1ub79AYFMIqOeoKa8JNEgOfBIA4WHQb6VVz58 sqvmNmqug24pICJzo0DhwDEfRWKHt4CjUShhOG8kVz7e+4/IjIlmNpbiHvMZ8OIZ8ONfgJdPQ2T5 JMmCxBg6+fZnwG++plzG9uNQ8tc0RLTm88CQ5zN6QAljiyvolMuoo3jglznap+O7/aBNVvERkwML nwspWBLVn4KkxUl4LlrFgDRCxHa1meHtWZBwEZNlFd+o+4YD6iKURJYdig0NNsmlnh7TuzuPdHuk 6R88AjY2qX63ZC/m8ICmv/wn8PxnIq6nlZWapKwIHJ99Sdrj3jY14mJOKutoTOn0xRyYcdXXfBZC zgsOQUtsAS4mRkJC6yVHVzdVBNW2Gzl1YdMG02BJt/lrrtEmEmmMwKH3zWgTMS1+PwXAVMshXaeA L7kl0cjnBYl4Tf2B4oyWYiDTCZdk/kIk9Uznza3sDwmNv/0G+OJ3pA6XS+DtK+DNSyKaL55Sd4Pp hIDhw9N1sH86zwEETeJcCIY9+pyupTWIkDxjedmE/jHpi86SVQ0utSpaUECITBNIE6TerTOZfV0C PDXp+7RQGhEh5uMcfellRQ3b1NSAy3OYnKpDMZHNLU5ldOjaDZdu7rwkj+bNy7O721mQbD8GfvUV 8PlXBBg4Asj3fwZ++C+66PiA7JyOQJ7lwaouTRI8KysVGylUviU1NRlOYtWEXGOyrAKM079V3CQi rupgp8Bl1Pas9hPvzNEzAYFrFS54Or0hNWi3T+b3LNrEGKDbJROzeZvAUnZoW72kj/rlM4qHHE9O f16RFkiKki60dZ/mAHGP3dfAs78Dz39SJuSckrrNHiBlTFRNMq36UrONg2CCUrWfmqGc+UnicJ6n yP37fRSovHbj9alpsQaASjjCBXe/0yVN0h8A44r4yWmTkMYC3QGweYc0SZcDZjWnBEb7ZGZePD2f i21bFzSxNyEZzcWcyI5zp773tQ8lNR1RxnYdAIAAEMRT2sgJLYnP0bqZNatTMCXb9PH+OgjPcSow q2hsWZKZEA/vtGItl1X0QsbcmACS6XGojTmPZM2NqHshc00TCKvkLc4r1nJc5RYxenkoq7wZvexN inATGzdGLlejGyj1blJTA8QAih5NtETGfZdzCNk1FrBNzF2sod8N37ezdA7/AdrAT6oScB3Or4zp nU/Gp3ifnB3f3CLPZvM2/QaIDowPgN1XF6vZbWkSIJiTxoWHLbjxWiTxjGIs+fL9IdlRT1hVIs9r MhNrGZ/V1eBITYwGhdIgGhyt7RpEa85p2Fx4DaPWCx+KMs/KzPjaFj2pj0L6JQ84+y0NfZJ0e8RB 7tyjEMWQzbcEzkb7oT/zeaUFEteQWZlOCInG0AN02bUqOOt6XikKerBeN46L5AJnOU2SU9+Riwm1 vAYQkVkQSc3WCrMh+6agjDhI5ncE/ISgF1wbU3WATj8k4tZJWREw7j4A7j0ksPSGdL6a41dSuzKf nbvJ2uamaeiE82noJG25lqPTZTV5AdJqC2Lzvje/IqVrbXem0VMiC7SP0XKS2QHa5iY1RaJBnCKy Lr0fledx6ppyD61JaxnJ7XAOax3RLCtOl2zQXLxEYwG3JIdDx67OKy2QOAeMDoC9XbJnW/fowptb 1Nm6NyBNc54uB12ukNq4RZpJyhRT7dHSJNrLWQOeVFPkTAigtqt9WuLibf6nWu84gmqA4M3IaeW+ HXxo3qacxAVgFAV9fEVJ78iAu5wmkVF5xm6PirM+/YK8xC3uASBdV+dz4GAvRLQvUv2WVWiTMfVw Gx1wYUwJbNymrOKtLSJB8xngznjh4SarxEGc6S2U+jUFgAKAtu0G4UPVQFhBVr0bKiCxiEChG1PW +UWT9+C01vDLvN4n7RxaILZ8jLM8V/doQc9r6hA3kTKCpiF+MT7gELoJprqqCCCffEGpk8GQCStn 6F1D2d69N8D+W2rP80ZxgRUgkWqlnV+AX/2G3LLBkBJHn35JUbujMTA/44WlIkvGBFlVbeYjrClR TQhsRDiR0SbatJhkLpKYJZeaGBWeN0BUSS6WJdIeBpCSCIncmgQYjTyLow+ksUCtvJ2youv2+qx1 B2SCBpvA1l36yG5vUbrkzgPebzP0CJhPCRij/RDBvYhkQeIaIq2SmZRsYn9IbtbxEedxTqhDSMVm ABE1vvrKV5FT31h60iYmlVXblCnKHmYCYHLP6I9TWici0XKvLr5Xl3muyKSa8G46XQIJLAFnuAHc uhtAMdig+h5fEsCorbnP0PiAHJCLdt/IgkQ6I736BfjlKf1+9CtC8eMv6WHe7TC5PWXP+6LkUDxH V6NYiG3PtWu5jtBa9Vt8NYN4fY6wZvmJLnPQ+8SbY8TJuZtwPQe6F+uYuEpQ0gKmUfetNKOPm6h3 I2O7CS/sD7lOpEfbxF2WEZvAgc/phOpUd17QR36acoB1stLJqpfUu/7JX0lzDDaIHD38hLa/2yFV Nto/OdRrjKp87yalABnNos1OzsxkiaoNjeo5xxqQrCKvEQgUWCJtokHC5FV7OFq7yXZ9zwIIIH52 pyr/Gx4Oo7BETqtOiKiWFcWYpPOaZM6Xc/poj5hTSpb+It4osAYkzhE4dnfoBscj4O42+eFDzjZ2 B0AxPl0+QKqvfFlj0uCrYhGnmpSk54M6lcx9HYhyVVuu8KptibbR19XurlwnfY6cG58zPdaGuhwx 974XQRm/TyFHNff7mfG4b3V9OT0F14Zr6pqyv+MReTdb98hG3r1PFdjLBZHYH787OVhji5DI00Gk KNxu4xflzY+sQ0a7aO2hAZJoltw8dZU9EwWywPFASESbMGNBpoeJqVPrxQXWw11Y8W7YJBWJO2wL 6qzW6XL6X7nM0pvRcf3O9IjLAl5QIvasnHGVnFjjenxE09/+mzjJ13/kqrXHhNqt+2T3XjxdzU8K 7k8TdZNQDZ8lr3p7zryo7VEjp5pIFlPNohtbmRdn4DO7QMxPUs9HjoHaJvfjeO7vHyvuXwG69YGw GRlucnS64nuxIeot2mY2BQ5HYay3N68u5vZqOXW1/OvnwJ//nR7i3jYNc/nJZwScxZwa/uUzIryt i1RcE1vFZHWlqUkAsA44KWDSCXpfZLSJlmSda68KG5JjxHzpub8WE1Z/SAYsonly+R0BoM8M83ll IMDlgvjh21dED14+O11y8LRyapA0NQ0R9exHQu1gg0xPfwBsfwqMeJTCN69DhZqItTEXQdLQuoFb Lm6qDdQ26PkpNciZRZmgaLVRqzP8JL1HWaezxC0Srvc1wdROJ8ElFq3lu5IyWT2ekBOx94Y8m8sc UKQA8G+n2dE5AoEEaKwN+YI797lGlXMNUgsr6q7ToyTUYCPUTEgNps8AC5vnCKwspyUDkXuccpbU C0rJ8YrGyWmwXKPJexAwpw2hf0Ydz13gIv63C8v+o3KIRiZYcmf0kjtyDTbIzPg6kQlpjKND8kSf /g149Q/SJpcpZ+qc5RwF2KTn/HhEAPnqawLB1/9MYfu9t0Sc3u2QOkw9mtQmpBoFutGgGu2kSR+r j0H4vU6rpO0uPATpOkDF5ONz68CaFFTrZ/Che3XMKr5lLTsHL+g8W3fpg5Nhu45G7OoeAs+fUA3r aB+XLmfu5ukcBdHe7VDjj/aoluHTL4jENo40zGJBX8XRIS1LPiXiG6cR1dBnshpm9XL0Mz2pEFFe 9hoEaBVI63NEATi9X+aDkNW5/FAKbIC8lOU8jO0mVYJTHrpitEftITm1y5Zz9QUWLTIe0e/FjDon f/l74OGnpF3uPgRefU5If/ksVIdrF7PV6Ep7ZOUs4JLzyeIqoCQnlMYzGiz8u+X+Jtpk5c2l15CH zxyXey8yRIQMVTGfETCkbvXwgNze9zW+26WMKvDDt9Th57ffAH/8V+InW3eBzVuE+Nt3gCc/UP+P plA2Wk7g4imy7VjjZeidTkJP0iD62kbvkmqC5D5OukZ2PxdmDupjcfGy/NaT1PdMxlS+0TTERXZe AE++o9TJ+x4x6VJAUteE7O/+RP07tu4BX31DHbv6A2DrAeD+GiKATUPV4EaVSTYOAP+2QvB44Biw ffeA4cCTa1TDcgALoHMYw+dMuY5TxyCsB58bDSIAybJb0YhCRmUEJMdV7nrAG7/Nhed3yTrH76Bu 4v3rZci2i3k5PKCQxOH+xfMyp5FLHZ9kuaAbbxqg/zMAR9lKZxAVVusXlJsax8kx2ZcbX48LYtT+ XolkNIDXEhkSIACJBqDR59AaYBVIZB+X7OMPVOvUMzcunDf3/H40Je6iOZ2QyT46pGKk6fGHG5zv 0kEy2uPxNvYJ7YMNCr4tmbxKfqFckjvXcD1Fw/1QahV4Ehc6jYEYfvHWhWJtqc/wmoOjkrq/rpwr t+wlNXcuXpYvHwiNHmmOjMaQwfiaRJNKtLSugWUdhtOSjtxL7p75+he6hsRGlssP+0+aLn2kIyFZ o31CfFFSfqeoCCx1P+RwAOUCcnSRTqLyHAj7WQaGjpFYDs61+u1Y6sqQur0rCax/gLOBRGuJRpuO ug2Sekn7CABcw8vLMLqjdJldLihAdnhAdSEX7RB3EXmvw2Et+WFnx9x7fjNUctd10Cy2BgrWGtKw cPBxldogqtD37jTgE2iyfxoQS93KlvZIgbLK9EBpCW1GmMOk/EP3hfbjuer1Ah498bp6GULu3qx8 IK2Rkw82ZtpyDhzuAa6miKtlgGhtYYvQEMYCtQPKBr7OwloClK4sj7pdJJokDf8DaMdcMiYnCqBp XiKjIyT8BIhBEGkSF5sRPeJ0U5PWWCwojFDXFIOasZs7PiCOd9F6kIvKBx1Yb7TPyUBu9G6P24hf uqTIGxcA4ZZAw90EJINsEMyTjEfqM6MJUFogAdbGSYD1IIkIqvzGCk3Cy37YziXvw+amqYH5gj6g +ZzAM5tS/OnokOqMp+fo4H3Z8kFBMuevRcr2BhtB7bqGGr2qidRJ/9i6JFNkLWDLABKdJdXJsCjM L/smWsRHPl2yHsh6N7KoPZQsSBK3V4OkpUl4uPEFg2TGpaACjvGI+MjHNDMiH3yITin3nxzBdxz3 ZYxNaGjpdS/SWOpy4BgMToJyTGSdZJjRBkmT0ySrgm+pG524wanrLmYn0iAOMScRDyYxN96TWYRO VPJfu+ZnGInofcsHB0nDINnf5RK7Zfj6ZADauiYzUlSkRYqatEE0lrwuotagMIlmQQwekWiZ5y0r k/FsUqDkQOKBkdEkjXg0MiIU95YccSxk721Iol4FLQJ8pMF+pexgPouZvfzzxIo7K5U19/JbJiDR pkaZn1aVvYDDhsCZSA4wKRdJXeGWuVFTFiSsSWqlSXysg0spZseUxd3f5dT/YeAuV0U+2ojQTQOg CX14un2gUZXfEpqnneG7VIrn42xYNoY5jXKBG61ZGpyOuCYNk4uReJAg/p31biQ+okHShH9OoP/F 7NEhmZurBhDgCgwbvpjTV+QcdbsAmLQ61X4SXHO83gZOIkBolIlpEdgUFGlsJLE3KXHV7q9f5g06 79I0gBPtoThJrYJlTUOJTuEge7uU5r/McsPLlo8OEoBe3miPvrbegLSKRF99dFWq2ETTpAXVmUJq DYg0TiKiNYyvCdE7SBxEeUNSMuAcIB2vDGuyxvD6Omg42S7nq5vwnyvkv4ZeZbkSIAFCctDVZK97 gzACtVSKd/thZKSyopELbZkQ2RQoUIBRyz4xuMrcrOAkIS0cPBkdPKszJmU2BdwYOOYBd0f7gbhP Dq+eeUnlyoAEoJc1nxORk7E1pNimKLkHWydolS4P+CIxlZbHk9S/AiHg5qBAlNxDdi6AELOjEnXi wYh2kP+WJbGQ+YzGuhXeMRmHcW+vOkAAZKvoPqpIg0uEteyq/58nBdPc8L0+daKOttn4HD4amxZF a4CkwTTxXhCWI2Kq4h9LxTumkzB2i/xrNdEuNY+gLUk97fpfdblyIGmJJp5JEExGBIqCZxle4jmJ Njnq/JHkPBwFGOcAKUzy3g248WUUbO0e8zl1nuf/mlx9kNzIRxd78i43ct3lBiQ3cqLcgORGTpQb kNzIiXIDkhs5Uf4XvCkz5B6wzDwAAAAASUVORK5CYII= " id="image3149"/> - <image width="156.57143" x="89.857132" y="140.67836" height="65.897751" id="image3075" xlink:href="data:image/png;base64,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 "/> - <rect width="285.97864" x="26.028843" y="78.512794" rx="0" height="284.96848" ry="0" style="fill:#000000;fill-opacity:1;stroke:none;opacity:0" id="rect2995"/> - </g> - <g id="layer2"/> -</svg> diff --git a/examples/qt3d/solarsystem/main.cpp b/examples/qt3d/solarsystem/main.cpp deleted file mode 100644 index a4d44d3d..00000000 --- a/examples/qt3d/solarsystem/main.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> - -#include "solarsystem.h" - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - SolarSystemView view; - -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - - return app.exec(); -} diff --git a/examples/qt3d/solarsystem/qt3d.ico b/examples/qt3d/solarsystem/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/solarsystem/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/solarsystem/qt3d.png b/examples/qt3d/solarsystem/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/solarsystem/qt3d.png +++ /dev/null diff --git a/examples/qt3d/solarsystem/resources/attribution.txt b/examples/qt3d/solarsystem/resources/attribution.txt deleted file mode 100644 index 28fe61c3..00000000 --- a/examples/qt3d/solarsystem/resources/attribution.txt +++ /dev/null @@ -1,4 +0,0 @@ -Image files based on textures courtesy of: -qzma.deviantart.com -sirius-sdz.deviantart.com - diff --git a/examples/qt3d/solarsystem/resources/moon-texture.jpg b/examples/qt3d/solarsystem/resources/moon-texture.jpg Binary files differdeleted file mode 100644 index b6955e38..00000000 --- a/examples/qt3d/solarsystem/resources/moon-texture.jpg +++ /dev/null diff --git a/examples/qt3d/solarsystem/resources/planet.jpg b/examples/qt3d/solarsystem/resources/planet.jpg Binary files differdeleted file mode 100644 index c6d92c43..00000000 --- a/examples/qt3d/solarsystem/resources/planet.jpg +++ /dev/null diff --git a/examples/qt3d/solarsystem/resources/solar.fsh b/examples/qt3d/solarsystem/resources/solar.fsh deleted file mode 100644 index b85bd708..00000000 --- a/examples/qt3d/solarsystem/resources/solar.fsh +++ /dev/null @@ -1,70 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -uniform sampler2D qt_Texture0; -uniform sampler2D qt_Texture1; -varying mediump vec4 lightingColor; -varying highp vec4 texCoord0; -uniform mediump float glowFactor; - -void main(void) -{ - vec4 unlitColor0 = texture2D(qt_Texture0, texCoord0.st); - vec4 unlitColor1 = texture2D(qt_Texture1, texCoord0.st); - - // interpolate between the two textures - vec4 unlitColor = mix(unlitColor0, unlitColor1, glowFactor); - - // Apply lighting - vec4 litColor = lightingColor * unlitColor; - // Normally, we'd just paint this lit colour like so: -// gl_FragColor = litColor; - - // However, we want a cool glow effect, because the sun is generating - // it's own light. - - // Multiplying the color by itself will washing out the darker colours, - // leaving the brighter colours brighter by comparison - vec4 powerColor = unlitColor * unlitColor; - powerColor = powerColor * powerColor ; - - // Then combine the higher contrast color and the lit color - gl_FragColor= mix(litColor, powerColor, glowFactor); -} diff --git a/examples/qt3d/solarsystem/resources/solar.jpg b/examples/qt3d/solarsystem/resources/solar.jpg Binary files differdeleted file mode 100644 index 86f5921a..00000000 --- a/examples/qt3d/solarsystem/resources/solar.jpg +++ /dev/null diff --git a/examples/qt3d/solarsystem/resources/solar.vsh b/examples/qt3d/solarsystem/resources/solar.vsh deleted file mode 100644 index 420bc701..00000000 --- a/examples/qt3d/solarsystem/resources/solar.vsh +++ /dev/null @@ -1,175 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -attribute highp vec4 qt_Vertex; -attribute highp vec3 qt_Normal; -attribute highp vec4 qt_MultiTexCoord0; -uniform highp mat4 qt_ModelViewProjectionMatrix; -uniform highp mat4 qt_ModelViewMatrix; -uniform highp mat3 qt_NormalMatrix; -varying highp vec4 texCoord0; - -// varying values for per-pixel lighting -varying mediump vec4 lightingColor; -varying highp vec3 normal; -varying highp vec3 lightDirection; -varying highp vec3 halfVector; -varying highp vec3 vertexToLight; - -// Varying values for per-vertex lighting -varying mediump vec4 litCombinedColor; - -// These structs are copied from the QGLShaderProgramEffect documentation -struct qt_MaterialParameters { - mediump vec4 emission; - mediump vec4 ambient; - mediump vec4 diffuse; - mediump vec4 specular; - mediump float shininess; -}; -uniform qt_MaterialParameters qt_Material; - -struct qt_SingleLightParameters { - mediump vec4 position; - mediump vec3 spotDirection; - mediump float spotExponent; - mediump float spotCutoff; - mediump float spotCosCutoff; - mediump float constantAttenuation; - mediump float linearAttenuation; - mediump float quadraticAttenuation; -}; -uniform qt_SingleLightParameters qt_Light; - -// This is a pretty standard lighting function, adapted from QGLLitMaterial. -// The changes are mostly just renaming to improve readablity, but some -// unecessary features are removed too (e.g. support for two-sided materials) - -void qLightVertex(vec4 vertex, vec3 normal) -{ - // Start with the material's emissive color and the ambient scene color, - // which have been combined into the emission parameter. - vec4 color = qt_Material.emission; - vec4 scolor = qt_Material.specular; - - // Viewer is at infinity. - vec3 toEye = vec3(0, 0, 1); - - // Determine the angle between the normal and the light direction. - vec4 lightPosition = qt_Light.position; - vec3 lightDirection; - if (lightPosition.w == 0.0) - lightDirection = normalize(lightPosition.xyz); - else - lightDirection = normalize(lightPosition.xyz - vertex.xyz); - // Clean up negative values - float angle = max(dot(normal, lightDirection), 0.0); - - // Calculate the ambient and diffuse light components. - vec4 adcomponent = qt_Material.ambient + angle * qt_Material.diffuse; - - // Calculate the specular light components, in case they're needed for - // per-vertex lighting. - vec4 scomponent; - if (angle != 0.0) { - halfVector = normalize(lightDirection + toEye); - angle = max(dot(normal, halfVector), 0.0); - float srm = qt_Material.shininess; - vec4 scm = qt_Material.specular; - if (srm != 0.0) - scomponent = pow(angle, srm) * scm; - else - scomponent = scm; - } else { - scomponent = vec4(0, 0, 0, 0); - } - - // Apply the spotlight angle and exponent. - if (qt_Light.spotCutoff != 180.0) { - vertexToLight = vertex.xyz - lightPosition.xyz; - float spot = max(dot(normalize(vertexToLight), - qt_Light.spotDirection), 0.0); - if (spot < qt_Light.spotCosCutoff) { - adcomponent = vec4(0, 0, 0, 0); - scomponent = vec4(0, 0, 0, 0); - } else { - spot = pow(spot, qt_Light.spotExponent); - adcomponent *= spot; - scomponent *= spot; - } - } - - // Apply attenuation to the colors. - if (lightPosition.w != 0.0) { - float attenuation = qt_Light.constantAttenuation; - float k1 = qt_Light.linearAttenuation; - float k2 = qt_Light.quadraticAttenuation; - if (k1 != 0.0 || k2 != 0.0) { - float len = length(lightPosition.xyz - vertex.xyz); - attenuation += k1 * len + k2 * len * len; - } - color += adcomponent / attenuation; - scolor += scomponent / attenuation; - } else { - color += adcomponent; - scolor += scomponent; - } - - // Generate the final output colors to pass to the fragment shader. - float alpha = qt_Material.diffuse.a; - // This is the combined diffuse and ambient lighting color - lightingColor = vec4(clamp(color.rgb, 0.0, 1.0), alpha); - // Specular lighting and combined color is used for per vertex lighting if - // per-pixel is too expensive or not required. - vec4 specularLightingColor = vec4(clamp(scolor.rgb, 0.0, 1.0), 0.0); - litCombinedColor = clamp(lightingColor + vec4(specularLightingColor.xyz, 0.0), 0.0, 1.0); -} - - void main(void) - { - gl_Position = qt_ModelViewProjectionMatrix * qt_Vertex; - texCoord0 = qt_MultiTexCoord0; - - // Calculate the vertex and normal to use for lighting calculations. - highp vec4 vertex = qt_ModelViewMatrix * qt_Vertex; - normal = normalize(qt_NormalMatrix * qt_Normal); - qLightVertex(vertex,normal); -} - diff --git a/examples/qt3d/solarsystem/resources/solar2.jpg b/examples/qt3d/solarsystem/resources/solar2.jpg Binary files differdeleted file mode 100755 index 1aa0f02d..00000000 --- a/examples/qt3d/solarsystem/resources/solar2.jpg +++ /dev/null diff --git a/examples/qt3d/solarsystem/solarsystem.cpp b/examples/qt3d/solarsystem/solarsystem.cpp deleted file mode 100644 index 25b0f769..00000000 --- a/examples/qt3d/solarsystem/solarsystem.cpp +++ /dev/null @@ -1,232 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QPropertyAnimation> -#include "solarsystem.h" -#include "qglbuilder.h" -#include "qglmaterialcollection.h" -#include "qgltexture2d.h" -#include "qglmaterial.h" -#include "qglscenenode.h" -#include "qgllightmodel.h" -#include "qglsphere.h" -#include "qgraphicsrotation3d.h" -#include "qgraphicstranslation3d.h" -#include "qglshaderprogrameffect.h" -#include "qglshaderprogram.h" - -#include <QtGui/qmatrix4x4.h> - -#include <QtCore/qmath.h> - -SolarSystemView::SolarSystemView(QWidget *parent) - : QGLView(parent) - , spaceScene(new QGLSceneNode(this)) - , sunEffect(0) -{ - //Generate geometry for the scene - spaceScene = createScene(); - - //Set up the camera - camera()->setEye(QVector3D(0, 0, 15)); - - //Create the animation for the rotation of the Sun - QPropertyAnimation *animation; - animation = new QPropertyAnimation(this, "angle1", this); - animation->setStartValue(0.0f); - animation->setEndValue(360.0f); - animation->setDuration(7000); - animation->setLoopCount(-1); - animation->start(); - - //Create the animation for the rotation of the Planet - QPropertyAnimation *animation2; - animation2 = new QPropertyAnimation(this, "angle2", this); - animation2->setStartValue(0.0f); - animation2->setEndValue(360.0f); - animation2->setDuration(3000); - animation2->setLoopCount(-1); - animation2->start(); - - //Create the animation for the rotation of the Solar-System - QPropertyAnimation *animation3; - animation3 = new QPropertyAnimation(this, "angle3", this); - animation3->setStartValue(0.0f); - animation3->setEndValue(360.0f); - animation3->setDuration(30000); - animation3->setLoopCount(-1); - animation3->start(); - - //Create the animation for the glow effect - QPropertyAnimation *glowAnimation; - glowAnimation = new QPropertyAnimation(this, "glowFactor", this); - glowAnimation->setStartValue(0.0f); - glowAnimation->setEndValue(0.0f); - glowAnimation->setKeyValueAt(0.5, 1.0f); - glowAnimation->setDuration(3000); - glowAnimation->setLoopCount(-1); - glowAnimation->start(); -} - -SolarSystemView::~SolarSystemView() -{ - delete spaceScene; - delete sunEffect; -} - -void SolarSystemView::initializeGL(QGLPainter *painter) -{ - Q_UNUSED(painter); - //nothing for now -} - - -void SolarSystemView::paintGL(QGLPainter *painter) -{ - sunRotation->setAngle(-m_angle1); - planetRotation->setAngle(m_angle2); - systemRotation->setAngle(m_angle3); - // Set the effect active to make sure that the program is created - // and bound so that we can update our uniform - sunEffect->setActive(painter,true); - sunEffect->program()->setUniformValue("glowFactor", m_glowFactor); - spaceScene->draw(painter); -} - -QGLSceneNode *SolarSystemView::createScene() -{ - QGLBuilder builder; - QGLSceneNode *root = builder.sceneNode(); - QUrl url; - - //set up our materials palette - this describes all - //of the materials we will use for this scene. - - //solar surface - QGLMaterial *mat1 = new QGLMaterial; - url.setPath(QLatin1String(":/solar.jpg")); - url.setScheme(QLatin1String("file")); - mat1->setTextureUrl(url,0); - url.setPath(QLatin1String(":/solar2.jpg")); - url.setScheme(QLatin1String("file")); - mat1->setTextureUrl(url, 1); - //mat1->setEmittedLight(Qt::white); - int sunMat = root->palette()->addMaterial(mat1); - - //planetary surface - QGLMaterial *mat2 = new QGLMaterial; - url.setPath(QLatin1String(":/planet.jpg")); - url.setScheme(QLatin1String("file")); - mat2->setTextureUrl(url); - int planetMat = root->palette()->addMaterial(mat2); - - //moon surface - QGLMaterial *mat3 = new QGLMaterial; - url.setPath(QLatin1String(":/moon-texture.jpg")); - url.setScheme(QLatin1String("file")); - mat3->setTextureUrl(url); - int moonMat = root->palette()->addMaterial(mat3); - - //Set the rotation of the solar-system - systemRotation = new QGraphicsRotation3D(); - systemRotation->setAxis(QVector3D(0,1,0)); - root->addTransform(systemRotation); - - // create the sun for our solar system - builder.pushNode()->setObjectName(QLatin1String("Solar")); - builder<<QGLSphere(1.5); - builder.currentNode()->setMaterialIndex(sunMat); - sunEffect = new QGLShaderProgramEffect(); - sunEffect->setVertexShaderFromFile(":/solar.vsh"); - sunEffect->setFragmentShaderFromFile(":/solar.fsh"); -// builder.currentNode()->setEffect(QGL::LitModulateTexture2D); - builder.currentNode()->setUserEffect(sunEffect); - - //create and add rotations for axial tilt and rotation - sunRotation = new QGraphicsRotation3D(); - QGraphicsRotation3D *axialTilt1 = new QGraphicsRotation3D(); - axialTilt1->setAngle(90.0f); - axialTilt1->setAxis(QVector3D(1,0,0)); - builder.currentNode()->addTransform(sunRotation); - builder.currentNode()->addTransform(axialTilt1); - - // create the planet - builder.newNode()->setObjectName(QLatin1String("Planet")); - builder<<QGLSphere(0.4); - builder.currentNode()->setMaterialIndex(planetMat); - builder.currentNode()->setEffect(QGL::LitModulateTexture2D); - - //position our planet - positioning occurs only AFTER transformations - //have taken place. - builder.currentNode()->setPosition(QVector3D(4.5,0,0)); - - //create and add rotations for axial tilt and rotation - planetRotation = new QGraphicsRotation3D(); - QGraphicsRotation3D *axialTilt2 = new QGraphicsRotation3D(); - axialTilt2->setAngle(75.0f); - axialTilt2->setAxis(QVector3D(1,0,0)); - - builder.currentNode()->addTransform(planetRotation); - builder.currentNode()->addTransform(axialTilt2); - - //create the moon - builder.pushNode()->setObjectName("Moon"); - builder<<QGLSphere(0.1); - builder.currentNode()->setMaterialIndex(moonMat); - builder.currentNode()->setEffect(QGL::LitModulateTexture2D); - - //as our moon is tidally locked to the planet (ie. they - //always face the same side to one another), we are just - //correcting the axial tilt of the moon here. - QGraphicsRotation3D *axialTilt3 = new QGraphicsRotation3D(); - axialTilt3->setAngle(90.0f); - axialTilt3->setAxis(QVector3D(1,0,0)); - builder.currentNode()->addTransform(axialTilt3); - - //The position is set relative to the parent node... - builder.currentNode()->setPosition(QVector3D(0.7,0,0)); - - - - - - //completed building, so finalise - return builder.finalizedSceneNode(); -} diff --git a/examples/qt3d/solarsystem/solarsystem.desktop b/examples/qt3d/solarsystem/solarsystem.desktop deleted file mode 100644 index 3d16c486..00000000 --- a/examples/qt3d/solarsystem/solarsystem.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Basket -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/basket -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_basket diff --git a/examples/qt3d/solarsystem/solarsystem.h b/examples/qt3d/solarsystem/solarsystem.h deleted file mode 100644 index 9b8bcc1a..00000000 --- a/examples/qt3d/solarsystem/solarsystem.h +++ /dev/null @@ -1,96 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef BUILDER_H -#define BUILDER_H - -#include "qglview.h" -#include "qgraphicsrotation3d.h" - -QT_BEGIN_NAMESPACE -class QGLSceneNode; -class QGLBuilder; -class QGLShaderProgramEffect; -QT_END_NAMESPACE - -class SolarSystemView : public QGLView -{ - Q_OBJECT - Q_PROPERTY(qreal angle1 READ angle1 WRITE setAngle1) - Q_PROPERTY(qreal angle2 READ angle2 WRITE setAngle2) - Q_PROPERTY(qreal angle3 READ angle3 WRITE setAngle3) - Q_PROPERTY(qreal glowFactor READ glowFactor WRITE setGlowFactor) -public: - SolarSystemView(QWidget *parent = 0); - ~SolarSystemView(); - - qreal angle1() const { return m_angle1; } - void setAngle1(qreal angle) { m_angle1 = angle; update(); } - - qreal angle2() const { return m_angle2; } - void setAngle2(qreal angle) { m_angle2 = angle; update(); } - - qreal angle3() const { return m_angle3; } - void setAngle3(qreal angle) { m_angle3 = angle; update(); } - - qreal glowFactor() const { return m_glowFactor; } - void setGlowFactor(qreal arg) { m_glowFactor = arg; update(); } - -protected: - void initializeGL(QGLPainter *painter); - void paintGL(QGLPainter *painter); - -private: - qreal m_angle1; - qreal m_angle2; - qreal m_angle3; - float m_glowFactor; - QGraphicsRotation3D *sunRotation; - QGraphicsRotation3D *planetRotation; - QGraphicsRotation3D *moonRotation; - QGraphicsRotation3D *systemRotation; - QGLSceneNode *spaceScene; - - QGLShaderProgramEffect* sunEffect; - - QGLSceneNode *createScene(); -}; - -#endif diff --git a/examples/qt3d/solarsystem/solarsystem.pro b/examples/qt3d/solarsystem/solarsystem.pro deleted file mode 100644 index 757d3753..00000000 --- a/examples/qt3d/solarsystem/solarsystem.pro +++ /dev/null @@ -1,29 +0,0 @@ -TEMPLATE = app -TARGET = solarsystem -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES = solarsystem.cpp \ - main.cpp -HEADERS = solarsystem.h -RESOURCES += solarsystem.qrc -DEPENDPATH += resources - -OTHER_FILES += \ - resources/moon-texture.jpg \ - resources/planet.jpg \ - resources/solar.jpg \ - resources/solar.fsh \ - resources/solar.vsh - -OTHER_FILES += \ - solarsystem.rc \ - solarsystem.desktop - -RC_FILE = solarsystem.rc - -symbian { - TARGET.EPOCHEAPSIZE = 0x40000 0x4000000 -} diff --git a/examples/qt3d/solarsystem/solarsystem.qrc b/examples/qt3d/solarsystem/solarsystem.qrc deleted file mode 100644 index 8a90a5eb..00000000 --- a/examples/qt3d/solarsystem/solarsystem.qrc +++ /dev/null @@ -1,10 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file alias="moon-texture.jpg">resources/moon-texture.jpg</file> - <file alias="planet.jpg">resources/planet.jpg</file> - <file alias="solar.fsh">resources/solar.fsh</file> - <file alias="solar.jpg">resources/solar.jpg</file> - <file alias="solar.vsh">resources/solar.vsh</file> - <file alias="solar2.jpg">resources/solar2.jpg</file> - </qresource> -</RCC> diff --git a/examples/qt3d/solarsystem/solarsystem.rc b/examples/qt3d/solarsystem/solarsystem.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/solarsystem/solarsystem.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/tank/main.cpp b/examples/qt3d/tank/main.cpp deleted file mode 100644 index 14e1ef43..00000000 --- a/examples/qt3d/tank/main.cpp +++ /dev/null @@ -1,69 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QtGui/QApplication> - -#include <time.h> - -#include "tankview.h" - -int main(int argc, char *argv[]) -{ - qsrand(time(0)); - - QApplication a(argc, argv); - TankView view; - -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - - return a.exec(); -} diff --git a/examples/qt3d/tank/qt3d.ico b/examples/qt3d/tank/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/tank/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/tank/qt3d.png b/examples/qt3d/tank/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/tank/qt3d.png +++ /dev/null diff --git a/examples/qt3d/tank/quadplane.cpp b/examples/qt3d/tank/quadplane.cpp deleted file mode 100644 index fb3cf16b..00000000 --- a/examples/qt3d/tank/quadplane.cpp +++ /dev/null @@ -1,107 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "quadplane.h" -#include "qgraphicsrotation3d.h" - -QGLMaterial *qCreateFloor() -{ - quint32 sz = 512; - QImage image(QSize(sz, sz), QImage::Format_ARGB32); - QRgb col = qRgba(196, 196, 200, 255); - image.fill(col); - QPainter painter(&image); - QPen pen = painter.pen(); - pen.setColor(QColor(col).darker()); - pen.setWidth(2); - painter.setPen(pen); - for (quint32 i = 0; i < sz; i += (sz / 8)) - { - painter.drawLine(0, i, sz-1, i); - painter.drawLine(i, 0, i, sz-1); - } - painter.end(); - QGLMaterial *mat = new QGLMaterial; - QGLTexture2D *tex = new QGLTexture2D(mat); - tex->setImage(image); - mat->setTexture(tex); - return mat; -} - -QuadPlane::QuadPlane(QObject *parent, QSizeF size, int level) - : QGLSceneNode(parent) -{ - setObjectName("QuadPlane"); - if (level > 8) - level = 8; - if (level < 1) - level = 1; - int divisions = 1; - for ( ; level--; divisions *= 2) {} // integer 2**n - QSizeF div = size / float(divisions); - QSizeF half = size / 2.0f; - QGLBuilder builder; - QGeometryData zip; - QGeometryData zip2; - for (int yy = 0; yy <= divisions; ++yy) - { - qreal y = half.height() - float(yy) * div.height(); - qreal texY = float(yy) / divisions; - for (int xx = 0; xx <= divisions; ++xx) - { - qreal x = half.width() - float(xx) * div.width(); - qreal texX = float(xx) / divisions; - zip.appendVertex(QVector3D(x, y, 0)); - zip.appendTexCoord(QVector2D(1.0f - texX, 1.0f - texY)); - } - if (yy > 0) - builder.addQuadsInterleaved(zip, zip2); - zip2 = zip; - zip2.detach(); - zip.clear(); - } - QGLSceneNode *n = builder.finalizedSceneNode(); - addNode(n); - n->setMaterial(qCreateFloor()); - QGraphicsRotation3D *rot = new QGraphicsRotation3D(n); - rot->setAxis(QVector3D(1, 0, 0)); - rot->setAngle(90.0f); - n->addTransform(rot); -} diff --git a/examples/qt3d/tank/quadplane.h b/examples/qt3d/tank/quadplane.h deleted file mode 100644 index 2ffc1963..00000000 --- a/examples/qt3d/tank/quadplane.h +++ /dev/null @@ -1,55 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QUADPLANE_H -#define QUADPLANE_H - -#include "qglbuilder.h" - -#include <QSizeF> - -class QuadPlane : public QGLSceneNode -{ -public: - QuadPlane(QObject *parent = 0, - QSizeF size = QSizeF(100.0f, 100.0f), int level = 3); -}; - -#endif // QUADPLANE_H diff --git a/examples/qt3d/tank/tank.cpp b/examples/qt3d/tank/tank.cpp deleted file mode 100644 index fe4fa8e8..00000000 --- a/examples/qt3d/tank/tank.cpp +++ /dev/null @@ -1,136 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "tank.h" - -#include <QSequentialAnimationGroup> -#include <QPropertyAnimation> -#include <QImage> -#include <QPainter> -#include <QSize> - -#ifndef QT_NO_DEBUG -#include <QThread> -#include <QCoreApplication> -#endif - -#include "qglbuilder.h" -#include "qglcylinder.h" -#include "qglmaterial.h" -#include "qgltexture2d.h" -#include "qgraphicsscale3d.h" -#include "qgraphicsrotation3d.h" - -static inline int rval() -{ - // return an int 64 <--> 192 inclusive - return (qreal(qrand()) / qreal(RAND_MAX)) * 128 + 64; -} - -static QGLMaterial *qCreateFluid() -{ - QImage image(QSize(128,128), QImage::Format_ARGB32); - QRgb col = qRgba(rval(), rval(), rval(), 196); - image.fill(col); - QPainter painter(&image); - QLinearGradient linearGrad(QPointF(56, 56), QPointF(72, 72)); - linearGrad.setColorAt(0, col); - linearGrad.setColorAt(1, QColor(col).lighter()); - linearGrad.setSpread(QGradient::ReflectSpread); - painter.fillRect(image.rect(), linearGrad); - painter.end(); - QGLMaterial *mat = new QGLMaterial; - QColor white(Qt::white); - white.setAlpha(128); - mat->setAmbientColor(white); - mat->setDiffuseColor(white); - QGLTexture2D *tex = new QGLTexture2D(mat); - tex->setImage(image); - mat->setTexture(tex); - return mat; -} - -Tank::Tank(QObject *parent) : - QGLSceneNode(parent) -{ - QSequentialAnimationGroup *seq = new QSequentialAnimationGroup(this); - QGraphicsScale3D *scale = new QGraphicsScale3D(this); - addTransform(scale); - QPropertyAnimation *anim = new QPropertyAnimation(scale, "scale"); - anim->setDuration(10000); - anim->setStartValue(QVector3D(1.0f, 0.1f, 1.0f)); - anim->setEndValue(QVector3D(1.0f, 1.2f, 1.0f)); - anim->setEasingCurve(QEasingCurve(QEasingCurve::InOutQuad)); - seq->addAnimation(anim); - seq->addPause(2000); - anim = new QPropertyAnimation(scale, "scale"); - anim->setDuration(10000); - anim->setStartValue(QVector3D(1.0f, 1.2f, 1.0f)); - anim->setEndValue(QVector3D(1.0f, 0.1f, 1.0f)); - anim->setEasingCurve(QEasingCurve(QEasingCurve::InOutQuad)); - seq->addAnimation(anim); - seq->setLoopCount(-1); - seq->start(); - - addNode(tankObject()); - setMaterial(qCreateFluid()); -} - -QGLSceneNode *Tank::tankObject() -{ -#ifndef QT_NO_DEBUG - // NOT THREADSAFE, NOT RE-ENTRANT - Q_ASSERT(QThread::currentThread() == qApp->thread()); -#endif - static QGLSceneNode *theTank = 0; - if (!theTank) - { - QGLBuilder build; - build << QGLCylinder(1.0f, 1.0f, 1.0f, 32); - theTank = build.finalizedSceneNode(); - theTank->setObjectName("Tank Component"); - QGraphicsRotation3D *rot = new QGraphicsRotation3D(theTank); - rot->setAxis(QVector3D(1, 0, 0)); - rot->setAngle(-90.0f); - theTank->addTransform(rot); - theTank->setY(-theTank->boundingBox().minimum().y()); - } - return theTank; -} diff --git a/examples/qt3d/tank/tank.desktop b/examples/qt3d/tank/tank.desktop deleted file mode 100644 index 17ebe2c6..00000000 --- a/examples/qt3d/tank/tank.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Tank -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/invoker --type=d -s /usr/bin/tank -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_tank diff --git a/examples/qt3d/tank/tank.h b/examples/qt3d/tank/tank.h deleted file mode 100644 index 89449640..00000000 --- a/examples/qt3d/tank/tank.h +++ /dev/null @@ -1,59 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef TANK_H -#define TANK_H - -#include "qglscenenode.h" - -class Tank : public QGLSceneNode -{ - Q_OBJECT -public: - explicit Tank(QObject *parent = 0); - -signals: - -public slots: -private: - static QGLSceneNode *tankObject(); -}; - -#endif // TANK_H diff --git a/examples/qt3d/tank/tank.pro b/examples/qt3d/tank/tank.pro deleted file mode 100644 index fa622cdf..00000000 --- a/examples/qt3d/tank/tank.pro +++ /dev/null @@ -1,21 +0,0 @@ -TARGET = tank -TEMPLATE = app -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES += main.cpp\ - tankview.cpp \ - tank.cpp \ - quadplane.cpp - -HEADERS += tankview.h \ - tank.h \ - quadplane.h - -OTHER_FILES += \ - tank.rc \ - tank.desktop - -RC_FILE = tank.rc diff --git a/examples/qt3d/tank/tank.rc b/examples/qt3d/tank/tank.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/tank/tank.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/tank/tankview.cpp b/examples/qt3d/tank/tankview.cpp deleted file mode 100644 index 1c2e706d..00000000 --- a/examples/qt3d/tank/tankview.cpp +++ /dev/null @@ -1,114 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "tankview.h" -#include "tank.h" -#include "quadplane.h" - -#include "qglscenenode.h" -#include "qray3d.h" -#include "qplane3d.h" - -#include <QMouseEvent> - -TankView::TankView(QWidget *parent) - : QGLView(parent) - , m_tankScene(new QGLSceneNode) - , m_count(0) -{ - m_tankScene->setParent(this); - m_tankScene->setPalette(new QGLMaterialCollection(this)); - m_tankScene->setEffect(QGL::LitDecalTexture2D); - m_tankScene->addNode(new QuadPlane(0, QSizeF(25, 25))); - Tank *tank = addTank(); - connect(tank, SIGNAL(updated()), this, SLOT(update())); - - setToolTip(tr("Double-click to add more tanks")); - setWindowTitle(tr("Double-click Me!")); -} - -TankView::~TankView() -{ -} - -Tank *TankView::addTank() -{ - Tank *tank = new Tank(m_tankScene); - tank->setObjectName(QString(QLatin1String("Tank %1")).arg(m_count)); - ++m_count; - connect(tank, SIGNAL(updated()), this, SLOT(update())); - return tank; -} - -void TankView::paintGL(QGLPainter *painter) -{ - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - m_tankScene->draw(painter); -} - -void TankView::initializeGL(QGLPainter *painter) -{ - painter->setClearColor(Qt::gray); - camera()->setEye(camera()->eye() + QVector3D(0.0f, 4.0f, 0.0f)); - glEnable(GL_BLEND); -} - -void TankView::mouseDoubleClickEvent(QMouseEvent *e) -{ - Tank *t = addTank(); - QVector3D pick = mapPoint(e->pos()); - - // find the origin of the near plane - QRay3D eyeline(camera()->eye(), (camera()->center() - camera()->eye()).normalized()); - QVector3D nearPlaneOrigin = eyeline.point(camera()->nearPlane()); - - // from the near plane origin move up and across by the pick's XY to find the point - // on the near plane - QRay3D up(nearPlaneOrigin, camera()->upVector()); - QVector3D sideDir = QVector3D::crossProduct(camera()->upVector(), -eyeline.direction()); - QRay3D side(up.point(pick.y()), sideDir.normalized()); - QVector3D v = side.point(pick.x()); - - // intersect the ray thru the picked point on the near plane with the floor - QRay3D ray(camera()->eye(), v - camera()->eye()); - QPlane3D floorPlane(QVector3D(), QVector3D(0, 1, 0)); - QVector3D pointOnFloor = ray.point(floorPlane.intersection(ray)); - t->setPosition(pointOnFloor); -} diff --git a/examples/qt3d/tank/tankview.h b/examples/qt3d/tank/tankview.h deleted file mode 100644 index 74f26438..00000000 --- a/examples/qt3d/tank/tankview.h +++ /dev/null @@ -1,70 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef TANKVIEW_H -#define TANKVIEW_H - -#include "qglview.h" - -QT_BEGIN_NAMESPACE -class QGLSceneNode; -QT_END_NAMESPACE - -class Tank; - -class TankView : public QGLView -{ -public: - TankView(QWidget *parent = 0); - ~TankView(); -protected: - void initializeGL(QGLPainter *painter); - void paintGL(QGLPainter *painter); - void mouseDoubleClickEvent(QMouseEvent *e); -private: - Tank *addTank(); - - QGLSceneNode *m_tankScene; - int m_count; -}; - - - -#endif // TANKVIEW_H diff --git a/examples/qt3d/teapot/main.cpp b/examples/qt3d/teapot/main.cpp deleted file mode 100644 index 8bf02f47..00000000 --- a/examples/qt3d/teapot/main.cpp +++ /dev/null @@ -1,68 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <QApplication> -#include "teapotview.h" - -//! [main] -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - TeapotView view; -//! [main-args] - -#ifdef Q_OS_SYMBIAN - view.setAttribute(Qt::WA_LockLandscapeOrientation, true); - view.showFullScreen(); -#else - if (view.stereoType() != QGLView::RedCyanAnaglyph) - view.camera()->setEyeSeparation(0.3f); - if (QApplication::arguments().contains(QLatin1String("-maximize"))) - view.showMaximized(); - else if (QApplication::arguments().contains(QLatin1String("-fullscreen"))) - view.showFullScreen(); - else - view.show(); -#endif - -//! [main-args-end] - return app.exec(); -} -//! [main] diff --git a/examples/qt3d/teapot/qt3d.ico b/examples/qt3d/teapot/qt3d.ico Binary files differdeleted file mode 100644 index e6442baf..00000000 --- a/examples/qt3d/teapot/qt3d.ico +++ /dev/null diff --git a/examples/qt3d/teapot/qt3d.png b/examples/qt3d/teapot/qt3d.png Binary files differdeleted file mode 100644 index 21ec0176..00000000 --- a/examples/qt3d/teapot/qt3d.png +++ /dev/null diff --git a/examples/qt3d/teapot/teapot.desktop b/examples/qt3d/teapot/teapot.desktop deleted file mode 100644 index b28a3dac..00000000 --- a/examples/qt3d/teapot/teapot.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Type=Application -Name=teapot Qt3D -Icon=/usr/share/icons/hicolor/80x80/apps/qt3d.png -Exec=/usr/bin/invoker --type=e -s /usr/bin/teapot -fullscreen -OnlyShowIn=X-MeeGo; -X-MeeGo-Logical-Id=qtn_comm_appname_teapot diff --git a/examples/qt3d/teapot/teapot.pro b/examples/qt3d/teapot/teapot.pro deleted file mode 100644 index 907db547..00000000 --- a/examples/qt3d/teapot/teapot.pro +++ /dev/null @@ -1,15 +0,0 @@ -TEMPLATE = app -TARGET = teapot -CONFIG += qt warn_on - -CONFIG += qt3d_deploy_pkg -include(../../../pkg.pri) - -SOURCES = teapotview.cpp main.cpp -HEADERS = teapotview.h - -OTHER_FILES += \ - teapot.rc \ - teapot.desktop - -RC_FILE = teapot.rc diff --git a/examples/qt3d/teapot/teapot.rc b/examples/qt3d/teapot/teapot.rc deleted file mode 100644 index b40ecdc1..00000000 --- a/examples/qt3d/teapot/teapot.rc +++ /dev/null @@ -1 +0,0 @@ -IDI_ICON1 ICON DISCARDABLE "qt3d.ico" diff --git a/examples/qt3d/teapot/teapotview.cpp b/examples/qt3d/teapot/teapotview.cpp deleted file mode 100644 index 2c58e19a..00000000 --- a/examples/qt3d/teapot/teapotview.cpp +++ /dev/null @@ -1,68 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "teapotview.h" -#include "qglbuilder.h" -#include "qglscenenode.h" - -//! [initialize] -void TeapotView::initializeGL(QGLPainter *painter) -{ - painter->setStandardEffect(QGL::LitMaterial); -//! [build-geometry] - QGLBuilder builder; - builder << QGLTeapot(); - teapot = builder.finalizedSceneNode(); -} -//! [initialize] - -//! [destructor] -TeapotView::~TeapotView() -{ - delete teapot; -} -//! [destructor] - -//! [paint] -void TeapotView::paintGL(QGLPainter *painter) -{ - teapot->draw(painter); -} -//! [paint] diff --git a/examples/qt3d/teapot/teapotview.h b/examples/qt3d/teapot/teapotview.h deleted file mode 100644 index f0dd0428..00000000 --- a/examples/qt3d/teapot/teapotview.h +++ /dev/null @@ -1,68 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtQuick3D examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** You may use this file under the terms of the BSD license as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor -** the names of its contributors may be used to endorse or promote -** products derived from this software without specific prior written -** permission. -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef TEAPOTVIEW_H -#define TEAPOTVIEW_H - -//! [class-defn] -#include "qglview.h" -#include "qglteapot.h" - -QT_BEGIN_NAMESPACE -class QGLSceneNode; -QT_END_NAMESPACE - -class TeapotView : public QGLView -{ - Q_OBJECT -public: - TeapotView(QWidget *parent = 0) : QGLView(parent), teapot(0) {} - ~TeapotView(); - -protected: - void initializeGL(QGLPainter *painter); - void paintGL(QGLPainter *painter); - -private: - QGLSceneNode *teapot; -}; -//! [class-defn] - -#endif |