diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2018-05-18 11:23:14 +0200 |
---|---|---|
committer | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2018-05-18 11:23:14 +0200 |
commit | 4c65ec0101824a0e77ed5e58960b82603088348a (patch) | |
tree | 04d15a64bab7985848486f348dda16b547060939 | |
parent | 56530a16a478bf7ba673c477b86f5408e3e7a5ba (diff) | |
parent | 0d097a6995be7498b67b1586f8b2ebdc2cef26a3 (diff) | |
download | qtdoc-4c65ec0101824a0e77ed5e58960b82603088348a.tar.gz |
Merge remote-tracking branch 'origin/5.11.0' into 5.11
Change-Id: Iba471895b413b5d2d048d679b4dc47a547e2d59f
159 files changed, 2 insertions, 13765 deletions
diff --git a/dist/changes-5.11.0 b/dist/changes-5.11.0 index 14f6f0e6..32eaa788 100644 --- a/dist/changes-5.11.0 +++ b/dist/changes-5.11.0 @@ -35,6 +35,6 @@ information about a particular change. - Embedded Linux: Documented advanced eglfs_kms features. - - Updated qtcluster demo with new graphical design. + - Removed qtcluster demo. - Fixed multiple instances of missing, incorrect, or obsolete information. diff --git a/doc/src/snippets/qtcluster/circularindicator.cpp b/doc/src/snippets/qtcluster/circularindicator.cpp deleted file mode 100644 index 7b2a1f21..00000000 --- a/doc/src/snippets/qtcluster/circularindicator.cpp +++ /dev/null @@ -1,263 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 "circularindicator.h" - -CircularIndicator::CircularIndicator(QQuickItem *parent) - : QQuickPaintedItem(parent) - , mStartAngle(0) - , mEndAngle(360) - , mMinimumValue(0.0) - , mMaximumValue(100.0) - , mValue(0.0) - , mLineWidth(10) - , mProgressColor(QColor(255, 0, 0)) - , mBackgroundColor(QColor(240, 240, 240)) - , mPadding(1) -{ -} - -CircularIndicator::~CircularIndicator() -{ -} - -int CircularIndicator::startAngle() const -{ - return mStartAngle; -} - -void CircularIndicator::setStartAngle(int angle) -{ - if (angle == mStartAngle) - return; - - mStartAngle = angle; - emit startAngleChanged(mStartAngle); - update(); -} - -int CircularIndicator::endAngle() const -{ - return mEndAngle; -} - -void CircularIndicator::setEndAngle(int angle) -{ - if (angle == mEndAngle) - return; - - mEndAngle = angle; - emit endAngleChanged(mEndAngle); - update(); -} - -qreal CircularIndicator::minimumValue() const -{ - return mMinimumValue; -} - -void CircularIndicator::setMinimumValue(qreal value) -{ - if (qFuzzyCompare(value, mMinimumValue)) - return; - - if (value > mMaximumValue) { - qWarning() << this << "\nMinimum value can't exceed maximum value."; - return; - } - - mMinimumValue = value; - emit minimumValueChanged(mMinimumValue); - update(); -} - -qreal CircularIndicator::maximumValue() const -{ - return mMaximumValue; -} - -void CircularIndicator::setMaximumValue(qreal value) -{ - if (qFuzzyCompare(value, mMaximumValue)) - return; - - if (value < mMinimumValue) { - qWarning() << this << "\nMaximum value can't be less than minimum value."; - return; - } - - mMaximumValue = value; - emit maximumValueChanged(value); - update(); -} - -qreal CircularIndicator::value() const -{ - return mValue; -} - -void CircularIndicator::setValue(qreal value) -{ - if (qFuzzyCompare(value, mValue)) - return; - - if (value < mMinimumValue) { - qWarning() << this << "\nValue can't be less than minimum value."; - return; - } - - if (value > mMaximumValue) { - qWarning() << this << "\nValue can't exceed maximum value."; - return; - } - - mValue = value; - emit valueChanged(mValue); - update(); -} - -int CircularIndicator::lineWidth() const -{ - return mLineWidth; -} - -void CircularIndicator::setLineWidth(int width) -{ - if (width == mLineWidth) - return; - - mLineWidth = width; - emit lineWidthChanged(mLineWidth); - update(); -} - -QColor CircularIndicator::progressColor() const -{ - return mProgressColor; -} - -void CircularIndicator::setProgressColor(QColor color) -{ - if (color == mProgressColor) - return; - - mProgressColor = color; - emit progressColorChanged(mProgressColor); - update(); -} - -QColor CircularIndicator::backgroundColor() const -{ - return mBackgroundColor; -} - -void CircularIndicator::setBackgroundColor(QColor color) -{ - if (color == mBackgroundColor) - return; - - mBackgroundColor = color; - emit backgroundColorChanged(mBackgroundColor); - update(); -} - -int CircularIndicator::padding() const -{ - return mPadding; -} - -void CircularIndicator::setPadding(int padding) -{ - if (padding == mPadding) - return; - - mPadding = padding; - emit paddingChanged(mPadding); - update(); -} - -void CircularIndicator::paint(QPainter *painter) -{ - painter->setRenderHint(QPainter::Antialiasing); - - int indicatorSize = qMin(width(), height()) - mPadding * 2 - mLineWidth; - - if (indicatorSize <= 0) - return; - - QRect indicatorRect(width() / 2 - indicatorSize / 2, - height() / 2 - indicatorSize / 2, - indicatorSize, - indicatorSize); - - QPen pen; - pen.setCapStyle(Qt::FlatCap); - pen.setWidth(mLineWidth); - pen.setColor(mBackgroundColor); - painter->setPen(pen); - - int endAngle = (qAbs(mEndAngle) > 360) ? mEndAngle % 360 : mEndAngle; - - // See http://doc.qt.io/qt-5/qpainter.html#drawArc for details - int minimumAngle = (90 - mStartAngle) * 16; - int maximumAngle = (90 - endAngle) * 16 - minimumAngle; - - painter->drawArc(indicatorRect, minimumAngle, maximumAngle); - - if (qFuzzyCompare(mValue, mMinimumValue)) - return; - - pen.setColor(mProgressColor); - painter->setPen(pen); - - int currentAngle = ((mValue - mMinimumValue) / (mMaximumValue - mMinimumValue)) * maximumAngle; - - painter->drawArc(indicatorRect, minimumAngle, currentAngle); -} diff --git a/doc/src/snippets/qtcluster/circularindicator.h b/doc/src/snippets/qtcluster/circularindicator.h deleted file mode 100644 index d8b0a83f..00000000 --- a/doc/src/snippets/qtcluster/circularindicator.h +++ /dev/null @@ -1,121 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 CIRCULARINDICATOR_H -#define CIRCULARINDICATOR_H - -#include <QQuickPaintedItem> -#include <QPainter> - -class CircularIndicator : public QQuickPaintedItem -{ - Q_OBJECT - Q_PROPERTY(int startAngle READ startAngle WRITE setStartAngle NOTIFY startAngleChanged) - Q_PROPERTY(int endAngle READ endAngle WRITE setEndAngle NOTIFY endAngleChanged) - Q_PROPERTY(qreal minimumValue READ minimumValue WRITE setMinimumValue NOTIFY minimumValueChanged) - Q_PROPERTY(qreal maximumValue READ maximumValue WRITE setMaximumValue NOTIFY maximumValueChanged) - Q_PROPERTY(qreal value READ value WRITE setValue NOTIFY valueChanged) - Q_PROPERTY(int lineWidth READ lineWidth WRITE setLineWidth NOTIFY lineWidthChanged) - Q_PROPERTY(QColor progressColor READ progressColor WRITE setProgressColor NOTIFY progressColorChanged) - Q_PROPERTY(QColor backgroundColor READ backgroundColor WRITE setBackgroundColor NOTIFY backgroundColorChanged) - Q_PROPERTY(int padding READ padding WRITE setPadding NOTIFY paddingChanged) - -public: - CircularIndicator(QQuickItem *parent = 0); - ~CircularIndicator(); - - int startAngle() const; - int endAngle() const; - qreal minimumValue() const; - qreal maximumValue() const; - qreal value() const; - int lineWidth() const; - QColor progressColor() const; - QColor backgroundColor() const; - int padding() const; - -public slots: - void setStartAngle(int angle); - void setEndAngle(int angle); - void setMinimumValue(qreal value); - void setMaximumValue(qreal value); - void setValue(qreal value); - void setLineWidth(int width); - void setProgressColor(QColor color); - void setBackgroundColor(QColor color); - void setPadding(int padding); - -signals: - void startAngleChanged(int); - void endAngleChanged(int); - void minimumValueChanged(qreal); - void maximumValueChanged(qreal); - void valueChanged(qreal); - void lineWidthChanged(int); - void progressColorChanged(QColor); - void backgroundColorChanged(QColor); - void paddingChanged(int); - -protected: - void paint(QPainter *painter); - -private: - int mStartAngle; - int mEndAngle; - qreal mMinimumValue; - qreal mMaximumValue; - qreal mValue; - int mLineWidth; - QColor mProgressColor; - QColor mBackgroundColor; - int mPadding; -}; - -#endif // CIRCULARINDICATOR_H diff --git a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/ValueSource.qml b/doc/src/snippets/qtcluster/designerImports/ClusterDemo/ValueSource.qml deleted file mode 100644 index 40286067..00000000 --- a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/ValueSource.qml +++ /dev/null @@ -1,101 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -pragma Singleton -import QtQuick 2.6 - -Item { - id: valueSource - - property real kph: 30 - property real consumeKW: 0 - property real maxConsumeKWValue: 90 - property real maxChargeKWValue: 40 - property real chargeKW: 10 - property real maxRange: 600 - property real range: (batteryLevel / 100) * maxRange - - property bool runningInDesigner: true - - property var consumption: [300, 600, 700, 800, 900, 700, 600, 300, 50, 50, -100, 50, -100, -150, - -200, 50, 150, 200, 300, 200, 300, 200, 500, 50, -100, -100, -150, -80, 50, 300, 600, 700, 800, - 600, 700, 300, 50, 50] - - property var turnSignal - property var currentDate: new Date() - //property string date: currentDate.toLocaleDateString(Qt.locale("fi_FI"), "ddd d. MMM") - //property string time: currentDate.toLocaleTimeString(Qt.locale("fi_FI"), "hh:mm") - property string date: currentDate.toLocaleDateString(Qt.locale("en_GB")) - property string time: currentDate.toLocaleTimeString(Qt.locale("en_GB"), "hh:mm") - - property real latitude: 0 - property real longitude: 0 - property real direction: 0 - property bool lowBeam: false - property int carId: 4 - property bool lightFailure: true - property bool flatTire: false - - property bool frontLeftOpen: false - property bool frontRightOpen: true - property bool rearLeftDoorOpen: false - property bool rearRighDoorOpen: true - property bool hoodOpen: false - property bool trunkOpen: true - - property double batteryLevel: 45 - property double fuelLevel: 55 - property int gear: -1 - property bool parkingBrake: true - // TODO: These two are hacks. View change messages might not come through CAN. - property bool viewChange: false - property bool rightViewChange: false - property string gearString: "1" - - property int rpm: 1450 - property double engineTemperature: 40 - - property int totalDistance: 42300 - property int kmSinceCharge: 8 - property int avRangePerCharge: 425 - property int energyPerKm: 324 - - property real totalDistanceSince: 10 -} diff --git a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.cpp b/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.cpp deleted file mode 100644 index efc953b4..00000000 --- a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.cpp +++ /dev/null @@ -1,71 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the plugins of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or (at your option) the GNU General -** Public license version 3 or any later version approved by the KDE Free -** Qt Foundation. The licenses are as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-2.0.html and -** https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "../../etcprovider.h" -#include "../../circularindicator.h" -#include "../../gauge.h" - -#include <QtQml/qqmlextensionplugin.h> - -#include <QDebug> - -class ClusterDemoPlugin : public QQmlExtensionPlugin -{ - Q_OBJECT - - Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) -public: - ClusterDemoPlugin(QObject *parent = 0) : QQmlExtensionPlugin(parent) {} - void registerTypes(const char *) override - { - qmlRegisterType<CircularIndicator>("ClusterDemo", 1, 0, "CircularIndicator"); - qmlRegisterType<Gauge>("ClusterDemo", 1, 0, "GaugeFiller"); - qmlRegisterSingletonType(QUrl("qrc:/ValueSource.qml"), "ClusterDemo", 1, 0, "ValueSource"); - } - - void initializeEngine(QQmlEngine *engine, const char *uri) override - { - EtcProvider *etcProvider = new EtcProvider(); - etcProvider->setBaseUrl(QUrl("qrc:///images/")); - engine->addImageProvider("etc", etcProvider); - QQmlExtensionPlugin::initializeEngine(engine, uri); - } -}; - -#include "plugin.moc" diff --git a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.pro b/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.pro deleted file mode 100644 index ab910650..00000000 --- a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.pro +++ /dev/null @@ -1,40 +0,0 @@ -CXX_MODULE = qml -TARGET = clusterdemo -QT += qml quick -TEMPLATE = lib -CONFIG -= debug -CONFIG += release -DESTDIR = $$PWD -TARGET = $$qtLibraryTarget($$TARGET) - -OUT_PWD = $$PWD - -SOURCES += \ - plugin.cpp \ - ../../etcprovider.cpp \ - ../../circularindicator.cpp \ - ../../gauge.cpp \ - ../../gaugenode.cpp - -HEADERS += \ - ../../etcprovider.h \ - ../../circularindicator.h \ - ../../gauge.h \ - ../../gaugenode.h - -RESOURCES += plugin.qrc \ - ../../images.qrc \ - ../../sportsimages.qrc \ - ../../hybridimages.qrc - - -DISTFILES = qmldir - -!equals(_PRO_FILE_PWD_, $$OUT_PWD) { - copy_qmldir.target = $$OUT_PWD/qmldir - copy_qmldir.depends = $$_PRO_FILE_PWD_/qmldir - copy_qmldir.commands = $(COPY_FILE) \"$$replace(copy_qmldir.depends, /, $$QMAKE_DIR_SEP)\" \"$$replace(copy_qmldir.target, /, $$QMAKE_DIR_SEP)\" - QMAKE_EXTRA_TARGETS += copy_qmldir - PRE_TARGETDEPS += $$copy_qmldir.target -} - diff --git a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.qrc b/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.qrc deleted file mode 100644 index ef65b52d..00000000 --- a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/plugin.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>ValueSource.qml</file> - </qresource> -</RCC> diff --git a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/qmldir b/doc/src/snippets/qtcluster/designerImports/ClusterDemo/qmldir deleted file mode 100644 index 7b370ff0..00000000 --- a/doc/src/snippets/qtcluster/designerImports/ClusterDemo/qmldir +++ /dev/null @@ -1,3 +0,0 @@ -module ClusterDemo -plugin clusterdemo -singleton ValueSource 1.0 ValueSource.qml diff --git a/doc/src/snippets/qtcluster/etcprovider.cpp b/doc/src/snippets/qtcluster/etcprovider.cpp deleted file mode 100644 index 38ca5b93..00000000 --- a/doc/src/snippets/qtcluster/etcprovider.cpp +++ /dev/null @@ -1,76 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 "etcprovider.h" - -#include <QFile> -#include <QDebug> -#include <qopenglfunctions.h> -#include <qqmlfile.h> - -QImage EtcProvider::requestImage(const QString &id, QSize *size, const QSize &requestedSize) -{ - Q_UNUSED(requestedSize); - QImage ret; - - QUrl url = QUrl(id); - if (url.isRelative() && !m_baseUrl.isEmpty()) - url = m_baseUrl.resolved(url); - QString path = QQmlFile::urlToLocalFileOrQrc(url); - ret.load(path); - *size = ret.size(); - - return ret; -} - -void EtcProvider::setBaseUrl(const QUrl &base) -{ - m_baseUrl = base; -} diff --git a/doc/src/snippets/qtcluster/etcprovider.h b/doc/src/snippets/qtcluster/etcprovider.h deleted file mode 100644 index 965bc9fc..00000000 --- a/doc/src/snippets/qtcluster/etcprovider.h +++ /dev/null @@ -1,55 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the demonstration applications of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL21$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef ETCPROVIDER_H -#define ETCPROVIDER_H - -#include <qopengl.h> -#include <QQuickImageProvider> -#include <QtQuick/QSGTexture> -#include <QUrl> - -class EtcProvider : public QQuickImageProvider -{ -public: - EtcProvider() : QQuickImageProvider(QQuickImageProvider::Image) - {} - - QImage requestImage(const QString &id, QSize *size, const QSize &requestedSize); - void setBaseUrl(const QUrl &base); - -private: - QUrl m_baseUrl; -}; - -#endif // ETCPROVIDER_H diff --git a/doc/src/snippets/qtcluster/gauge.cpp b/doc/src/snippets/qtcluster/gauge.cpp deleted file mode 100644 index e552456d..00000000 --- a/doc/src/snippets/qtcluster/gauge.cpp +++ /dev/null @@ -1,286 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 "gauge.h" -#include "gaugenode.h" - -#include <QtQuick/qsgnode.h> -#include <QtQuick/qsgflatcolormaterial.h> -#include <QtMath> - -Gauge::Gauge(QQuickItem *parent) - : QQuickItem(parent) - , m_value(0) - , m_angle(0) - , m_numVertices(128) - , m_fillWidth(10) - , m_radius(0) - , m_updateGeometry(true) - , m_lefttoright(true) - , m_minAngle(0) - , m_maxAngle(270) - , m_minValue(0) - , m_maxValue(240) - , m_doNotFill(false) - , m_color(QColor(255, 0, 0)) - , arc_length(0) - , arc_dist_per_vertices(0) - , frontCutDeg(0.0) - , backCutDeg(0.0) - , frontCutRad(0.0) - , backCutRad(0.0) - , m_cutRad(0) -{ - setFlag(ItemHasContents, true); -} - -Gauge::~Gauge() -{ -} - -void Gauge::setValue(qreal value) -{ - if (m_value == value) - return; - - m_value = value; - updateValue(); - - emit valueChanged(value); - update(); -} - -void Gauge::setNumVertices(int numVertices) -{ - if (m_numVertices == numVertices) - return; - - m_numVertices = numVertices; - emit numVerticesChanged(numVertices); - update(); -} - -void Gauge::setFillWidth(double fillWidth) -{ - if (m_fillWidth == fillWidth) - return; - - m_fillWidth = fillWidth; - emit fillWidthChanged(m_fillWidth); - update(); -} - -void Gauge::setRadius(int radius) -{ - if (m_radius == radius) - return; - - m_radius = radius; - emit radiusChanged(m_radius); - update(); -} - -void Gauge::setMinAngle(double minAngle) -{ - if (m_minAngle == minAngle) - return; - - m_minAngle = minAngle; - - backCutDeg = m_minAngle; - backCutRad = qDegreesToRadians(backCutDeg); - - if (m_minAngle < m_maxAngle) - m_lefttoright = true; - else - m_lefttoright = false; - - updateValue(); - - emit minAngleChanged(m_minAngle); - update(); -} - -void Gauge::setMaxAngle(double maxAngle) -{ - if (m_maxAngle == maxAngle) - return; - - m_maxAngle = maxAngle; - - if (m_minAngle < m_maxAngle) - m_lefttoright = true; - else - m_lefttoright = false; - - updateValue(); - emit maxAngleChanged(m_maxAngle); - update(); -} - -void Gauge::setMinValue(double minValue) -{ - if (m_minValue == minValue) - return; - - m_minValue = minValue; - emit minValueChanged(m_minValue); - update(); -} - -void Gauge::setMaxValue(double maxValue) -{ - if (m_maxValue == maxValue) - return; - - m_maxValue = maxValue; - emit maxValueChanged(m_maxValue); - update(); -} - -void Gauge::setDoNotFill(bool doNotFill) -{ - if (m_doNotFill == doNotFill) - return; - - m_doNotFill = doNotFill; - emit doNotFillChanged(m_doNotFill); - update(); -} - -void Gauge::setColor(QColor color) -{ - if (m_color == color) - return; - - m_color = color; - emit colorChanged(m_color); - update(); -} - -void Gauge::setUpdateGeometry(bool updateGeometry) -{ - if (m_updateGeometry == updateGeometry) - return; - m_updateGeometry = updateGeometry; - - if (m_updateGeometry) - calcArc(); - else - m_cutRad = calcValueAsRad(m_value); - - update(); -} - -float Gauge::calcValueAsRad(qreal value) -{ - return qDegreesToRadians((m_minAngle + ((m_maxAngle - m_minAngle) / (m_maxValue - m_minValue)) - * (value - m_minValue)) - 180.); -} - -void Gauge::updateValue() -{ - if (m_updateGeometry) - calcArc(); - else - m_cutRad = calcValueAsRad(m_value); -} - -void Gauge::calcArc() -{ - backCutDeg = m_minAngle; - backCutRad = qDegreesToRadians(backCutDeg - 270); - - if (m_updateGeometry) { - m_angle = ((m_maxAngle - m_minAngle) / (m_maxValue - m_minValue)) - * (m_value - m_minValue); - } else { - m_angle = ((m_maxAngle - m_minAngle) / (m_maxValue - m_minValue)) - * (m_maxValue - m_minValue); - } - - arc_length = qDegreesToRadians(m_angle); - arc_dist_per_vertices = arc_length / m_numVertices; - - emit angleChanged(m_angle); -} - -QSGNode *Gauge::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *) -{ - GaugeNode *n = static_cast<GaugeNode *>(oldNode); - - if (!n) - n = new GaugeNode(m_numVertices, m_color, m_doNotFill); - - n->setLeftToRight(m_lefttoright); - n->setColor(m_color); - n->setBoundingRect(boundingRect()); - n->setUpdateGeometry(m_updateGeometry); - n->setDoNotFill(m_doNotFill); - n->setBackCutRad(backCutRad); - n->setRadius(m_radius); - n->setArcDistPerVert(arc_dist_per_vertices); - n->setNumVertices(m_numVertices); - n->setFillWidth(m_fillWidth); - if (!m_updateGeometry) - n->setCutRad(m_cutRad); - n->draw(); - return n; -} - -void Gauge::geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry) -{ - QQuickItem::geometryChanged(newGeometry, oldGeometry); - if (m_radius == 0) - setRadius(newGeometry.height() * 0.5); - - calcArc(); - update(); -} diff --git a/doc/src/snippets/qtcluster/gauge.h b/doc/src/snippets/qtcluster/gauge.h deleted file mode 100644 index 97485638..00000000 --- a/doc/src/snippets/qtcluster/gauge.h +++ /dev/null @@ -1,161 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 GAUGE_H -#define GAUGE_H - -#include <QQuickItem> -#include <QColor> - -class Gauge : public QQuickItem -{ - Q_OBJECT - - Q_PROPERTY(qreal value READ value WRITE setValue NOTIFY valueChanged) - Q_PROPERTY(qreal angle READ angle NOTIFY angleChanged) - Q_PROPERTY(int numVertices READ numVertices WRITE setNumVertices NOTIFY numVerticesChanged) - - Q_PROPERTY(bool updateGeometry READ updateGeometry WRITE setUpdateGeometry NOTIFY updateGeometryChanged) - Q_PROPERTY(double fillWidth READ fillWidth WRITE setFillWidth NOTIFY fillWidthChanged) - Q_PROPERTY(int radius READ radius WRITE setRadius NOTIFY radiusChanged) - - Q_PROPERTY(double minAngle READ minAngle WRITE setMinAngle NOTIFY minAngleChanged) - Q_PROPERTY(double maxAngle READ maxAngle WRITE setMaxAngle NOTIFY maxAngleChanged) - - Q_PROPERTY(double minValue READ minValue WRITE setMinValue NOTIFY minValueChanged) - Q_PROPERTY(double maxValue READ maxValue WRITE setMaxValue NOTIFY maxValueChanged) - - Q_PROPERTY(bool doNotFill READ doNotFill WRITE setDoNotFill NOTIFY doNotFillChanged) - Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) - -public: - Gauge(QQuickItem *parent = 0); - ~Gauge(); - - QSGNode *updatePaintNode(QSGNode *, UpdatePaintNodeData *); - void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry); - - qreal value() const { return m_value; } - qreal angle() const { return m_angle; } - bool updateGeometry() const { return m_updateGeometry; } - int numVertices() const { return m_numVertices; } - double fillWidth() const { return m_fillWidth; } - int radius() const { return m_radius; } - double minAngle() const { return m_minAngle; } - double maxAngle() const { return m_maxAngle; } - double minValue() const { return m_minValue; } - double maxValue() const { return m_maxValue; } - bool doNotFill() const { return m_doNotFill; } - QColor color() const { return m_color; } - - void setValue(qreal value); - void setNumVertices(int numVertices); - void setFillWidth(double fillWidth); - void setRadius(int radius); - void setMinAngle(double minAngle); - void setMaxAngle(double maxAngle); - void setMinValue(double minValue); - void setMaxValue(double maxValue); - void setDoNotFill(bool doNotFill); - void setColor(QColor color); - void setUpdateGeometry(bool updateGeometry); - -signals: - void valueChanged(qreal value); - void angleChanged(qreal angle); - void numVerticesChanged(int numVertices); - void fillWidthChanged(double fillWidth); - void radiusChanged(int radius); - void minAngleChanged(double minAngle); - void maxAngleChanged(double maxAngle); - void minValueChanged(double minValue); - void maxValueChanged(double maxValue); - void doNotFillChanged(bool doNotFill); - void colorChanged(QColor color); - void updateGeometryChanged(bool updateGeometry); - -public slots: - -private: - void calcArc(); - float calcValueAsRad(qreal value); - void updateValue(); - -private: - qreal m_value; - double m_angle; - int m_numVertices; - double m_fillWidth; - int m_radius; - bool m_updateGeometry; - bool m_lefttoright; - - double m_minAngle; - double m_maxAngle; - double m_minValue; - double m_maxValue; - - bool m_doNotFill; - QColor m_color; - - //Internal - double arc_length; - double arc_dist_per_vertices; - - double frontCutDeg; - double backCutDeg; - - double frontCutRad; - double backCutRad; - - float m_cutRad; -}; - -#endif // GAUGE_H diff --git a/doc/src/snippets/qtcluster/gaugenode.cpp b/doc/src/snippets/qtcluster/gaugenode.cpp deleted file mode 100644 index a4470244..00000000 --- a/doc/src/snippets/qtcluster/gaugenode.cpp +++ /dev/null @@ -1,328 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 "gaugenode.h" - -#include <QtQuick/qsgnode.h> -#include <QtQuick/qsgflatcolormaterial.h> -#include <QtMath> - -#define EXTRAVERTICES 3 - -GaugeNode::GaugeNode(const int &numVertices, const QColor &color = QColor(255, 0, 0), - const bool &doNotFill = false) - : QSGGeometryNode() - //Could be optimized more. If only geometry update used we do not need to map textured points. - //, m_geometry(QSGGeometry::defaultAttributes_Point2D(), numVertices+EXTRAVERTICES) - , m_geometry(QSGGeometry::defaultAttributes_TexturedPoint2D(), numVertices+EXTRAVERTICES) - , m_material(nullptr) - , m_numVertices(numVertices) - , m_doNotFill(doNotFill) - , m_color(color) - , m_cutRad(0.0) - , m_updateGeometry(true) - , m_lefttoright(true) - , m_dirtyBits(0) -{ - initGeometry(); -} - -GaugeNode::~GaugeNode() -{ - if (m_material) - delete m_material; -} - -void GaugeNode::setColor(const QColor &color) -{ - if (m_color == color) - return; - m_color = color; - m_dirtyBits |= QSGNode::DirtyMaterial; -} - -void GaugeNode::setCutRad(const float &cutRad) -{ - if (m_cutRad == cutRad) - return; - - m_cutRad = cutRad; - if (!m_updateGeometry) - m_dirtyBits |= QSGNode::DirtyMaterial; -} - -void GaugeNode::setDoNotFill(const bool &doNotFill) -{ - if (m_doNotFill == doNotFill) - return; - - m_doNotFill = doNotFill; - - if (m_doNotFill) - m_geometry.setDrawingMode(GL_LINE_STRIP); - else - m_geometry.setDrawingMode(GL_TRIANGLE_STRIP); - - m_dirtyBits |= QSGNode::DirtyGeometry; -} - -void GaugeNode::setBackCutRad(const double &backCutRad) -{ - if (backCutRad == m_backCutRad) - return; - - m_backCutRad = backCutRad; - m_dirtyBits |= QSGNode::DirtyGeometry; -} - -void GaugeNode::setRadius(const double &radius) -{ - if (m_radius == radius) - return; - - m_radius = radius; - m_dirtyBits |= QSGNode::DirtyGeometry; -} - -void GaugeNode::setArcDistPerVert(const double &dist) -{ - if (dist == m_arc_dist_per_vertices) - return; - m_arc_dist_per_vertices = dist; - m_dirtyBits |= QSGNode::DirtyGeometry; -} - -void GaugeNode::setNumVertices(const int &numVertices) -{ - if (numVertices == m_numVertices) - return; - - m_numVertices = numVertices; - m_geometry.allocate(m_numVertices + 3); - m_dirtyBits |= QSGNode::DirtyGeometry; -} - -void GaugeNode::setFillWidth(const double &fillWidth) -{ - if (m_fillWidth == fillWidth) - return; - - m_fillWidth = fillWidth; - m_dirtyBits |= QSGNode::DirtyGeometry; -} - -void GaugeNode::setBoundingRect(const QRectF &rect) -{ - if (rect.width() == m_width && rect.height() == m_height) - return; - - m_height = rect.height(); - m_width = rect.width(); - setCenterPoint(rect.center()); - m_dirtyBits |= QSGNode::DirtyGeometry; -} - -void GaugeNode::setCenterPoint(const QPointF ¢er) -{ - m_center_x = center.x(); - m_center_y = center.y(); -} - -void GaugeNode::setUpdateGeometry(const bool &updateGeometry) -{ - if (m_updateGeometry == updateGeometry) - return; - - m_updateGeometry = updateGeometry; - - if (m_material) - delete m_material; - - if (m_updateGeometry) { - QSGFlatColorMaterial *material = new QSGFlatColorMaterial; - m_material = static_cast<QSGMaterial *>(material); - material->setColor(m_color); - setMaterial(m_material); - } else { - QSGSimpleMaterial<GaugeState> *material = GaugeShader::createMaterial(); - m_material = static_cast<QSGMaterial *>(material); - material->state()->color = m_color; - material->state()->cutRad = m_cutRad; - material->state()->leftToRight = m_lefttoright; - material->setFlag(QSGMaterial::Blending); - setMaterial(m_material); - } - m_dirtyBits |= QSGNode::DirtyMaterial; -} - -void GaugeNode::setLeftToRight(const bool <r) -{ - if (m_lefttoright == ltr) - return; - - m_lefttoright = ltr; - m_dirtyBits |= QSGNode::DirtyMaterial; -} - -void GaugeNode::drawGeometryTexturePoint2D() -{ - QSGGeometry::TexturedPoint2D *vertices = m_geometry.vertexDataAsTexturedPoint2D(); - - double current_angle_rad = 0.0; - double currentRadius = m_radius; - double d_arc_point_x = m_center_x + (currentRadius - m_fillWidth) * cos(m_backCutRad); - double d_arc_point_y = m_center_y + (currentRadius - m_fillWidth) * sin(m_backCutRad); - - vertices[0].set(d_arc_point_x, d_arc_point_y, - d_arc_point_x / m_width, d_arc_point_y / m_height); - d_arc_point_x = m_center_x + currentRadius * cos(m_backCutRad); - d_arc_point_y = m_center_y + currentRadius * sin(m_backCutRad); - vertices[1].set(d_arc_point_x, d_arc_point_y, - d_arc_point_x / m_width, d_arc_point_y / m_height); - d_arc_point_x = 0; - d_arc_point_y = 0; - - for (int i = 0; i < m_numVertices; ++i) { - current_angle_rad = m_backCutRad + i * m_arc_dist_per_vertices + m_arc_dist_per_vertices; - - if (i % 2 == 0) - currentRadius -= m_fillWidth; - else - currentRadius += m_fillWidth; - - d_arc_point_x = m_center_x + currentRadius * cos(current_angle_rad); - d_arc_point_y = m_center_y + currentRadius * sin(current_angle_rad); - vertices[i + 2].set(d_arc_point_x, d_arc_point_y, - d_arc_point_x / m_width, d_arc_point_y / m_height); - } - d_arc_point_x = m_center_x + (currentRadius - m_fillWidth) * cos(current_angle_rad); - d_arc_point_y = m_center_y + (currentRadius - m_fillWidth) * sin(current_angle_rad); - - vertices[m_numVertices + 2].set(d_arc_point_x, d_arc_point_y, - d_arc_point_x / m_width, d_arc_point_y / m_height); -} - -void GaugeNode::drawMaterial() -{ - if (m_updateGeometry) { - static_cast<QSGFlatColorMaterial *>(m_material)->setColor(m_color); - } else { - GaugeState *s = static_cast<QSGSimpleMaterial<GaugeState> *>(m_material)->state(); - s->color = m_color; - s->cutRad = m_cutRad; - s->leftToRight = m_lefttoright; - } -} - -void GaugeNode::draw() -{ - if (m_dirtyBits == 0) - return; - - if (m_dirtyBits.testFlag(QSGNode::DirtyGeometry)) - drawGeometryTexturePoint2D(); - if (m_dirtyBits.testFlag(QSGNode::DirtyMaterial)) - drawMaterial(); - - markDirty(m_dirtyBits); - m_dirtyBits = 0; -} - -//Could be used to optimize vertices if only geometry is changed -void GaugeNode::drawGeometry() -{ - QSGGeometry::Point2D *vertices = m_geometry.vertexDataAsPoint2D(); - - double d_arc_point_x = 0.0; - double d_arc_point_y = 0.0; - double current_angle_rad = 0.0; - double currentRadius = m_radius; - - vertices[0].set(m_center_x + (currentRadius - m_fillWidth) * cos(m_backCutRad), m_center_y - + (currentRadius - m_fillWidth) * sin(m_backCutRad)); - vertices[1].set(m_center_x + currentRadius * cos(m_backCutRad), m_center_y - + currentRadius * sin(m_backCutRad)); - - for (int i = 0; i < m_numVertices; ++i) { - current_angle_rad = m_backCutRad + i * m_arc_dist_per_vertices + m_arc_dist_per_vertices; - - if (i % 2 == 0) - currentRadius -= m_fillWidth; - else - currentRadius += m_fillWidth; - - d_arc_point_x = m_center_x + currentRadius * cos(current_angle_rad); - d_arc_point_y = m_center_y + currentRadius * sin(current_angle_rad); - vertices[i + 2].set(d_arc_point_x, d_arc_point_y); - } - - vertices[m_numVertices + 2].set(m_center_x + (currentRadius - m_fillWidth) - * cos(current_angle_rad), m_center_y - + (currentRadius - m_fillWidth) * sin(current_angle_rad)); - - markDirty(QSGNode::DirtyGeometry | QSGNode::DirtyMaterial); -} - -void GaugeNode::initGeometry() -{ - m_geometry.setLineWidth(1); - if (m_doNotFill) - m_geometry.setDrawingMode(GL_LINE_STRIP); - else - m_geometry.setDrawingMode(GL_TRIANGLE_STRIP); - - setGeometry(&m_geometry); - - QSGFlatColorMaterial *material = new QSGFlatColorMaterial; - material->setColor(m_color); - - m_material = static_cast<QSGMaterial *>(material); - setMaterial(m_material); -} diff --git a/doc/src/snippets/qtcluster/gaugenode.h b/doc/src/snippets/qtcluster/gaugenode.h deleted file mode 100644 index 057d8f22..00000000 --- a/doc/src/snippets/qtcluster/gaugenode.h +++ /dev/null @@ -1,186 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 GAUGENODE_H -#define GAUGENODE_H - -#include <QSGNode> -#include <QSGSimpleMaterial> -#include <QColor> - -struct GaugeState -{ - QColor color; - GLfloat cutRad; - bool leftToRight; - - int compare(const GaugeState *other) const - { - const unsigned int c = color.rgba(); - const unsigned int co = other->color.rgba(); - return std::tie(c, cutRad) > std::tie(co, other->cutRad); - } -}; - -class GaugeShader : public QSGSimpleMaterialShader<GaugeState> -{ - QSG_DECLARE_SIMPLE_COMPARABLE_SHADER(GaugeShader, GaugeState) - -public: - const char *vertexShader() const { - return - "attribute highp vec4 aVertex; \n" - "attribute highp vec2 aTexCoord; \n" - "uniform highp mat4 qt_Matrix; \n" - "varying highp vec2 texCoord; \n" - "void main() { \n" - " gl_Position = qt_Matrix * aVertex; \n" - " texCoord = aTexCoord; \n" - "}"; - } - - const char *fragmentShader() const { - return - "uniform lowp float qt_Opacity; \n" - "uniform lowp vec4 color; \n" - "uniform highp float cutRad; \n" - "uniform lowp bool leftToRight; \n" - "varying highp vec2 texCoord; \n" - "void main() {\n" - " highp vec2 uv = vec2(.5 - texCoord.y, .5 - texCoord.x);\n" - " if (leftToRight ? (-atan(uv.y,uv.x) < cutRad) : (-atan(uv.y,uv.x) > cutRad)) {\n" - " gl_FragColor = color * qt_Opacity;\n" - " } else {\n" -//debug color " gl_FragColor = vec4(0.,1.,0.,1.0);\n" - " gl_FragColor = vec4(0.,0.,0.,0.);\n" - " } \n" - "}\n"; - } - - QList<QByteArray> attributes() const - { - return QList<QByteArray>() << "aVertex" << "aTexCoord"; - } - - void updateState(const GaugeState *state, const GaugeState *) - { - program()->setUniformValue(id_color, state->color); - program()->setUniformValue(id_cutRad, state->cutRad); - program()->setUniformValue(id_leftToRight, state->leftToRight); - } - - void resolveUniforms() - { - id_color = program()->uniformLocation("color"); - id_cutRad = program()->uniformLocation("cutRad"); - id_leftToRight = program()->uniformLocation("leftToRight"); - } - -private: - int id_color; - int id_cutRad; - int id_leftToRight; -}; - -class GaugeNode : public QSGGeometryNode -{ -public: - GaugeNode(const int &numVertices, const QColor &color, const bool &doNotFill); - ~GaugeNode(); - - void setColor(const QColor &color); - void setCutRad(const float &cutRad); - - void setDoNotFill(const bool &doNotFill); - - void setBackCutRad(const double &backCutRad); - void setRadius(const double &radius); - void setArcDistPerVert(const double &dist); - void setNumVertices(const int &numVertices); - - void setFillWidth(const double &fillWidth); - void setBoundingRect(const QRectF &rect); - void setUpdateGeometry(const bool &updateGeometry); - - void setLeftToRight(const bool <r); - - void draw(); - -private: - void initGeometry(); - void setCenterPoint(const QPointF ¢er); - - void drawGeometry(); - void drawGeometryTexturePoint2D(); - void drawMaterial(); - -private: - QSGGeometry m_geometry; - QSGMaterial *m_material; - int m_numVertices; - bool m_doNotFill; - QColor m_color; - float m_cutRad; - double m_radius; - bool m_updateGeometry; - bool m_lefttoright; - - qreal m_width; - qreal m_height; - double m_center_y; - double m_center_x; - double m_backCutRad; - double m_fillWidth; - double m_arc_dist_per_vertices; - - DirtyState m_dirtyBits; -}; - -#endif // GAUGENODE_H diff --git a/doc/src/snippets/qtcluster/hybridimages.qrc b/doc/src/snippets/qtcluster/hybridimages.qrc deleted file mode 100644 index 77e932a6..00000000 --- a/doc/src/snippets/qtcluster/hybridimages.qrc +++ /dev/null @@ -1,27 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>images/Built_with_Qt.png</file> - <file>images/BottomPanel.png</file> - <file>images/Cluster8Gauges.png</file> - <file>images/SpeedometerNeedle.png</file> - <file>images/jane.png</file> - <file>images/john.png</file> - <file>images/calendar.png</file> - <file>images/CarInfoIcon.png</file> - <file>images/contacts.png</file> - <file>images/cover.png</file> - <file>images/Icon_TurnLeft_OFF_small.png</file> - <file>images/Icon_TurnLeft_ON_small.png</file> - <file>images/greenglow.png</file> - <file>images/knob.png</file> - <file>images/knob_small.png</file> - <file>images/left.png</file> - <file>images/leftgauge.png</file> - <file>images/redglow.png</file> - <file>images/right.png</file> - <file>images/rightgauge.png</file> - <file>images/temperature.png</file> - <file>images/center.png</file> - <file>images/SpeedometerNeedleSmall.png</file> - </qresource> -</RCC> diff --git a/doc/src/snippets/qtcluster/hybridqml.qrc b/doc/src/snippets/qtcluster/hybridqml.qrc deleted file mode 100644 index bc82b018..00000000 --- a/doc/src/snippets/qtcluster/hybridqml.qrc +++ /dev/null @@ -1,26 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>qml/dash_hybrid/BottomPanel.ui.qml</file> - <file>qml/dash_hybrid/CenterView.qml</file> - <file>qml/dash_hybrid/Dashboard.qml</file> - <file>qml/dash_hybrid/DashboardFrame.qml</file> - <file>qml/dash_hybrid/DashboardView.qml</file> - <file>qml/dash_hybrid/gauges/FpsMeter.qml</file> - <file>qml/dash_hybrid/gauges/TemperatureMeter.qml</file> - <file>qml/dash_hybrid/gauges/TurboMeter.qml</file> - <file>qml/dash_hybrid/CenterViewCalendar.qml</file> - <file>qml/dash_hybrid/CenterViewCarInfo.qml</file> - <file>qml/dash_hybrid/CenterViewContacts.qml</file> - <file>qml/dash_hybrid/CenterViewMusic.qml</file> - <file>qml/dash_hybrid/CarInfoField.qml</file> - <file>qml/dash_hybrid/DashboardForm.ui.qml</file> - <file>qml/dash_hybrid/SafeRendererPicture.qml</file> - <file>qml/dash_hybrid/DashboardBackground.qml</file> - <file>qml/dash_hybrid/DashboardBackgroundForm.ui.qml</file> - <file>qml/dash_hybrid/Gadget.qml</file> - <file>qml/dash_hybrid/gauges/LargeMeter.qml</file> - <file>qml/dash_hybrid/gauges/SmallMeter.qml</file> - <file>qml/dash_hybrid/gauges/SpeedometerNumbers.qml</file> - <file>qml/dash_hybrid/gauges/NumberLabel.qml</file> - </qresource> -</RCC> diff --git a/doc/src/snippets/qtcluster/images.qrc b/doc/src/snippets/qtcluster/images.qrc deleted file mode 100644 index 2ec22400..00000000 --- a/doc/src/snippets/qtcluster/images.qrc +++ /dev/null @@ -1,14 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>images/Icon_TurnLeft_OFF.png</file> - <file>images/Icon_TurnLeft_ON.png</file> - <file>images/MapLocation.png</file> - <file>images/MusicPlayer_CircleRemaining.png</file> - <file>images/MusicPlayer_Cover.png</file> - <file>images/RearCameraOverlay.png</file> - <file>images/CarForParkSensors.png</file> - <file>images/ParkingSensorOff.png</file> - <file>images/InfoNoteBackground.png</file> - <file>images/RearCameraStill.jpg</file> - </qresource> -</RCC> diff --git a/doc/src/snippets/qtcluster/images/BottomPanel.png b/doc/src/snippets/qtcluster/images/BottomPanel.png Binary files differdeleted file mode 100644 index 5f6d92ca..00000000 --- a/doc/src/snippets/qtcluster/images/BottomPanel.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/Built_with_Qt.png b/doc/src/snippets/qtcluster/images/Built_with_Qt.png Binary files differdeleted file mode 100644 index 3dc5ed96..00000000 --- a/doc/src/snippets/qtcluster/images/Built_with_Qt.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/CarForParkSensors.png b/doc/src/snippets/qtcluster/images/CarForParkSensors.png Binary files differdeleted file mode 100644 index 048d9dd2..00000000 --- a/doc/src/snippets/qtcluster/images/CarForParkSensors.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/CarInfoIcon.png b/doc/src/snippets/qtcluster/images/CarInfoIcon.png Binary files differdeleted file mode 100644 index e715bec8..00000000 --- a/doc/src/snippets/qtcluster/images/CarInfoIcon.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/CentreMask.png b/doc/src/snippets/qtcluster/images/CentreMask.png Binary files differdeleted file mode 100644 index c6f0930e..00000000 --- a/doc/src/snippets/qtcluster/images/CentreMask.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/Cluster8Gauges.png b/doc/src/snippets/qtcluster/images/Cluster8Gauges.png Binary files differdeleted file mode 100644 index 710b0b5d..00000000 --- a/doc/src/snippets/qtcluster/images/Cluster8Gauges.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/DashboardFrameSport-mask.png b/doc/src/snippets/qtcluster/images/DashboardFrameSport-mask.png Binary files differdeleted file mode 100644 index 4a35421d..00000000 --- a/doc/src/snippets/qtcluster/images/DashboardFrameSport-mask.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/DashboardMask.png b/doc/src/snippets/qtcluster/images/DashboardMask.png Binary files differdeleted file mode 100644 index 79ac9f5c..00000000 --- a/doc/src/snippets/qtcluster/images/DashboardMask.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_CentreRingA.png b/doc/src/snippets/qtcluster/images/GaugeSpeedometer_CentreRingA.png Binary files differdeleted file mode 100644 index 660cb910..00000000 --- a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_CentreRingA.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_CentreRingB.png b/doc/src/snippets/qtcluster/images/GaugeSpeedometer_CentreRingB.png Binary files differdeleted file mode 100644 index e4d63a90..00000000 --- a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_CentreRingB.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_OuterRingA.png b/doc/src/snippets/qtcluster/images/GaugeSpeedometer_OuterRingA.png Binary files differdeleted file mode 100644 index 12ea250f..00000000 --- a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_OuterRingA.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_OuterRingB.png b/doc/src/snippets/qtcluster/images/GaugeSpeedometer_OuterRingB.png Binary files differdeleted file mode 100644 index 8e28f543..00000000 --- a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_OuterRingB.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_Ticks1.png b/doc/src/snippets/qtcluster/images/GaugeSpeedometer_Ticks1.png Binary files differdeleted file mode 100644 index 9f1b225b..00000000 --- a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_Ticks1.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_Ticks2.png b/doc/src/snippets/qtcluster/images/GaugeSpeedometer_Ticks2.png Binary files differdeleted file mode 100644 index a3049f8d..00000000 --- a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_Ticks2.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_TrailMask.png b/doc/src/snippets/qtcluster/images/GaugeSpeedometer_TrailMask.png Binary files differdeleted file mode 100644 index 0e34c521..00000000 --- a/doc/src/snippets/qtcluster/images/GaugeSpeedometer_TrailMask.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/Gauge_RPM.png b/doc/src/snippets/qtcluster/images/Gauge_RPM.png Binary files differdeleted file mode 100644 index 57629f04..00000000 --- a/doc/src/snippets/qtcluster/images/Gauge_RPM.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/Gauge_Speed.png b/doc/src/snippets/qtcluster/images/Gauge_Speed.png Binary files differdeleted file mode 100644 index 0ffd9cc3..00000000 --- a/doc/src/snippets/qtcluster/images/Gauge_Speed.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/Icon_TurnLeft_OFF.png b/doc/src/snippets/qtcluster/images/Icon_TurnLeft_OFF.png Binary files differdeleted file mode 100644 index b7383186..00000000 --- a/doc/src/snippets/qtcluster/images/Icon_TurnLeft_OFF.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/Icon_TurnLeft_OFF_small.png b/doc/src/snippets/qtcluster/images/Icon_TurnLeft_OFF_small.png Binary files differdeleted file mode 100644 index 5e01a9fd..00000000 --- a/doc/src/snippets/qtcluster/images/Icon_TurnLeft_OFF_small.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/Icon_TurnLeft_ON.png b/doc/src/snippets/qtcluster/images/Icon_TurnLeft_ON.png Binary files differdeleted file mode 100644 index 1d8bffb7..00000000 --- a/doc/src/snippets/qtcluster/images/Icon_TurnLeft_ON.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/Icon_TurnLeft_ON_small.png b/doc/src/snippets/qtcluster/images/Icon_TurnLeft_ON_small.png Binary files differdeleted file mode 100644 index 1a0bfa99..00000000 --- a/doc/src/snippets/qtcluster/images/Icon_TurnLeft_ON_small.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/InfoNoteBackground.png b/doc/src/snippets/qtcluster/images/InfoNoteBackground.png Binary files differdeleted file mode 100644 index a7706965..00000000 --- a/doc/src/snippets/qtcluster/images/InfoNoteBackground.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/MapLocation.png b/doc/src/snippets/qtcluster/images/MapLocation.png Binary files differdeleted file mode 100644 index 48a6bbb2..00000000 --- a/doc/src/snippets/qtcluster/images/MapLocation.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/MapLocationSport.png b/doc/src/snippets/qtcluster/images/MapLocationSport.png Binary files differdeleted file mode 100644 index 839cedb6..00000000 --- a/doc/src/snippets/qtcluster/images/MapLocationSport.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/MusicPlayer_CircleRemaining.png b/doc/src/snippets/qtcluster/images/MusicPlayer_CircleRemaining.png Binary files differdeleted file mode 100644 index 6cadbc17..00000000 --- a/doc/src/snippets/qtcluster/images/MusicPlayer_CircleRemaining.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/MusicPlayer_Cover.png b/doc/src/snippets/qtcluster/images/MusicPlayer_Cover.png Binary files differdeleted file mode 100644 index 458746ff..00000000 --- a/doc/src/snippets/qtcluster/images/MusicPlayer_Cover.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/ParkingSensorOff.png b/doc/src/snippets/qtcluster/images/ParkingSensorOff.png Binary files differdeleted file mode 100644 index 55b78e62..00000000 --- a/doc/src/snippets/qtcluster/images/ParkingSensorOff.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/RearCameraOverlay.png b/doc/src/snippets/qtcluster/images/RearCameraOverlay.png Binary files differdeleted file mode 100644 index b7a45881..00000000 --- a/doc/src/snippets/qtcluster/images/RearCameraOverlay.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/RearCameraOverlaySport.png b/doc/src/snippets/qtcluster/images/RearCameraOverlaySport.png Binary files differdeleted file mode 100644 index a9e0278a..00000000 --- a/doc/src/snippets/qtcluster/images/RearCameraOverlaySport.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/RearCameraStill.jpg b/doc/src/snippets/qtcluster/images/RearCameraStill.jpg Binary files differdeleted file mode 100644 index 357091c3..00000000 --- a/doc/src/snippets/qtcluster/images/RearCameraStill.jpg +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/SpeedometerNeedle.png b/doc/src/snippets/qtcluster/images/SpeedometerNeedle.png Binary files differdeleted file mode 100644 index 6310a37c..00000000 --- a/doc/src/snippets/qtcluster/images/SpeedometerNeedle.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/SpeedometerNeedleGreen.png b/doc/src/snippets/qtcluster/images/SpeedometerNeedleGreen.png Binary files differdeleted file mode 100644 index 2d8aba14..00000000 --- a/doc/src/snippets/qtcluster/images/SpeedometerNeedleGreen.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/SpeedometerNeedleSmall.png b/doc/src/snippets/qtcluster/images/SpeedometerNeedleSmall.png Binary files differdeleted file mode 100644 index 1ba484f5..00000000 --- a/doc/src/snippets/qtcluster/images/SpeedometerNeedleSmall.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/SportCarFloorShadow.png b/doc/src/snippets/qtcluster/images/SportCarFloorShadow.png Binary files differdeleted file mode 100644 index 8a8cb333..00000000 --- a/doc/src/snippets/qtcluster/images/SportCarFloorShadow.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/SportCarForParkSensors.png b/doc/src/snippets/qtcluster/images/SportCarForParkSensors.png Binary files differdeleted file mode 100644 index 5e50bcb5..00000000 --- a/doc/src/snippets/qtcluster/images/SportCarForParkSensors.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/calendar.png b/doc/src/snippets/qtcluster/images/calendar.png Binary files differdeleted file mode 100644 index 5608178e..00000000 --- a/doc/src/snippets/qtcluster/images/calendar.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/center.png b/doc/src/snippets/qtcluster/images/center.png Binary files differdeleted file mode 100644 index 7a10220a..00000000 --- a/doc/src/snippets/qtcluster/images/center.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/contacts.png b/doc/src/snippets/qtcluster/images/contacts.png Binary files differdeleted file mode 100644 index 58c7f3a5..00000000 --- a/doc/src/snippets/qtcluster/images/contacts.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/convert_premultiplied_alpha.sh b/doc/src/snippets/qtcluster/images/convert_premultiplied_alpha.sh deleted file mode 100644 index c459a277..00000000 --- a/doc/src/snippets/qtcluster/images/convert_premultiplied_alpha.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -while read -r line || [[ -n "$line" ]]; do - echo "Text: $line"; - convert $line -write mpr:temp -background black -alpha Remove mpr:temp -compose Copy_Opacity -composite ../images-premultiplied-alpha/$line -done < "$1" diff --git a/doc/src/snippets/qtcluster/images/cover.png b/doc/src/snippets/qtcluster/images/cover.png Binary files differdeleted file mode 100644 index d42292dd..00000000 --- a/doc/src/snippets/qtcluster/images/cover.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/greenglow.png b/doc/src/snippets/qtcluster/images/greenglow.png Binary files differdeleted file mode 100644 index 84d4dda6..00000000 --- a/doc/src/snippets/qtcluster/images/greenglow.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/jane.png b/doc/src/snippets/qtcluster/images/jane.png Binary files differdeleted file mode 100644 index 3fa7d73a..00000000 --- a/doc/src/snippets/qtcluster/images/jane.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/john.png b/doc/src/snippets/qtcluster/images/john.png Binary files differdeleted file mode 100644 index cdf0b181..00000000 --- a/doc/src/snippets/qtcluster/images/john.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/knob.png b/doc/src/snippets/qtcluster/images/knob.png Binary files differdeleted file mode 100644 index 7de0ea73..00000000 --- a/doc/src/snippets/qtcluster/images/knob.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/knob_small.png b/doc/src/snippets/qtcluster/images/knob_small.png Binary files differdeleted file mode 100644 index 6afa72dd..00000000 --- a/doc/src/snippets/qtcluster/images/knob_small.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/left.png b/doc/src/snippets/qtcluster/images/left.png Binary files differdeleted file mode 100644 index 65606758..00000000 --- a/doc/src/snippets/qtcluster/images/left.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/leftgauge.png b/doc/src/snippets/qtcluster/images/leftgauge.png Binary files differdeleted file mode 100644 index 3bd6bb53..00000000 --- a/doc/src/snippets/qtcluster/images/leftgauge.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/redglow.png b/doc/src/snippets/qtcluster/images/redglow.png Binary files differdeleted file mode 100644 index e1843d9c..00000000 --- a/doc/src/snippets/qtcluster/images/redglow.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/right.png b/doc/src/snippets/qtcluster/images/right.png Binary files differdeleted file mode 100644 index 99e7a042..00000000 --- a/doc/src/snippets/qtcluster/images/right.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/rightgauge.png b/doc/src/snippets/qtcluster/images/rightgauge.png Binary files differdeleted file mode 100644 index 17e849f5..00000000 --- a/doc/src/snippets/qtcluster/images/rightgauge.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/images/temperature.png b/doc/src/snippets/qtcluster/images/temperature.png Binary files differdeleted file mode 100644 index 8cf232fa..00000000 --- a/doc/src/snippets/qtcluster/images/temperature.png +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons.qrc b/doc/src/snippets/qtcluster/iso-icons.qrc deleted file mode 100644 index 8479d6af..00000000 --- a/doc/src/snippets/qtcluster/iso-icons.qrc +++ /dev/null @@ -1,15 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<RCC> - <qresource prefix="/"> - <file>iso-icons/iso_grs_7000_4_0083.dat</file> - <file>iso-icons/iso_grs_7000_4_1434A.dat</file> - <file>iso-icons/iso_grs_7000_4_0246.dat</file> - <file>iso-icons/iso_grs_7000_4_0245.dat</file> - <file>iso-icons/iso_grs_7000_4_0247.dat</file> - <file>iso-icons/iso_grs_7000_4_1555.dat</file> - <file>iso-icons/iso_grs_7000_4_1702.dat</file> - <file>iso-icons/iso_grs_7000_4_0249.dat</file> - <file>iso-icons/iso_grs_7000_4_0238.dat</file> - <file>iso-icons/iso_grs_7000_4_0456.dat</file> - </qresource> -</RCC> diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0083.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0083.dat Binary files differdeleted file mode 100644 index f7a3e280..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0083.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0238.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0238.dat Binary files differdeleted file mode 100644 index f2c08ff2..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0238.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0245.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0245.dat Binary files differdeleted file mode 100644 index 4c990b12..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0245.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0246.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0246.dat Binary files differdeleted file mode 100644 index d6c24e6f..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0246.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0247.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0247.dat Binary files differdeleted file mode 100644 index 9ef390fb..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0247.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0249.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0249.dat Binary files differdeleted file mode 100644 index 89dc2d42..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0249.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0456.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0456.dat Binary files differdeleted file mode 100644 index 8df8b4fa..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_0456.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1434A.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1434A.dat Binary files differdeleted file mode 100644 index 35daffff..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1434A.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1555.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1555.dat Binary files differdeleted file mode 100644 index 0a0326a2..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1555.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1702.dat b/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1702.dat Binary files differdeleted file mode 100644 index 2fdbd279..00000000 --- a/doc/src/snippets/qtcluster/iso-icons/iso_grs_7000_4_1702.dat +++ /dev/null diff --git a/doc/src/snippets/qtcluster/main.cpp b/doc/src/snippets/qtcluster/main.cpp deleted file mode 100644 index cc7645d8..00000000 --- a/doc/src/snippets/qtcluster/main.cpp +++ /dev/null @@ -1,119 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -#ifdef QT_3DCORE_LIB -#include "scenehelper.h" -#endif -#include "gauge.h" -#include "qtiviclusterdata.h" -#include "circularindicator.h" - -#include <QtQml/QQmlApplicationEngine> -#include <QtGui/QFont> -#include <QtGui/QFontDatabase> -#include <QtGui/QGuiApplication> -#include <QtQuick/QQuickView> - -#include "etcprovider.h" -#ifdef STATIC -#include <QtPlugin> -#include <QQmlExtensionPlugin> - -Q_IMPORT_PLUGIN(QtQuick2Plugin) -Q_IMPORT_PLUGIN(QtQuickScene3DPlugin) -Q_IMPORT_PLUGIN(Qt3DQuick3DCorePlugin) -Q_IMPORT_PLUGIN(Qt3DQuick3DRenderPlugin) -#endif - -int main(int argc, char **argv) -{ - qputenv("QT_QPA_EGLFS_HIDECURSOR", "1"); - qputenv("QT_QPA_EGLFS_DISABLE_INPUT", "1"); -// qputenv("QT_QPA_EGLFS_INTEGRATION", "eglfs_viv"); - qputenv("FB_MULTI_BUFFER", "2"); - qputenv("QT_QPA_EGLFS_WIDTH", "1280"); - qputenv("QT_QPA_EGLFS_HEIGHT", "480"); - qputenv("QT_QPA_EGLFS_PHYSICAL_WIDTH", "1280"); - qputenv("QT_QPA_EGLFS_PHYSICAL_HEIGHT", "480"); - qputenv("QT_QPA_FONTDIR", "."); -// iPad Air, iPad Air 2, iPad Pro (9.7 inch), iPad Pro (12.9 inch), iPad Retina -// qputenv("QT_SCALE_FACTOR", "0.8"); -// iPhone 5, iPhone 5s, iPhone 6, iPhone 6 Plus, iPhone 6s, iPhone 6s Plus, iPhone 7, iPhone 7 Plus, iPhone SE -// qputenv("QT_SCALE_FACTOR", "0.44"); - -#ifdef STATIC - qobject_cast<QQmlExtensionPlugin*>(qt_static_plugin_QtQuick2Plugin().instance())->registerTypes("QtQuick"); - qobject_cast<QQmlExtensionPlugin*>(qt_static_plugin_QtQuickScene3DPlugin().instance())->registerTypes("QtQuick.Scene3D"); - qobject_cast<QQmlExtensionPlugin*>(qt_static_plugin_Qt3DQuick3DCorePlugin().instance())->registerTypes("Qt3D.Core"); - qobject_cast<QQmlExtensionPlugin*>(qt_static_plugin_Qt3DQuick3DRenderPlugin().instance())->registerTypes("Qt3D.Render"); -#endif - QGuiApplication app(argc, argv); - -#ifdef QT_3DCORE_LIB - qmlRegisterType<SceneHelper>("Qt3D.Examples", 2, 0, "SceneHelper"); -#endif - qmlRegisterType<QtIVIClusterData>("ClusterDemoData", 1, 0, "ClusterData"); - qmlRegisterType<Gauge>("ClusterDemo", 1, 0, "GaugeFiller"); - qmlRegisterType<CircularIndicator>("ClusterDemo", 1, 0, "CircularIndicator"); - qmlRegisterSingletonType(QUrl("qrc:/qml/ValueSource.qml"), "ClusterDemo", 1, 0, "ValueSource"); - - QQuickView view; - - EtcProvider *etcProvider = new EtcProvider(); - etcProvider->setBaseUrl(QUrl("qrc:///images/")); - view.engine()->addImageProvider("etc", etcProvider); - - view.setColor(QColor(Qt::black)); - view.setWidth(1280); - view.setHeight(480); - view.engine()->addImportPath("qrc:/imports/"); - - bool sportsCar = false; - if (app.arguments().count() > 1) - sportsCar = app.arguments().at(1) == "sports"; - - if (sportsCar) - view.setSource(QUrl("qrc:/qml/dash_sports/DashboardFrame.qml")); - else - view.setSource(QUrl("qrc:/qml/dash_hybrid/DashboardFrame.qml")); - - view.show(); - return app.exec(); -} diff --git a/doc/src/snippets/qtcluster/qml/CarModelMain.qml b/doc/src/snippets/qtcluster/qml/CarModelMain.qml deleted file mode 100644 index bcccab54..00000000 --- a/doc/src/snippets/qtcluster/qml/CarModelMain.qml +++ /dev/null @@ -1,186 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.2 -import QtQuick.Scene3D 2.0 -import QtQuick.Window 2.1 - -Window { - id: root - property bool leftView: true - visible: true - width: 1280 - height: 480 - color: "Black" - title: "iCluster" - property bool toggleCarView: false - property bool carVisible: true - property int carModelHighlightType - property bool actionInProgress - property bool rightStack - - Timer { - // Dummy timer, does nothing - id: returnView - interval: 1.0 - } - - CarViewSports { - id: carView - width: root.width - height: root.height - visible: true - hidden: false - } - -// CarViewElectric { -// id: carView -// width: root.width -// height: root.height -// visible: true -// hidden: false -// } - - Rectangle { - id: buttonToggleVisible - width: 100 - height: 50 - radius: 5 - border.color: "green" - border.width: 2 - anchors.right: parent.right - anchors.rightMargin: 5 - anchors.topMargin: 5 - Text { - anchors.horizontalCenter: parent.horizontalCenter - anchors.verticalCenter: parent.verticalCenter - text: "Visible" - } - MouseArea { - anchors.fill: parent - onClicked: { - if (carVisible == false) { - console.log("Show car") - carView.hidden = false - carVisible = true - buttonToggleVisible.border.color = "green" - } else { - console.log("Hide car") - carView.hidden = true - carVisible = false - buttonToggleVisible.border.color = "red" - } - } - } - } - - Rectangle { - id: buttonHighlightTire - width: 100 - height: 50 - radius: 5 - border.color: "green" - border.width: 2 - anchors.right: parent.right - anchors.top: buttonToggleVisible.bottom - anchors.rightMargin: 5 - anchors.topMargin: 5 - Text { - anchors.horizontalCenter: parent.horizontalCenter - anchors.verticalCenter: parent.verticalCenter - text: "Tire" - } - MouseArea { - anchors.fill: parent - onClicked: { - carView.highlightTire() - } - } - } - - Rectangle { - id: buttonHighlightLamp - width: 100 - height: 50 - radius: 5 - border.color: "green" - border.width: 2 - anchors.right: parent.right - anchors.top: buttonHighlightTire.bottom - anchors.rightMargin: 5 - anchors.topMargin: 5 - Text { - anchors.horizontalCenter: parent.horizontalCenter - anchors.verticalCenter: parent.verticalCenter - text: "Lamp" - } - MouseArea { - anchors.fill: parent - onClicked: { - carView.highlightLamp() - } - } - } - - Rectangle { - id: buttonHighlightDoor - width: 100 - height: 50 - radius: 5 - border.color: "green" - border.width: 2 - anchors.right: parent.right - anchors.top: buttonHighlightLamp.bottom - anchors.rightMargin: 5 - anchors.topMargin: 5 - Text { - anchors.horizontalCenter: parent.horizontalCenter - anchors.verticalCenter: parent.verticalCenter - text: "Doors" - } - MouseArea { - anchors.fill: parent - onClicked: { - carView.highlightDoors(Math.floor(Math.random() * 63) + 1) - } - } - } - -// FpsCounter { -// visible: true -// z: 3 -// } -} diff --git a/doc/src/snippets/qtcluster/qml/CarModelSports.qml b/doc/src/snippets/qtcluster/qml/CarModelSports.qml deleted file mode 100644 index 1977da28..00000000 --- a/doc/src/snippets/qtcluster/qml/CarModelSports.qml +++ /dev/null @@ -1,569 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import Qt3D.Core 2.0 -import Qt3D.Render 2.0 -import Qt3D.Extras 2.0 -import Qt3D.Examples 2.0 -import QtQuick 2.5 as Quick -import QtQuick.Scene3D 2.0 - -Entity -{ - id: carModelEntity - - property bool hidden: true - property Scene3D scene - property real carRotation: 0.0 - property var previousComponent: undefined - property var previousMaterial - property vector3d defaultCameraPosition: Qt.vector3d(0.0, 10.0, 30.0) - property vector3d defaultLightPosition: Qt.vector3d(0.0, 30.0, 11.0) - property vector3d lightPosition: defaultLightPosition - property vector3d cameraPos: defaultCameraPosition - property vector3d lightPos: defaultLightPosition - - property real lightPosMultiplier: 1.75 - - property int door_left: 1 - property int door_right: 2 - property int door_trunk: 4 - property int door_hood: 8 - - property bool highlighting: false - property bool doorAction: false - - property int highlightType: 0 - property int defaultHighlight: 99 - - // Preset camera positions for highlights - // Light positions can use the same vectors, but with a multiplier to move it further or closer - // Lamp highlights - property vector3d positionFrontLeftHigh: Qt.vector3d(5.0, 4.0, 15.0) // Left headlight - property vector3d positionFrontRightHigh: Qt.vector3d(-5.0, 4.0, 15.0) // Right headlight - property vector3d positionFrontLeftLow: Qt.vector3d(3.0, 2.0, 15.0) // Left day light - property vector3d positionFrontRightLow: Qt.vector3d(-3.0, 2.0, 15.0) // Right day light - property vector3d positionRearLeft: Qt.vector3d(5.0, 5.0, -15.0) // Left tail light - property vector3d positionRearRight: Qt.vector3d(-5.0, 5.0, -15.0) // Right tail light - // Tire highlights - property vector3d positionLeftRear: Qt.vector3d(10.0, 2.0, -12.5) - property vector3d positionLeftFront: Qt.vector3d(10.0, 2.0, 12.5) - property vector3d positionRightRear: Qt.vector3d(-10.0, 2.0, -12.5) - property vector3d positionRightFront: Qt.vector3d(-10.0, 2.0, 12.5) - // Door highlights - property vector3d positionLeft: Qt.vector3d(35.0, 10.0, 0.0) // Doors on the left - property vector3d positionRight: Qt.vector3d(-35.0, 10.0, 0.0) // Doors on the right - property vector3d positionTop: Qt.vector3d(0.0, 40.0, 1.0) // Doors on both sides - property vector3d positionBack: Qt.vector3d(0.0, 20.0, -20.0) // Trunk - property vector3d positionFront: Qt.vector3d(0.0, 20.0, 20.0) // Hood - - // Original - property color bodyColor: Qt.rgba(0.6270588, 0.04137255, 0.04137255, 1.0) - property color interiorColor: Qt.rgba(0.17, 0.17, 0.18, 1.0) - property color highlightColor: "orange" - // Blue -// property color bodyColor: "navy" -// property color interiorColor: "darkslateblue" -// property color highlightColor: "orange" - // Perky -// property color bodyColor: "chartreuse" -// property color interiorColor: "orangered" -// property color highlightColor: "yellow" - // Pink -// property color bodyColor: "deeppink" -// property color interiorColor: "thistle" -// property color highlightColor: "orange" - // Orange -// property color bodyColor: "orangered" -// property color interiorColor: "saddlebrown" -// property color highlightColor: "yellow" - // Yellow -// property color bodyColor: "gold" -// property color interiorColor: "dimgray" -// property color highlightColor: "red" - - Camera { - id: camera - projectionType: CameraLens.PerspectiveProjection - fieldOfView: 45 - aspectRatio: scene.width / scene.height - nearPlane: 0.1 - farPlane: 100.0 - position: defaultCameraPosition - upVector: Qt.vector3d(0.0, 1.0, 0.0) - viewCenter: Qt.vector3d(0.0, 0.0, 0.0) - } - - Entity { - components: [ - Transform { - translation: lightPosition - }, - PointLight { - color: "white" - intensity: 1.0 - } - ] - } - - RenderSettings { - Viewport { - RenderSurfaceSelector { - ClearBuffers { - buffers: ClearBuffers.ColorDepthBuffer - NoDraw { } // Just clear - } - CameraSelector { - camera: camera - NoDraw { - enabled: hidden - } - } - } - } - } - - // Materials for the parts that need highlighting - PhongMaterial { - id: bodyMaterial - ambient: Qt.rgba(0.05, 0.05, 0.05, 1.0) - diffuse: bodyColor - specular: Qt.rgba(0.7686275, 0.6196079, 0.3568628, 1.0) - shininess: 164 - } - - PhongMaterial { - id: bodyMaterialHighlight - ambient: Qt.rgba(0.05, 0.05, 0.05, 1.0) - diffuse: highlightColor - shininess: 164 - } - - PhongMaterial { - id: tireMaterial - ambient: Qt.rgba(0.05, 0.05, 0.05, 1.0) - specular: Qt.rgba(0.594, 0.594, 0.594, 1.0) - diffuse: "black" - shininess: 51 - } - - PhongMaterial { - id: tireMaterialHighlight - ambient: Qt.rgba(0.05, 0.05, 0.05, 1.0) - specular: Qt.rgba(0.594, 0.594, 0.594, 1.0) - diffuse: highlightColor - shininess: 51 - } - - DiffuseMapMaterial { - id: lampsMaterial - ambient: Qt.rgba(0.75, 0.75, 0.75, 1.0) - specular: Qt.rgba(0.279, 0.279, 0.279, 1.0) - diffuse: TextureLoader { source: "qrc:/Map11.jpg" } - shininess: 31 - } - - // bodyMaterialHighlight is used for lamp highlight - - // Materials for the parts that do not otherwise work correctly -// Material { -// id: transparentGlassMaterial - -// parameters: [ -// Parameter { name: "alpha"; value: 0.95 }, -// Parameter { name: "ka"; value: Qt.vector3d(0.2, 0.2, 0.2) }, -// Parameter { name: "kd"; value: Qt.vector3d(0.1608937, 0.16512, 0.154057) }, -// Parameter { name: "ks"; value: Qt.vector3d(1.0, 1.0, 1.0) }, -// Parameter { name: "shininess"; value: 15 } -// ] - -// effect: DefaultAlphaEffect { -// sourceRgbArg: BlendEquationArguments.SourceColor -// destinationRgbArg: BlendEquationArguments.OneMinusSourceColor -// } -// } - - PhongAlphaMaterial { - id: transparentGlassMaterial - diffuse: Qt.rgba(0.1608937, 0.16512, 0.154057, 1.0) - specular: Qt.rgba(1.0, 1.0, 1.0, 1.0) - alpha: 0.75 - shininess: 33 - } - - PhongMaterial { - id: interiorMaterial - ambient: "black" - diffuse: interiorColor - shininess: 30 - } - - SceneHelper { - id: sceneHelper - } - - Entity { - id: carModel - - Transform { - id: carTransform - matrix: { - var m = Qt.matrix4x4() - m.rotate(carRotation, Qt.vector3d(0, 1, 0)) - m.rotate(-90, Qt.vector3d(1, 0, 0)) - m.scale(1.35) - return m - } - } - - SceneLoader { - id: modelLoader - source: "qrc:/sportscar.qgltf" - property var lampParts: [ "headlight_right", "headlight_left", "daylight_right", - "daylight_left", "taillight_left", "taillight_right" ] - property var bodyParts: [ "body", "door_left", "door_right", - "trunk", "hood" ] - property var transparentGlassParts: [ "d_glass" ] - property var tireParts: [ "tire_front_left", "tire_front_right", - "tire_rear_left", "tire_rear_right" ] - property var interiorParts: [ "interior" ] - - // Note: If there are problems with transparent materials etc. check that you have - // exported the Collada file used to create the qgltf binary files using the following - // options in Blender (in Collada options category): - // - Triangulate (off) - // - Use Object Instances (on) - // - Sort by Object name (on) - // If just setting those is not enough, try changing the object names so that the - // object will be loaded in a different order. - // Use the following syntax for qgltf.exe: - // qgltf.exe file.dae -b -S - - onStatusChanged: { - if (status === SceneLoader.Ready) { - sceneHelper.addBasicMaterials(modelLoader, bodyMaterial, bodyParts) - sceneHelper.addBasicMaterials(modelLoader, transparentGlassMaterial, - transparentGlassParts) - sceneHelper.addBasicMaterials(modelLoader, interiorMaterial, interiorParts) - sceneHelper.addTextureMaterial(modelLoader, lampsMaterial, lampParts[0]) - sceneHelper.addTextureMaterial(modelLoader, lampsMaterial, lampParts[1]) - sceneHelper.addTextureMaterial(modelLoader, lampsMaterial, lampParts[2]) - sceneHelper.addTextureMaterial(modelLoader, lampsMaterial, lampParts[3]) - sceneHelper.addTextureMaterial(modelLoader, lampsMaterial, lampParts[4]) - sceneHelper.addTextureMaterial(modelLoader, lampsMaterial, lampParts[5]) - sceneHelper.addTextureMaterial(modelLoader, tireMaterial, tireParts[0]) - sceneHelper.addTextureMaterial(modelLoader, tireMaterial, tireParts[1]) - sceneHelper.addTextureMaterial(modelLoader, tireMaterial, tireParts[2]) - sceneHelper.addTextureMaterial(modelLoader, tireMaterial, tireParts[3]) - floorPlane.enabled = true - } - } - } - - components : [carTransform, modelLoader] - } - - Entity { - id: floorPlane - enabled: false - - DiffuseMapMaterial { - id: planeMaterial - ambient: Qt.rgba(0, 0, 0, 1.0) - specular: Qt.rgba(0, 0, 0, 1.0) - diffuse: TextureLoader { source: "qrc:/images/SportCarFloorShadow.png" } - } - - Transform { - id: planeRotation - matrix: { - var m = Qt.matrix4x4() - m.rotate(carRotation, Qt.vector3d(0, 1, 0)) - m.scale(1.35) - return m - } - } - - PlaneMesh { - id: planeMesh - width: 70 - height: 70 - } - - components : [planeMesh, planeMaterial, planeRotation] - } - - function highlightItem(idx) { - carRotationAnimation.stop() - carResetRotationAnimation.start() - highlighting = true - var highlightComponent - var highlightMaterial - var originalMaterial - - switch (idx) { - case 1: - highlightComponent = "tire_front_left" - highlightMaterial = tireMaterialHighlight - originalMaterial = tireMaterial - lightPos = positionLeftFront.times(lightPosMultiplier) - cameraPos = positionLeftFront - break - case 2: - highlightComponent = "tire_front_right" - highlightMaterial = tireMaterialHighlight - originalMaterial = tireMaterial - lightPos = positionRightFront.times(lightPosMultiplier) - cameraPos = positionRightFront - break - case 3: - highlightComponent = "tire_rear_right" - highlightMaterial = tireMaterialHighlight - originalMaterial = tireMaterial - lightPos = positionRightRear.times(lightPosMultiplier) - cameraPos = positionRightRear - break - case 4: - highlightComponent = "tire_rear_left" - highlightMaterial = tireMaterialHighlight - originalMaterial = tireMaterial - lightPos = positionLeftRear.times(lightPosMultiplier) - cameraPos = positionLeftRear - break - case 5: - highlightComponent = "headlight_left" - highlightMaterial = bodyMaterialHighlight - originalMaterial = lampsMaterial - lightPos = positionFrontLeftHigh.times(lightPosMultiplier) - cameraPos = positionFrontLeftHigh - break - case 6: - highlightComponent = "headlight_right" - highlightMaterial = bodyMaterialHighlight - originalMaterial = lampsMaterial - lightPos = positionFrontRightHigh.times(lightPosMultiplier) - cameraPos = positionFrontRightHigh - break - case 7: - highlightComponent = "daylight_right" - highlightMaterial = bodyMaterialHighlight - originalMaterial = lampsMaterial - lightPos = positionFrontRightLow.times(lightPosMultiplier) - cameraPos = positionFrontRightLow - break - case 8: - highlightComponent = "daylight_left" - highlightMaterial = bodyMaterialHighlight - originalMaterial = lampsMaterial - lightPos = positionFrontLeftLow.times(lightPosMultiplier) - cameraPos = positionFrontLeftLow - break - case 9: - highlightComponent = "taillight_left" - highlightMaterial = bodyMaterialHighlight - originalMaterial = lampsMaterial - lightPos = positionRearLeft.times(lightPosMultiplier) - cameraPos = positionRearLeft - break - case 10: - highlightComponent = "taillight_right" - highlightMaterial = bodyMaterialHighlight - originalMaterial = lampsMaterial - lightPos = positionRearRight.times(lightPosMultiplier) - cameraPos = positionRearRight - break - default: - lightPos = defaultLightPosition - cameraPos = defaultCameraPosition - } - - if (previousComponent !== undefined) - sceneHelper.replaceMaterial(modelLoader, previousComponent, previousMaterial) - - if (highlightComponent !== undefined) - sceneHelper.replaceMaterial(modelLoader, highlightComponent, highlightMaterial) - - previousComponent = highlightComponent - previousMaterial = originalMaterial - } - - function highlightOpenDoors(openDoors) { - carRotationAnimation.stop() - carResetRotationAnimation.start() - highlighting = true - var openLeft = false - var openRight = false - var openBack = false - var openFront = false - - // Check with bitwise operators, as they can be open in any combination - if (openDoors & door_left) { - sceneHelper.replaceMaterial(modelLoader, "door_left", bodyMaterialHighlight) - openLeft = true - } else { - sceneHelper.replaceMaterial(modelLoader, "door_left", bodyMaterial) - } - - if (openDoors & door_right) { - sceneHelper.replaceMaterial(modelLoader, "door_right", bodyMaterialHighlight) - openRight = true - } else { - sceneHelper.replaceMaterial(modelLoader, "door_right", bodyMaterial) - } - - if (openDoors & door_trunk) { - sceneHelper.replaceMaterial(modelLoader, "trunk", bodyMaterialHighlight) - openBack = true - } else { - sceneHelper.replaceMaterial(modelLoader, "trunk", bodyMaterial) - } - - if (openDoors & door_hood) { - openFront = true - sceneHelper.replaceMaterial(modelLoader, "hood", bodyMaterialHighlight) - } else { - sceneHelper.replaceMaterial(modelLoader, "hood", bodyMaterial) - } - - if (openRight && openLeft || openBack && openFront) { - lightPos = positionTop.times(0.5) - cameraPos = positionTop - } else if (openRight) { - lightPos = positionRight.times(0.33) - lightPos.y += 15.0 - cameraPos = positionRight - } else if (openLeft) { - lightPos = positionLeft.times(0.33) - lightPos.y += 15.0 - cameraPos = positionLeft - } else if (openBack) { - lightPos = positionBack.times(0.75) - cameraPos = positionBack - } else if (openFront) { - lightPos = positionFront.times(1.0) - cameraPos = positionFront - } else { - lightPos = defaultLightPosition - cameraPos = defaultCameraPosition - } - } - - onCameraPosChanged: { - if (!highlighting) - return - - // Update both camera and light positions - cameraAnimation.to = cameraPos - lightAnimation.to = lightPos - cameraAnimation.restart() - lightAnimation.restart() - highlighting = false - } - - Quick.PropertyAnimation { - running: false - id: cameraAnimation - target: camera - property: "position" - duration: 1000 - easing.type: Easing.InOutQuad - } - - Quick.PropertyAnimation { - running: false - id: lightAnimation - target: carModelEntity - property: "lightPosition" - duration: 1000 - easing.type: Easing.Linear - } - - Quick.RotationAnimation on carRotation { - id: carRotationAnimation - running: false - from: 0.0 - to: 360.0 - duration: 15000 - loops: -1 - } - - Quick.RotationAnimation on carRotation { - id: carResetRotationAnimation - running: false - to: (carRotation > 180.0) ? 360.0 : 0.0 // TODO: Try to make animation "natural". Still works weirdly sometimes. - duration: 1000 - loops: -1 - easing.type: Easing.InOutQuad - } - - function resetHighlight() { - if (doorAction) - highlightOpenDoors(0) - else - highlightItem(defaultHighlight) - doorAction = false - } - - function highlightLamp() { - highlightType = Math.floor(Math.random() * 6) + 5 - highlightItem(highlightType) - return highlightType - } - - function highlightTire() { - highlightType = Math.floor(Math.random() * 4) + 1 - highlightItem(highlightType) - return highlightType - } - - function toggleIdleTimer(isVisible) { - if (isVisible) { - idleTimer.restart() - } else { - carRotationAnimation.stop() - carRotation = 0.0 - idleTimer.stop() - } - } - - Quick.Timer { - id: idleTimer - interval: 10000 - onTriggered: { - carRotationAnimation.restart() - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/CarParking.qml b/doc/src/snippets/qtcluster/qml/CarParking.qml deleted file mode 100644 index 6994bbd4..00000000 --- a/doc/src/snippets/qtcluster/qml/CarParking.qml +++ /dev/null @@ -1,71 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -Item { - height: root.height - width: root.width / 3 - Image { - id: carImage - height: root.height / 3 - anchors.verticalCenter: parent.verticalCenter - anchors.horizontalCenter: parent.horizontalCenter - fillMode: Image.PreserveAspectFit - source:"qrc:/images/CarForParkSensors.png" - } - Image { - anchors.left: carImage.left - anchors.leftMargin: 5 - anchors.bottom: carImage.bottom - anchors.bottomMargin: carImage.height * 0.86 - source:"qrc:/images/ParkingSensorOff.png" - z: 1 - } - Image { - scale: -1 - anchors.left: carImage.left - anchors.leftMargin: 5 - anchors.top: carImage.top - anchors.topMargin: carImage.height * 0.86 - source:"qrc:/images/ParkingSensorOff.png" - z: 1 - } -} diff --git a/doc/src/snippets/qtcluster/qml/CarParkingSports.qml b/doc/src/snippets/qtcluster/qml/CarParkingSports.qml deleted file mode 100644 index 84062f80..00000000 --- a/doc/src/snippets/qtcluster/qml/CarParkingSports.qml +++ /dev/null @@ -1,79 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -Item { - Image { - id: carImage - height: root.height / 3 - anchors.verticalCenter: parent.verticalCenter - anchors.horizontalCenter: parent.horizontalCenter - fillMode: Image.PreserveAspectFit - source:"image://etc/SportCarForParkSensors.png" - } - Image { - anchors.horizontalCenter: carImage.horizontalCenter - anchors.leftMargin: 5 - anchors.bottom: carImage.bottom - anchors.bottomMargin: carImage.height * 0.9 - source:"image://etc/ParkingSensorOff.png" - z: 1 - } - Image { - scale: -1 - anchors.horizontalCenter: carImage.horizontalCenter - anchors.leftMargin: 5 - anchors.top: carImage.top - anchors.topMargin: carImage.height * 0.86 - source:"image://etc/ParkingSensorOff.png" - z: 1 - } -} diff --git a/doc/src/snippets/qtcluster/qml/CarViewElectric.qml b/doc/src/snippets/qtcluster/qml/CarViewElectric.qml deleted file mode 100644 index 04833d6a..00000000 --- a/doc/src/snippets/qtcluster/qml/CarViewElectric.qml +++ /dev/null @@ -1,108 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.0 -import QtQuick.Scene3D 2.0 - -Item { - id: mainview - visible: true - width: root.width / 3 - height: root.height - property alias hidden: carModel.hidden - - Scene3D { - id: carScene - width: mainview.width - height: mainview.height - multisample: true - - CarModelElectric { - id: carModel - scene: carScene - } - } - - // Functions to control highlights from dashboard - function highlightLamp() { - var type = carModel.highlightLamp() - carModel.toggleIdleTimer(true) - resetModelTimer.restart() - return type - } - - function highlightDoors(doors) { - doorAction = true - carModel.doorAction = true - carModel.highlightOpenDoors(doors) - carModel.toggleIdleTimer(true) - resetModelTimer.restart() - } - - function highlightTire() { - var type = carModel.highlightTire() - carModel.toggleIdleTimer(true) - resetModelTimer.restart() - return type - } - - Timer { - id: resetModelTimer - interval: 3000 - running: false - onTriggered: { - carModel.resetHighlight() - carModelHighlightType = 0 - actionInProgress = false - doorAction = false - if (!rightStack.visible) // return previous view if we forced the car model - returnView.start() - if (visible) - carModel.toggleIdleTimer(true) - } - } - - onVisibleChanged: { - // Start/stop idle timer, that will trigger camera rotation around the car model after X secs - carModel.toggleIdleTimer(visible) - } - - // TODO: Don't use if car view is not the first one - Component.onCompleted: { - // Start/stop idle timer, that will trigger camera rotation around the car model after X secs - carModel.toggleIdleTimer(visible) - } -} diff --git a/doc/src/snippets/qtcluster/qml/CarViewSports.qml b/doc/src/snippets/qtcluster/qml/CarViewSports.qml deleted file mode 100644 index 7c5bb198..00000000 --- a/doc/src/snippets/qtcluster/qml/CarViewSports.qml +++ /dev/null @@ -1,108 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.0 -import QtQuick.Scene3D 2.0 - -Item { - id: mainview - visible: true - width: root.width / 3 - height: root.height - property alias hidden: carModel.hidden - - Scene3D { - id: carScene - width: mainview.width - height: mainview.height - multisample: true - - CarModelSports { - id: carModel - scene: carScene - } - } - - // Functions to control highlights from dashboard - function highlightLamp() { - var type = carModel.highlightLamp() - carModel.toggleIdleTimer(true) - resetModelTimer.restart() - return type - } - - function highlightDoors(doors) { - doorAction = true - carModel.doorAction = true - carModel.highlightOpenDoors(doors) - carModel.toggleIdleTimer(true) - resetModelTimer.restart() - } - - function highlightTire() { - var type = carModel.highlightTire() - carModel.toggleIdleTimer(true) - resetModelTimer.restart() - return type - } - - Timer { - id: resetModelTimer - interval: 3000 - running: false - onTriggered: { - carModel.resetHighlight() - carModelHighlightType = 0 - doorAction = false - actionInProgress = false - if (!centerStack.visible) // return previous view if we forced the car model - returnView.start() - if (visible) - carModel.toggleIdleTimer(true) - } - } - - onVisibleChanged: { - // Start/stop idle timer, that will trigger camera rotation around the car model after X secs - carModel.toggleIdleTimer(visible) - } - - // TODO: Don't use if car view is not the first one - Component.onCompleted: { - // Start/stop idle timer, that will trigger camera rotation around the car model after X secs - carModel.toggleIdleTimer(visible) - } -} diff --git a/doc/src/snippets/qtcluster/qml/Circular_route.txt b/doc/src/snippets/qtcluster/qml/Circular_route.txt deleted file mode 100644 index a502cfa6..00000000 --- a/doc/src/snippets/qtcluster/qml/Circular_route.txt +++ /dev/null @@ -1,595 +0,0 @@ -2015-09-05T12:01:56Z 52.53471566 13.29339621 0 -2015-09-05T12:01:56Z 52.53471566 13.29339621 0 -2015-09-05T12:01:56Z 52.53471566 13.29339621 0 -2015-09-05T12:01:56Z 52.53471566 13.29339621 0 -2015-09-05T12:01:56Z 52.53471566 13.29339621 2 -2015-09-05T12:01:57Z 52.53463307 13.29335113 4.5 -2015-09-05T12:01:58Z 52.53456215 13.29326514 6 -2015-09-05T12:01:59Z 52.53448055 13.2932033 10 -2015-09-05T12:02:00Z 52.53439307 13.29317302 10.25 -2015-09-05T12:02:02Z 52.53420541 13.29324536 11 -2015-09-05T12:02:03Z 52.53415146 13.29334321 10.25 -2015-09-05T12:02:04Z 52.5340858 13.29343789 9.5 -2015-09-05T12:02:06Z 52.5339741 13.29363007 9 -2015-09-05T12:02:08Z 52.53385702 13.29373682 9 -2015-09-05T12:02:09Z 52.53379645 13.2937675 5 -2015-09-05T12:02:10Z 52.53373904 13.29378906 3 -2015-09-05T12:02:10Z 52.53370904 13.29379906 0 -2015-09-05T12:02:11Z 52.53370904 13.29379906 0 -2015-09-05T12:02:12Z 52.53370904 13.29379906 0 -2015-09-05T12:02:13Z 52.53355432 13.29392855 5 -2015-09-05T12:02:15Z 52.53337753 13.2940725 10 -2015-09-05T12:02:16Z 52.53329909 13.29412793 10 -2015-09-05T12:02:17Z 52.53321162 13.29419525 10.25 -2015-09-05T12:02:18Z 52.53311057 13.29426683 11.5 -2015-09-05T12:02:19Z 52.5330342 13.29433714 11.25 -2015-09-05T12:02:21Z 52.5328361 13.2944545 11.5 -2015-09-05T12:02:23Z 52.53268661 13.29457408 12 -2015-09-05T12:02:24Z 52.5325904 13.29461498 12 -2015-09-05T12:02:25Z 52.5324789 13.29467689 12 -2015-09-05T12:02:26Z 52.53237304 13.29473805 12 -2015-09-05T12:02:27Z 52.53226579 13.29481766 12 -2015-09-05T12:02:28Z 52.53215667 13.29489104 12 -2015-09-05T12:02:29Z 52.53205286 13.29495604 12 -2015-09-05T12:02:31Z 52.53184432 13.29509601 12.25 -2015-09-05T12:02:32Z 52.53173615 13.29516896 13 -2015-09-05T12:02:33Z 52.53160734 13.29525339 14.5 -2015-09-05T12:02:34Z 52.53147391 13.29533567 15 -2015-09-05T12:02:35Z 52.53134531 13.29539001 15.25 -2015-09-05T12:02:36Z 52.53120371 13.29544058 14.75 -2015-09-05T12:02:37Z 52.5310736 13.29548352 14.5 -2015-09-05T12:02:39Z 52.53082428 13.2955645 13.75 -2015-09-05T12:02:40Z 52.53070713 13.29559606 14.5 -2015-09-05T12:02:41Z 52.53057732 13.2956255 14.75 -2015-09-05T12:02:43Z 52.53030912 13.29571386 15 -2015-09-05T12:02:44Z 52.53017176 13.2957591 14.75 -2015-09-05T12:02:45Z 52.5300513 13.29580222 14.5 -2015-09-05T12:02:47Z 52.52979737 13.29587053 14.25 -2015-09-05T12:02:48Z 52.52968082 13.29590694 14 -2015-09-05T12:02:49Z 52.52956536 13.29595674 13.75 -2015-09-05T12:02:51Z 52.52934973 13.29612906 13.5 -2015-09-05T12:02:52Z 52.52924513 13.29620493 13.5 -2015-09-05T12:02:53Z 52.52912119 13.29629417 13.5 -2015-09-05T12:02:54Z 52.52901351 13.29639086 13.25 -2015-09-05T12:02:55Z 52.52891751 13.29647808 12.25 -2015-09-05T12:02:56Z 52.52884043 13.29650939 11.25 -2015-09-05T12:02:58Z 52.52864407 13.29657869 12 -2015-09-05T12:02:59Z 52.52852564 13.29660263 12.75 -2015-09-05T12:03:00Z 52.52840086 13.29663652 12.75 -2015-09-05T12:03:02Z 52.52818659 13.2966907 12.75 -2015-09-05T12:03:03Z 52.52807177 13.29673764 12.75 -2015-09-05T12:03:04Z 52.52798047 13.29677037 12.8 -2015-09-05T12:03:05Z 52.52784213 13.29683006 14.5 -2015-09-05T12:03:06Z 52.52769622 13.29689328 15.5 -2015-09-05T12:03:07Z 52.52755741 13.2969383 16.25 -2015-09-05T12:03:08Z 52.52741156 13.29698961 17 -2015-09-05T12:03:10Z 52.52711709 13.2970757 17 -2015-09-05T12:03:11Z 52.52695869 13.29711537 17 -2015-09-05T12:03:12Z 52.52681712 13.29716064 17 -2015-09-05T12:03:13Z 52.52666168 13.29722531 17 -2015-09-05T12:03:14Z 52.52649001 13.29727856 17.75 -2015-09-05T12:03:15Z 52.52633418 13.29734529 17.75 -2015-09-05T12:03:16Z 52.52615007 13.29740601 18.25 -2015-09-05T12:03:17Z 52.52598369 13.29744997 18.5 -2015-09-05T12:03:18Z 52.52581637 13.29747817 18.25 -2015-09-05T12:03:19Z 52.5256589 13.2975318 17.5 -2015-09-05T12:03:20Z 52.52549785 13.2975591 17.5 -2015-09-05T12:03:21Z 52.52533403 13.29757304 17 -2015-09-05T12:03:22Z 52.52518512 13.2976005 16.75 -2015-09-05T12:03:23Z 52.52505195 13.29764489 16.25 -2015-09-05T12:03:24Z 52.52491452 13.29769758 15.25 -2015-09-05T12:03:25Z 52.52478112 13.29775472 15.25 -2015-09-05T12:03:26Z 52.52466234 13.29785345 15.25 -2015-09-05T12:03:27Z 52.52453284 13.29795197 15.75 -2015-09-05T12:03:29Z 52.52428926 13.29821484 16.25 -2015-09-05T12:03:30Z 52.52417461 13.2983671 16.25 -2015-09-05T12:03:31Z 52.52405376 13.29850187 16.25 -2015-09-05T12:03:32Z 52.52393931 13.29865443 16.25 -2015-09-05T12:03:33Z 52.52382556 13.29879402 16.25 -2015-09-05T12:03:34Z 52.52369592 13.29894445 16.35 -2015-09-05T12:03:35Z 52.52356831 13.29910014 16.5 -2015-09-05T12:03:37Z 52.52335459 13.29937581 16 -2015-09-05T12:03:38Z 52.52324243 13.29950933 18 -2015-09-05T12:03:39Z 52.52312211 13.29963199 18 -2015-09-05T12:03:40Z 52.52303124 13.29973969 18 -2015-09-05T12:03:41Z 52.52295028 13.29984474 13 -2015-09-05T12:03:42Z 52.52288635 13.29992611 8 -2015-09-05T12:03:43Z 52.52270078 13.30014976 0 -2015-09-05T12:03:44Z 52.52270078 13.30014976 0 -2015-09-05T12:03:45Z 52.52270078 13.30014976 0 -2015-09-05T12:03:46Z 52.52270078 13.30014976 0 -2015-09-05T12:03:47Z 52.52270078 13.30014976 0 -2015-09-05T12:03:48Z 52.52270078 13.30014976 0 -2015-09-05T12:03:49Z 52.52270078 13.30014976 0 -2015-09-05T12:03:50Z 52.52270078 13.30014976 0 -2015-09-05T12:03:51Z 52.52270078 13.30014976 0 -2015-09-05T12:03:52Z 52.52270078 13.30014976 0 -2015-09-05T12:03:53Z 52.52270078 13.30014976 0 -2015-09-05T12:03:54Z 52.52270078 13.30014976 0 -2015-09-05T12:03:55Z 52.52270078 13.30014976 0 -2015-09-05T12:03:56Z 52.52270078 13.30014976 0 -2015-09-05T12:03:57Z 52.52270078 13.30014976 0 -2015-09-05T12:03:58Z 52.52270078 13.30014976 0 -2015-09-05T12:04:20Z 52.52270078 13.30014976 0 -2015-09-05T12:04:21Z 52.52266043 13.30018077 5.25 -2015-09-05T12:04:22Z 52.52258997 13.30024809 9 -2015-09-05T12:04:23Z 52.5225277 13.30030886 12 -2015-09-05T12:04:24Z 52.52244695 13.30031455 15 -2015-09-05T12:04:25Z 52.52236198 13.30029215 15 -2015-09-05T12:04:26Z 52.52226481 13.30024054 15 -2015-09-05T12:04:27Z 52.52217005 13.30020629 15 -2015-09-05T12:04:28Z 52.52206983 13.3001551 18 -2015-09-05T12:04:30Z 52.52185322 13.30001279 18 -2015-09-05T12:04:31Z 52.52172351 13.29992714 14 -2015-09-05T12:04:32Z 52.52159554 13.2998622 14.75 -2015-09-05T12:04:33Z 52.52146475 13.29978099 15.25 -2015-09-05T12:04:34Z 52.52133872 13.29969814 15.75 -2015-09-05T12:04:35Z 52.52120957 13.29961165 15.5 -2015-09-05T12:04:36Z 52.52107981 13.2995404 15 -2015-09-05T12:04:38Z 52.52086158 13.29941319 13.25 -2015-09-05T12:04:40Z 52.52064769 13.29935942 12.25 -2015-09-05T12:04:41Z 52.52054688 13.29936738 11.5 -2015-09-05T12:04:43Z 52.52036739 13.29939421 10.25 -2015-09-05T12:04:44Z 52.52027373 13.29942033 6 -2015-09-05T12:04:45Z 52.52000411 13.29948771 0 -2015-09-05T12:04:46Z 52.52000411 13.29948771 0 -2015-09-05T12:04:47Z 52.52000411 13.29948771 0 -2015-09-05T12:04:48Z 52.52000411 13.29948771 0 -2015-09-05T12:04:49Z 52.52000411 13.29948771 0 -2015-09-05T12:04:50Z 52.52000411 13.29948771 0 -2015-09-05T12:04:51Z 52.52000411 13.29948771 0 -2015-09-05T12:04:52Z 52.52000411 13.29948771 0 -2015-09-05T12:04:53Z 52.52000411 13.29948771 0 -2015-09-05T12:04:54Z 52.52000411 13.29948771 0 -2015-09-05T12:04:55Z 52.52000411 13.29948771 0 -2015-09-05T12:04:56Z 52.52000411 13.29948771 0 -2015-09-05T12:04:57Z 52.52000411 13.29948771 0 -2015-09-05T12:04:58Z 52.52000411 13.29948771 0 -2015-09-05T12:04:59Z 52.52000411 13.29948771 0 -2015-09-05T12:05:00Z 52.52000411 13.29948771 0 -2015-09-05T12:05:01Z 52.52000411 13.29948771 0 -2015-09-05T12:05:23Z 52.52000411 13.29948771 0 -2015-09-05T12:05:24Z 52.51997058 13.29952102 5 -2015-09-05T12:05:25Z 52.51992366 13.29953263 7 -2015-09-05T12:05:26Z 52.51987437 13.29954327 7 -2015-09-05T12:05:27Z 52.51980357 13.29954852 7.5 -2015-09-05T12:05:28Z 52.51972331 13.29958992 9 -2015-09-05T12:05:29Z 52.51964802 13.29963821 12 -2015-09-05T12:05:30Z 52.51957361 13.29972032 12 -2015-09-05T12:05:31Z 52.51950862 13.29986188 12 -2015-09-05T12:05:32Z 52.51945385 13.30000737 12 -2015-09-05T12:05:33Z 52.51938922 13.30018513 12.75 -2015-09-05T12:05:34Z 52.51933148 13.30035667 13.75 -2015-09-05T12:05:35Z 52.51926274 13.30054898 14.5 -2015-09-05T12:05:36Z 52.51920375 13.3007182 15.5 -2015-09-05T12:05:37Z 52.51913195 13.30090806 16.25 -2015-09-05T12:05:38Z 52.51905919 13.30111873 16.75 -2015-09-05T12:05:39Z 52.51898637 13.30134444 17.25 -2015-09-05T12:05:40Z 52.51890618 13.30158713 17.75 -2015-09-05T12:05:41Z 52.51882863 13.30181532 18.25 -2015-09-05T12:05:42Z 52.51874697 13.30206403 18.75 -2015-09-05T12:05:43Z 52.51866892 13.30232409 18.75 -2015-09-05T12:05:44Z 52.51858636 13.30255307 18.75 -2015-09-05T12:05:45Z 52.51850846 13.30280425 18.75 -2015-09-05T12:05:46Z 52.51843293 13.30305877 18.25 -2015-09-05T12:05:47Z 52.51836511 13.30327293 18 -2015-09-05T12:05:48Z 52.51829479 13.30350592 17.75 -2015-09-05T12:05:49Z 52.51821382 13.30374217 17.25 -2015-09-05T12:05:50Z 52.51815266 13.30395237 16.75 -2015-09-05T12:05:51Z 52.51808531 13.30418719 16.5 -2015-09-05T12:05:52Z 52.51802467 13.30439865 16.5 -2015-09-05T12:05:53Z 52.51796402 13.3046112 16 -2015-09-05T12:05:54Z 52.51790743 13.30481738 16 -2015-09-05T12:05:55Z 52.51784005 13.30502199 16 -2015-09-05T12:05:56Z 52.51777177 13.30524862 16.25 -2015-09-05T12:05:57Z 52.51770337 13.30544136 16.5 -2015-09-05T12:05:58Z 52.51762094 13.30564341 16.75 -2015-09-05T12:05:59Z 52.51752851 13.30586256 17 -2015-09-05T12:06:00Z 52.51748413 13.30609422 17.5 -2015-09-05T12:06:01Z 52.51741946 13.30632815 17.25 -2015-09-05T12:06:02Z 52.51734146 13.30657572 17.5 -2015-09-05T12:06:03Z 52.51728833 13.30679264 17.75 -2015-09-05T12:06:04Z 52.51721395 13.30703329 18 -2015-09-05T12:06:05Z 52.51713213 13.30726669 18.25 -2015-09-05T12:06:06Z 52.51704695 13.30749755 18.25 -2015-09-05T12:06:07Z 52.51695347 13.30776367 18.75 -2015-09-05T12:06:08Z 52.51688035 13.30798499 18.5 -2015-09-05T12:06:09Z 52.51683924 13.30826377 18.75 -2015-09-05T12:06:10Z 52.51676332 13.30852511 18.75 -2015-09-05T12:06:11Z 52.51666019 13.30876472 18.75 -2015-09-05T12:06:12Z 52.51662237 13.30905154 18.5 -2015-09-05T12:06:13Z 52.51656674 13.30928029 18.25 -2015-09-05T12:06:14Z 52.51648419 13.30947686 17.5 -2015-09-05T12:06:15Z 52.5163775 13.309703 17.25 -2015-09-05T12:06:16Z 52.51628199 13.3099192 17.25 -2015-09-05T12:06:17Z 52.51616648 13.31011033 17 -2015-09-05T12:06:19Z 52.51602967 13.31055605 16.75 -2015-09-05T12:06:20Z 52.51597211 13.31074222 16.25 -2015-09-05T12:06:22Z 52.51582736 13.31114177 16.25 -2015-09-05T12:06:23Z 52.51575417 13.31140106 17 -2015-09-05T12:06:24Z 52.5157159 13.31160443 17 -2015-09-05T12:06:25Z 52.5156643 13.31183259 17 -2015-09-05T12:06:27Z 52.5155041 13.31225099 17 -2015-09-05T12:06:28Z 52.51546634 13.31252787 17 -2015-09-05T12:06:29Z 52.51539252 13.31276737 17.25 -2015-09-05T12:06:30Z 52.51532149 13.31299404 17.25 -2015-09-05T12:06:31Z 52.51524136 13.31317206 17 -2015-09-05T12:06:32Z 52.51517672 13.31339142 17 -2015-09-05T12:06:33Z 52.51509301 13.31364148 17 -2015-09-05T12:06:34Z 52.51501412 13.31388762 17 -2015-09-05T12:06:35Z 52.51495314 13.31406691 16 -2015-09-05T12:06:36Z 52.51489388 13.31426441 14.75 -2015-09-05T12:06:37Z 52.51485489 13.31442888 13 -2015-09-05T12:06:38Z 52.51483603 13.31458792 11.5 -2015-09-05T12:06:39Z 52.51474913 13.31465827 9.25 -2015-09-05T12:06:40Z 52.51470297 13.31471572 1.5 -2015-09-05T12:06:41Z 52.51469785 13.31480612 0 -2015-09-05T12:06:42Z 52.51469785 13.31480612 0 -2015-09-05T12:06:43Z 52.51469785 13.31480612 0 -2015-09-05T12:06:44Z 52.51469785 13.31480612 0 -2015-09-05T12:06:45Z 52.51469785 13.31480612 0 -2015-09-05T12:06:46Z 52.51469785 13.31480612 0 -2015-09-05T12:06:47Z 52.51469785 13.31480612 0 -2015-09-05T12:06:48Z 52.51469785 13.31480612 0 -2015-09-05T12:06:49Z 52.51469785 13.31480612 0 -2015-09-05T12:06:50Z 52.51469785 13.31480612 0 -2015-09-05T12:06:51Z 52.51469785 13.31480612 0 -2015-09-05T12:06:52Z 52.51469785 13.31480612 0 -2015-09-05T12:06:53Z 52.51469785 13.31480612 0 -2015-09-05T12:06:54Z 52.51469785 13.31480612 0 -2015-09-05T12:06:55Z 52.51469785 13.31480612 0 -2015-09-05T12:06:56Z 52.51469785 13.31480612 0 -2015-09-05T12:07:09Z 52.51465785 13.31490612 2.75 -2015-09-05T12:07:10Z 52.51464824 13.31491989 9 -2015-09-05T12:07:11Z 52.51460879 13.31503769 12 -2015-09-05T12:07:13Z 52.51453201 13.3153324 13 -2015-09-05T12:07:14Z 52.51448914 13.31549457 16 -2015-09-05T12:07:15Z 52.51445648 13.31568393 18 -2015-09-05T12:07:16Z 52.51439381 13.31588408 20 -2015-09-05T12:07:17Z 52.51435193 13.31607364 16 -2015-09-05T12:07:18Z 52.51429047 13.31627832 15.75 -2015-09-05T12:07:19Z 52.51424136 13.31653842 15.75 -2015-09-05T12:07:20Z 52.51415344 13.31669077 15.5 -2015-09-05T12:07:21Z 52.51407088 13.31686736 15.5 -2015-09-05T12:07:22Z 52.513984 13.31711846 16.25 -2015-09-05T12:07:24Z 52.51384149 13.31750164 16.25 -2015-09-05T12:07:25Z 52.5137931 13.31771783 16.25 -2015-09-05T12:07:26Z 52.51378228 13.31797915 16.5 -2015-09-05T12:07:27Z 52.51375122 13.31822475 16.75 -2015-09-05T12:07:28Z 52.51374125 13.31847759 17 -2015-09-05T12:07:29Z 52.51370054 13.31873135 17 -2015-09-05T12:07:30Z 52.51367538 13.3189733 17 -2015-09-05T12:07:31Z 52.51366241 13.3191887 16.5 -2015-09-05T12:07:33Z 52.51353135 13.31964239 16.5 -2015-09-05T12:07:34Z 52.51347898 13.31984191 15.5 -2015-09-05T12:07:35Z 52.51343441 13.32006123 14.5 -2015-09-05T12:07:36Z 52.51340483 13.32021639 13 -2015-09-05T12:07:37Z 52.51336041 13.32036272 11 -2015-09-05T12:07:38Z 52.51332265 13.32048619 0 -2015-09-05T12:07:39Z 52.51329181 13.32056736 0 -2015-09-05T12:07:40Z 52.51325586 13.32067519 0 -2015-09-05T12:07:41Z 52.51325586 13.32067519 0 -2015-09-05T12:07:42Z 52.51325586 13.32067519 0 -2015-09-05T12:07:43Z 52.51325586 13.32067519 0 -2015-09-05T12:07:44Z 52.51325586 13.32067519 0 -2015-09-05T12:07:45Z 52.51325586 13.32067519 0 -2015-09-05T12:07:46Z 52.51325586 13.32067519 0 -2015-09-05T12:07:47Z 52.51325586 13.32067519 0 -2015-09-05T12:07:50Z 52.5131997 13.32080423 1 -2015-09-05T12:07:51Z 52.51317166 13.32084133 6 -2015-09-05T12:07:52Z 52.51311109 13.32088309 6 -2015-09-05T12:07:53Z 52.51303037 13.32092266 10 -2015-09-05T12:07:54Z 52.51289099 13.32085504 10.5 -2015-09-05T12:07:56Z 52.51274925 13.32076634 10 -2015-09-05T12:07:57Z 52.51263743 13.32075369 10.5 -2015-09-05T12:07:58Z 52.51255666 13.32076405 10.5 -2015-09-05T12:08:00Z 52.51234885 13.32086301 11.25 -2015-09-05T12:08:01Z 52.51225438 13.32093336 11.75 -2015-09-05T12:08:02Z 52.51217009 13.32103141 11.75 -2015-09-05T12:08:03Z 52.51207921 13.32116016 12.25 -2015-09-05T12:08:05Z 52.51214781 13.32270956 12.7 -2015-09-05T12:08:06Z 52.51230816 13.32284169 13.25 -2015-09-05T12:08:08Z 52.51251695 13.32295316 12.75 -2015-09-05T12:08:09Z 52.51262432 13.32292613 12.5 -2015-09-05T12:08:10Z 52.51273709 13.32287272 12.75 -2015-09-05T12:08:11Z 52.51285769 13.32281078 13.25 -2015-09-05T12:08:12Z 52.51295951 13.32269025 13.75 -2015-09-05T12:08:13Z 52.51304233 13.32254193 13.75 -2015-09-05T12:08:14Z 52.5131087 13.32237261 14.25 -2015-09-05T12:08:15Z 52.51311077 13.32217575 14.2 -2015-09-05T12:08:16Z 52.51313152 13.32196235 14.1 -2015-09-05T12:08:17Z 52.51314044 13.32174364 14 -2015-09-05T12:08:18Z 52.51315201 13.3215268 13.5 -2015-09-05T12:08:19Z 52.51318207 13.32133836 13.25 -2015-09-05T12:08:20Z 52.51323447 13.32113891 13.75 -2015-09-05T12:08:21Z 52.51329679 13.32095033 14.5 -2015-09-05T12:08:22Z 52.51335489 13.32074722 15.25 -2015-09-05T12:08:23Z 52.51341395 13.32053648 15.75 -2015-09-05T12:08:24Z 52.51348638 13.32028898 17 -2015-09-05T12:08:25Z 52.51354711 13.32003764 17.5 -2015-09-05T12:08:26Z 52.51360387 13.31979319 18 -2015-09-05T12:08:27Z 52.51363858 13.3195135 18 -2015-09-05T12:08:28Z 52.51369441 13.31926256 17.75 -2015-09-05T12:08:29Z 52.51372804 13.31902817 17.5 -2015-09-05T12:08:30Z 52.51376256 13.31876519 17.25 -2015-09-05T12:08:31Z 52.51381141 13.31855713 16.25 -2015-09-05T12:08:32Z 52.51382721 13.3183204 16.25 -2015-09-05T12:08:33Z 52.51386389 13.31809115 16 -2015-09-05T12:08:34Z 52.51390202 13.31785843 16.25 -2015-09-05T12:08:35Z 52.51394914 13.31761346 16.5 -2015-09-05T12:08:36Z 52.51401622 13.31738128 17 -2015-09-05T12:08:37Z 52.51408384 13.31716736 17 -2015-09-05T12:08:38Z 52.51414812 13.31692614 16.75 -2015-09-05T12:08:39Z 52.51421129 13.31671957 16 -2015-09-05T12:08:40Z 52.51427263 13.31651899 15 -2015-09-05T12:08:41Z 52.51434021 13.31633435 14.25 -2015-09-05T12:08:42Z 52.51438284 13.31616873 12.75 -2015-09-05T12:08:43Z 52.51443779 13.31602125 11.25 -2015-09-05T12:08:44Z 52.51447041 13.31590413 6 -2015-09-05T12:08:45Z 52.51450255 13.3158068 4 -2015-09-05T12:08:46Z 52.51452573 13.31573601 2 -2015-09-05T12:08:47Z 52.51458117 13.31561048 0 -2015-09-05T12:08:48Z 52.51458117 13.31561048 0 -2015-09-05T12:08:49Z 52.51458117 13.31561048 0 -2015-09-05T12:08:50Z 52.51458117 13.31561048 0 -2015-09-05T12:08:51Z 52.51458117 13.31561048 0 -2015-09-05T12:08:52Z 52.51458117 13.31561048 0 -2015-09-05T12:08:53Z 52.51458117 13.31561048 0 -2015-09-05T12:08:54Z 52.51458117 13.31561048 0 -2015-09-05T12:08:55Z 52.51458117 13.31561048 0 -2015-09-05T12:08:56Z 52.51458117 13.31561048 0 -2015-09-05T12:08:57Z 52.51458117 13.31561048 0 -2015-09-05T12:08:58Z 52.51458117 13.31561048 0 -2015-09-05T12:08:59Z 52.51458117 13.31561048 0 -2015-09-05T12:09:00Z 52.51458117 13.31561048 0 -2015-09-05T12:09:01Z 52.51458117 13.31561048 0 -2015-09-05T12:09:25Z 52.51458117 13.31561048 0 -2015-09-05T12:09:26Z 52.51458959 13.31557205 0.5 -2015-09-05T12:09:27Z 52.5146037 13.31555254 2 -2015-09-05T12:09:28Z 52.51462065 13.3154895 6 -2015-09-05T12:09:29Z 52.51463745 13.31540706 8 -2015-09-05T12:09:30Z 52.51468456 13.31529157 12 -2015-09-05T12:09:31Z 52.51472741 13.3151552 13 -2015-09-05T12:09:32Z 52.51477592 13.31501556 15 -2015-09-05T12:09:33Z 52.51482271 13.3148667 15 -2015-09-05T12:09:34Z 52.51488544 13.31471432 15 -2015-09-05T12:09:35Z 52.51494017 13.31456723 15 -2015-09-05T12:09:36Z 52.51498837 13.31438972 15 -2015-09-05T12:09:37Z 52.51503578 13.31422477 15 -2015-09-05T12:09:38Z 52.51508779 13.3140462 13 -2015-09-05T12:09:39Z 52.51514339 13.31387257 13.25 -2015-09-05T12:09:40Z 52.51519184 13.31369578 13.5 -2015-09-05T12:09:42Z 52.51530435 13.3133285 14 -2015-09-05T12:09:43Z 52.51535864 13.31315645 15 -2015-09-05T12:09:45Z 52.5154552 13.31280059 18 -2015-09-05T12:09:46Z 52.51551402 13.31263086 19 -2015-09-05T12:09:48Z 52.51562248 13.31228079 20 -2015-09-05T12:09:49Z 52.51568292 13.31213092 20 -2015-09-05T12:09:51Z 52.51579681 13.31179846 20 -2015-09-05T12:09:53Z 52.51589293 13.31146501 20 -2015-09-05T12:09:55Z 52.51600254 13.31112553 20 -2015-09-05T12:09:56Z 52.51605527 13.31095383 20 -2015-09-05T12:09:57Z 52.51612055 13.31079039 20 -2015-09-05T12:09:58Z 52.51618294 13.31060619 20 -2015-09-05T12:10:00Z 52.51630298 13.31026351 13.5 -2015-09-05T12:10:01Z 52.51635003 13.31008531 13.25 -2015-09-05T12:10:02Z 52.51639668 13.30993061 13.25 -2015-09-05T12:10:03Z 52.51645212 13.30975234 12 -2015-09-05T12:10:04Z 52.51650975 13.30957448 10 -2015-09-05T12:10:05Z 52.51656513 13.30939207 7 -2015-09-05T12:10:06Z 52.51663388 13.30919918 7 -2015-09-05T12:10:07Z 52.51670258 13.30900076 7 -2015-09-05T12:10:08Z 52.51676824 13.30879639 10 -2015-09-05T12:10:09Z 52.51683494 13.30859887 15.75 -2015-09-05T12:10:10Z 52.51690757 13.308374 16 -2015-09-05T12:10:11Z 52.51698065 13.3081616 16 -2015-09-05T12:10:12Z 52.51704719 13.30794978 16 -2015-09-05T12:10:13Z 52.51711191 13.30775863 15.75 -2015-09-05T12:10:14Z 52.51719182 13.30754842 15.5 -2015-09-05T12:10:15Z 52.51725976 13.30734841 15.5 -2015-09-05T12:10:16Z 52.51732474 13.3071543 18 -2015-09-05T12:10:18Z 52.51745021 13.30677966 18 -2015-09-05T12:10:19Z 52.51750779 13.30658969 14.25 -2015-09-05T12:10:20Z 52.51756293 13.30640322 14 -2015-09-05T12:10:21Z 52.51761043 13.30621389 14 -2015-09-05T12:10:22Z 52.51767758 13.30603651 13 -2015-09-05T12:10:23Z 52.51774167 13.30586197 12 -2015-09-05T12:10:24Z 52.51779302 13.30569393 10 -2015-09-05T12:10:25Z 52.51784079 13.30553502 8 -2015-09-05T12:10:26Z 52.51788982 13.30539687 5 -2015-09-05T12:10:27Z 52.51793912 13.30525613 3 -2015-09-05T12:10:28Z 52.51796748 13.30517596 2 -2015-09-05T12:10:29Z 52.51798748 13.30508945 1 -2015-09-05T12:10:30Z 52.51801022 13.30502392 1 -2015-09-05T12:10:31Z 52.51802137 13.30495774 2 -2015-09-05T12:10:32Z 52.51803007 13.30491356 2 -2015-09-05T12:10:33Z 52.51804218 13.30488569 2 -2015-09-05T12:10:35Z 52.51804912 13.30486271 1 -2015-09-05T12:10:36Z 52.51804912 13.30486271 0 -2015-09-05T12:10:37Z 52.51804912 13.30486271 0 -2015-09-05T12:10:38Z 52.51804912 13.30486271 0 -2015-09-05T12:10:39Z 52.51804912 13.30486271 0 -2015-09-05T12:10:40Z 52.51804912 13.30486271 0 -2015-09-05T12:10:41Z 52.51804912 13.30486271 0 -2015-09-05T12:10:42Z 52.51804912 13.30486271 0 -2015-09-05T12:10:43Z 52.51804912 13.30486271 0 -2015-09-05T12:10:44Z 52.51804912 13.30486271 0 -2015-09-05T12:10:48Z 52.51804912 13.30486271 0 -2015-09-05T12:10:49Z 52.51804912 13.30486271 0 -2015-09-05T12:11:01Z 52.51804912 13.30486271 0 -2015-09-05T12:11:02Z 52.51804912 13.30486271 4 -2015-09-05T12:11:03Z 52.51800781 13.30475134 5 -2015-09-05T12:11:04Z 52.51801696 13.30469243 6 -2015-09-05T12:11:06Z 52.5181044 13.30444051 9.25 -2015-09-05T12:11:07Z 52.51815052 13.30429866 10.25 -2015-09-05T12:11:08Z 52.51819516 13.30415184 11.5 -2015-09-05T12:11:09Z 52.51825246 13.30401051 11.75 -2015-09-05T12:11:10Z 52.51829686 13.30384851 11.25 -2015-09-05T12:11:11Z 52.51833352 13.30372125 9.75 -2015-09-05T12:11:13Z 52.51841078 13.30351054 7.75 -2015-09-05T12:11:14Z 52.51843562 13.30340522 7.5 -2015-09-05T12:11:16Z 52.51850442 13.30318839 8.25 -2015-09-05T12:11:18Z 52.51856951 13.30294865 9.75 -2015-09-05T12:11:19Z 52.51861796 13.30279111 11 -2015-09-05T12:11:20Z 52.51866996 13.30262715 12.5 -2015-09-05T12:11:21Z 52.51873058 13.30246211 13.25 -2015-09-05T12:11:22Z 52.51879997 13.30228942 13.5 -2015-09-05T12:11:23Z 52.51886097 13.30211154 13.75 -2015-09-05T12:11:24Z 52.51892107 13.30193237 14 -2015-09-05T12:11:25Z 52.51897777 13.30174976 14.5 -2015-09-05T12:11:26Z 52.51905809 13.30155939 15 -2015-09-05T12:11:27Z 52.51913377 13.301359 15.25 -2015-09-05T12:11:28Z 52.51921977 13.30116434 15.75 -2015-09-05T12:11:29Z 52.51930561 13.30095953 16.25 -2015-09-05T12:11:30Z 52.51937872 13.30075751 16.25 -2015-09-05T12:11:31Z 52.51944759 13.3005527 15.75 -2015-09-05T12:11:32Z 52.51950584 13.30036324 14.5 -2015-09-05T12:11:33Z 52.51955125 13.30018836 13.5 -2015-09-05T12:11:34Z 52.51960489 13.30003223 12.25 -2015-09-05T12:11:35Z 52.51965449 13.29988291 11 -2015-09-05T12:11:37Z 52.51976052 13.2996446 10.5 -2015-09-05T12:11:38Z 52.51987735 13.29962687 11.25 -2015-09-05T12:11:40Z 52.52009518 13.29956333 12 -2015-09-05T12:11:42Z 52.52037327 13.29950752 14.75 -2015-09-05T12:11:43Z 52.52051321 13.29949076 15.25 -2015-09-05T12:11:44Z 52.52066204 13.29951053 15.5 -2015-09-05T12:11:45Z 52.5207916 13.29954042 15.25 -2015-09-05T12:11:46Z 52.52093853 13.29962429 16.25 -2015-09-05T12:11:47Z 52.52109696 13.29972242 17.25 -2015-09-05T12:11:48Z 52.521241 13.29982149 17.25 -2015-09-05T12:11:49Z 52.52137435 13.29989859 16.75 -2015-09-05T12:11:50Z 52.52150827 13.29999164 16 -2015-09-05T12:11:51Z 52.52164926 13.30004386 16 -2015-09-05T12:11:52Z 52.5217681 13.30010016 15.25 -2015-09-05T12:11:54Z 52.52200134 13.3002516 13 -2015-09-05T12:11:55Z 52.52210925 13.30030384 12 -2015-09-05T12:11:57Z 52.52231585 13.30038282 12 -2015-09-05T12:11:58Z 52.52243302 13.30040604 12 -2015-09-05T12:12:00Z 52.52261254 13.3003431 10.5 -2015-09-05T12:12:01Z 52.52271428 13.30021824 12.5 -2015-09-05T12:12:02Z 52.52281451 13.30008364 13.75 -2015-09-05T12:12:03Z 52.52292202 13.29994087 14.75 -2015-09-05T12:12:04Z 52.52303252 13.29978834 15.75 -2015-09-05T12:12:05Z 52.5231482 13.29965158 16.5 -2015-09-05T12:12:06Z 52.52327826 13.29949762 16.75 -2015-09-05T12:12:07Z 52.52340368 13.29935447 16.75 -2015-09-05T12:12:08Z 52.52352101 13.29920172 16.75 -2015-09-05T12:12:09Z 52.52365446 13.29905746 17 -2015-09-05T12:12:10Z 52.52378148 13.29890353 17.25 -2015-09-05T12:12:12Z 52.52402153 13.29860641 16.75 -2015-09-05T12:12:13Z 52.52411081 13.29841702 16.5 -2015-09-05T12:12:14Z 52.52424135 13.29830058 16.5 -2015-09-05T12:12:15Z 52.52436638 13.29816737 16 -2015-09-05T12:12:16Z 52.52446716 13.2980157 16 -2015-09-05T12:12:17Z 52.52462973 13.29798207 17 -2015-09-05T12:12:18Z 52.52480111 13.29794531 17 -2015-09-05T12:12:19Z 52.52494289 13.29786495 17 -2015-09-05T12:12:20Z 52.52509265 13.29780823 16.75 -2015-09-05T12:12:22Z 52.52539702 13.29770767 16.5 -2015-09-05T12:12:23Z 52.52554415 13.29766138 16.25 -2015-09-05T12:12:24Z 52.52566597 13.29762643 15.75 -2015-09-05T12:12:25Z 52.52579703 13.29757963 15 -2015-09-05T12:12:27Z 52.52602969 13.29751156 13.25 -2015-09-05T12:12:28Z 52.52613122 13.29749605 8 -2015-09-05T12:12:30Z 52.52626736 13.29744551 2 -2015-09-05T12:12:31Z 52.52631239 13.29742453 6 -2015-09-05T12:12:32Z 52.52636239 13.29741986 7 -2015-09-05T12:12:33Z 52.52637241 13.2973977 8 -2015-09-05T12:12:34Z 52.52638461 13.29738601 8 -2015-09-05T12:12:36Z 52.52649587 13.29735565 10 -2015-09-05T12:12:37Z 52.52656971 13.29734089 10 -2015-09-05T12:12:39Z 52.52675742 13.29727581 13 -2015-09-05T12:12:40Z 52.52685465 13.29724524 13 -2015-09-05T12:12:41Z 52.52698288 13.29721363 13.75 -2015-09-05T12:12:42Z 52.52712815 13.29718887 15 -2015-09-05T12:12:43Z 52.52727466 13.29714275 15.5 -2015-09-05T12:12:44Z 52.52741721 13.29710303 16 -2015-09-05T12:12:45Z 52.5275556 13.29706051 16.75 -2015-09-05T12:12:46Z 52.52770829 13.2970188 17 -2015-09-05T12:12:47Z 52.5278635 13.29697924 17 -2015-09-05T12:12:48Z 52.52801656 13.29691754 17.25 -2015-09-05T12:12:49Z 52.52816582 13.29688778 17.25 -2015-09-05T12:12:50Z 52.52829543 13.29686867 17 -2015-09-05T12:12:51Z 52.52845507 13.29682107 17 -2015-09-05T12:12:52Z 52.52858996 13.29677423 16 -2015-09-05T12:12:53Z 52.52871555 13.2967109 15.5 -2015-09-05T12:12:54Z 52.52885921 13.29665282 14.5 -2015-09-05T12:12:56Z 52.52895502 13.29660091 12.75 -2015-09-05T12:12:56Z 52.52904896 13.29656869 10.5 -2015-09-05T12:12:57Z 52.52912413 13.2965424 8.25 -2015-09-05T12:12:58Z 52.52918585 13.29653271 7.5 -2015-09-05T12:13:00Z 52.52921653 13.29651073 2 -2015-09-05T12:13:01Z 52.52922238 13.29649367 1.5 -2015-09-05T12:13:02Z 52.52925618 13.29647736 1.5 -2015-09-05T12:13:03Z 52.52930662 13.2964524 7 -2015-09-05T12:13:04Z 52.52937431 13.29641287 9 -2015-09-05T12:13:05Z 52.5294619 13.29639276 10.25 -2015-09-05T12:13:07Z 52.52965845 13.29630116 11.25 -2015-09-05T12:13:09Z 52.52982795 13.29621996 12 -2015-09-05T12:13:10Z 52.52994764 13.29620619 12 -2015-09-05T12:13:12Z 52.53010295 13.29612776 9 -2015-09-05T12:13:13Z 52.53013393 13.2961206 5.75 -2015-09-05T12:13:14Z 52.53016507 13.29610034 1 -2015-09-05T12:13:15Z 52.53019422 13.29608721 1 -2015-09-05T12:13:16Z 52.53020801 13.29606935 0.75 -2015-09-05T12:13:17Z 52.5302122 13.29606274 1.25 -2015-09-05T12:13:18Z 52.53024946 13.29604821 6 -2015-09-05T12:13:19Z 52.53030715 13.29602334 9 -2015-09-05T12:13:20Z 52.53038711 13.29598857 10 -2015-09-05T12:13:21Z 52.53047083 13.29596657 10 -2015-09-05T12:13:22Z 52.53057842 13.29592935 11.25 -2015-09-05T12:13:23Z 52.53068405 13.29588008 12.5 -2015-09-05T12:13:24Z 52.5308031 13.29581818 13 -2015-09-05T12:13:26Z 52.53093986 13.295783 14.25 -2015-09-05T12:13:26Z 52.53106913 13.295731 14.75 -2015-09-05T12:13:27Z 52.53121371 13.29568037 15.75 -2015-09-05T12:13:28Z 52.53136392 13.29559031 16.25 -2015-09-05T12:13:29Z 52.53151062 13.29550828 16.75 -2015-09-05T12:13:30Z 52.5316618 13.29541943 17.5 -2015-09-05T12:13:31Z 52.53181286 13.29533433 18 -2015-09-05T12:13:32Z 52.53196492 13.29525693 18.25 -2015-09-05T12:13:33Z 52.53210498 13.295164 18 -2015-09-05T12:13:34Z 52.53225574 13.29505752 17.5 -2015-09-05T12:13:35Z 52.53239675 13.29495972 16.75 -2015-09-05T12:13:36Z 52.53252495 13.29488186 15.25 -2015-09-05T12:13:37Z 52.53265589 13.29479821 15 -2015-09-05T12:13:38Z 52.53275829 13.29471747 13.25 -2015-09-05T12:13:39Z 52.53287997 13.29464164 13 -2015-09-05T12:13:40Z 52.53295934 13.29460103 10.75 -2015-09-05T12:13:41Z 52.53304084 13.29455206 10 -2015-09-05T12:13:42Z 52.53312045 13.29450915 9 -2015-09-05T12:13:43Z 52.53319693 13.29447321 8.5 -2015-09-05T12:13:44Z 52.5332477 13.29441171 7.5 -2015-09-05T12:13:45Z 52.53328871 13.29437949 6.5 -2015-09-05T12:13:46Z 52.53335948 13.2943418 7.25 -2015-09-05T12:13:47Z 52.53343417 13.29429497 8.5 -2015-09-05T12:13:48Z 52.53350265 13.29424339 8.5 -2015-09-05T12:13:49Z 52.53355621 13.29417582 8.5 -2015-09-05T12:13:50Z 52.53362195 13.29412472 8.5 -2015-09-05T12:13:51Z 52.53370878 13.29404578 9.75 -2015-09-05T12:13:52Z 52.533759 13.29401406 8.75 -2015-09-05T12:13:53Z 52.53380292 13.29398094 7 -2015-09-05T12:13:54Z 52.53384919 13.29396634 5.75 -2015-09-05T12:13:55Z 52.53389085 13.2939574 1 -2015-09-05T12:13:56Z 52.53391694 13.2939574 1 -2015-09-05T12:13:57Z 52.53392919 13.2939574 0.25 -2015-09-05T12:13:58Z 52.53392919 13.2939574 0 -2015-09-05T12:13:59Z 52.53392919 13.2939574 0 -2015-09-05T12:14:00Z 52.53392919 13.2939574 0 -2015-09-05T12:14:01Z 52.53392919 13.2939574 0 -2015-09-05T12:14:02Z 52.53392919 13.2939574 0 -2015-09-05T12:14:03Z 52.53392919 13.2939574 0 -2015-09-05T12:14:04Z 52.53392919 13.2939574 0 -2015-09-05T12:14:05Z 52.53392919 13.2939574 0 -2015-09-05T12:14:06Z 52.53392919 13.2939574 0.5 -2015-09-05T12:14:07Z 52.53402049 13.29395039 4 -2015-09-05T12:14:08Z 52.53402049 13.29395039 8 -2015-09-05T12:14:09Z 52.53409993 13.29398429 8.5 -2015-09-05T12:14:10Z 52.5341833 13.29402841 9.5 -2015-09-05T12:14:11Z 52.53427766 13.29409014 10.75 -2015-09-05T12:14:12Z 52.53436979 13.29414148 10.75 -2015-09-05T12:14:13Z 52.53446361 13.29414203 10 -2015-09-05T12:14:14Z 52.53456694 13.29410642 9 -2015-09-05T12:14:15Z 52.53466426 13.29402845 6 -2015-09-05T12:14:16Z 52.53474216 13.29390552 4 - diff --git a/doc/src/snippets/qtcluster/qml/ConsumptionView.qml b/doc/src/snippets/qtcluster/qml/ConsumptionView.qml deleted file mode 100644 index 952a6e29..00000000 --- a/doc/src/snippets/qtcluster/qml/ConsumptionView.qml +++ /dev/null @@ -1,176 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 -import QtQuick.Layouts 1.1 - -import ClusterDemo 1.0 - -Item{ - id: consumptionView - anchors.fill: parent - - ListView { - id: listView - - height: 260 - width: 260 - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left - anchors.leftMargin: (ValueSource.carId === 0) ? parent.width / 6 : parent.width / 4.5 - - header: Item { - width: listView.width - height: 30 - Text { - anchors.fill: parent - text: "Consumption past 100 km" - horizontalAlignment: Text.AlignRight - color: "white" - font.pixelSize: 15 - } - } - - model: 13//contactModel - delegate: Row { - spacing: 15 - Text { - id: levelText - horizontalAlignment: Text.AlignRight - y: -levelText.height / 2 - width: 60 - text: { - if (index === 0) - levelText.text = "900" - else if (index === 9) - levelText.text = "0" - else if (index === 12) - levelText.text = "-300" - else - levelText.text="" - } - color: "#717273" - font.pixelSize: 12 - } - Rectangle { - id: levelLine - visible: index != 6 ? true : false - color: index === 8 ? "#717273" : "#26282a"; - width: index === 8 ? listView.width / 1.5 : listView.width / 1.6; - height: 1 - } - Row { - visible: index === 6 ? true : false - spacing: 4 - Repeater { - model: 22 - Rectangle { - id: avgLine - color: "#717273" - width: 4 - height: 1 - } - } - } - Text { - id: avgTExt - y: -avgTExt.height / 4 - text:{ - if (index === 5) - avgTExt.text = " Avg" - else if (index === 6) - avgTExt.text = "300" - else if (index === 8) - avgTExt.text = "IDEAL" - else - avgTExt.text="" - } - color: "#717273" - font.pixelSize: 12 - } - } - } - - Repeater { - id: repeater - property real listHeaderHeight: listView.headerItem.height - property real listContentItemHeight: listView.contentItem.height - property int listCount: listView.count - property real spaceInPixels: listContentItemHeight / listCount - model: 33 - Rectangle { - id: valueRect - color: { - if (ValueSource.consumption[index] >= 100 ) - "white" - else { - color = (ValueSource.carId === 0) ? "blue" : "#E31E24" - } - } - width: 2 - height: { - var levelCount = ValueSource.consumption[index] / 100 - if (ValueSource.consumption[index] >= 100 ) { - repeater.height = repeater.spaceInPixels * levelCount - - repeater.spaceInPixels - 2 * levelCount //2 is line width - } - else { - repeater.height = Math.abs(repeater.spaceInPixels * levelCount - - 2 * levelCount)//2 is line width) - } - } - x: listView.x + 75 + index * 5 - y:{ - if (ValueSource.consumption[index] >= 100 ) { - repeater.y = (listView.y + repeater.listHeaderHeight - + repeater.spaceInPixels * 7) - height - } - else { - repeater.y = listView.y + repeater.listHeaderHeight - + repeater.spaceInPixels * 7 - } - } - } - - } -} - - - diff --git a/doc/src/snippets/qtcluster/qml/FpsCounter.qml b/doc/src/snippets/qtcluster/qml/FpsCounter.qml deleted file mode 100644 index 46ffb726..00000000 --- a/doc/src/snippets/qtcluster/qml/FpsCounter.qml +++ /dev/null @@ -1,99 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 - -Item { - id: fpscounter - property real fpsNow: 0 - property bool running: false - property alias fpsVisible: fpsLabel.visible - property int fpsInterval: 1000 - property alias color: fpsLabel.color - - Item { - id: swapTest - property real t - NumberAnimation on t { - running: fpscounter.running - from: 0 - to: 1 - duration: fpsInterval - loops: Animation.Infinite - } - onTChanged: { - ++fpsTimer.tick - } - } - - Timer { - id: fpsTimer - running: fpscounter.running - repeat: true - interval: fpsInterval - property var lastFrameTime: new Date() - property int tick - - onTriggered: { - var now = new Date() - var dt = now.getTime() - lastFrameTime.getTime() - lastFrameTime = now - var fps = (tick * fpsInterval) / dt - fpsNow = Math.round(fps * 10) / 10 - tick = 0 - - if (fpsVisible) - fpsLabel.updateYerself() - } - } - - Text { - id: fpsLabel - visible: false - - anchors.centerIn: parent - font.pixelSize: 10 - color: "white" - - function updateYerself() { - text = Math.round(fpsNow) - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/MapView.qml b/doc/src/snippets/qtcluster/qml/MapView.qml deleted file mode 100644 index 59a009db..00000000 --- a/doc/src/snippets/qtcluster/qml/MapView.qml +++ /dev/null @@ -1,136 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 -import QtLocation 5.5 -import QtPositioning 5.5 -import QtGraphicalEffects 1.0 -import ClusterDemo 1.0 - -Item { - width: root.width / 3 - height: width - - Map { - id: map - width: parent.width + 300 - height: parent.height + 300 - x: -150 - y: -150 - property real speed - - plugin: Plugin { - id: plugin - preferred: ["mapbox"] - PluginParameter { name: "mapbox.access_token"; value: "pk.eyJ1IjoicXRjbHVzdGVyIiwiYSI6ImZiYTNiM2I0MDE2NmNlYmY0ZmM5NWMzZDVmYzI4NjFlIn0.uk3t7Oi9lDByIJd2E0vRWg" } - PluginParameter { name: "mapbox.map_id"; value: "qtcluster.ndeb6ce6" } - } - - center: QtPositioning.coordinate(ValueSource.latitude, ValueSource.longitude) - - zoomLevel: 16 - - enabled: false - - rotation: -ValueSource.direction - - Behavior on rotation { - RotationAnimation { - duration: 2000 - direction: RotationAnimation.Shortest - } - } - -// uncomment ifndef QTIVIVEHICLEFUNCTIONS -// PositionSource { -// id: positionSource -// nmeaSource: "qrc:/qml/route.txt" -// onPositionChanged: { - -// if (position.speedValid) { -// // center the map on the current position -// if (position.direction > 0) { -// map.rotation = -position.direction -// map.center = position.coordinate -// } - -// ValueSource.kph = position.speed * 3.6 -// ValueSource.oldSpeed.shift() -// ValueSource.oldSpeed.push(position.speed * 3.6) -// ValueSource.speedChanged() -// //routeStopped.restart() -// } -// } -// } -// Component.onCompleted:{ -// positionSource.start() -// //routeStopped.running = true -// } -// end comment - - Behavior on center { - id: centerBehavior - enabled: true - CoordinateAnimation { duration: 1500 } - } - } - - FastBlur { - anchors.fill: map - source: map - radius: 0.01 - rotation: map.rotation - } - - Image { - id: positionImage - anchors.centerIn: parent - source: mapPositionImage - } - - Text { - color: "white" - anchors.bottom: parent.bottom - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottomMargin: (ValueSource.carId === 0) ? 75 : 0 - font.pixelSize: 9 - text:"© Mapbox © OpenStreetMap" - } -} diff --git a/doc/src/snippets/qtcluster/qml/MediaPlayerView.qml b/doc/src/snippets/qtcluster/qml/MediaPlayerView.qml deleted file mode 100644 index ea9db405..00000000 --- a/doc/src/snippets/qtcluster/qml/MediaPlayerView.qml +++ /dev/null @@ -1,116 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -import ClusterDemo 1.0 - -Item { - id: playerView - - property real xCenter: remainingTimeImage.width / 2 - property real yCenter: remainingTimeImage.height / 2 - property var timeElapsed: ValueSource.musicElapsed - - Image { - id: musicCover - anchors.top: parent.top - anchors.topMargin: (ValueSource.carId === 0) ? 160 : 70 - anchors.horizontalCenter: parent.horizontalCenter - source: "image://etc/MusicPlayer_Cover.png" - } - - Image { - id: remainingTimeImage - anchors.centerIn: musicCover - source: "image://etc/MusicPlayer_CircleRemaining.png" - } - - Text { - id: song - anchors.top: remainingTimeImage.bottom - anchors.topMargin: 10 - anchors.horizontalCenter: remainingTimeImage.horizontalCenter - text: "Tonight's the Night \n(Gonna Be Alright)" - font.pixelSize: 12 - color: "white" - } - Text { - anchors.top: song.bottom - anchors.horizontalCenter: song.horizontalCenter - text: "ROD STEWART" - font.pixelSize: 10 - color: "white" - } - - function paintBackground(ctx) { - ctx.beginPath() - ctx.lineWidth = 2 - ctx.strokeStyle = "white" - ctx.arc(xCenter, yCenter, yCenter - ctx.lineWidth / 2, 1.5 * Math.PI, - 2 * Math.PI * timeElapsed / 100 + 1.5 * Math.PI) - ctx.stroke() - } - - Canvas { - id: canvas - width: remainingTimeImage.width - height: width - anchors.centerIn: musicCover - onPaint: { - var ctx = getContext("2d") - ctx.reset() - paintBackground(ctx) - } - } - onTimeElapsedChanged: { - canvas.requestPaint() - } - - //Do not play music timer if view not visible - Component.onCompleted: ValueSource.musicTimer.running = true - onVisibleChanged: { - if (!visible) - ValueSource.musicTimer.running = false - else - ValueSource.musicTimer.running = true - } -} - diff --git a/doc/src/snippets/qtcluster/qml/TurnIndicator.qml b/doc/src/snippets/qtcluster/qml/TurnIndicator.qml deleted file mode 100644 index a78d92ee..00000000 --- a/doc/src/snippets/qtcluster/qml/TurnIndicator.qml +++ /dev/null @@ -1,64 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 - -Item { - property int direction: Qt.NoArrow - property bool active: false - property bool flashing: false - - property url iconOn: "image://etc/Icon_TurnLeft_ON.png" - property url iconOff: "image://etc/Icon_TurnLeft_OFF.png" - - Timer { - interval: 500 - running: (direction !== Qt.NoArrow) - repeat: true - onTriggered: flashing = !flashing - } - - Image { - source: (active && flashing) ? iconOn : iconOff - mirror: direction === Qt.RightArrow - anchors.centerIn: parent - } -} diff --git a/doc/src/snippets/qtcluster/qml/ValueSource.qml b/doc/src/snippets/qtcluster/qml/ValueSource.qml deleted file mode 100644 index eb95d813..00000000 --- a/doc/src/snippets/qtcluster/qml/ValueSource.qml +++ /dev/null @@ -1,438 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -pragma Singleton -import QtQuick 2.6 -// comment ifndef QTIVIVEHICLEFUNCTIONS -//import QtIVIVehicleFunctions 1.0 -import ClusterDemoData 1.0 - -Item { - id: valueSource - property real kph: 0 - property real consumeKW: 0 - property real maxConsumeKWValue: 90 - property real maxChargeKWValue: 40 - property real chargeKW: 0 - property real maxRange: 600 - property real range: (batteryLevel / 100) * maxRange - - property bool runningInDesigner: false - - property bool seatBelt: false - - property var consumption: [300, 600, 700, 800, 900, 700, 600, 300, 50, 50, -100, 50, -100, -150, - -200, 50, 150, 200, 300, 200, 300, 200, 500, 50, -100, -100, -150, -80, 50, 300, 600, 700, 800, - 600, 700, 300, 50, 50] - - property var turnSignal - property var currentDate: new Date() - //property string date: currentDate.toLocaleDateString(Qt.locale("fi_FI"), "ddd d. MMM") - //property string time: currentDate.toLocaleTimeString(Qt.locale("fi_FI"), "hh:mm") - property string date: currentDate.toLocaleDateString(Qt.locale("en_GB")) - property string time: currentDate.toLocaleTimeString(Qt.locale("en_GB"), "hh:mm") - - ClusterData { - id: clusterDataSource - - onVehicleSpeedChanged: { - kph = vehicleSpeed - if (carId === 0 && !fastBootDemo) { - oldSpeed.shift() - oldSpeed.push(vehicleSpeed) - speedChanged() - } - } - property int notLeft: ~Qt.LeftArrow - property int notRight: ~Qt.RightArrow - onLeftTurnLightChanged: leftTurnLight ? turnSignal |= Qt.LeftArrow - : turnSignal &= notLeft - onRightTurnLightChanged: rightTurnLight ? turnSignal |= Qt.RightArrow - : turnSignal &= notRight - } - - // comment ifndef QTIVIVEHICLEFUNCTIONS - property real latitude: clusterDataSource.latitude - property real longitude: clusterDataSource.longitude - property real direction: clusterDataSource.direction - property bool lowBeam: clusterDataSource.headLight - property int carId: clusterDataSource.carId - property bool lightFailure: clusterDataSource.lightFailure - property bool flatTire: clusterDataSource.flatTire - - property bool frontLeftOpen: false - property bool frontRightOpen: false - property bool rearLeftDoorOpen: false - property bool rearRighDoorOpen: false - property bool hoodOpen: false - property bool trunkOpen: false - - property double batteryLevel: clusterDataSource.batteryPotential - property double fuelLevel: clusterDataSource.gasLevel - property int gear: clusterDataSource.gear - property bool parkingBrake: clusterDataSource.brake - // TODO: These two are hacks. View change messages might not come through CAN. - property bool viewChange: clusterDataSource.oilTemp - property bool rightViewChange: clusterDataSource.oilPressure - - // - // ENABLE FOR FAST BOOT DEMO (or otherwise with no CanController) - // - property bool fastBootDemo: true - - // TODO: Park light used for automatic demo mode for now - property bool automaticDemoMode: fastBootDemo ? true : clusterDataSource.parkLight - - // - // Speed animations for fast boot demo - // - Timer { - running: fastBootDemo - interval: 4000 - onTriggered: animation.start() - } - - Timer { - running: fastBootDemo - property bool turnLeft: true - repeat: true - interval: 5000 - onTriggered: { - turnLeft = !turnLeft - if (turnLeft) - turnSignal = Qt.LeftArrow - else - turnSignal = Qt.RightArrow - stopSignaling.start() - } - } - - Timer { - id: stopSignaling - running: false - interval: 2100 - onTriggered: turnSignal = Qt.NoArrow - } - - Behavior on fuelLevel { - enabled: fastBootDemo - PropertyAnimation { - duration: 18000 - } - } - - Behavior on batteryLevel { - enabled: fastBootDemo - PropertyAnimation { - duration: 18000 - } - } - - onFuelLevelChanged: { - if (fastBootDemo && fuelLevel <= 5) - fuelLevel = 100 - } - - onBatteryLevelChanged: { - if (fastBootDemo && batteryLevel <= 5) - batteryLevel = 100 - } - - SequentialAnimation { - id: animation - running: false - loops: Animation.Infinite - - ScriptAction { - script: { - gear = 0 - parkingBrake = true - consumeKW = 0 - chargeKW = 0 - } - } - PauseAnimation { duration: 2000 } - ScriptAction { - script: { - parkingBrake = false - gear = 1 - fuelLevel -= 10. - batteryLevel -= 10. - } - } - ParallelAnimation { - PropertyAnimation { - target: valueSource - property: "kph" - from: 0 - to: 150 - duration: 10000 - } - PropertyAnimation { - target: valueSource - property: "consumeKW" - from: 0 - to: 75 - duration: 10000 - } - } - ParallelAnimation { - PropertyAnimation { - target: valueSource - property: "kph" - from: 150 - to: 120 - duration: 500 - } - PropertyAnimation { - target: valueSource - property: "consumeKW" - from: 75 - to: 0 - duration: 100 - } - PropertyAnimation { - target: valueSource - property: "chargeKW" - from: 0 - to: 40 - duration: 500 - } - } - ParallelAnimation { - PropertyAnimation { - target: valueSource - property: "kph" - from: 120 - to: 200 - duration: 1500 - } - PropertyAnimation { - target: valueSource - property: "consumeKW" - from: 0 - to: 90 - duration: 1500 - } - PropertyAnimation { - target: valueSource - property: "chargeKW" - from: 40 - to: 0 - duration: 100 - } - } - ParallelAnimation { - PropertyAnimation { - target: valueSource - property: "kph" - from: 200 - to: 0 - duration: 6000 - } - PropertyAnimation { - target: valueSource - property: "consumeKW" - from: 90 - to: 0 - duration: 600 - } - PropertyAnimation { - target: valueSource - property: "chargeKW" - from: 0 - to: 40 - duration: 3000 - } - } - } - - property int simuRpm: fastBootDemo ? kph * 40 : kph * 150 - property double simuTemperature: kph * .25 + 60. - - // In normal Car UI mode only speed is animated based on gps data - // In automatic demo mode rpm, turbo, consumption and engine temperature are based on speed - property int rpm: automaticDemoMode ? simuRpm : clusterDataSource.rpm - property double engineTemperature: automaticDemoMode ? simuTemperature - : clusterDataSource.engineTemp - - property int totalDistance: 42300 - property int kmSinceCharge: 8 - property int avRangePerCharge: 425 - property int energyPerKm: 324 - - property real totalDistanceSince: 0. - - property string gearString: { - var g - if (gear === 0 || gear < -1) - return "N" - else if (gear === -1) - return "R" - else if (carId === 1) //sports car - return gear.toString() - else - return "D" - } - - Timer { - id: timeTimer - interval: 15000 - repeat: true - running: true - onTriggered: { - currentDate = new Date() - //date = currentDate.toLocaleDateString(Qt.locale("fi_FI"), "ddd d. MMM") - //time = currentDate.toLocaleTimeString(Qt.locale("fi_FI"), "hh:mm") - date = currentDate.toLocaleDateString(Qt.locale("en_GB")) - time = currentDate.toLocaleTimeString(Qt.locale("en_GB"), "hh:mm") - // Approximate total distance based on current speed - totalDistanceSince += kph / 240. // = km / 15 min - if (totalDistanceSince > 1.) { - var totalInt = Math.floor(totalDistanceSince) - totalDistance += totalInt - kmSinceCharge += totalInt - totalDistanceSince -= totalInt - } - } - } - - Timer { - id: backCutTimer - interval: 1000 - repeat: true - running: true - onTriggered: { - backCut = kph - } - } - - property real temperature: 0.6 - property alias musicTimer: musicTimer - property real backCut: 0 //For needle tail gradient - property real musicElapsed: 0 - - Timer { - id: musicTimer - interval: 2000 - running: false - repeat: true - onTriggered: { - if (musicElapsed < 100) - musicElapsed++ - else - musicElapsed = 0 - } - } - - Behavior on kph { - enabled: !fastBootDemo - PropertyAnimation { duration: 2000 } - } - - // - // For electric car KwGauge animation - // - property var oldSpeed: [0, 0, 0] - signal speedChanged - - SequentialAnimation { - id: reduceSpeedAnim - running: (carId === 0 && !fastBootDemo) - property alias chargeTo: charge.to - NumberAnimation { - target: valueSource - property: "consumeKW" - duration: 600 - to: 0 - } - NumberAnimation { - id: charge - target: valueSource - property: "chargeKW" - duration: 600 - } - } - - SequentialAnimation { - id: addSpeedAnim - running: (carId === 0 && !fastBootDemo) - property alias consumeTo: consume.to - NumberAnimation { - target: valueSource - property: "chargeKW" - duration: 600 - to: 0 - - } - NumberAnimation { - id: consume - target: valueSource - property: "consumeKW" - duration: 600 - } - } - - onSpeedChanged: { - var speedChange = oldSpeed[1] - oldSpeed[0] - if (speedChange > 2) { - //"adding speed" - var newKW = Math.min(maxConsumeKWValue * 0.8, 10 * speedChange) - addSpeedAnim.consumeTo = newKW - addSpeedAnim.restart() - } else if (speedChange < -2) { - //"reducing speed" - newKW = Math.min(maxChargeKWValue * 0.8, 2 * Math.abs(speedChange)) - reduceSpeedAnim.chargeTo = newKW - reduceSpeedAnim.restart() - } else if (Math.abs(speedChange) >= 0 && oldSpeed[1] !== 0) { - //Speed just about the same but still moving - addSpeedAnim.consumeTo = Math.min(maxConsumeKWValue * (kph / 100), - maxConsumeKWValue * 0.5) - addSpeedAnim.restart() - } - if (kph <= 0.1) { - addSpeedAnim.consumeTo = 0 - reduceSpeedAnim.chargeTo = 0 - addSpeedAnim.restart() - reduceSpeedAnim.restart() - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/VehicleInfoNote.qml b/doc/src/snippets/qtcluster/qml/VehicleInfoNote.qml deleted file mode 100644 index d0ad6cee..00000000 --- a/doc/src/snippets/qtcluster/qml/VehicleInfoNote.qml +++ /dev/null @@ -1,163 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.2 - -Item { - id: infoNote - height: 70 - width: noteImage.width - anchors.bottom: car.bottom - visible: noteVisible && highlightType && !car.hidden - property int fixedPositionX: 0 - property color textColor: "white" - property bool noteVisible: false - property int highlightType: main.carModelHighlightType - - Image { - id: noteImage - source: "image://etc/InfoNoteBackground.png" - opacity: 0.75 - } - - Timer { - id: waitForCamera - interval: 800 - running: false - onTriggered: { - noteVisible = true - if (fixedPositionX === 0) - infoNote.x = car.item.x + (car.item.width - noteImage.width) / 2 - else - x = fixedPositionX - (noteImage.width / 2) - } - } - - onHighlightTypeChanged: { - if (highlightType) - waitForCamera.restart() - else - noteVisible = false - } - - Text { - id: pressureText - anchors.centerIn: parent - visible: infoNote.visible && (highlightType >= 0 && highlightType <= 4) - color: textColor - font.pixelSize: 16 - font.weight: Font.DemiBold - } - - Text { - id: bulbText - anchors.centerIn: parent - visible: highlightType >= 5 - text: "Lightbulb" - color: textColor - font.pixelSize: 16 - font.weight: Font.DemiBold - } - - Text { - id: doorText - anchors.centerIn: parent - visible: highlightType === -1 - text: "Check doors" - color: textColor - font.pixelSize: 16 - font.weight: Font.DemiBold - } - - onVisibleChanged: { - if (visible) { - infoNote.anchors.horizontalCenterOffset = 0 - if (highlightType === -1) { - //infoNote.width = doorText.contentWidth + 40 - //infoNote.height = 40 - } else { - if (highlightType <= 4) { - var pressure = Math.random() + 1 - //var temperature = Math.random() * 12 + 20 - pressureText.text = pressure.toFixed(1) + " bar" - //temperatureText.text = temperature.toFixed(1) + " \u00B0C" - - //infoNote.width = pressureText.contentWidth + 40 - //infoNote.height = 40 - } else { - switch (highlightType) { - case 5: - bulbText.text = "Check left headlight" - break - - case 6: - bulbText.text = "Check right headlight" - break - - case 7: - bulbText.text = "Check right daylight" - break - - case 8: - bulbText.text = "Check left daylight" - break - - case 9: - infoNote.anchors.verticalCenterOffset = 60 - bulbText.text = "Check left taillight" - break - - case 10: - infoNote.anchors.verticalCenterOffset = 60 - bulbText.text = "Check right taillight" - break - - default: - // Coding fault if we get here, undefined code - bulbText.text = "Check lights" - } - - //infoNote.width = bulbText.contentWidth + 40 - //infoNote.height = 40 - } - } - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/VideoView.qml b/doc/src/snippets/qtcluster/qml/VideoView.qml deleted file mode 100644 index 5a731717..00000000 --- a/doc/src/snippets/qtcluster/qml/VideoView.qml +++ /dev/null @@ -1,102 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.5 -import QtMultimedia 5.5 -import ClusterDemo 1.0 - -Item { - property alias imageSource: overlay.source - - visible: true - - /* TODO replace with image */ - MediaPlayer { - id: video - autoPlay: false - muted: true - //source: "file:///data/user/qt/qtcluster/video/reversing_video.3gp" - // Switch to still image after reversing video is finished, or an error occurs - onError: { - stillView.visible = true - console.log("Error playing video: " + error + ": " + errorString) - } - onStatusChanged: { - if (status === MediaPlayer.EndOfMedia) - stillView.visible = true - } - } - - VideoOutput { - id: videoOutput - - source: video //camera - anchors.centerIn: parent - height: 480 - 180 - width: 1280 / 2.1 - fillMode: Image.Stretch - - Image { - id: stillView - visible: false - anchors.centerIn: parent - source: "image://etc/RearCameraStill.jpg" - height: videoOutput.height - width: videoOutput.width - } - - Image { - id: overlay - visible: ValueSource.gear === -1 - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottom: parent.bottom - } - } - - onVisibleChanged: { - if (visible) { - stillView.visible = false - video.play() - - } else { - video.stop() - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/BottomPanel.ui.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/BottomPanel.ui.qml deleted file mode 100644 index 7fdd736f..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/BottomPanel.ui.qml +++ /dev/null @@ -1,235 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ -import QtQuick 2.6 -import ClusterDemo 1.0 -import ".." -import QtQuick.Extras 1.4 -import QtGraphicalEffects 1.0 - -Item { - id: bottomPanel - property int iconMargin: 7 - property color iconRed: "#e41e25" - property color iconGreen: "#5caa15" - property color iconYellow: "#face20" - property color iconDark: "#000000" - - anchors.horizontalCenter: parent.horizontalCenter - width: bottomPanelImage.width - height: bottomPanelImage.height - 24 - - Image { - id: bottomPanelImage - y: -24 - source: "image://etc/BottomPanel.png" - } - - TurnIndicator { - iconOn: "image://etc/Icon_TurnLeft_ON_small.png" - iconOff: "image://etc/Icon_TurnLeft_OFF_small.png" - direction: Qt.LeftArrow - anchors.verticalCenter: textTime.verticalCenter - anchors.left: parent.left - anchors.leftMargin: 180 - active: ValueSource.turnSignal & Qt.LeftArrow - } - - Picture { - id: iconCoolant - - width: 30 - height: 30 - anchors.verticalCenter: textTime.verticalCenter - anchors.right: iconBattery.left - - color: ValueSource.engineTemperature >= 100.0 ? bottomPanel.iconRed : bottomPanel.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0246.dat" - - layer.enabled: ValueSource.engineTemperature >= 100.0 - layer.effect: Glow { - radius: 5 - samples: 16 - color: bottomPanel.iconRed - cached: true - spread: 0.15 - } - } - - SafeRendererPicture { - id: iconBattery - - width: 30 - height: 30 - anchors.verticalCenter: textTime.verticalCenter - anchors.right: iconFuel.left - - color: ValueSource.batteryLevel <= 25.0 ? bottomPanel.iconRed : bottomPanel.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0247.dat" - layer.enabled: ValueSource.batteryLevel <= 25.0 - layer.effect: Glow { - radius: 5 - samples: 16 - color: bottomPanel.iconRed - cached: true - spread: 0.15 - } - } - - SafeRendererPicture { - id: iconFuel - - width: 30 - height: 30 - anchors.verticalCenter: textTime.verticalCenter - anchors.right: iconParkingBrake.left - - color: ValueSource.fuelLevel <= 20.0 ? bottomPanel.iconRed : bottomPanel.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0245.dat" // This is available in all editors. - layer.enabled: ValueSource.fuelLevel <= 20.0 - layer.effect: Glow { - radius: 5 - samples: 16 - color: bottomPanel.iconRed - cached: true - spread: 0.15 - } - } - - SafeRendererPicture { - id: iconParkingBrake - - width: 30 - height: 30 - anchors.verticalCenter: textTime.verticalCenter - anchors.right: textTime.left - anchors.rightMargin: 3 - - color: bottomPanel.iconDark - - source: "qrc:/iso-icons/iso_grs_7000_4_0238.dat" - } - - Text { - id: textTime - text: ValueSource.time - font.pixelSize: 18 - color: "white" - anchors.horizontalCenter: parent.horizontalCenter - anchors.top: parent.top - anchors.topMargin: 35 - } - - Picture { - id: iconLowbeam - - width: 30 - height: 30 - anchors.verticalCenter: textTime.verticalCenter - anchors.left: textTime.right - anchors.leftMargin: bottomPanel.iconMargin - - color: bottomPanel.iconDark - - source: "qrc:/iso-icons/iso_grs_7000_4_0456.dat" - } - - Picture { - id: iconTyre - - width: 30 - height: 30 - anchors.verticalCenter: textTime.verticalCenter - anchors.left: iconLowbeam.right - anchors.leftMargin: 2 - - color: ValueSource.flatTire ? bottomPanel.iconYellow : bottomPanel.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_1434A.dat" - layer.enabled: ValueSource.flatTire - layer.effect: Glow { - radius: 6 - samples: 16 - color: bottomPanel.iconYellow - cached: true - spread: 0.2 - } - } - - SafeRendererPicture { - id: iconLamp - - width: 30 - height: 30 - anchors.verticalCenter: textTime.verticalCenter - anchors.left: iconTyre.right - color: bottomPanel.iconDark - - source: "qrc:/iso-icons/iso_grs_7000_4_1555.dat" - } - - SafeRendererPicture { - id: iconSeatbelt - - width: 30 - height: 30 - anchors.verticalCenter: textTime.verticalCenter - anchors.left: iconLamp.right - - color: ValueSource.seatBelt ? bottomPanel.iconRed : bottomPanel.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0249.dat" - layer.enabled: ValueSource.seatBelt - layer.effect: Glow { - radius: 5 - samples: 16 - color: bottomPanel.iconRed - cached: true - spread: 0.15 - } - } - - TurnIndicator { - direction: Qt.RightArrow - iconOn: "image://etc/Icon_TurnLeft_ON_small.png" - iconOff: "image://etc/Icon_TurnLeft_OFF_small.png" - anchors.verticalCenter: textTime.verticalCenter - anchors.right: parent.right - anchors.rightMargin: 180 - active: ValueSource.turnSignal & Qt.RightArrow - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/CarInfoField.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/CarInfoField.qml deleted file mode 100644 index 5be947d2..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/CarInfoField.qml +++ /dev/null @@ -1,81 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -Column { - spacing: 20 / 1.5 - - property string value: "" - property string title: "" - property string unit: "KM" - - Row { - anchors.horizontalCenter: parent.horizontalCenter - - Text { - text: value - font.pixelSize: 24 - color: "lightGray" - } - Text { - text: unit - font.pixelSize: 16 - color: "lightGray" - } - } - - Text { - text: title - font.pixelSize: 16 - horizontalAlignment: Text.AlignHCenter - color: "lightGray" - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterView.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterView.qml deleted file mode 100644 index d7b302c4..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterView.qml +++ /dev/null @@ -1,151 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 - -Item { - anchors.fill: parent - property real defaultScale: 1.0 - property var previousView: calendarView - property bool view: ValueSource.viewChange - - property int viewNumber: -1 - - - CenterViewMusic { - id: musicView - anchors.horizontalCenter: parent.horizontalCenter - yTarget: 230 - width: 124 - height: 124 - visible: false - y: defaultYPos - } - - CenterViewContacts { - id: contactView - anchors.horizontalCenter: parent.horizontalCenter - yTarget: 240 - width: 100 - height: 100 - visible: false - y: defaultYPos - } - - CenterViewCarInfo { - id: carinfoView - xTarget: (parent.width - width) / 2 - anchors.top: parent.top - anchors.topMargin: 230 - width: 146 - height: 80 - x: defaultXPos - visible: false - } - - CenterViewCalendar { - id: calendarView - xTarget: (parent.width - width) / 2 - anchors.top: parent.top - anchors.topMargin: 230 - width: 100 - height: 91 - x: defaultXPos - visible: false - } - - PropertyAnimation { - id: shrinkCenter - property: "scale" - to: 0.0 - running: false - duration: 500 - onStopped: { - if (target != null) - target.visible = false - } - } - - function handleViewChange(number) { - var currentView - if (number === 0) - currentView = musicView - else if (number === 1) - currentView = contactView - else if (number === 2) - currentView = carinfoView - else if (number === 3) - currentView = calendarView - if (previousView !== currentView) { - currentView.scale = defaultScale - currentView.visible = true - shrinkCenter.target = previousView - previousView = currentView - shrinkCenter.start() - } - } - - onViewChanged: { - if (view) { - if (++viewNumber > 3) - viewNumber = 0 - handleViewChange(viewNumber) - } - } - - // Used on automatic demo mode - Timer { - id: centerTimer - property int viewNumber: -1 - running: ValueSource.automaticDemoMode - repeat: true - interval: 6000 - onTriggered: { - if (++viewNumber > 3) - viewNumber = 0 - handleViewChange(viewNumber) - } - } - - function stopAll() { - centerTimer.stop() - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewCalendar.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewCalendar.qml deleted file mode 100644 index 39a84d3b..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewCalendar.qml +++ /dev/null @@ -1,109 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 Pelagicore AG -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Neptune IVI UI. -** -** $QT_BEGIN_LICENSE:GPL-QTAS$ -** Commercial License Usage -** Licensees holding valid commercial Qt Automotive Suite licenses may use -** this file in accordance with the commercial license agreement provided -** with the Software or, alternatively, in accordance with the terms -** contained in a written agreement between you and The Qt Company. For -** licensing terms and conditions see https://www.qt.io/terms-conditions. -** For further information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 or (at your option) any later version -** approved by the KDE Free Qt Foundation. The licenses are as published by -** the Free Software Foundation and appearing in the file LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -** SPDX-License-Identifier: GPL-3.0 -** -****************************************************************************/ - -import QtQuick 2.6 - -Item { - id: calendarContainer - - property string appointment: "No appointments" - property var currentDate - property string date - property string time - opacity: 0.5 - property alias xTarget: startupAnimation.to - property int defaultXPos: 200 - - Image { - id: image - source: "image://etc/calendar.png" - } - - Text { - id: dateText - anchors.top: image.bottom - anchors.topMargin: 10 - anchors.horizontalCenter: image.horizontalCenter - text: date - color: "gray" - font.pixelSize: 16 - } - - Text { - id: timeText - anchors.top: dateText.bottom - anchors.horizontalCenter: image.horizontalCenter - text: time - color: "gray" - font.pixelSize: 20 - } - - Text { - anchors.top: timeText.bottom - anchors.horizontalCenter: image.horizontalCenter - text: appointment - color: "lightGray" - font.pixelSize: 14 - } - - Timer { - id: fadeOutTimer - interval: 5000 - running: false - repeat: false - onTriggered: { - calendarContainer.opacity = 0.5 - } - } - - Behavior on opacity { PropertyAnimation { duration: 500 } } - - PropertyAnimation on x { - id: startupAnimation - duration: 500 - easing.type: Easing.InCubic - onStopped: { - calendarContainer.opacity = 1.0 - fadeOutTimer.start() - } - } - - onVisibleChanged: { - if (visible) { - currentDate = new Date() - date = currentDate.toLocaleDateString(Qt.locale("en_GB")) - time = currentDate.toLocaleTimeString(Qt.locale("en_GB"), "hh:mm") - x = defaultXPos - startupAnimation.start() - } - } -} - diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewCarInfo.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewCarInfo.qml deleted file mode 100644 index 9438b564..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewCarInfo.qml +++ /dev/null @@ -1,97 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 Pelagicore AG -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Neptune IVI UI. -** -** $QT_BEGIN_LICENSE:GPL-QTAS$ -** Commercial License Usage -** Licensees holding valid commercial Qt Automotive Suite licenses may use -** this file in accordance with the commercial license agreement provided -** with the Software or, alternatively, in accordance with the terms -** contained in a written agreement between you and The Qt Company. For -** licensing terms and conditions see https://www.qt.io/terms-conditions. -** For further information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 or (at your option) any later version -** approved by the KDE Free Qt Foundation. The licenses are as published by -** the Free Software Foundation and appearing in the file LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -** SPDX-License-Identifier: GPL-3.0 -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 - -Item { - id: carinfoContainer - - property int total: ValueSource.totalDistance - property int sinceLast: ValueSource.kmSinceCharge - opacity: 0.5 - property alias xTarget: startupAnimation.to - property int defaultXPos: 900 - - Image { - id: image - source: "image://etc/CarInfoIcon.png" - } - - Row { - scale: 0.75 - spacing: 7 - anchors.top: image.bottom - anchors.horizontalCenter: image.horizontalCenter - - CarInfoField { - title: "Total distance" - value: carinfoContainer.total.toFixed().toString() - unit: "km" - } - - CarInfoField { - title: "Since last\ncharge" - value: carinfoContainer.sinceLast.toString() - unit: "km" - } - } - - Timer { - id: fadeOutTimer - interval: 5000 - running: false - repeat: false - onTriggered: { - carinfoContainer.opacity = 0.5 - } - } - - Behavior on opacity { PropertyAnimation { duration: 500 } } - - PropertyAnimation on x { - id: startupAnimation - duration: 500 - easing.type: Easing.InCubic - onStopped: { - carinfoContainer.opacity = 1.0 - fadeOutTimer.start() - } - } - - onVisibleChanged: { - if (visible) { - x = defaultXPos - startupAnimation.start() - } - } -} - diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewContacts.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewContacts.qml deleted file mode 100644 index 9789b73e..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewContacts.qml +++ /dev/null @@ -1,119 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 Pelagicore AG -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Neptune IVI UI. -** -** $QT_BEGIN_LICENSE:GPL-QTAS$ -** Commercial License Usage -** Licensees holding valid commercial Qt Automotive Suite licenses may use -** this file in accordance with the commercial license agreement provided -** with the Software or, alternatively, in accordance with the terms -** contained in a written agreement between you and The Qt Company. For -** licensing terms and conditions see https://www.qt.io/terms-conditions. -** For further information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 or (at your option) any later version -** approved by the KDE Free Qt Foundation. The licenses are as published by -** the Free Software Foundation and appearing in the file LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -** SPDX-License-Identifier: GPL-3.0 -** -****************************************************************************/ - -import QtQuick 2.6 - -Item { - id: contactContainer - opacity: 0.5 - property int defaultYPos: 50 - property alias icon: contactImage.source - property alias name: contactName.text - property alias yTarget: startupAnimation.to - - Image { - id: contactImage - source: "image://etc/contacts.png" - } - - Text { - id: title - anchors.top: contactImage.bottom - anchors.topMargin: 10 - anchors.horizontalCenter: contactImage.horizontalCenter - text: contactContainer.name === "" ? "Browsing\ncontacts" : "Calling" - color: "gray" - font.pixelSize: 20 - } - - Text { - id: contactName - anchors.top: title.bottom - anchors.horizontalCenter: contactImage.horizontalCenter - color: "lightGray" - font.pixelSize: 24 - } - - Timer { - id: fadeOutTimer - interval: 5000 - running: false - repeat: false - onTriggered: { - fadeOut.start() - } - } - - PropertyAnimation on opacity { - id: fadeIn - to: 1.0 - duration: 500 - onStopped: { - call.start() - } - } - - PropertyAnimation on opacity { - id: fadeOut - to: 0.5 - duration: 500 - } - - PropertyAnimation on y { - id: startupAnimation - duration: 500 - easing.type: Easing.InCubic - onStopped: { - fadeIn.start() - fadeOutTimer.start() - } - } - - Timer { - id: call - interval: 2000 - running: false - onTriggered: { - name = "Jane" - icon = "image://etc/jane.png" - } - } - - onVisibleChanged: { - if (visible) { - name = "" - icon = "image://etc/contacts.png" - y = defaultYPos - startupAnimation.start() - } - } -} - diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewMusic.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewMusic.qml deleted file mode 100644 index 1fcc1ba0..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/CenterViewMusic.qml +++ /dev/null @@ -1,109 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 Pelagicore AG -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Neptune IVI UI. -** -** $QT_BEGIN_LICENSE:GPL-QTAS$ -** Commercial License Usage -** Licensees holding valid commercial Qt Automotive Suite licenses may use -** this file in accordance with the commercial license agreement provided -** with the Software or, alternatively, in accordance with the terms -** contained in a written agreement between you and The Qt Company. For -** licensing terms and conditions see https://www.qt.io/terms-conditions. -** For further information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 or (at your option) any later version -** approved by the KDE Free Qt Foundation. The licenses are as published by -** the Free Software Foundation and appearing in the file LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -** SPDX-License-Identifier: GPL-3.0 -** -****************************************************************************/ - -import QtQuick 2.6 - -Item { - id: musicContainer - - property url currentCover: "image://etc/cover.png" - property string currentSong: "Doesn't Mean Anything" - property string currentArtist: "Alicia Keys" - opacity: 0.5 - property alias yTarget: startupAnimation.to - property int defaultYPos: 400 - - Rectangle { - y: 10 - id: image - width: 124 - height: 124 - border.color: "#EF2973" - border.width: 2 - color: "black" - - Image { - anchors.margins: 2 - fillMode: Image.PreserveAspectCrop - anchors.fill: parent - asynchronous: true - source: musicContainer.currentCover - } - } - - Text { - id: title - anchors.top: image.bottom - anchors.topMargin: 6 - anchors.horizontalCenter: image.horizontalCenter - text: musicContainer.currentSong - color: "gray" - font.pixelSize: 16 - } - - Text { - anchors.top: title.bottom - anchors.horizontalCenter: image.horizontalCenter - text: musicContainer.currentArtist - color: "lightGray" - font.pixelSize: 16 - } - - Timer { - id: fadeOutTimer - interval: 3000 - running: false - repeat: false - onTriggered: { - musicContainer.opacity = 0.5 - } - } - - Behavior on opacity { PropertyAnimation { duration: 500 } } - - PropertyAnimation on y { - id: startupAnimation - duration: 500 - easing.type: Easing.InCubic - onStopped: { - musicContainer.opacity = 1.0 - fadeOutTimer.start() - } - } - - onVisibleChanged: { - if (visible) { - y = defaultYPos - startupAnimation.start() - } - } -} - diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/Dashboard.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/Dashboard.qml deleted file mode 100644 index b94500c1..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/Dashboard.qml +++ /dev/null @@ -1,128 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 -import "gauges" - -DashboardForm -{ - id: dashboardEntity - - state: "start" - - meterOpacity: 0.0 - - anchors.fill: parent - - property real timeScaleMultiplier: 1.5 - property bool startupAnimationsFinished: false - - //onNeedleRotationChanged: speedometer.speedometerNeedleRotation = needleRotation / 40. - - property bool animationStopped: ValueSource.runningInDesigner ? true : startupAnimationsFinished - - speedometer.actualValue: animationStopped ? ValueSource.kph : -needleRotation / 40 - - tachometer.actualValue: animationStopped ? ValueSource.rpm : -needleRotation - - speedText.text: speedometer.actualValue.toFixed().toString() - consumptionMeter.actualValue: 2.0 + ValueSource.rpm / 320.45 - - - // - // Startup animations - // - SequentialAnimation { - id: speedometerStartupAnimations - running: true - - PauseAnimation { duration: 1000 } - ScriptAction { script: bottompanel.visible = true } - - SmoothedAnimation { - target: dashboardEntity - property: "bottomPanelY" - from: 480 - to: 412 - duration: 1000 * timeScaleMultiplier - easing.type: Easing.InCirc - } - - PauseAnimation { - duration: 1000 - } - - NumberAnimation { - target: dashboardEntity - property: "meterOpacity" - from: 0 - to: 1 - duration: 2000 - } - - SmoothedAnimation { - target: dashboardEntity - property: "needleRotation" - from: 0.0 - to: -8000.0 - duration: 1000 * timeScaleMultiplier - easing.type: Easing.InCubic - } - - SmoothedAnimation { - target: dashboardEntity - property: "needleRotation" - from: -8000.0 - to: 0.0 - duration: 1000 * timeScaleMultiplier - easing.type: Easing.OutCubic - } - - ScriptAction { script: startupAnimationsFinished = true } - } - - function stopAll() { - speedometerStartupAnimations.stop() - } - - bottompanel.visible: false - bottompanel.y: 480 -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardBackground.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardBackground.qml deleted file mode 100644 index 6b9f68b9..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardBackground.qml +++ /dev/null @@ -1,139 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.4 - -DashboardBackgroundForm { - id: dashboard - - state: "normal" - - Timer { - running: true - interval: 100 - onTriggered: dashboard.state = "normal" - repeat: false - } - - - - transitions: [ - Transition { - from: "*" - to: "*" - - SequentialAnimation { - - ParallelAnimation { - PropertyAnimation { - target: dashboard.image - properties: "opacity" - duration: 1500 - } - - - PropertyAnimation { - target: dashboard.leftGauge - properties: "scale, opacity" - duration: 2000 - easing.type: Easing.InOutQuad - } - - PropertyAnimation { - target: dashboard.rightGauge - properties: "scale, opacity" - duration: 2000 - easing.type: Easing.InOutQuad - } - - SequentialAnimation { - - PauseAnimation { - duration: 200 - } - PropertyAnimation { - properties: "x,y" - duration: 800 - easing.type: Easing.InOutQuad - } - } - - - SequentialAnimation { - PauseAnimation { - duration: 1000 - } - - PropertyAnimation { - target: dashboard - property: "scale" - easing.type: Easing.InOutQuad - duration: 300 - } - - ParallelAnimation { - PropertyAnimation { - target: dashboard.leftGadget - properties: "opacity, scale" - duration: 400 - } - PropertyAnimation { - target: dashboard.rightGadget - properties: "opacity, scale" - duration: 400 - } - PropertyAnimation { - target: dashboard.center - properties: "opacity, scale" - duration: 400 - } - PropertyAnimation { - target: dashboard.bar - properties: "opacity, scale" - duration: 800 - } - } - } - } - } - } - ] -} - diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardBackgroundForm.ui.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardBackgroundForm.ui.qml deleted file mode 100644 index ef38f8f3..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardBackgroundForm.ui.qml +++ /dev/null @@ -1,188 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ -import QtQuick 2.4 -import ClusterDemo 1.0 - -Item { - id: root - width: 1280 - height: 480 - - property alias center: center - property alias rightGadget: rightGadget - property alias bar: bar - property alias leftGadget: leftGadget - property alias image: image - property alias rightGauge: rightGauge - property alias leftGauge: leftGauge - - property real gaugeOpacity: 1 - - Image { - id: image - source: "image://etc/Cluster8Gauges.png" - - Image { - id: center - x: 568 - y: 19 - source: "image://etc/center.png" - - Image { - x: -140 - y: -122 - anchors.horizontalCenter: parent.horizontalCenter - anchors.verticalCenter: parent.verticalCenter - - source: "image://etc/knob_small.png" - } - } - - Image { - id: rightGadget - x: 718 - y: 29 - source: "image://etc/right.png" - } - - Image { - id: leftGadget - x: 417 - y: 28 - source: "image://etc/left.png" - } - - Image { - id: bar - x: 531 - y: 159 - source: "image://etc/temperature.png" - } - } - - Image { - id: leftGauge - x: 318 - y: 393 - source: "image://etc/leftgauge.png" - } - - Image { - id: rightGauge - x: 652 - y: 394 - source: "image://etc/rightgauge.png" - } - states: [ - State { - name: "start" - - PropertyChanges { - target: leftGauge - x: 13 - y: 169 - width: 339 - height: 340 - opacity: 0 - scale: 0.7 - } - - PropertyChanges { - target: rightGauge - x: 930 - y: 169 - width: 330 - height: 340 - opacity: 0 - scale: 0.7 - } - - PropertyChanges { - target: root - scale: 0.8 - gaugeOpacity: 0 - } - - PropertyChanges { - target: image - opacity: 0.2 - } - - PropertyChanges { - target: leftGadget - scale: 0.8 - opacity: 0 - } - - PropertyChanges { - target: center - opacity: 0 - scale: 0.8 - } - - PropertyChanges { - target: rightGadget - scale: 0.8 - opacity: 0 - } - - PropertyChanges { - target: bar - scale: 0.8 - opacity: 0 - } - }, - State { - name: "normal" - - PropertyChanges { - target: leftGauge - x: 102 - y: 75 - } - - PropertyChanges { - target: rightGauge - x: 832 - y: 71 - } - } - ] -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardForm.ui.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardForm.ui.qml deleted file mode 100644 index eb2aef4c..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardForm.ui.qml +++ /dev/null @@ -1,264 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ -import QtQuick 2.6 -import ClusterDemo 1.0 -import "gauges" -import QtQuick.Extras 1.4 -import ".." - -DashboardBackground { - id: dashboardEntity - property alias bottompanel: bottompanel - - property alias bottomPanelY: bottompanel.y - property alias needleRotation: tachometer.speedometerNeedleRotation - - property real meterOpacity: 1 - property alias speedometer: speedometer - property alias tachometer: tachometer - property alias speedText: speedText - property alias smallMeter: smallMeter - property alias consumptionMeter: consumptionMeter - - anchors.fill: parent - - // Fuelmeter - SmallMeter { - id: fuelMeter - x: 740 - y: 45 - value: ValueSource.fuelLevel - opacity: dashboardEntity.meterOpacity - } - - // Batterymeter - SmallMeter { - id: batteryMeter - x: 739 - y: 45 - value: ValueSource.batteryLevel - opacity: dashboardEntity.meterOpacity - maxValueAngle: 317 - minValueAngle: 225 - maximumValue: 100 - degreesPerValue: Math.abs( - (maxValueAngle - minValueAngle) / maximumValue) - rotationOffset: 135 - direction: -1 - } - - // Consumptionmeter - - // Temperaturemeter - TemperatureMeter { - opacity: dashboardEntity.meterOpacity - - anchors.right: parent.right - anchors.top: parent.top - anchors.rightMargin: 640 - anchors.topMargin: 82 - } - - // Turbometer - SmallMeter { - id: smallMeter - x: 437 - y: 45 - opacity: dashboardEntity.meterOpacity - - value: ValueSource.rpm / 2000. - - maxValueAngle: 270 - minValueAngle: 0 - maximumValue: 4.0 - degreesPerValue: Math.abs( - (maxValueAngle - minValueAngle) / maximumValue) - } - - // Fpsmeter - FpsMeter { - x: 582 - opacity: dashboardEntity.meterOpacity - anchors.right: parent.right - anchors.top: parent.top - anchors.rightMargin: 591 - anchors.topMargin: 87 - } - - // Bottom Panel - BottomPanel { - id: bottompanel - y: 412 - anchors.horizontalCenterOffset: 0 - } - - SpeedometerNumbers { - id: speedometerNumbers - x: 103 - y: 73 - value: speedometer.actualValue - opacity: dashboardEntity.meterOpacity - } - - LargeMeter { - id: speedometer - - opacity: dashboardEntity.meterOpacity - x: 34 - y: 3 - actualValue: ValueSource.kph - maxValueAngle: 304 - - layer.enabled: opacity < 1 - - Gadget { - id: knobLeft - x: 113 - y: 118 - - green: speedometer.actualValue < 100 - value: speedometer.actualValue - } - } - - - LargeMeter { - id: tachometer - opacity: dashboardEntity.meterOpacity - x: 763 - y: 2 - actualValue: 6000 - minValueAngle: 55 - maxValueAngle: 255 - minimumValue: 0 - maximumValue: 8000 - limitValue: 7000 - - layer.enabled: opacity < 1 - - LargeMeter { - id: consumptionMeter - x: 1 - y: -2 - fillWidth: 22 - limitValue: 22 - angleOffset: 72 - actualValue: 30 - visible: true - - minValueAngle: 379 - maxValueAngle: 291 - minimumValue: 0 - maximumValue: 30 - } - - Gadget { - id: knobRight - x: 116 - y: 117 - - green: tachometer.actualValue < 7000 - value: tachometer.actualValue - maxValue: 8000 - - Text { - id: textEco - x: -56 - y: 156 - - anchors.horizontalCenter: parent.horizontalCenter - text: tachometer.actualValue > 6000 ? "POWER" : "ECO" - anchors.verticalCenterOffset: 3 - anchors.horizontalCenterOffset: 7 - visible: true - anchors.verticalCenter: parent.verticalCenter - font.pixelSize: 18 - color: tachometer.actualValue <= 6000 ? "white" : "red" - opacity: dashboardEntity.meterOpacity - } - } - } - - - Text { - id: speedText - x: 74 - y: 330 - - font.pixelSize: 40 - color: "lightGray" - text: "10" - anchors.horizontalCenter: speedometer.horizontalCenter - opacity: dashboardEntity.meterOpacity - } - - - Text { - id: speedUnitText - anchors.top: speedText.bottom - font.pixelSize: 18 - color: "lightGray" - text: "KM/H" - anchors.horizontalCenter: speedText.horizontalCenter - opacity: dashboardEntity.meterOpacity - } - - - Image { - id: knobSmallLeft - x: 460 - y: 68 - source: "image://etc/knob_small.png" - } - - Image { - id: knobSmallRight - x: 763 - y: 70 - source: "image://etc/knob_small.png" - } - - Image { - id: knobSmallcenter - x: 610 - y: 62 - source: "image://etc/knob_small.png" - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardFrame.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardFrame.qml deleted file mode 100644 index e4dd15e6..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardFrame.qml +++ /dev/null @@ -1,85 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 - -Rectangle -{ - width: 1280 - height: 480 - color: "black" - - - Image { - id: logo - anchors.horizontalCenter: parent.horizontalCenter - y: 270 - source: "image://etc/Built_with_Qt.png" - } - - Loader { - id: dashLoader - anchors.fill: parent - source: "DashboardView.qml" - active: logo.status === Image.Ready - transform: Rotation { - id: rot - origin.x: 1280 / 2 - origin.y: 0 - axis { x: 1; y: 0; z: 0 } - angle: ValueSource.runningInDesigner ? 0 : 90 // the default angle - - } - onLoaded: flipin.start() - } - - SequentialAnimation { - id: flipin - PauseAnimation { duration: 500 } - SmoothedAnimation { target: rot; property: "angle"; from: 90; to: 0; duration: 500 } - PauseAnimation { duration: 2500 } - OpacityAnimator { target: logo; from: 1.0; to: 0; duration: 500 } - } - - function stopAll() { - dashLoader.item.stopAll() - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardView.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardView.qml deleted file mode 100644 index dd2ec8e3..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/DashboardView.qml +++ /dev/null @@ -1,57 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt3D module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.6 - -Loader { - id: centerview - asynchronous: true - anchors.fill: parent - source: "CenterView.qml" - - Loader { - id: dash - asynchronous: true - anchors.fill: parent - source: "Dashboard.qml" - z: 2 - } - - function stopAll() { - centerview.item.stopAll() - dash.item.stopAll() - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/Gadget.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/Gadget.qml deleted file mode 100644 index 5ff261cd..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/Gadget.qml +++ /dev/null @@ -1,119 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.4 -import QtGraphicalEffects 1.0 - -Item { - id: gadget - - width: 240 - height: 240 - - property real value: 0 - property real minValue: 0 - property real maxValue: 200 - - property real __t: value / (maxValue - minValue) - - property real __scale: __t * 1.04 + (1 - __t) * 0.85 * __scaleAnimation - property real __scaleAnimation: 1 - - property bool green: true - - - SequentialAnimation { - running: true - loops: -1 - PropertyAnimation { - - target: gadget - from: 1 - to: 0.95 - property: "__scaleAnimation" - duration: 600 - } - PropertyAnimation { - target: gadget - from: 0.95 - to: 1 - property: "__scaleAnimation" - duration: 600 - } - } - - Item { - id: glow - - x: 34 - y: 31 - width: 185 - height: 185 - - scale: gadget.__scale - - Rectangle { - width: 115 - height: width - radius: width / 2 - anchors.verticalCenter: parent.verticalCenter - anchors.horizontalCenter: parent.horizontalCenter - color: green ? "#0098c3" : "#a31e21" - Behavior on color { - ColorAnimation { - duration: 400 - } - } - - } - - layer.enabled: true - layer.effect: FastBlur { - radius: 32 - } - } - - Image { - id: knob - x: 68 - y: 65 - source: "image://etc/knob.png" - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/SafeRendererPicture.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/SafeRendererPicture.qml deleted file mode 100644 index b57ac6ae..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/SafeRendererPicture.qml +++ /dev/null @@ -1,56 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import QtQuick.Extras 1.4 - -Picture { - -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/FpsMeter.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/FpsMeter.qml deleted file mode 100644 index 7cee7ce2..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/FpsMeter.qml +++ /dev/null @@ -1,79 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import "../.." - -Item { - id: fpsmeterNeedle - - property real fpsmeterNeedleRotation: fpsValue * fpsDegreesPerValue - property real fpsValue: Math.min(fpscounter.fpsNow, 60) // Limit to 60, as that's where the gauge ends - property real maxValueAngle: 314 - property real minValueAngle: 45 - property real maximumValue: 60 - property real fpsDegreesPerValue: Math.abs((maxValueAngle - minValueAngle) / maximumValue) - - - width: 107 - height: 7 - rotation: fpsmeterNeedleRotation - 45 - - Image { - anchors.left: parent.left - anchors.leftMargin: -12 - anchors.verticalCenter: parent.verticalCenter - source: "image://etc/SpeedometerNeedleSmall.png" - } - - FpsCounter { - id: fpscounter - rotation: fpsVisible ? -fpsmeterNeedle.rotation : 0 - anchors.top: parent.top - anchors.topMargin: 33 - anchors.horizontalCenter: parent.horizontalCenter - fpsVisible: false // Setting this to true prints fps on screen - running: startupAnimationsFinished - } - Behavior on fpsValue { - enabled: startupAnimationsFinished - PropertyAnimation { duration: fpscounter.fpsInterval } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/LargeMeter.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/LargeMeter.qml deleted file mode 100644 index 5447b43d..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/LargeMeter.qml +++ /dev/null @@ -1,146 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 -import QtGraphicalEffects 1.0 - -Item { - - Rectangle { - visible: false - width: 86 - height: 86 - radius: 43 - color: "#3a5fe1" - anchors.horizontalCenter: parent.horizontalCenter - anchors.verticalCenter: parent.verticalCenter - } - - width: 480 - height: 480 - - id: speedometer - - property real speedometerNeedleRotation: 0.0 - - property bool animationStopped: ValueSource.runningInDesigner ? true : startupAnimationsFinished - - property real actualValue: 90 - - property real minValueAngle: 55 - property real maxValueAngle: 305 - property real minimumValue: 0 - property real maximumValue: 200 - - property real limitValue: 100 - - property real angleOffset: 35 - - property alias fillWidth: speedFiller.fillWidth - - GaugeFiller { - anchors.fill: parent - id: speedFiller - value: speedometer.actualValue - numVertices: 64 - radius: 155 - fillWidth: 10 - color: speedometer.actualValue < speedometer.limitValue ? "#0098c3" : "#a31e21" - opacity: 0.4 - minAngle: speedometer.minValueAngle - maxAngle: speedometer.maxValueAngle - minValue: speedometer.minimumValue - maxValue: speedometer.maximumValue - - Behavior on color { - ColorAnimation { - duration: 1000 - } - } - } - - - Item { - id: speedometerNeedle - width: needleImage.width - height: needleImage.height - rotation: speedFiller.angle - speedometer.angleOffset - - anchors.centerIn: parent - - Item { - - Image { - x: -59 - y: -0.5 - source: "image://etc/SpeedometerNeedle.png" - opacity: 1 - layer.enabled: true - layer.effect: Colorize { - hue: 0.5 - } - Behavior on opacity { - NumberAnimation { - duration: 1000 - } - } - } - Image { - x: -59 - y: -0.5 - id: needleImage - opacity: speedometer.actualValue < speedometer.limitValue ? 0 : 0.75 - source: "image://etc/SpeedometerNeedle.png" - Behavior on opacity { - NumberAnimation { - duration: 1000 - } - } - layer.enabled: true - layer.effect: Colorize { - hue: 0.95 - } - } - - } - } - -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/NumberLabel.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/NumberLabel.qml deleted file mode 100644 index 32b9630d..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/NumberLabel.qml +++ /dev/null @@ -1,9 +0,0 @@ -import QtQuick 2.0 - -Text { - id: text_0 - color: "#c6c6c6" - text: "0" - font.family: "Verdana" - font.pixelSize: 14 -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/SmallMeter.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/SmallMeter.qml deleted file mode 100644 index 6b323027..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/SmallMeter.qml +++ /dev/null @@ -1,88 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 - -Item { - id: meter - width: 100 - height: 100 - - property real meterNeedleRotation: direction * value * degreesPerValue - property real value: 20 - - property real maxValueAngle: 170 - property real minValueAngle: 10 - property real maximumValue: 100 - property real degreesPerValue: Math.abs((maxValueAngle - minValueAngle) / maximumValue) - - property real rotationOffset: 80 - - property real direction: 1 - - Rectangle { - visible: false - color: "red" - width: 10 - height: 10 - anchors.centerIn: parent - } - - - Item { - width: image.width - height: image.height - - rotation: meter.meterNeedleRotation - meter.rotationOffset - anchors.centerIn: parent - - Image { - id: image - x: -23 - source: "image://etc/SpeedometerNeedleSmall.png" - } - - } - Behavior on value { - enabled: !ValueSource.automaticDemoMode && startupAnimationsFinished - PropertyAnimation { duration: 250 } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/SpeedometerNumbers.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/SpeedometerNumbers.qml deleted file mode 100644 index f92e8676..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/SpeedometerNumbers.qml +++ /dev/null @@ -1,267 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -Item { - id: root - width: 338 - height: 338 - - property real value: 5 - property real scaleFactor: 1.3 - - NumberLabel { - id: text_0 - x: 64 - y: 237 - } - - NumberLabel { - id: text_20 - x: 39 - y: 184 - text: "20" - } - - NumberLabel { - id: text_40 - x: 40 - y: 126 - text: "40" - } - - NumberLabel { - id: text_60 - x: 67 - y: 78 - text: "60" - } - - NumberLabel { - id: text_80 - x: 112 - y: 45 - text: "80" - } - - NumberLabel { - id: text_100 - x: 158 - y: 35 - text: "100" - } - - NumberLabel { - id: text_120 - x: 211 - y: 45 - text: "120" - } - - NumberLabel { - id: text_140 - x: 250 - y: 78 - text: "140" - } - - NumberLabel { - id: text_160 - x: 277 - y: 126 - text: "160" - } - - NumberLabel { - id: text_180 - x: 279 - y: 185 - text: "180" - } - - NumberLabel { - id: text_200 - x: 256 - y: 237 - text: "200" - } - - states: [ - State { - name: "0" - - when: root.value < 10 - - PropertyChanges { - target: text_0 - color: "#0098c3" - scale: 1.2 - } - }, - State { - name: "20" - - when: root.value > 10 && root.value < 30 - - PropertyChanges { - target: text_20 - color: "#0098c3" - scale: root.scaleFactor - } - }, - State { - name: "40" - - when: root.value > 30 && root.value < 50 - - PropertyChanges { - target: text_40 - color: "#0098c3" - scale: root.scaleFactor - } - }, - State { - name: "60" - - when: root.value > 50 && root.value < 70 - - PropertyChanges { - target: text_60 - color: "#0098c3" - scale: root.scaleFactor - } - }, - State { - name: "80" - - when: root.value > 70 && root.value < 90 - - PropertyChanges { - target: text_80 - color: "#0098c3" - scale: root.scaleFactor - } - }, - State { - name: "100" - - when: root.value > 90 && root.value < 110 - - PropertyChanges { - target: text_100 - color: "#a31e21" - scale: root.scaleFactor - } - }, - State { - name: "120" - - when: root.value > 110 && root.value < 130 - - PropertyChanges { - target: text_120 - color: "#a31e21" - scale: root.scaleFactor - } - }, - State { - name: "140" - - when: root.value > 130 && root.value < 150 - - PropertyChanges { - target: text_140 - color: "#a31e21" - scale: root.scaleFactor - } - }, - State { - name: "160" - - when: root.value > 150 && root.value < 170 - - PropertyChanges { - target: text_160 - color: "#a31e21" - scale: root.scaleFactor - } - }, - State { - name: "180" - - when: root.value > 170 && root.value < 190 - - PropertyChanges { - target: text_180 - color: "#a31e21" - scale: root.scaleFactor - } - }, - State { - name: "200" - - when: root.value > 190 - - PropertyChanges { - target: text_200 - color: "#a31e21" - scale: root.scaleFactor - } - } - ] - - transitions: Transition { - from: "*" - to: "*" - - ParallelAnimation { - NumberAnimation { - properties: "scale" - duration: 400 - } - - ColorAnimation { - properties: "color" - duration: 400 - } - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/TemperatureMeter.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/TemperatureMeter.qml deleted file mode 100644 index cf575b6c..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/TemperatureMeter.qml +++ /dev/null @@ -1,94 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 - -Item { - id: root - property real temperatureValue: ValueSource.engineTemperature - property real minValueAngle: 42.5 - property real maxValueAngle: -42.5 - property real minimumValue: 40 - property real maximumValue: 120 - - GaugeFiller { - id: temperatureFiller - value: root.temperatureValue - anchors.fill: parent - numVertices: 32 - radius: 140 - fillWidth: 25 - color: "#EF2973" - opacity: 0.3 - minAngle: root.minValueAngle - maxAngle: root.maxValueAngle - minValue: root.minimumValue - maxValue: root.maximumValue - Behavior on value { - enabled: !ValueSource.automaticDemoMode && startupAnimationsFinished - PropertyAnimation { duration: 250 } - } - } - - Item { - width: 280 - height: 7 - rotation: temperatureFiller.angle - 48 - anchors.centerIn: parent - - Item { - id: item1 - width: 34 - height: 7 - opacity: 0.75 - anchors.left: parent.left - anchors.leftMargin: -4 - anchors.verticalCenter: parent.verticalCenter - clip: true - - Image { - x: -4 - anchors.verticalCenter: parent.verticalCenter - source: "image://etc/SpeedometerNeedleSmall.png" - } - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/TurboMeter.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/TurboMeter.qml deleted file mode 100644 index af629663..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/TurboMeter.qml +++ /dev/null @@ -1,71 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ClusterDemo 1.0 - -Item { - property real turbometerNeedleRotation: turboValue * turboDegreesPerValue - property real turboValue: ValueSource.rpm / 2000. - property real maxValueAngle: 270 - property real minValueAngle: 0 - property real maximumValue: 4.0 - property real turboDegreesPerValue: Math.abs((maxValueAngle - minValueAngle) / maximumValue) - - anchors.left: parent.left - anchors.top: parent.top - anchors.leftMargin: 426 - anchors.topMargin: 93 - width: 109 - height: 7 - rotation: turbometerNeedleRotation - 90 - - Image { - width: 38 - height: 3 - anchors.left: parent.left - anchors.verticalCenter: parent.verticalCenter - source: "image://etc/SpeedometerNeedle.png" - } - Behavior on turboValue { - enabled: !ValueSource.automaticDemoMode && startupAnimationsFinished - PropertyAnimation { duration: 250 } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/BatteryMeterSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/BatteryMeterSpecifics.qml deleted file mode 100644 index 07ea27e4..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/BatteryMeterSpecifics.qml +++ /dev/null @@ -1,176 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("BatteryMeter") - SectionLayout { - - Label { - text: qsTr("Battery Value") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.batteryValue - minimumValue: 0 - maximumValue: backendValues.maximumValue.value - decimals: 0 - } - - Controls.Slider { - id: batterySlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: backendValues.maximumValue.value - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.batteryValue.value - onValueChanged: { - backendValues.batteryValue.value = batterySlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - - Label { - text: qsTr("Maximum Battery") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maximumValue - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: maximumFuelSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.maximumValue.value - onValueChanged: { - backendValues.maximumValue.value = maximumFuelSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Maximum Value Angle") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maxValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: maxValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.maxValueAngle.value - onValueChanged: { - backendValues.maxValueAngle.value = maxValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum Value Angle") - } - - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: minValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.minValueAngle.value - onValueChanged: { - backendValues.minValueAngle.value = minValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/ConsumptionMeterSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/ConsumptionMeterSpecifics.qml deleted file mode 100644 index 81180177..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/ConsumptionMeterSpecifics.qml +++ /dev/null @@ -1,210 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("ConsumptionMeter") - SectionLayout { - - Label { - text: qsTr("Consumption Value") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.consumptionValue - minimumValue: backendValues.minimumValue.value - maximumValue: backendValues.maximumValue.value - decimals: 0 - } - - Controls.Slider { - id: consumptionSlider - Layout.preferredWidth: 100 - - minimumValue: backendValues.minimumValue.value - maximumValue: backendValues.maximumValue.value - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.consumptionValue.value - onValueChanged: { - backendValues.consumptionValue.value = consumptionSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - - Label { - text: qsTr("Maximum Consumption") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maximumValue - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: maximumFuelSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.maximumValue.value - onValueChanged: { - backendValues.maximumValue.value = maximumFuelSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - Label { - text: qsTr("Minimum Consumption") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minimumValue - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: minimumSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.minimumValue.value - onValueChanged: { - backendValues.minimumValue.value = minimumSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Maximum Value Angle") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maxValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: maxValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.maxValueAngle.value - onValueChanged: { - backendValues.maxValueAngle.value = maxValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum Value Angle") - } - - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: minValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.minValueAngle.value - onValueChanged: { - backendValues.minValueAngle.value = minValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/FuelMeterSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/FuelMeterSpecifics.qml deleted file mode 100644 index 06b5d194..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/FuelMeterSpecifics.qml +++ /dev/null @@ -1,176 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("FuelMeter") - SectionLayout { - - Label { - text: qsTr("Fuel Value") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.fuelValue - minimumValue: 0 - maximumValue: backendValues.maximumValue.value - decimals: 0 - } - - Controls.Slider { - id: fuelSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: backendValues.maximumValue.value - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.fuelValue.value - onValueChanged: { - backendValues.fuelValue.value = fuelSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - - Label { - text: qsTr("Maximum Fuel") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maximumValue - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: maximumFuelSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.maximumValue.value - onValueChanged: { - backendValues.maximumValue.value = maximumFuelSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Maximum Value Angle") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maxValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: maxValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.maxValueAngle.value - onValueChanged: { - backendValues.maxValueAngle.value = maxValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum Value Angle") - } - - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: minValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.minValueAngle.value - onValueChanged: { - backendValues.minValueAngle.value = minValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/SpeedoMeterSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/SpeedoMeterSpecifics.qml deleted file mode 100644 index 0ac8988e..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/SpeedoMeterSpecifics.qml +++ /dev/null @@ -1,209 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("SpeedoMeter") - SectionLayout { - - Label { - text: qsTr("Actual Speed") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.actualSpeed - minimumValue: backendValues.minimumSpeed.value - maximumValue: backendValues.maximumSpeed.value - decimals: 0 - } - - Controls.Slider { - id: speedSlider - Layout.preferredWidth: 100 - - minimumValue: backendValues.minimumSpeed.value - maximumValue: backendValues.maximumSpeed.value - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.actualSpeed.value - onValueChanged: { - backendValues.actualSpeed.value = speedSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - - Label { - text: qsTr("Maximum Speed") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maximumSpeed - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: maximumSpeedSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.maximumSpeed.value - onValueChanged: { - backendValues.maximumSpeed.value = maximumSpeedSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum Speed") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minimumSpeed - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: minimumSpeedSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.minimumSpeed.value - onValueChanged: { - backendValues.minimumSpeed.value = minimumSpeedSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Maximum Value Angle") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maxValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: maxValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.maxValueAngle.value - onValueChanged: { - backendValues.maxValueAngle.value = maxValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum Value Angle") - } - - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: minValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.minValueAngle.value - onValueChanged: { - backendValues.minValueAngle.value = minValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TachoMeterSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TachoMeterSpecifics.qml deleted file mode 100644 index d3d9da8b..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TachoMeterSpecifics.qml +++ /dev/null @@ -1,210 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("TachoMeter") - SectionLayout { - - Label { - text: qsTr("Actual RPM") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.actualRPM - minimumValue: backendValues.minimumRPM.value - maximumValue: backendValues.maximumRPM.value - decimals: 0 - } - - Controls.Slider { - id: rpmSlider - Layout.preferredWidth: 100 - - minimumValue: backendValues.minimumRPM.value - maximumValue: backendValues.maximumRPM.value - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.actualRPM.value - onValueChanged: { - backendValues.actualRPM.value = rpmSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - - Label { - text: qsTr("Maximum RPM") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maximumRPM - minimumValue: 0 - maximumValue: 10000 - decimals: 0 - } - - Controls.Slider { - id: maximumRPMSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 10000 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.maximumRPM.value - onValueChanged: { - backendValues.maximumRPM.value = maximumRPMSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum RPM") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minimumRPM - minimumValue: 0 - maximumValue: 10000 - decimals: 0 - } - - Controls.Slider { - id: minimumRPMSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 10000 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.minimumRPM.value - onValueChanged: { - backendValues.minimumRPM.value = minimumRPMSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - Label { - text: qsTr("Maximum Value Angle") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maxValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: maxValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.maxValueAngle.value - onValueChanged: { - backendValues.maxValueAngle.value = maxValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum Value Angle") - } - - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: minValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.minValueAngle.value - onValueChanged: { - backendValues.minValueAngle.value = minValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TemperatureMeterSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TemperatureMeterSpecifics.qml deleted file mode 100644 index e4ae0cd5..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TemperatureMeterSpecifics.qml +++ /dev/null @@ -1,210 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("TemperaturenMeter") - SectionLayout { - - Label { - text: qsTr("Temperature Value") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.temperatureValue - minimumValue: backendValues.minimumValue.value - maximumValue: backendValues.maximumValue.value - decimals: 0 - } - - Controls.Slider { - id: temperatureSlider - Layout.preferredWidth: 100 - - minimumValue: backendValues.minimumValue.value - maximumValue: backendValues.maximumValue.value - updateValueWhileDragging: true - stepSize: 1 - value: backendValues.temperatureValue.value - onValueChanged: { - backendValues.temperatureValue.value = temperatureSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - - Label { - text: qsTr("Maximum Temperature") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maximumValue - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: maximumSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.maximumValue.value - onValueChanged: { - backendValues.maximumValue.value = maximumSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - Label { - text: qsTr("Minimum Temperature") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minimumValue - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: minimumSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.minimumValue.value - onValueChanged: { - backendValues.minimumValue.value = minimumSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Maximum Value Angle") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maxValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: maxValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.maxValueAngle.value - onValueChanged: { - backendValues.maxValueAngle.value = maxValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum Value Angle") - } - - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: minValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.minValueAngle.value - onValueChanged: { - backendValues.minValueAngle.value = minValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TurboMeterSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TurboMeterSpecifics.qml deleted file mode 100644 index fe5ad937..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_hybrid/gauges/designer/TurboMeterSpecifics.qml +++ /dev/null @@ -1,176 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("TurboMeter") - SectionLayout { - - Label { - text: qsTr("Turbo Value") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.turboValue - minimumValue: 0 - maximumValue: backendValues.maximumValue.value - decimals: 0 - } - - Controls.Slider { - id: turboSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: backendValues.maximumValue.value - updateValueWhileDragging: true - stepSize: 0.1 - value: backendValues.turboValue.value - onValueChanged: { - backendValues.turboValue.value = turboSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - - Label { - text: qsTr("Maximum Turbo") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maximumValue - minimumValue: 0 - maximumValue: 1000 - decimals: 0 - } - - Controls.Slider { - id: maximumFuelSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 1000 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.maximumValue.value - onValueChanged: { - backendValues.maximumValue.value = maximumFuelSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Maximum Value Angle") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.maxValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: maxValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.maxValueAngle.value - onValueChanged: { - backendValues.maxValueAngle.value = maxValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - Label { - text: qsTr("Minimum Value Angle") - } - - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.minValueAngle - minimumValue: 0 - maximumValue: 360 - decimals: 0 - } - - Controls.Slider { - id: minValueAngleSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 360 - updateValueWhileDragging: true - stepSize: 10 - value: backendValues.minValueAngle.value - onValueChanged: { - backendValues.minValueAngle.value = minValueAngleSlider.value - } - - } - - ExpandingSpacer { - width: 30 - } - } - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/CameraLoader.qml b/doc/src/snippets/qtcluster/qml/dash_sports/CameraLoader.qml deleted file mode 100644 index 25101609..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/CameraLoader.qml +++ /dev/null @@ -1,53 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ".." -import ClusterDemo 1.0 - -Loader { - id: camera - - opacity: 0.0 - visible: false - asynchronous: true - source: "../VideoView.qml" - onLoaded: item.imageSource = "image://etc/RearCameraOverlaySport.png" -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/CarLoader.qml b/doc/src/snippets/qtcluster/qml/dash_sports/CarLoader.qml deleted file mode 100644 index c9022909..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/CarLoader.qml +++ /dev/null @@ -1,55 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 - -Loader { - opacity: 0.0 - - asynchronous: true - active: false - source: "../CarViewSports.qml" - - onLoaded: { - // Start with car view, there is some kind of a problem when starting with any - // other (It seems NoDraw doesn't work if this is not the first view) - loadCenterView(true) // We get the first change from signal - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/CenterStack.qml b/doc/src/snippets/qtcluster/qml/dash_sports/CenterStack.qml deleted file mode 100644 index 8eaadd5a..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/CenterStack.qml +++ /dev/null @@ -1,124 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ".." -import ClusterDemo 1.0 - -Item { - id: centerStack - property int viewIndex: 4 - height: root.height - 173 - width: root.width / 2 - clip: true - - property alias fadeOutCenter: fadeOutCenter - property alias fadeInCenter: fadeInCenter - property alias loader: loader - - - Loader { - id: loader - onStatusChanged: { - if (status == Loader.Ready) - fadeInCenter.start() - } - anchors.fill: parent - } - - Component.onCompleted: { - loader.source = "../MediaPlayerView.qml" - // Start with car view, there is some kind of a problem when starting with any - // other (It seems NoDraw doesn't work if this is not the first view) - //loadCenterView(true) // We get the first change from signal - } - - PropertyAnimation { - id: fadeInCenter - target: loader - property: "opacity" - from: 0.0 - to: 1.0 - duration: 400 - easing.type: Easing.Linear - } - - PropertyAnimation { - id: fadeOutCenter - property: "opacity" - from: 1.0 - to: 0.0 - duration: 250 - easing.type: Easing.Linear - onStopped: { - if (target === car) { - car.visible = false - car.item.hidden = true - } else if (target === camera) { - camera.visible = false - } - if (centerStack.viewIndex === carviewindex) { - car.visible = true - fadeInCenter.target = car - car.item.hidden = false - fadeInCenter.start() - } else if (centerStack.viewIndex === videoviewindex) { - camera.x = centerStack.x - camera.y = centerStack.y - camera.visible = true - fadeInCenter.target = camera - fadeInCenter.start() - } else { - fadeInCenter.target = loader - } - loader.source = component[centerStack.viewIndex] - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/Dashboard.qml b/doc/src/snippets/qtcluster/qml/dash_sports/Dashboard.qml deleted file mode 100644 index 619d92c1..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/Dashboard.qml +++ /dev/null @@ -1,52 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.2 -import ClusterDemo 1.0 -import ".." - -Item { - id: main - - width: 1280 - height: 480 - - anchors.fill: parent -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/DashboardForm.ui.qml b/doc/src/snippets/qtcluster/qml/dash_sports/DashboardForm.ui.qml deleted file mode 100644 index 98c6a2a8..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/DashboardForm.ui.qml +++ /dev/null @@ -1,250 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ -import QtQuick 2.6 -import ".." -import "." -import ClusterDemo 1.0 -import QtQuick.Extras 1.4 - -Item { - - id: root - - width: 1280 - height: 480 - - property alias camera: camera - property alias car: car - property alias speedoMeter: speedoMeter - property alias flipable: flipable - - property bool startupAnimationStopped: false - - property int gaugeDemoTime: 1000 - property alias centerStack: centerStack // duration (/2) of the gauge needle animation at startup - - property color iconRed: "#e41e25" - property color iconGreen: "#5caa15" - property color iconYellow: "#face20" - property color iconDark: "#444444" - - // TODO: Needed, as background clearing gets messed up after hybrid 3D - Rectangle { - anchors.fill: parent - color: "black" - z: -1 - } - - Image { - id: frame - source: "image://etc/DashboardFrameSport-mask.png" - z: 2 - } - - //where? - CameraLoader { - id: camera - - width: parent.width / 2.5 - height: parent.height - 180 - - anchors.centerIn: parent - } - - // comment ifndef QT_3DCORE_LIB - CarLoader { - id: car - - width: parent.width / 2.5 - height: parent.height - 180 - - anchors.centerIn: parent - } - // end comment - Item { - id: container - - width: root.width - height: root.height - anchors.verticalCenterOffset: 0 - anchors.horizontalCenterOffset: 0 - anchors.centerIn: parent - - SpeedoMeterLoader { - id: speedoMeter - anchors.left: parent.left - anchors.leftMargin: 48 - anchors.top: parent.top - anchors.topMargin: 67 - height: width - value: 33 - width: 380 - z: 4 - } - - CenterStack { - id: centerStack - viewIndex: 3 - anchors.horizontalCenter: parent.horizontalCenter - anchors.top: parent.top - anchors.topMargin: 83 - } - - RPMFlipable { - id: flipable - anchors.right: parent.right - anchors.rightMargin: 50 - anchors.top: parent.top - anchors.topMargin: 69 - width: 380 - rpmValue: 2212 - flipped: false - z: 4 - } - } - - Item { - width: speedoMeter.width - anchors.horizontalCenter: parent.horizontalCenter - anchors.top: pilotLights.top - - TurnIndicator { - anchors.left: parent.left - direction: Qt.LeftArrow - active: ValueSource.turnSignal & Qt.LeftArrow - width: 48 - height: 48 - } - - TurnIndicator { - anchors.right: parent.right - direction: Qt.RightArrow - active: ValueSource.turnSignal & Qt.RightArrow - width: 48 - height: 48 - } - - z: 3 - } - - Item { - id: bottomRow - height: 68 - width: 320 - anchors.bottom: parent.bottom - anchors.bottomMargin: 10 - anchors.horizontalCenter: parent.horizontalCenter - z: 3 - property int pixelSize: 17 - Text { - text: ValueSource.date - color: "white" - font.pixelSize: bottomRow.pixelSize - anchors.right: temperature.left - anchors.rightMargin: 15 - } - Text { - id: temperature - text: "+18°C" - color: "white" - font.pixelSize: bottomRow.pixelSize - anchors.right: time.left - anchors.rightMargin: 15 - } - Text { - id: time - text: ValueSource.time - color: "white" - font.pixelSize: bottomRow.pixelSize - anchors.right: parent.right - } - } - - Row { - id: pilotLights - anchors.horizontalCenter: parent.horizontalCenter - y: 23 - spacing: 2 - z: 3 - - Picture { - width: 48 - height: 48 - - color: ValueSource.lowBeam ? root.iconGreen : root.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0456.dat" - } - - Picture { - width: 48 - height: 48 - - color: ValueSource.seatBelt ? root.iconRed : root.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0249.dat" - } - - - Picture { - width: 48 - height: 48 - - color: ValueSource.lowBeam ? root.iconRed : root.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0083.dat" - } - - Picture { - width: 48 - height: 48 - - color: ValueSource.lightFailure ? root.iconYellow : root.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_1555.dat" - } - } - - VehicleInfoNote { - anchors.bottom: car.bottom - visible: noteVisible && highlightType && !car.hidden - id: alertNote - textColor: "orange" //"#3a98c4" - fixedPositionX: centerStack.x + (centerStack.width / 2) - } - - // end comment -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/DashboardFrame.qml b/doc/src/snippets/qtcluster/qml/dash_sports/DashboardFrame.qml deleted file mode 100644 index 0028581d..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/DashboardFrame.qml +++ /dev/null @@ -1,61 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ".." -import ClusterDemo 1.0 - -Loader { - width: 1280 - height: 480 - - id: loader - asynchronous: true - active: frame.status === Image.Ready - source: "DashboardView.qml" - - Image { - id: frame - - visible: loader.status !== Loader.Ready //only show until the real dashboard is loaded - source: "image://etc/DashboardFrameSport-mask.png" - z: 2 - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/DashboardView.qml b/doc/src/snippets/qtcluster/qml/dash_sports/DashboardView.qml deleted file mode 100644 index 0e9ba25e..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/DashboardView.qml +++ /dev/null @@ -1,320 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.4 -import ClusterDemo 1.0 - -DashboardForm { - id: main //the id is used in e.g. VehicleInfoNote - - width: 1280 - height: 480 - - //Start animating gauges after both are loaded - function showGauges() { - if (speedoMeter.status === Loader.Ready - && flipable.rpm.status === Loader.Ready) { - startupAnimation.start() - } - } - - property var component: [ - "../MapView.qml", - "../MediaPlayerView.qml", - "../ConsumptionView.qml", - "", // VideoView.qml - "../CarParking.qml", - "" // CarView.qml - ] - - property string mapPositionImage: "image://etc/MapLocationSport.png" - - property int videoviewindex: 3 - property int parkingviewindex: 4 - property int carviewindex: 5 - - property int preReversingCenterView: -1 - property int preReversingRightView - - // CarModel animations - property int carModelHighlightType: 0 - - property bool doorAction: false - property bool actionInProgress: false - property bool loadingInProgress: false - property bool isReversing: false - - property int doorsOpen: ValueSource.frontLeftOpen + ValueSource.frontRightOpen - + ValueSource.hoodOpen + ValueSource.trunkOpen - property bool flatTire: ValueSource.flatTire - property bool lightFailure: ValueSource.lightFailure - property int gear: ValueSource ? ValueSource.gear : "4" - - property var cameraView: camera - property bool viewChanged: ValueSource.viewChange - - function forceCarView() { - actionInProgress = true - // Make CarView visible before activating the animations - if (car.item && car.item.hidden) { - if (camera.visible) - camera.visible = false - car.opacity = 1.0 - centerStack.visible = false - car.visible = true - car.item.hidden = false - } - } - - function loadCenterView(nextView, allowParking) { - loadingInProgress = true - var previousViewIndex = centerStack.viewIndex - - if (preReversingCenterView != -1 && !allowParking) { - if (centerStack.viewIndex !== preReversingCenterView) { - centerStack.viewIndex = preReversingCenterView - if (centerStack.viewIndex < 0) - centerStack.viewIndex = 5 - } - } - else { - centerStack.viewIndex = getViewIndex(centerStack.viewIndex, nextView, allowParking) - } - loadingInProgress = false - - if (previousViewIndex === carviewindex) - centerStack.fadeOutCenter.target = car - else if (previousViewIndex === videoviewindex) - centerStack.fadeOutCenter.target = camera - else - centerStack.fadeOutCenter.target = centerStack.loader - centerStack.fadeOutCenter.start() - } - - function getViewIndex(viewindex, nextView, allowParking) { - if (allowParking) { - return videoviewindex - } - - if (nextView) { - viewindex++ - if (viewindex === parkingviewindex) { - viewindex++ - } - if (viewindex > 5) - viewindex = 0 - } else { - viewindex-- - if (viewindex === parkingviewindex) { - viewindex-- - } - if (viewindex < 0) - viewindex = 5 - } - return viewindex - } - - onDoorsOpenChanged: { - if (actionInProgress && !doorAction) - return - - // Check all doors & parse a correct value from them - var doors = 0 - if (ValueSource.frontLeftOpen) - doors ^= 1 - if (ValueSource.frontRightOpen) - doors ^= 2 - if (ValueSource.trunkOpen) - doors ^= 4 - if (ValueSource.hoodOpen) - doors ^= 8 - - if (doors != 0) { - forceCarView() - if (car.item) - car.item.highlightDoors(doors) - carModelHighlightType = -1 - } - } - - onFlatTireChanged: { - if (!actionInProgress && flatTire) { - forceCarView() - carModelHighlightType = car.item.highlightTire() - } - } - - onLightFailureChanged: { - if (!actionInProgress && lightFailure) { - forceCarView() - carModelHighlightType = car.item.highlightLamp() - } - } - - onGearChanged: { - if (gear === -1) - reversing() - else if (gear >= 0) - returnFromReversing() - } - - onViewChangedChanged: changeView(viewChanged) - - function reversing() { - isReversing = true - // Car backing up, trigger rear camera view and proximity sensor view - preReversingCenterView = centerStack.viewIndex - loadCenterView(0, true) - flipable.flipped = !flipable.flipped - } - - function returnFromReversing() { - if (!isReversing) - return - loadCenterView(true, false) - preReversingCenterView = -1 - flipable.flipped = !flipable.flipped - isReversing = false - } - - function changeView(nextView) { - if (isReversing) - return - if (actionInProgress || loadingInProgress) - return - if (nextView) - loadCenterView(nextView) - } - - function stopAll() { - returnView.stop() - startupAnimation.stop() - centerStack.fadeOutCenter.stop() - centerStack.fadeInCenter.stop() - doorAction = false - actionInProgress = false - loadingInProgress = false - isReversing = false - } - - Timer { - id: returnView - interval: 1000 - running: false - onTriggered: { - if (camera.x === centerStack.x) - camera.visible = true - car.item.hidden = true - car.visible = false - car.opacity = 0.0 - centerStack.visible = true - } - } - - SequentialAnimation { - id: startupAnimation - ParallelAnimation { - SmoothedAnimation { - target: speedoMeter.rotation - property: "angle" - from: 90 - to: 0 - duration: 300 - } - SmoothedAnimation { - target: flipable.flipRotation - property: "angle" - from: 90 - to: 0 - duration: 300 - } - } - - ParallelAnimation { - SequentialAnimation { - id: rpmAnimation - SmoothedAnimation { - target: flipable.rpm.item - property: "rpmValue" - to: flipable.rpm.item.maxValue - duration: gaugeDemoTime - easing.type: Easing.InQuint - } - SmoothedAnimation { - target: flipable.rpm.item - property: "rpmValue" - to: ValueSource.rpm - duration: gaugeDemoTime - easing.type: Easing.OutQuint - } - ScriptAction { - script: flipable.rpm.item.rpmValue = ValueSource.rpm - } - } - - SequentialAnimation { - id: speedAnimation - SmoothedAnimation { - target: speedoMeter.item - property: "speedValue" - to: speedoMeter.item.maxValue - duration: gaugeDemoTime - easing.type: Easing.InQuint - } - SmoothedAnimation { - target: speedoMeter.item - property: "speedValue" - to: ValueSource.kph // TODO: Not entirely accurate this way, fix - duration: gaugeDemoTime - easing.type: Easing.OutQuint - } - ScriptAction { - script: startupAnimationStopped = true - } - } - } - ScriptAction { - script: car.active = true - } //Start the 3d model loading - } - - speedoMeter.onLoaded: showGauges() - flipable.onLoaded: showGauges() -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/Gauge.qml b/doc/src/snippets/qtcluster/qml/dash_sports/Gauge.qml deleted file mode 100644 index e6d55ace..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/Gauge.qml +++ /dev/null @@ -1,109 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2014 The Qt Company and/or its subsidiary(-ies). -** Contact: http://www.qt.io -** -** This file is part of the The Qt Company automotive framework. -** -****************************************************************************/ - -import QtQuick 2.0 - -import "functions.js" as Functions - -Item { - id: gauge - property alias topText: topTxt - property alias bgSource: bgImage.source - property real outerRadius: Math.min(width, height) * 0.5 - property int animationDuration: 500 - - property int value: 0 - property int minValue: 0 - property int maxValue: 10000 - property int minAngle: -138 - property int maxAngle: 162 - property real valueInDegrees: ((maxAngle - minAngle) / (maxValue - minValue)) * (value - minValue) - property string shaderColor: "#E31E24" - - //This is for drawing the shader needle. RpmGauge values background is a bit bigger than - //speedometer (or in different location). - // As we draw all gauge needles here we need the correction for rpm gauge - property alias pixelCorrection: effect.pixelCorrection - - Image { - id: bgImage - anchors.centerIn: parent - } - - Text { - id: topTxt - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottom: parent.verticalCenter - font.pixelSize: Functions.toPixels(0.3, outerRadius) - color: "white" - } - - ShaderEffect { - id: effect - anchors.centerIn: parent - - width: gauge.width - height: gauge.height - property double frontCut: gauge.minAngle + gauge.valueInDegrees// new speed - property double backCut: gauge.minAngle //starting point - - // INTERNAL BELOW - property double _accelerating: (backCut < frontCut) ? 1. : 0. - property double pixelCorrection: 0.0 - - property variant source: ShaderEffectSource { - sourceItem: Rectangle { - width: effect.width - height: effect.width - radius: width - color: shaderColor - } - } - - Behavior on frontCut { - enabled: startupAnimationStopped - PropertyAnimation { duration: animationDuration } - } - - fragmentShader: " - varying highp vec2 qt_TexCoord0; - uniform lowp sampler2D source; - uniform lowp float qt_Opacity; - - uniform lowp float frontCut; - uniform lowp float backCut; - uniform lowp float _accelerating; - uniform lowp float pixelCorrection; - - highp float FCRad = radians(frontCut - 180.); - highp float BCRad = radians(backCut - 180.); - - void main() { - highp vec2 uv = vec2(.5 - qt_TexCoord0.y, .5 - qt_TexCoord0.x); - - lowp float L = length(uv); - lowp float f = 0.; - - f = smoothstep(L - .01, L, .4615 + pixelCorrection); - f -= smoothstep(L,L + 0.01, .444 + pixelCorrection); - //f = step(L, 0.48); - //f -= step(L,0.45); - - lowp float angle = -atan(uv.y,uv.x); - - // Without gradient - f *= mix((1. - step(BCRad, angle)) * step(FCRad, angle), - (1. - step(FCRad, angle)) * step(BCRad, angle), - _accelerating); - - gl_FragColor = texture2D(source, qt_TexCoord0) * f * 1.; - } - " - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/RPMFlipable.qml b/doc/src/snippets/qtcluster/qml/dash_sports/RPMFlipable.qml deleted file mode 100644 index a3ebda29..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/RPMFlipable.qml +++ /dev/null @@ -1,130 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ".." -import ClusterDemo 1.0 - -Flipable { - id: flipable - height: width - property bool flipped: false - signal loaded - property alias flipRotation: flipRotation - property alias rpm: rpm - - property int rpmValue: 4000 - - front: Loader { - id: rpm - width: parent.width - height: width - asynchronous: true - source: "RPMGauge_painter.qml" - onLoaded: flipable.loaded() - } - - back: Loader { - width: parent.width - height: width - asynchronous: true - source: "../CarParkingSports.qml" - } - - transform: Rotation { - id: flipRotation - origin.x: flipable.width / 2 - origin.y: flipable.height / 2 - axis.x: 0; axis.y: 1; axis.z: 0 // set axis.y to 1 to rotate around y-axis - angle: 90 // the default angle - } - - states: [ - State { - name: "back" - PropertyChanges { - target: flipRotation - angle: 180 - } - PropertyChanges { - target: flipable.front - visible: false - } - - PropertyChanges { - target: flipable.back - visible: true - } - - when: flipable.flipped - }, - State { - name: "front" - PropertyChanges { - target: flipRotation - angle: 0 - } - PropertyChanges { - target: flipable.front - visible: true - } - - PropertyChanges { - target: flipable.back - visible: false - } - when: !flipable.flipped - } - ] - - transitions: Transition { - NumberAnimation { target: flipRotation; property: "angle"; duration: 300 } - } - - //Fill background while flipping. TODO think better way to do it - Rectangle { - anchors.centerIn: parent - radius: flipable.width+4 /2 - width: flipable.width+4 - height: flipable.width+4 - color: "black" - z: -1 - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge.qml b/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge.qml deleted file mode 100644 index c0bd7aec..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge.qml +++ /dev/null @@ -1,240 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -import "../functions.js" as Functions -import ClusterDemo 1.0 - -Item { - property alias rpmValue: rpmGauge.rpmValue - property alias maxValue: rpmGauge.maxValue - - Image { - id: rpmBg - source: "image://etc/Gauge_RPM.png" - } - - ShaderEffect { - id: rpmGauge - anchors.fill: rpmBg - - property real outerRadius: Math.min(width, height) * 0.5 - property int animationDurationRpm: 50 - - property real rpmValue: 0 - property int value: startupAnimationStopped ? ValueSource.rpm : rpmValue - property int minValue: 0 - property int maxValue: 8000 - property int minAngle: 90 - property int maxAngle: 270 - property real valueInDegrees: ((maxAngle - minAngle) - / (maxValue - minValue)) * (value - minValue) - - property double fCRadRpm: Functions.degToRad(frontCutRpm - 180.) - property double bCRadRpm: Functions.degToRad(backCutRpm - 180.) - - //Battery gauge - property real valueBatt: ValueSource.batteryLevel - property int minAngleBatt: 324 - property int maxAngleBatt: 288 - property int maxValueBatt: 100 - property int animationDurationBatt: 100 - property color shaderColorBatt: "#464749" - property real valueInDegreesBatt: ((maxAngleBatt - minAngleBatt) - / (maxValueBatt - minValue)) * (valueBatt - minValue) - property double _acceleratingBatt: (backCutBatt < frontCutBatt) ? 1. : 0. - property double frontCutBatt: minAngleBatt + valueInDegreesBatt - property double backCutBatt: minAngleBatt - - property double fCRadBatt: Functions.degToRad(frontCutBatt - 180.) - property double bCRadBatt: Functions.degToRad(backCutBatt - 180.) - - //Engine temp - property real valueTemp: ValueSource.engineTemperature > minValueTemp - ? ValueSource.engineTemperature : minValueTemp - property int minAngleTemp: 35 - property int maxAngleTemp: 72 - property int minValueTemp: 40 - property int maxValueTemp: 120 - property int animationDurationTemp: 100 - property color shaderColorTemp: "#464749" - property real valueInDegreesTemp: ((maxAngleTemp - minAngleTemp) - / (maxValueTemp - minValueTemp)) - * (valueTemp - minValueTemp) - property double _acceleratingTemp: (backCutTemp < frontCutTemp) ? 1. : 0. - property double frontCutTemp: minAngleTemp + valueInDegreesTemp - property double backCutTemp: minAngleTemp - - property double fCRadTemp: Functions.degToRad(frontCutTemp - 180.) - property double bCRadTemp: Functions.degToRad(backCutTemp - 180.) - - //Shader properties - property double frontCutRpm: minAngle + valueInDegrees - property double backCutRpm: minAngle - - // INTERNAL BELOW - property double _acceleratingRpm: (backCutRpm < frontCutRpm) ? 1. : 0. - property variant source: rpmBg - property color shaderColorRpm: "#E31E24" - - Behavior on frontCutRpm { - enabled: startupAnimationStopped - PropertyAnimation { duration: rpmGauge.animationDurationRpm } - } - - Behavior on frontCutBatt { - enabled: startupAnimationStopped - PropertyAnimation { duration: rpmGauge.animationDurationBatt } - } - - Behavior on frontCutTemp { - enabled: startupAnimationStopped - PropertyAnimation { duration: rpmGauge.animationDurationTemp } - } - - fragmentShader: " - varying highp vec2 qt_TexCoord0; - uniform lowp sampler2D source; - uniform lowp float qt_Opacity; - lowp vec4 c = vec4(0.,0.,0.,0.); - - //Rpm - uniform lowp vec4 shaderColorRpm; - uniform lowp float _acceleratingRpm; - uniform highp float fCRadRpm; - uniform highp float bCRadRpm; - - //Batt - uniform lowp vec4 shaderColorBatt; - uniform lowp float _acceleratingBatt; - - uniform highp float fCRadBatt; - uniform highp float bCRadBatt; - - //Temp - uniform lowp vec4 shaderColorTemp; - uniform lowp float _acceleratingTemp; - - uniform highp float fCRadTemp; - uniform highp float bCRadTemp; - - void main() { - highp vec2 uv = vec2(.5 - qt_TexCoord0.y, .5 - qt_TexCoord0.x); - - lowp float L = length(uv); - lowp float f = 0.; - - f = smoothstep(L - .01, L, .4615); - f -= smoothstep(L,L + 0.01, .444); - - lowp float angle = -atan(uv.y,uv.x); - - lowp float frpm = f * mix((1. - step(bCRadRpm, angle)) * step(fCRadRpm, angle), - (1. - step(fCRadRpm, angle)) * step(bCRadRpm, angle), - _acceleratingRpm); - - if (frpm > .0) { - gl_FragColor = mix(c,shaderColorRpm,frpm); - return; - } - - lowp float fBatt = f * mix((1. - step(bCRadBatt, angle)) * step(fCRadBatt, angle), - (1. - step(fCRadBatt, angle)) * step(bCRadBatt, angle), - _acceleratingBatt); - - if ( fBatt > .0) { - gl_FragColor = mix(c,shaderColorBatt,fBatt); - return; - } - - lowp float fTemp= f * mix((1. - step(bCRadTemp, angle)) * step(fCRadTemp, angle), - (1. - step(fCRadTemp, angle)) * step(bCRadTemp, angle), - _acceleratingTemp); - - if ( fTemp > .0) { - gl_FragColor = mix(c, shaderColorTemp, fTemp); - return; - } - - gl_FragColor = c; - } - " - } - - Text { - id: topText - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottom: parent.verticalCenter - font.pixelSize: Functions.toPixels(0.3, rpmGauge.outerRadius) - color: "white" - text: ValueSource.gearString - } - - Image { - id: engineLight - anchors.top: topText.bottom - anchors.topMargin: 10 - anchors.left: parent.horizontalCenter - source: ValueSource.batteryLevel > 15 ? "image://etc/Icon_Battery_OFF.png" - : "image://etc/Icon_Battery_ON.png" - z: 3 - } - - Image { - id: batteryLight - anchors.top: topText.bottom - anchors.topMargin: 10 - anchors.right: parent.horizontalCenter - source: ValueSource.engineTemperature > 100 ? "image://etc/Icon_Coolant_ON.png" - : "image://etc/Icon_Coolant_OFF.png" - z: 3 - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge_painter.qml b/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge_painter.qml deleted file mode 100644 index 192aa495..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge_painter.qml +++ /dev/null @@ -1,169 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 -import QtQuick.Extras 1.4 -import ClusterDemo 1.0 -import "../functions.js" as Functions - -Item { - id: rpmItem - property real rpmValue: flipable.rpmValue - property alias maxValue: rpmGauge.maxValue - - property color iconRed: "#e41e25" - property color iconGreen: "#5caa15" - property color iconYellow: "#face20" - property color iconDark: "#444444" - - Item { - id: rpmGauge - - anchors.fill: parent - width: height - property bool animated: ValueSource.runningInDesigner ? false : startupAnimationStopped - - property real value: animated ? ValueSource.rpm : rpmValue - - property real maxValue: 8000 - - property real maxValueAngle: 90 - property real minValueAngle: -90 - - property real outerRadius: Math.min(width, height) * 0.5 - property real needleEndInDegrees: 180 / rpmGauge.maximumValue - - Image { - source: "image://etc/Gauge_RPM.png" - anchors.fill: parent - } - - Text { - id: gearText - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottom: parent.verticalCenter - anchors.topMargin: Functions.toPixels(0.12, parent.outerRadius) - font.pixelSize: Functions.toPixels(0.3, parent.outerRadius) - color: "white" - text: ValueSource.gearString - } - - Picture { - id: engineLight - - width: 48 - height: 48 - - anchors.top: gearText.bottom - anchors.topMargin: 10 - anchors.left: parent.horizontalCenter - - source: "qrc:/iso-icons/iso_grs_7000_4_0247.dat" - color: ValueSource.batteryLevel > 15 ? rpmItem.iconDark : rpmItem.iconRed - z: 3 - } - - Picture { - id: batteryLight - - width: 48 - height: 48 - - anchors.top: gearText.bottom - anchors.topMargin: 10 - anchors.right: parent.horizontalCenter - source: "qrc:/iso-icons/iso_grs_7000_4_0246.dat" - color: ValueSource.engineTemperature > 100 ? rpmItem.iconYellow : rpmItem.iconDark - z: 3 - } - - CircularIndicator { - anchors.fill: parent - - startAngle: rpmGauge.minValueAngle - endAngle: rpmGauge.maxValueAngle - minimumValue: 0 - maximumValue: rpmGauge.maxValue - value: rpmGauge.value - padding: 13 - backgroundColor: "transparent" - progressColor: "#E31E24" - } - } - - CircularIndicator { - id: batteryGauge - anchors.fill: parent - - startAngle: 144 - endAngle: 108 - minimumValue: 0 - maximumValue: 100 - value: ValueSource.batteryLevel - padding: 12 - backgroundColor: "transparent" - progressColor: "#464749" - } - - CircularIndicator { - id: engineTempGauge - anchors.fill: parent - - endAngle: -108 - startAngle: -145 - minimumValue: 40 - maximumValue: 120 - value: ValueSource.engineTemperature - padding: 12 - backgroundColor: "transparent" - progressColor: "#464749" - } -} - diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge_vertex.qml b/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge_vertex.qml deleted file mode 100644 index ac211f3a..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/RPMGauge_vertex.qml +++ /dev/null @@ -1,170 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -import "../functions.js" as Functions -import ClusterDemo 1.0 - -Item { - id: root - - property bool updateGeometry: false - property bool showWire: false - - property alias rpmValue: rpmGauge.rpmValue - property alias maxValue: rpmGauge.maxValue - - - Image { - id: bg - source: "image://etc/Gauge_RPM.png" - - GaugeFiller { - id: rpmGauge - property real outerRadius: Math.min(width, height) * 0.5 - - anchors.fill: parent - radius: 177 - fillWidth: 10 - - property real rpmValue: 0 - value: startupAnimationStopped ? ValueSource.rpm : rpmValue - - minAngle: 90 - maxAngle: 270 - maxValue: 8000 - - updateGeometry: root.updateGeometry - doNotFill: root.showWire - -// Behavior on value { -// enabled: startupAnimationStopped -// PropertyAnimation { duration: 50 } -// } - } - - GaugeFiller { - // Battery - anchors.fill: parent - radius: 177 - fillWidth: 10 - - numVertices: 16 - minAngle: 324 - maxAngle: 288 - maxValue: 100 - value: ValueSource.batteryLevel - color: "#464749" - updateGeometry: root.updateGeometry - doNotFill: root.showWire - - Behavior on value { - enabled: startupAnimationStopped - PropertyAnimation { duration: 100 } - } - } - - GaugeFiller { - // Engine temp - anchors.fill: parent - radius: 177 - fillWidth: 10 - - numVertices: 16 - - minAngle: 35 - maxAngle: 72 - minValue: 40 - maxValue: 120 - - value: ValueSource.engineTemperature > 0 ? ValueSource.engineTemperature : minValue - - color: "#464749" - - updateGeometry: root.updateGeometry - doNotFill: root.showWire - - Behavior on value { - enabled: startupAnimationStopped - PropertyAnimation { duration: 100 } - } - } - } - - Text { - id: topText - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottom: parent.verticalCenter - font.pixelSize: Functions.toPixels(0.3, rpmGauge.outerRadius) - color: "white" - text: ValueSource.gearString - } - - Image { - id: engineLight - anchors.top: topText.bottom - anchors.topMargin: 10 - anchors.left: parent.horizontalCenter - source: ValueSource.batteryLevel > 15 ? "image://etc/Icon_Battery_OFF.png" - : "image://etc/Icon_Battery_ON.png" - z: 3 - } - - Image { - id: batteryLight - anchors.top: topText.bottom - anchors.topMargin: 10 - anchors.right: parent.horizontalCenter - source: ValueSource.engineTemperature > 100 ? "image://etc/Icon_Coolant_ON.png" - : "image://etc/Icon_Coolant_OFF.png" - z: 3 - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter.qml b/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter.qml deleted file mode 100644 index 991bbc67..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter.qml +++ /dev/null @@ -1,224 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -import "../functions.js" as Functions -import ClusterDemo 1.0 - -Item { - property alias speedValue: speedgauge.speedValue - property alias maxValue: speedgauge.maxValue - property real outerRadius: Math.min(width, height) * 0.5 - - Image { - id: speedBg - anchors.centerIn: parent - source: "image://etc/Gauge_Speed.png" - } - - ShaderEffect { - id: speedgauge - anchors.fill: speedBg - - property real outerRadius: Math.min(width, height) * 0.5 - property int animationDurationSpeed: 500 - - property real speedValue: 0 - property int value: startupAnimationStopped ? ValueSource.kph : speedValue - property int minValue: 0 - property int maxValue: 240 - property int minAngle: 0 - property int maxAngle: 270 - property real valueInDegrees: ((maxAngle - minAngle) - / (maxValue - minValue)) * (value - minValue) - - property double fCRadSpeed: Functions.degToRad(frontCutSpeed - 180.) - property double bCRadSpeed: Functions.degToRad(backCutSpeed - 180.) - - //Fuel gauge - property real valueFuel: ValueSource.fuelLevel - property int minAngleFuel: 324 - property int maxAngleFuel: 288 - property int maxValueFuel: 100 - property int animationDurationFuel: 100 - property color shaderColorFuel: "#464749" - property real valueInDegreesFuel: ((maxAngleFuel - minAngleFuel) - / (maxValueFuel - minValue)) * (valueFuel - minValue) - property double _acceleratingFuel: (backCutFuel < frontCutFuel) ? 1. : 0. - property double frontCutFuel: minAngleFuel + valueInDegreesFuel - property double backCutFuel: minAngleFuel - - property double fCRadFuel: Functions.degToRad(frontCutFuel - 180.) - property double bCRadFuel: Functions.degToRad(backCutFuel - 180.) - - //Shader properties - property double frontCutSpeed: minAngle + valueInDegrees// new speed - property double backCutSpeed: minAngle //starting point - - // INTERNAL BELOW - property double _acceleratingSpeed: (backCutSpeed < frontCutSpeed) ? 1. : 0. - property variant source: speedBg - property color shaderColorSpeed: "#E31E24" - - Behavior on frontCutSpeed { - enabled: startupAnimationStopped - PropertyAnimation { duration: speedgauge.animationDurationSpeed } - } - - Behavior on frontCutFuel { - enabled: startupAnimationStopped - PropertyAnimation { duration: speedgauge.animationDurationFuel } - } - - fragmentShader: " - varying highp vec2 qt_TexCoord0; - uniform lowp sampler2D source; - uniform lowp float qt_Opacity; - lowp vec4 c = vec4(0.,0.,0.,0.); - - //Speed - uniform lowp vec4 shaderColorSpeed; - uniform lowp float frontCutSpeed; - uniform lowp float backCutSpeed; - uniform lowp float _acceleratingSpeed; - - uniform highp float fCRadSpeed; - uniform highp float bCRadSpeed; - - //Fuel - uniform lowp vec4 shaderColorFuel; - uniform lowp float frontCutFuel; - uniform lowp float backCutFuel; - uniform lowp float _acceleratingFuel; - - uniform highp float fCRadFuel; - uniform highp float bCRadFuel; - - void main() { - highp vec2 uv = vec2(.5 - qt_TexCoord0.y, .5 - qt_TexCoord0.x); - - lowp float L = length(uv); - lowp float f = 1.; - - f = smoothstep(L - .01, L, .4615); - f -= smoothstep(L,L + 0.01, .444); - - lowp float angle = -atan(uv.y,uv.x); - - lowp float fspeed = f * mix((1. - step(bCRadSpeed, angle)) * step(fCRadSpeed, angle), - (1. - step(fCRadSpeed, angle)) * step(bCRadSpeed, angle), - _acceleratingSpeed); - - if (fspeed > .0) { - gl_FragColor = mix(c,shaderColorSpeed,fspeed); - return; - } - - lowp float ffuel = f * mix((1. - step(bCRadFuel, angle)) * step(fCRadFuel, angle), - (1. - step(fCRadFuel, angle)) * step(bCRadFuel, angle), - _acceleratingFuel); - - if (ffuel > .0) { - gl_FragColor = mix(c, shaderColorFuel, ffuel); - return; - } - - gl_FragColor = c; - } - " - } - - Text { - id: topText - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottom: parent.verticalCenter - font.pixelSize: Functions.toPixels(0.3, speedgauge.outerRadius) - color: "white" - text: speedgauge.value.toFixed() - } - - Text { - id: kmText - text: "km/h" - color: "white" - font.pixelSize: Functions.toPixels(0.09, speedgauge.outerRadius) - anchors.top: topText.bottom - anchors.horizontalCenter: parent.horizontalCenter - } - - Image { - id: tyreLight - anchors.right: parkingLight.left - anchors.bottom: parkingLight.bottom - anchors.bottomMargin: 18 - source: ValueSource.flatTire ? "image://etc/Icon_TyreMalfunction_ON.png" - : "image://etc/Icon_TyreMalfunction_OFF.png" - } - - Image { - id: parkingLight - anchors.horizontalCenter: parent.horizontalCenter - anchors.top: kmText.bottom - anchors.topMargin: 20 - - source: ValueSource.parkingBrake ? "image://etc/Icon_ParkingBrake_ON.png" - : "image://etc/Icon_ParkingBrake_OFF.png" - } - - Image { - id: fuelLight - anchors.left: parkingLight.right - anchors.bottom: parkingLight.bottom - anchors.bottomMargin: 18 - source: (ValueSource.fuelLevel <= 15) ? "image://etc/Icon_Fuel_ON.png" - : "image://etc/Icon_Fuel_OFF.png" - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeterLoader.qml b/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeterLoader.qml deleted file mode 100644 index bdc4e9cc..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeterLoader.qml +++ /dev/null @@ -1,63 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.6 -import ".." -import ClusterDemo 1.0 - -Loader { - id: speedoMeter - asynchronous: true - source: "SpeedoMeter_painter.qml" - //source: "SpeedoMeter_vertex.qml" - //source: "SpeedoMeter.qml" - - property int value: 150 - - property alias rotation: speed_rot - - transform: Rotation { - id: speed_rot - origin.x: speedoMeter.width / 2 - origin.y: speedoMeter.height / 2 - axis { x: 0; y: 1; z: 0 } - angle: ValueSource.runningInDesigner ? 0 : 90 // the default angle - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter_painter.qml b/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter_painter.qml deleted file mode 100644 index e8a2ad28..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter_painter.qml +++ /dev/null @@ -1,181 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 -import ClusterDemo 1.0 -import QtQuick.Extras 1.4 -import "../functions.js" as Functions - -Item { - id: speedoItem - property real speedValue: speedoMeter.value - property alias maxValue: speedometer.maxValue - anchors.fill: parent - - property color iconRed: "#e41e25" - property color iconGreen: "#5caa15" - property color iconYellow: "#face20" - property color iconDark: "#444444" - - Item { - id: speedometer - - property bool animated: ValueSource.runningInDesigner ? false : startupAnimationStopped - property real value: animated ? ValueSource.kph : speedValue - - - - anchors.fill: parent - - property real maxValue: 240 - width: height - - property real outerRadius: Math.min(width, height) * 0.5 - - property real maxValueAngle: 90 - property real minValueAngle: -179 - - property real degreesPerValue: Math.abs((minValueAngle - maxValueAngle) - / speedometer.maximumValue) - - Image { - source: "image://etc/Gauge_Speed.png" - anchors.fill: parent - } - - Text { - id: speedText - font.pixelSize: Functions.toPixels(0.4, parent.outerRadius) - text: speedometer.value.toFixed() - color: "white" - horizontalAlignment: Text.AlignRight - anchors.horizontalCenter: parent.horizontalCenter - anchors.top: parent.top - anchors.topMargin: 115 - } - - Text { - id: kmText - text: "km/h" - color: "white" - font.pixelSize: Functions.toPixels(0.09, parent.outerRadius) - anchors.top: speedText.bottom - anchors.horizontalCenter: parent.horizontalCenter - } - - Picture { - id: tyreLight - - width: 48 - height: 48 - anchors.right: parkingLight.left - anchors.bottom: parkingLight.bottom - anchors.bottomMargin: 18 - - color: ValueSource.flatTire ? speedoItem.iconYellow : speedoItem.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_1434A.dat" - } - - Picture { - id: parkingLight - - width: 48 - height: 48 - anchors.horizontalCenterOffset: 0 - anchors.horizontalCenter: parent.horizontalCenter - anchors.top: kmText.bottom - anchors.topMargin: 11 - - color: ValueSource.parkingBrake ? speedoItem.iconRed : speedoItem.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0238.dat" - } - - Picture { - id: fuelLight - - width: 48 - height: 48 - anchors.left: parkingLight.right - anchors.bottom: parkingLight.bottom - anchors.bottomMargin: 18 - - color: ValueSource.fuelLevel <= 20.0 ? speedoItem.iconRed : speedoItem.iconDark - source: "qrc:/iso-icons/iso_grs_7000_4_0245.dat" - } - - CircularIndicator { - anchors.fill: parent - - startAngle: speedometer.minValueAngle - endAngle: speedometer.maxValueAngle - minimumValue: 0 - maximumValue: speedometer.maxValue - value: speedometer.value - padding: 13 - backgroundColor: "transparent" - progressColor: "#E31E24" - } - } - - CircularIndicator { - id: fuelGauge - - anchors.fill: parent - - value: ValueSource.fuelLevel - minimumValue: 0 - maximumValue: 100 - startAngle: 144 - endAngle: 108 - padding: 13 - backgroundColor: "transparent" - progressColor: "#464749" - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter_vertex.qml b/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter_vertex.qml deleted file mode 100644 index 2ed0a0ec..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/SpeedoMeter_vertex.qml +++ /dev/null @@ -1,159 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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$ -** -****************************************************************************/ - -import QtQuick 2.0 - -import "../functions.js" as Functions -import ClusterDemo 1.0 - -Item { - id: root - property alias speedValue: speedgauge.speedValue - property alias maxValue: speedgauge.maxValue - - property bool updateGeometry: false - property bool showWire: false - - Image { - id: bg - anchors.centerIn: parent - source: "image://etc/Gauge_Speed.png" - - GaugeFiller { - id: speedgauge - - property real outerRadius: Math.min(width, height) * 0.5 - - property real speedValue: 0 - value: startupAnimationStopped ? ValueSource.kph : speedValue - - anchors.fill: parent - radius: 177 - fillWidth: 10 - updateGeometry: root.updateGeometry - doNotFill: root.showWire - - Behavior on value { - enabled: startupAnimationStopped - PropertyAnimation { duration: 500 } - } - } - - GaugeFiller { - id: fuel - anchors.fill: parent - radius: 177 - fillWidth: 10 - - value: ValueSource.fuelLevel - numVertices: 16 - minAngle: 323.7 - maxAngle: 287.7 - maxValue: 100 - - color: "#464749" - - updateGeometry: root.updateGeometry - doNotFill: root.showWire - - Behavior on value { - enabled: startupAnimationStopped - PropertyAnimation { duration: 100 } - } - } - } - - Text { - id: topText - anchors.horizontalCenter: parent.horizontalCenter - anchors.bottom: parent.verticalCenter - font.pixelSize: Functions.toPixels(0.3, speedgauge.outerRadius) - color: "white" - text: speedgauge.value.toFixed() - } - - Text { - id: kmText - text: "km/h" - color: "white" - font.pixelSize: Functions.toPixels(0.09, speedgauge.outerRadius) - anchors.top: topText.bottom - anchors.horizontalCenter: parent.horizontalCenter - } - - Image { - id: tyreLight - anchors.right: parkingLight.left - anchors.bottom: parkingLight.bottom - anchors.bottomMargin: 18 - source: ValueSource.flatTire ? "image://etc/Icon_TyreMalfunction_ON.png" - : "image://etc/Icon_TyreMalfunction_OFF.png" - } - - Image { - id: parkingLight - anchors.horizontalCenter: parent.horizontalCenter - anchors.top: kmText.bottom - anchors.topMargin: 20 - - source: ValueSource.parkingBrake ? "image://etc/Icon_ParkingBrake_ON.png" - : "image://etc/Icon_ParkingBrake_OFF.png" - } - - Image { - id: fuelLight - anchors.left: parkingLight.right - anchors.bottom: parkingLight.bottom - anchors.bottomMargin: 18 - source: (ValueSource.fuelLevel <= 15) ? "image://etc/Icon_Fuel_ON.png" - : "image://etc/Icon_Fuel_OFF.png" - } - -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/designer/RPMFlipableSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_sports/designer/RPMFlipableSpecifics.qml deleted file mode 100644 index 915073f3..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/designer/RPMFlipableSpecifics.qml +++ /dev/null @@ -1,77 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("TurboMeter") - SectionLayout { - - Label { - text: qsTr("RPM Value") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.rpmValue - minimumValue: 0 - maximumValue: 8000 - decimals: 0 - } - - Controls.Slider { - id: turboSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 8000 - updateValueWhileDragging: true - stepSize: 0.1 - value: backendValues.rpmValue.value - onValueChanged: { - backendValues.rpmValue.value = turboSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/dash_sports/designer/SpeedoMeterLoaderSpecifics.qml b/doc/src/snippets/qtcluster/qml/dash_sports/designer/SpeedoMeterLoaderSpecifics.qml deleted file mode 100644 index 9fb15d94..00000000 --- a/doc/src/snippets/qtcluster/qml/dash_sports/designer/SpeedoMeterLoaderSpecifics.qml +++ /dev/null @@ -1,77 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -import QtQuick 2.1 -import HelperWidgets 2.0 -import QtQuick.Layouts 1.0 -import QtQuick.Controls 1.0 as Controls - -Column { - anchors.left: parent.left - anchors.right: parent.right - - Section { - anchors.left: parent.left - anchors.right: parent.right - caption: qsTr("TurboMeter") - SectionLayout { - - Label { - text: qsTr("Value") - } - - SecondColumnLayout { - SpinBox { - backendValue: backendValues.value - minimumValue: 0 - maximumValue: 240 - decimals: 0 - } - - Controls.Slider { - id: turboSlider - Layout.preferredWidth: 100 - - minimumValue: 0 - maximumValue: 240 - updateValueWhileDragging: true - stepSize: 0.1 - value: backendValues.value.value - onValueChanged: { - backendValues.value.value = turboSlider.value - - } - - } - - ExpandingSpacer { - width: 30 - } - } - - - } - } -} diff --git a/doc/src/snippets/qtcluster/qml/functions.js b/doc/src/snippets/qtcluster/qml/functions.js deleted file mode 100644 index 48c841fa..00000000 --- a/doc/src/snippets/qtcluster/qml/functions.js +++ /dev/null @@ -1,40 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -.pragma library - -function toPixels(percentage, outerRadius) { - return percentage * outerRadius; -} - -var convertToRad = Math.PI / 180; -function degToRad(degrees) { - return degrees * convertToRad; -} - -var convertToDeg = 180 / Math.PI; -function radToDeg(radians) { - return radians * convertToDeg; -} diff --git a/doc/src/snippets/qtcluster/qml/models/Map11.jpg b/doc/src/snippets/qtcluster/qml/models/Map11.jpg Binary files differdeleted file mode 100644 index 680dbea1..00000000 --- a/doc/src/snippets/qtcluster/qml/models/Map11.jpg +++ /dev/null diff --git a/doc/src/snippets/qtcluster/qml/models/Map3.jpg b/doc/src/snippets/qtcluster/qml/models/Map3.jpg Binary files differdeleted file mode 100644 index 8c3468e2..00000000 --- a/doc/src/snippets/qtcluster/qml/models/Map3.jpg +++ /dev/null diff --git a/doc/src/snippets/qtcluster/qml/models/sportscar_15k.qgltf b/doc/src/snippets/qtcluster/qml/models/sportscar_15k.qgltf Binary files differdeleted file mode 100644 index 5b4bd3d2..00000000 --- a/doc/src/snippets/qtcluster/qml/models/sportscar_15k.qgltf +++ /dev/null diff --git a/doc/src/snippets/qtcluster/qml/models/sportscar_15k_1.bin b/doc/src/snippets/qtcluster/qml/models/sportscar_15k_1.bin Binary files differdeleted file mode 100644 index aad1081f..00000000 --- a/doc/src/snippets/qtcluster/qml/models/sportscar_15k_1.bin +++ /dev/null diff --git a/doc/src/snippets/qtcluster/qml/route.txt b/doc/src/snippets/qtcluster/qml/route.txt deleted file mode 100644 index 22627635..00000000 --- a/doc/src/snippets/qtcluster/qml/route.txt +++ /dev/null @@ -1,1188 +0,0 @@ -$GPGGA,120156,5232.08,N,1317.6,E,1,07,1.3,50.6,M,39.2,M,,*71 -$GPRMC,120156,A,5232.08,N,1317.6,E,0,200.0,030308,11.2,W,A*22 -$GPGGA,120157,5232.08,N,1317.6,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,120157,A,5232.08,N,1317.6,E,0,200.0,030308,11.2,W,A*23 -$GPGGA,120158,5232.08,N,1317.6,E,1,07,1.3,50.6,M,39.2,M,,*7f -$GPRMC,120158,A,5232.08,N,1317.6,E,0,200.0,030308,11.2,W,A*2c -$GPGGA,120159,5232.08,N,1317.6,E,1,07,1.3,50.6,M,39.2,M,,*7e -$GPRMC,120159,A,5232.08,N,1317.6,E,0,200.0,030308,11.2,W,A*2d -$GPGGA,120200,5232.08,N,1317.6,E,1,07,1.3,50.6,M,39.2,M,,*71 -$GPRMC,120200,A,5232.08,N,1317.6,E,3.9,200.0,030308,11.2,W,A*36 -$GPGGA,120201,5232.08,N,1317.6,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,120201,A,5232.08,N,1317.6,E,8.7,197.0,030308,11.2,W,A*3f -$GPGGA,120202,5232.07,N,1317.6,E,1,07,1.3,50.6,M,39.2,M,,*7c -$GPRMC,120202,A,5232.07,N,1317.6,E,11.7,215.0,030308,11.2,W,A*02 -$GPGGA,120203,5232.07,N,1317.59,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120203,A,5232.07,N,1317.59,E,19.4,205.0,030308,11.2,W,A*33 -$GPGGA,120204,5232.06,N,1317.59,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120204,A,5232.06,N,1317.59,E,19.9,191.0,030308,11.2,W,A*36 -$GPGGA,120205,5232.05,N,1317.59,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120205,A,5232.05,N,1317.59,E,21.4,166.0,030308,11.2,W,A*3a -$GPGGA,120206,5232.05,N,1317.6,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120206,A,5232.05,N,1317.6,E,19.9,131.0,030308,11.2,W,A*07 -$GPGGA,120207,5232.04,N,1317.61,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120207,A,5232.04,N,1317.61,E,18.5,140.0,030308,11.2,W,A*3d -$GPGGA,120208,5232.04,N,1317.62,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120208,A,5232.04,N,1317.62,E,17.5,133.0,030308,11.2,W,A*3a -$GPGGA,120209,5232.03,N,1317.62,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120209,A,5232.03,N,1317.62,E,17.5,151.0,030308,11.2,W,A*38 -$GPGGA,120210,5232.03,N,1317.63,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120210,A,5232.03,N,1317.63,E,9.7,161.0,030308,11.2,W,A*0f -$GPGGA,120211,5232.02,N,1317.63,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120211,A,5232.02,N,1317.63,E,5.8,168.0,030308,11.2,W,A*05 -$GPGGA,120212,5232.02,N,1317.63,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120212,A,5232.02,N,1317.63,E,0,166.0,030308,11.2,W,A*1b -$GPGGA,120213,5232.02,N,1317.63,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120213,A,5232.02,N,1317.63,E,0,166.0,030308,11.2,W,A*1a -$GPGGA,120214,5232.02,N,1317.63,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120214,A,5232.02,N,1317.63,E,0,166.0,030308,11.2,W,A*1d -$GPGGA,120215,5232.01,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120215,A,5232.01,N,1317.64,E,9.7,153.0,030308,11.2,W,A*0e -$GPGGA,120216,5232,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*64 -$GPRMC,120216,A,5232,N,1317.64,E,19.4,153.0,030308,11.2,W,A*10 -$GPGGA,120217,5232,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*64 -$GPRMC,120217,A,5232,N,1317.65,E,19.4,157.0,030308,11.2,W,A*14 -$GPGGA,120218,5231.99,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120218,A,5231.99,N,1317.65,E,19.9,154.0,030308,11.2,W,A*38 -$GPGGA,120219,5231.99,N,1317.66,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120219,A,5231.99,N,1317.66,E,22.4,156.0,030308,11.2,W,A*3d -$GPGGA,120220,5231.98,N,1317.66,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120220,A,5231.98,N,1317.66,E,21.9,150.0,030308,11.2,W,A*3e -$GPGGA,120221,5231.97,N,1317.67,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120221,A,5231.97,N,1317.67,E,22.4,160.0,030308,11.2,W,A*3c -$GPGGA,120222,5231.96,N,1317.67,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120222,A,5231.96,N,1317.67,E,23.3,154.0,030308,11.2,W,A*3f -$GPGGA,120223,5231.96,N,1317.68,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120223,A,5231.96,N,1317.68,E,23.3,165.0,030308,11.2,W,A*33 -$GPGGA,120224,5231.95,N,1317.68,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120224,A,5231.95,N,1317.68,E,23.3,161.0,030308,11.2,W,A*33 -$GPGGA,120225,5231.94,N,1317.68,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120225,A,5231.94,N,1317.68,E,23.3,160.0,030308,11.2,W,A*32 -$GPGGA,120226,5231.94,N,1317.69,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120226,A,5231.94,N,1317.69,E,23.3,155.0,030308,11.2,W,A*36 -$GPGGA,120227,5231.93,N,1317.69,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120227,A,5231.93,N,1317.69,E,23.3,157.0,030308,11.2,W,A*32 -$GPGGA,120228,5231.92,N,1317.7,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120228,A,5231.92,N,1317.7,E,23.3,159.0,030308,11.2,W,A*0a -$GPGGA,120229,5231.91,N,1317.71,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120229,A,5231.91,N,1317.71,E,23.8,157.0,030308,11.2,W,A*3c -$GPGGA,120230,5231.9,N,1317.71,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,120230,A,5231.9,N,1317.71,E,25.3,158.0,030308,11.2,W,A*07 -$GPGGA,120231,5231.9,N,1317.72,E,1,07,1.3,50.6,M,39.2,M,,*72 -$GPRMC,120231,A,5231.9,N,1317.72,E,28.2,157.0,030308,11.2,W,A*06 -$GPGGA,120232,5231.89,N,1317.72,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120232,A,5231.89,N,1317.72,E,29.2,159.0,030308,11.2,W,A*32 -$GPGGA,120233,5231.88,N,1317.72,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120233,A,5231.88,N,1317.72,E,29.6,165.0,030308,11.2,W,A*39 -$GPGGA,120234,5231.87,N,1317.73,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120234,A,5231.87,N,1317.73,E,28.7,167.0,030308,11.2,W,A*32 -$GPGGA,120235,5231.86,N,1317.73,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120235,A,5231.86,N,1317.73,E,28.2,168.0,030308,11.2,W,A*38 -$GPGGA,120236,5231.85,N,1317.73,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120236,A,5231.85,N,1317.73,E,26.7,168.0,030308,11.2,W,A*33 -$GPGGA,120237,5231.84,N,1317.74,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120237,A,5231.84,N,1317.74,E,28.2,170.0,030308,11.2,W,A*36 -$GPGGA,120238,5231.83,N,1317.74,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120238,A,5231.83,N,1317.74,E,28.7,172.0,030308,11.2,W,A*39 -$GPGGA,120239,5231.82,N,1317.74,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120239,A,5231.82,N,1317.74,E,29.2,168.0,030308,11.2,W,A*36 -$GPGGA,120240,5231.81,N,1317.75,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120240,A,5231.81,N,1317.75,E,28.7,168.0,030308,11.2,W,A*3e -$GPGGA,120241,5231.8,N,1317.75,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,120241,A,5231.8,N,1317.75,E,28.2,167.0,030308,11.2,W,A*04 -$GPGGA,120242,5231.79,N,1317.75,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120242,A,5231.79,N,1317.75,E,27.7,170.0,030308,11.2,W,A*3d -$GPGGA,120243,5231.78,N,1317.75,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120243,A,5231.78,N,1317.75,E,27.2,169.0,030308,11.2,W,A*30 -$GPGGA,120244,5231.77,N,1317.76,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120244,A,5231.77,N,1317.76,E,26.7,165.0,030308,11.2,W,A*33 -$GPGGA,120245,5231.76,N,1317.77,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120245,A,5231.76,N,1317.77,E,26.2,153.0,030308,11.2,W,A*32 -$GPGGA,120246,5231.75,N,1317.77,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120246,A,5231.75,N,1317.77,E,26.2,156.0,030308,11.2,W,A*37 -$GPGGA,120247,5231.75,N,1317.78,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120247,A,5231.75,N,1317.78,E,26.2,155.0,030308,11.2,W,A*3a -$GPGGA,120248,5231.74,N,1317.78,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120248,A,5231.74,N,1317.78,E,25.8,151.0,030308,11.2,W,A*39 -$GPGGA,120249,5231.74,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120249,A,5231.74,N,1317.79,E,23.8,150.0,030308,11.2,W,A*3e -$GPGGA,120250,5231.73,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120250,A,5231.73,N,1317.79,E,21.9,166.0,030308,11.2,W,A*37 -$GPGGA,120251,5231.72,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120251,A,5231.72,N,1317.79,E,23.3,167.0,030308,11.2,W,A*3e -$GPGGA,120252,5231.71,N,1317.8,E,1,07,1.3,50.6,M,39.2,M,,*75 -$GPRMC,120252,A,5231.71,N,1317.8,E,24.8,173.0,030308,11.2,W,A*01 -$GPGGA,120253,5231.7,N,1317.8,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120253,A,5231.7,N,1317.8,E,24.8,170.0,030308,11.2,W,A*32 -$GPGGA,120254,5231.69,N,1317.8,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120254,A,5231.69,N,1317.8,E,24.8,171.0,030308,11.2,W,A*0c -$GPGGA,120255,5231.68,N,1317.8,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120255,A,5231.68,N,1317.8,E,24.8,166.0,030308,11.2,W,A*0a -$GPGGA,120256,5231.68,N,1317.81,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120256,A,5231.68,N,1317.81,E,24.9,167.0,030308,11.2,W,A*38 -$GPGGA,120257,5231.67,N,1317.81,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120257,A,5231.67,N,1317.81,E,28.2,165.0,030308,11.2,W,A*33 -$GPGGA,120258,5231.66,N,1317.81,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120258,A,5231.66,N,1317.81,E,30.1,165.0,030308,11.2,W,A*37 -$GPGGA,120259,5231.65,N,1317.82,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120259,A,5231.65,N,1317.82,E,31.6,168.0,030308,11.2,W,A*3d -$GPGGA,120300,5231.64,N,1317.82,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120300,A,5231.64,N,1317.82,E,33.0,167.0,030308,11.2,W,A*3a -$GPGGA,120301,5231.63,N,1317.82,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120301,A,5231.63,N,1317.82,E,33.0,169.0,030308,11.2,W,A*32 -$GPGGA,120302,5231.62,N,1317.83,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120302,A,5231.62,N,1317.83,E,33.0,171.0,030308,11.2,W,A*38 -$GPGGA,120303,5231.61,N,1317.83,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120303,A,5231.61,N,1317.83,E,33.0,168.0,030308,11.2,W,A*32 -$GPGGA,120304,5231.6,N,1317.83,E,1,07,1.3,50.6,M,39.2,M,,*74 -$GPRMC,120304,A,5231.6,N,1317.83,E,33.0,166.0,030308,11.2,W,A*0a -$GPGGA,120305,5231.59,N,1317.84,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120305,A,5231.59,N,1317.84,E,34.5,169.0,030308,11.2,W,A*3b -$GPGGA,120306,5231.58,N,1317.84,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120306,A,5231.58,N,1317.84,E,34.5,165.0,030308,11.2,W,A*35 -$GPGGA,120307,5231.57,N,1317.84,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120307,A,5231.57,N,1317.84,E,35.5,168.0,030308,11.2,W,A*37 -$GPGGA,120308,5231.56,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120308,A,5231.56,N,1317.85,E,36.0,170.0,030308,11.2,W,A*37 -$GPGGA,120309,5231.55,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120309,A,5231.55,N,1317.85,E,35.5,174.0,030308,11.2,W,A*37 -$GPGGA,120310,5231.54,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120310,A,5231.54,N,1317.85,E,34.0,168.0,030308,11.2,W,A*37 -$GPGGA,120311,5231.53,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120311,A,5231.53,N,1317.85,E,34.0,174.0,030308,11.2,W,A*3c -$GPGGA,120312,5231.52,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120312,A,5231.52,N,1317.85,E,33.0,176.0,030308,11.2,W,A*3b -$GPGGA,120313,5231.51,N,1317.86,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120313,A,5231.51,N,1317.86,E,32.6,173.0,030308,11.2,W,A*38 -$GPGGA,120314,5231.5,N,1317.86,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,120314,A,5231.5,N,1317.86,E,31.6,168.0,030308,11.2,W,A*07 -$GPGGA,120315,5231.49,N,1317.86,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120315,A,5231.49,N,1317.86,E,29.6,166.0,030308,11.2,W,A*39 -$GPGGA,120316,5231.49,N,1317.87,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120316,A,5231.49,N,1317.87,E,29.6,165.0,030308,11.2,W,A*38 -$GPGGA,120317,5231.48,N,1317.87,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120317,A,5231.48,N,1317.87,E,29.6,152.0,030308,11.2,W,A*3c -$GPGGA,120318,5231.47,N,1317.88,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120318,A,5231.47,N,1317.88,E,30.6,155.0,030308,11.2,W,A*3c -$GPGGA,120319,5231.46,N,1317.89,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120319,A,5231.46,N,1317.89,E,31.6,146.0,030308,11.2,W,A*3e -$GPGGA,120320,5231.45,N,1317.9,E,1,07,1.3,50.6,M,39.2,M,,*77 -$GPRMC,120320,A,5231.45,N,1317.9,E,31.6,140.0,030308,11.2,W,A*09 -$GPGGA,120321,5231.44,N,1317.91,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120321,A,5231.44,N,1317.91,E,31.6,145.0,030308,11.2,W,A*3d -$GPGGA,120322,5231.44,N,1317.92,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120322,A,5231.44,N,1317.92,E,31.6,140.0,030308,11.2,W,A*38 -$GPGGA,120323,5231.43,N,1317.93,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120323,A,5231.43,N,1317.93,E,31.6,143.0,030308,11.2,W,A*3c -$GPGGA,120324,5231.42,N,1317.94,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120324,A,5231.42,N,1317.94,E,31.8,144.0,030308,11.2,W,A*34 -$GPGGA,120325,5231.41,N,1317.95,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120325,A,5231.41,N,1317.95,E,32.1,143.0,030308,11.2,W,A*3a -$GPGGA,120326,5231.4,N,1317.96,E,1,07,1.3,50.6,M,39.2,M,,*72 -$GPRMC,120326,A,5231.4,N,1317.96,E,31.1,141.0,030308,11.2,W,A*0a -$GPGGA,120327,5231.39,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120327,A,5231.39,N,1317.97,E,35.0,143.0,030308,11.2,W,A*33 -$GPGGA,120328,5231.39,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120328,A,5231.39,N,1317.98,E,35.0,148.0,030308,11.2,W,A*38 -$GPGGA,120329,5231.38,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120329,A,5231.38,N,1317.98,E,35.0,143.0,030308,11.2,W,A*33 -$GPGGA,120330,5231.38,N,1317.99,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120330,A,5231.38,N,1317.99,E,25.3,142.0,030308,11.2,W,A*39 -$GPGGA,120331,5231.37,N,1318,E,1,07,1.3,50.6,M,39.2,M,,*6a -$GPRMC,120331,A,5231.37,N,1318,E,15.6,141.0,030308,11.2,W,A*13 -$GPGGA,120332,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120332,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*10 -$GPGGA,120333,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120333,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*11 -$GPGGA,120334,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120334,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*16 -$GPGGA,120335,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120335,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*17 -$GPGGA,120336,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120336,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*14 -$GPGGA,120337,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120337,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*15 -$GPGGA,120338,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120338,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*1a -$GPGGA,120339,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120339,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*1b -$GPGGA,120340,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120340,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*15 -$GPGGA,120341,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120341,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*14 -$GPGGA,120342,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120342,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*17 -$GPGGA,120343,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120343,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*16 -$GPGGA,120344,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120344,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*11 -$GPGGA,120345,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120345,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*10 -$GPGGA,120346,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120346,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*13 -$GPGGA,120347,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120347,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*12 -$GPGGA,120348,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120348,A,5231.36,N,1318.01,E,0,143.0,030308,11.2,W,A*1d -$GPGGA,120349,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120349,A,5231.36,N,1318.01,E,10.2,156.0,030308,11.2,W,A*35 -$GPGGA,120350,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120350,A,5231.36,N,1318.01,E,17.5,149.0,030308,11.2,W,A*33 -$GPGGA,120351,5231.35,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120351,A,5231.35,N,1318.02,E,23.3,148.0,030308,11.2,W,A*32 -$GPGGA,120352,5231.35,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120352,A,5231.35,N,1318.02,E,29.2,177.0,030308,11.2,W,A*36 -$GPGGA,120353,5231.34,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120353,A,5231.34,N,1318.02,E,29.2,189.0,030308,11.2,W,A*37 -$GPGGA,120354,5231.34,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120354,A,5231.34,N,1318.01,E,29.2,198.0,030308,11.2,W,A*33 -$GPGGA,120355,5231.33,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120355,A,5231.33,N,1318.01,E,29.2,192.0,030308,11.2,W,A*3f -$GPGGA,120356,5231.32,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120356,A,5231.32,N,1318.01,E,35.0,196.0,030308,11.2,W,A*36 -$GPGGA,120357,5231.31,N,1318,E,1,07,1.3,50.6,M,39.2,M,,*6c -$GPRMC,120357,A,5231.31,N,1318,E,35.0,202.0,030308,11.2,W,A*15 -$GPGGA,120358,5231.3,N,1318,E,1,07,1.3,50.6,M,39.2,M,,*52 -$GPRMC,120358,A,5231.3,N,1318,E,27.2,201.0,030308,11.2,W,A*29 -$GPGGA,120359,5231.3,N,1317.99,E,1,07,1.3,50.6,M,39.2,M,,*72 -$GPRMC,120359,A,5231.3,N,1317.99,E,28.7,196.0,030308,11.2,W,A*0e -$GPGGA,120400,5231.29,N,1317.99,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120400,A,5231.29,N,1317.99,E,29.6,200.0,030308,11.2,W,A*31 -$GPGGA,120401,5231.28,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120401,A,5231.28,N,1317.98,E,30.6,201.0,030308,11.2,W,A*39 -$GPGGA,120402,5231.27,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120402,A,5231.27,N,1317.98,E,30.1,201.0,030308,11.2,W,A*32 -$GPGGA,120403,5231.26,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120403,A,5231.26,N,1317.97,E,29.2,198.0,030308,11.2,W,A*35 -$GPGGA,120404,5231.25,N,1317.96,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120404,A,5231.25,N,1317.96,E,25.8,199.0,030308,11.2,W,A*37 -$GPGGA,120405,5231.24,N,1317.96,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120405,A,5231.24,N,1317.96,E,23.8,188.0,030308,11.2,W,A*31 -$GPGGA,120406,5231.23,N,1317.96,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120406,A,5231.23,N,1317.96,E,22.4,177.0,030308,11.2,W,A*38 -$GPGGA,120407,5231.22,N,1317.96,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120407,A,5231.22,N,1317.96,E,19.9,174.0,030308,11.2,W,A*3e -$GPGGA,120408,5231.22,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120408,A,5231.22,N,1317.97,E,11.7,170.0,030308,11.2,W,A*32 -$GPGGA,120409,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*7f -$GPRMC,120409,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*29 -$GPGGA,120410,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*77 -$GPRMC,120410,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*21 -$GPGGA,120411,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*76 -$GPRMC,120411,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*20 -$GPGGA,120412,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*75 -$GPRMC,120412,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*23 -$GPGGA,120413,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*74 -$GPRMC,120413,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*22 -$GPGGA,120414,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,120414,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*25 -$GPGGA,120415,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*72 -$GPRMC,120415,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*24 -$GPGGA,120416,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*71 -$GPRMC,120416,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*27 -$GPGGA,120417,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,120417,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*26 -$GPGGA,120418,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*7f -$GPRMC,120418,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*29 -$GPGGA,120419,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*7e -$GPRMC,120419,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*28 -$GPGGA,120420,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*74 -$GPRMC,120420,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*22 -$GPGGA,120421,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*75 -$GPRMC,120421,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*23 -$GPGGA,120422,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*76 -$GPRMC,120422,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*20 -$GPGGA,120423,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*77 -$GPRMC,120423,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*21 -$GPGGA,120424,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,120424,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*26 -$GPGGA,120425,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*71 -$GPRMC,120425,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*27 -$GPGGA,120426,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*72 -$GPRMC,120426,A,5231.2,N,1317.97,E,0,171.0,030308,11.2,W,A*24 -$GPGGA,120427,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,120427,A,5231.2,N,1317.97,E,9.7,149.0,030308,11.2,W,A*3e -$GPGGA,120428,5231.2,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*7c -$GPRMC,120428,A,5231.2,N,1317.97,E,13.6,171.0,030308,11.2,W,A*00 -$GPGGA,120429,5231.19,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120429,A,5231.19,N,1317.97,E,13.6,172.0,030308,11.2,W,A*38 -$GPGGA,120430,5231.19,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120430,A,5231.19,N,1317.97,E,14.6,177.0,030308,11.2,W,A*32 -$GPGGA,120431,5231.18,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120431,A,5231.18,N,1317.98,E,17.5,162.0,030308,11.2,W,A*39 -$GPGGA,120432,5231.18,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120432,A,5231.18,N,1317.98,E,23.3,158.0,030308,11.2,W,A*32 -$GPGGA,120433,5231.17,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120433,A,5231.17,N,1317.98,E,23.3,146.0,030308,11.2,W,A*33 -$GPGGA,120434,5231.17,N,1317.99,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120434,A,5231.17,N,1317.99,E,23.3,127.0,030308,11.2,W,A*32 -$GPGGA,120435,5231.17,N,1318,E,1,07,1.3,50.6,M,39.2,M,,*6b -$GPRMC,120435,A,5231.17,N,1318,E,23.3,121.0,030308,11.2,W,A*14 -$GPGGA,120436,5231.16,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120436,A,5231.16,N,1318.01,E,24.8,120.0,030308,11.2,W,A*34 -$GPGGA,120437,5231.16,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120437,A,5231.16,N,1318.02,E,26.7,118.0,030308,11.2,W,A*30 -$GPGGA,120438,5231.16,N,1318.03,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120438,A,5231.16,N,1318.03,E,28.2,120.0,030308,11.2,W,A*3e -$GPGGA,120439,5231.15,N,1318.04,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120439,A,5231.15,N,1318.04,E,30.1,120.0,030308,11.2,W,A*31 -$GPGGA,120440,5231.15,N,1318.05,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120440,A,5231.15,N,1318.05,E,31.6,122.0,030308,11.2,W,A*3a -$GPGGA,120441,5231.14,N,1318.07,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120441,A,5231.14,N,1318.07,E,32.6,119.0,030308,11.2,W,A*33 -$GPGGA,120442,5231.14,N,1318.08,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120442,A,5231.14,N,1318.08,E,33.5,117.0,030308,11.2,W,A*33 -$GPGGA,120443,5231.13,N,1318.1,E,1,07,1.3,50.6,M,39.2,M,,*71 -$GPRMC,120443,A,5231.13,N,1318.1,E,34.5,118.0,030308,11.2,W,A*04 -$GPGGA,120444,5231.13,N,1318.11,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120444,A,5231.13,N,1318.11,E,35.5,118.0,030308,11.2,W,A*33 -$GPGGA,120445,5231.12,N,1318.12,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120445,A,5231.12,N,1318.12,E,36.4,118.0,030308,11.2,W,A*32 -$GPGGA,120446,5231.12,N,1318.14,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120446,A,5231.12,N,1318.14,E,36.4,115.0,030308,11.2,W,A*3a -$GPGGA,120447,5231.12,N,1318.15,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120447,A,5231.12,N,1318.15,E,36.4,121.0,030308,11.2,W,A*3d -$GPGGA,120448,5231.11,N,1318.17,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120448,A,5231.11,N,1318.17,E,36.4,116.0,030308,11.2,W,A*37 -$GPGGA,120449,5231.11,N,1318.18,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120449,A,5231.11,N,1318.18,E,35.5,116.0,030308,11.2,W,A*3b -$GPGGA,120450,5231.1,N,1318.2,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120450,A,5231.1,N,1318.2,E,35.0,117.0,030308,11.2,W,A*3d -$GPGGA,120451,5231.1,N,1318.21,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,120451,A,5231.1,N,1318.21,E,34.5,115.0,030308,11.2,W,A*0b -$GPGGA,120452,5231.09,N,1318.22,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120452,A,5231.09,N,1318.22,E,33.5,119.0,030308,11.2,W,A*38 -$GPGGA,120453,5231.09,N,1318.24,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120453,A,5231.09,N,1318.24,E,32.6,115.0,030308,11.2,W,A*31 -$GPGGA,120454,5231.08,N,1318.25,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120454,A,5231.08,N,1318.25,E,32.1,115.0,030308,11.2,W,A*31 -$GPGGA,120455,5231.08,N,1318.26,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120455,A,5231.08,N,1318.26,E,32.1,115.0,030308,11.2,W,A*33 -$GPGGA,120456,5231.08,N,1318.28,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120456,A,5231.08,N,1318.28,E,31.1,115.0,030308,11.2,W,A*3d -$GPGGA,120457,5231.07,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120457,A,5231.07,N,1318.29,E,31.1,114.0,030308,11.2,W,A*33 -$GPGGA,120458,5231.07,N,1318.3,E,1,07,1.3,50.6,M,39.2,M,,*7c -$GPRMC,120458,A,5231.07,N,1318.3,E,31.1,117.0,030308,11.2,W,A*07 -$GPGGA,120459,5231.07,N,1318.31,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120459,A,5231.07,N,1318.31,E,31.6,116.0,030308,11.2,W,A*31 -$GPGGA,120500,5231.06,N,1318.33,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120500,A,5231.06,N,1318.33,E,32.1,120.0,030308,11.2,W,A*3e -$GPGGA,120501,5231.06,N,1318.34,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120501,A,5231.06,N,1318.34,E,32.6,124.0,030308,11.2,W,A*3b -$GPGGA,120502,5231.05,N,1318.35,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120502,A,5231.05,N,1318.35,E,33.0,124.0,030308,11.2,W,A*3d -$GPGGA,120503,5231.05,N,1318.37,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120503,A,5231.05,N,1318.37,E,34.0,107.0,030308,11.2,W,A*38 -$GPGGA,120504,5231.04,N,1318.38,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120504,A,5231.04,N,1318.38,E,33.5,114.0,030308,11.2,W,A*31 -$GPGGA,120505,5231.04,N,1318.39,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120505,A,5231.04,N,1318.39,E,34.0,116.0,030308,11.2,W,A*31 -$GPGGA,120506,5231.04,N,1318.41,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120506,A,5231.04,N,1318.41,E,34.5,112.0,030308,11.2,W,A*3c -$GPGGA,120507,5231.03,N,1318.42,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120507,A,5231.03,N,1318.42,E,35.0,116.0,030308,11.2,W,A*39 -$GPGGA,120508,5231.03,N,1318.44,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120508,A,5231.03,N,1318.44,E,35.5,120.0,030308,11.2,W,A*30 -$GPGGA,120509,5231.02,N,1318.45,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120509,A,5231.02,N,1318.45,E,35.5,120.0,030308,11.2,W,A*31 -$GPGGA,120510,5231.02,N,1318.47,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120510,A,5231.02,N,1318.47,E,36.4,120.0,030308,11.2,W,A*39 -$GPGGA,120511,5231.01,N,1318.48,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120511,A,5231.01,N,1318.48,E,36.0,118.0,030308,11.2,W,A*3b -$GPGGA,120512,5231.01,N,1318.5,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,120512,A,5231.01,N,1318.5,E,36.4,103.0,030308,11.2,W,A*0f -$GPGGA,120513,5231.01,N,1318.51,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120513,A,5231.01,N,1318.51,E,36.4,115.0,030308,11.2,W,A*38 -$GPGGA,120514,5231,N,1318.53,E,1,07,1.3,50.6,M,39.2,M,,*69 -$GPRMC,120514,A,5231,N,1318.53,E,36.4,125.0,030308,11.2,W,A*11 -$GPGGA,120515,5231,N,1318.54,E,1,07,1.3,50.6,M,39.2,M,,*6f -$GPRMC,120515,A,5231,N,1318.54,E,36.0,102.0,030308,11.2,W,A*16 -$GPGGA,120516,5230.99,N,1318.56,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120516,A,5230.99,N,1318.56,E,35.5,110.0,030308,11.2,W,A*3d -$GPGGA,120517,5230.99,N,1318.57,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120517,A,5230.99,N,1318.57,E,34.0,125.0,030308,11.2,W,A*3f -$GPGGA,120518,5230.98,N,1318.58,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120518,A,5230.98,N,1318.58,E,33.5,127.0,030308,11.2,W,A*3e -$GPGGA,120519,5230.98,N,1318.6,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120519,A,5230.98,N,1318.6,E,33.5,125.0,030308,11.2,W,A*06 -$GPGGA,120520,5230.97,N,1318.61,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120520,A,5230.97,N,1318.61,E,33.0,134.0,030308,11.2,W,A*37 -$GPGGA,120521,5230.96,N,1318.63,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120521,A,5230.96,N,1318.63,E,32.6,116.0,030308,11.2,W,A*32 -$GPGGA,120522,5230.96,N,1318.64,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120522,A,5230.96,N,1318.64,E,31.6,116.0,030308,11.2,W,A*35 -$GPGGA,120523,5230.95,N,1318.67,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120523,A,5230.95,N,1318.67,E,31.6,120.0,030308,11.2,W,A*31 -$GPGGA,120524,5230.95,N,1318.68,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120524,A,5230.95,N,1318.68,E,33.0,114.0,030308,11.2,W,A*3a -$GPGGA,120525,5230.94,N,1318.7,E,1,07,1.3,50.6,M,39.2,M,,*78 -$GPRMC,120525,A,5230.94,N,1318.7,E,33.0,107.0,030308,11.2,W,A*01 -$GPGGA,120526,5230.94,N,1318.71,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120526,A,5230.94,N,1318.71,E,33.0,111.0,030308,11.2,W,A*34 -$GPGGA,120527,5230.93,N,1318.74,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120527,A,5230.93,N,1318.74,E,33.0,122.0,030308,11.2,W,A*37 -$GPGGA,120528,5230.93,N,1318.75,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120528,A,5230.93,N,1318.75,E,33.0,102.0,030308,11.2,W,A*3b -$GPGGA,120529,5230.92,N,1318.77,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120529,A,5230.92,N,1318.77,E,33.5,116.0,030308,11.2,W,A*39 -$GPGGA,120530,5230.92,N,1318.78,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120530,A,5230.92,N,1318.78,E,33.5,117.0,030308,11.2,W,A*3f -$GPGGA,120531,5230.91,N,1318.79,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120531,A,5230.91,N,1318.79,E,33.0,126.0,030308,11.2,W,A*3b -$GPGGA,120532,5230.91,N,1318.8,E,1,07,1.3,50.6,M,39.2,M,,*74 -$GPRMC,120532,A,5230.91,N,1318.8,E,33.0,115.0,030308,11.2,W,A*0e -$GPGGA,120533,5230.91,N,1318.82,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120533,A,5230.91,N,1318.82,E,33.0,117.0,030308,11.2,W,A*3f -$GPGGA,120534,5230.9,N,1318.83,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,120534,A,5230.9,N,1318.83,E,33.0,118.0,030308,11.2,W,A*07 -$GPGGA,120535,5230.9,N,1318.84,E,1,07,1.3,50.6,M,39.2,M,,*76 -$GPRMC,120535,A,5230.9,N,1318.84,E,31.1,119.0,030308,11.2,W,A*03 -$GPGGA,120536,5230.89,N,1318.86,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120536,A,5230.89,N,1318.86,E,28.7,116.0,030308,11.2,W,A*3b -$GPGGA,120537,5230.89,N,1318.87,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120537,A,5230.89,N,1318.87,E,25.3,110.0,030308,11.2,W,A*34 -$GPGGA,120538,5230.89,N,1318.88,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120538,A,5230.89,N,1318.88,E,22.4,101.0,030308,11.2,W,A*34 -$GPGGA,120539,5230.88,N,1318.88,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120539,A,5230.88,N,1318.88,E,18.0,153.0,030308,11.2,W,A*3e -$GPGGA,120540,5230.88,N,1318.88,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120540,A,5230.88,N,1318.88,E,2.9,142.0,030308,11.2,W,A*02 -$GPGGA,120541,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120541,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2a -$GPGGA,120542,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120542,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*29 -$GPGGA,120543,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120543,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*28 -$GPGGA,120544,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120544,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2f -$GPGGA,120545,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120545,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2e -$GPGGA,120546,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120546,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2d -$GPGGA,120547,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120547,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2c -$GPGGA,120548,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120548,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*23 -$GPGGA,120549,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120549,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*22 -$GPGGA,120550,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120550,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2a -$GPGGA,120551,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120551,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2b -$GPGGA,120552,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120552,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*28 -$GPGGA,120553,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120553,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*29 -$GPGGA,120554,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120554,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2e -$GPGGA,120555,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120555,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2f -$GPGGA,120556,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120556,A,5230.88,N,1318.89,E,0,93.0,030308,11.2,W,A*2c -$GPGGA,120557,5230.88,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120557,A,5230.88,N,1318.89,E,5.3,124.0,030308,11.2,W,A*08 -$GPGGA,120558,5230.88,N,1318.9,E,1,07,1.3,50.6,M,39.2,M,,*71 -$GPRMC,120558,A,5230.88,N,1318.9,E,17.5,133.0,030308,11.2,W,A*0c -$GPGGA,120559,5230.88,N,1318.9,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,120559,A,5230.88,N,1318.9,E,23.3,117.0,030308,11.2,W,A*0a -$GPGGA,120600,5230.87,N,1318.92,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120600,A,5230.87,N,1318.92,E,25.3,114.0,030308,11.2,W,A*3d -$GPGGA,120601,5230.87,N,1318.93,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120601,A,5230.87,N,1318.93,E,31.1,113.0,030308,11.2,W,A*3d -$GPGGA,120602,5230.87,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120602,A,5230.87,N,1318.94,E,35.0,104.0,030308,11.2,W,A*3a -$GPGGA,120603,5230.86,N,1318.95,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120603,A,5230.86,N,1318.95,E,38.9,118.0,030308,11.2,W,A*32 -$GPGGA,120604,5230.86,N,1318.96,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120604,A,5230.86,N,1318.96,E,31.1,109.0,030308,11.2,W,A*37 -$GPGGA,120605,5230.86,N,1318.98,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120605,A,5230.86,N,1318.98,E,30.6,116.0,030308,11.2,W,A*30 -$GPGGA,120606,5230.85,N,1318.99,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120606,A,5230.85,N,1318.99,E,30.6,107.0,030308,11.2,W,A*31 -$GPGGA,120607,5230.85,N,1319,E,1,07,1.3,50.6,M,39.2,M,,*63 -$GPRMC,120607,A,5230.85,N,1319,E,30.1,133.0,030308,11.2,W,A*1f -$GPGGA,120608,5230.84,N,1319.01,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120608,A,5230.84,N,1319.01,E,30.1,126.0,030308,11.2,W,A*3a -$GPGGA,120609,5230.84,N,1319.03,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120609,A,5230.84,N,1319.03,E,31.6,119.0,030308,11.2,W,A*33 -$GPGGA,120610,5230.83,N,1319.05,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120610,A,5230.83,N,1319.05,E,31.6,121.0,030308,11.2,W,A*31 -$GPGGA,120611,5230.83,N,1319.06,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120611,A,5230.83,N,1319.06,E,31.6,109.0,030308,11.2,W,A*39 -$GPGGA,120612,5230.83,N,1319.08,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120612,A,5230.83,N,1319.08,E,32.1,94.0,030308,11.2,W,A*05 -$GPGGA,120613,5230.83,N,1319.09,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120613,A,5230.83,N,1319.09,E,32.6,101.0,030308,11.2,W,A*3f -$GPGGA,120614,5230.82,N,1319.11,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120614,A,5230.82,N,1319.11,E,33.0,94.0,030308,11.2,W,A*0a -$GPGGA,120615,5230.82,N,1319.12,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120615,A,5230.82,N,1319.12,E,33.0,103.0,030308,11.2,W,A*37 -$GPGGA,120616,5230.82,N,1319.14,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120616,A,5230.82,N,1319.14,E,33.0,100.0,030308,11.2,W,A*31 -$GPGGA,120617,5230.82,N,1319.15,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120617,A,5230.82,N,1319.15,E,32.1,94.0,030308,11.2,W,A*0d -$GPGGA,120618,5230.81,N,1319.18,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120618,A,5230.81,N,1319.18,E,32.1,115.0,030308,11.2,W,A*34 -$GPGGA,120619,5230.81,N,1319.19,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120619,A,5230.81,N,1319.19,E,30.1,113.0,030308,11.2,W,A*30 -$GPGGA,120620,5230.81,N,1319.2,E,1,07,1.3,50.6,M,39.2,M,,*7e -$GPRMC,120620,A,5230.81,N,1319.2,E,28.2,107.0,030308,11.2,W,A*0f -$GPGGA,120621,5230.8,N,1319.21,E,1,07,1.3,50.6,M,39.2,M,,*7f -$GPRMC,120621,A,5230.8,N,1319.21,E,25.3,107.0,030308,11.2,W,A*02 -$GPGGA,120622,5230.8,N,1319.22,E,1,07,1.3,50.6,M,39.2,M,,*7f -$GPRMC,120622,A,5230.8,N,1319.22,E,21.4,117.0,030308,11.2,W,A*00 -$GPGGA,120623,5230.8,N,1319.23,E,1,07,1.3,50.6,M,39.2,M,,*7f -$GPRMC,120623,A,5230.8,N,1319.23,E,0,116.0,030308,11.2,W,A*28 -$GPGGA,120624,5230.8,N,1319.23,E,1,07,1.3,50.6,M,39.2,M,,*78 -$GPRMC,120624,A,5230.8,N,1319.23,E,0,121.0,030308,11.2,W,A*2b -$GPGGA,120625,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*7e -$GPRMC,120625,A,5230.8,N,1319.24,E,0,117.0,030308,11.2,W,A*28 -$GPGGA,120626,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*7d -$GPRMC,120626,A,5230.8,N,1319.24,E,0,117.0,030308,11.2,W,A*2b -$GPGGA,120627,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*7c -$GPRMC,120627,A,5230.8,N,1319.24,E,0,117.0,030308,11.2,W,A*2a -$GPGGA,120628,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,120628,A,5230.8,N,1319.24,E,0,117.0,030308,11.2,W,A*25 -$GPGGA,120629,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*72 -$GPRMC,120629,A,5230.8,N,1319.24,E,0,117.0,030308,11.2,W,A*24 -$GPGGA,120630,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120630,A,5230.8,N,1319.24,E,0,117.0,030308,11.2,W,A*2c -$GPGGA,120631,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*7b -$GPRMC,120631,A,5230.8,N,1319.24,E,0,117.0,030308,11.2,W,A*2d -$GPGGA,120632,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*78 -$GPRMC,120632,A,5230.8,N,1319.24,E,0,117.0,030308,11.2,W,A*2e -$GPGGA,120633,5230.79,N,1319.25,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120633,A,5230.79,N,1319.25,E,1.9,125.0,030308,11.2,W,A*0f -$GPGGA,120634,5230.79,N,1319.25,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120634,A,5230.79,N,1319.25,E,11.7,139.0,030308,11.2,W,A*3a -$GPGGA,120635,5230.79,N,1319.25,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120635,A,5230.79,N,1319.25,E,11.7,157.0,030308,11.2,W,A*33 -$GPGGA,120636,5230.78,N,1319.26,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120636,A,5230.78,N,1319.26,E,19.4,163.0,030308,11.2,W,A*3e -$GPGGA,120637,5230.77,N,1319.25,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120637,A,5230.77,N,1319.25,E,20.4,196.0,030308,11.2,W,A*33 -$GPGGA,120638,5230.77,N,1319.25,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120638,A,5230.77,N,1319.25,E,19.4,200.0,030308,11.2,W,A*3a -$GPGGA,120639,5230.76,N,1319.25,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120639,A,5230.76,N,1319.25,E,20.4,183.0,030308,11.2,W,A*38 -$GPGGA,120640,5230.75,N,1319.25,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120640,A,5230.75,N,1319.25,E,20.4,175.0,030308,11.2,W,A*3c -$GPGGA,120641,5230.74,N,1319.25,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120641,A,5230.74,N,1319.25,E,21.9,163.0,030308,11.2,W,A*37 -$GPGGA,120642,5230.74,N,1319.26,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120642,A,5230.74,N,1319.26,E,22.8,155.0,030308,11.2,W,A*30 -$GPGGA,120643,5230.73,N,1319.26,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120643,A,5230.73,N,1319.26,E,22.8,144.0,030308,11.2,W,A*36 -$GPGGA,120644,5230.72,N,1319.27,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120644,A,5230.72,N,1319.27,E,23.8,139.0,030308,11.2,W,A*3a -$GPGGA,120645,5230.73,N,1319.36,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120645,A,5230.73,N,1319.36,E,24.7,85.0,030308,11.2,W,A*04 -$GPGGA,120646,5230.74,N,1319.37,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120646,A,5230.74,N,1319.37,E,25.8,26.0,030308,11.2,W,A*06 -$GPGGA,120647,5230.75,N,1319.38,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120647,A,5230.75,N,1319.38,E,24.8,18.0,030308,11.2,W,A*05 -$GPGGA,120648,5230.76,N,1319.38,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120648,A,5230.76,N,1319.38,E,24.3,351.0,030308,11.2,W,A*3c -$GPGGA,120649,5230.76,N,1319.37,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120649,A,5230.76,N,1319.37,E,24.8,344.0,030308,11.2,W,A*3d -$GPGGA,120650,5230.77,N,1319.37,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120650,A,5230.77,N,1319.37,E,25.8,342.0,030308,11.2,W,A*33 -$GPGGA,120651,5230.78,N,1319.36,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120651,A,5230.78,N,1319.36,E,26.7,323.0,030308,11.2,W,A*37 -$GPGGA,120652,5230.78,N,1319.35,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120652,A,5230.78,N,1319.35,E,26.7,313.0,030308,11.2,W,A*34 -$GPGGA,120653,5230.79,N,1319.34,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120653,A,5230.79,N,1319.34,E,27.7,302.0,030308,11.2,W,A*34 -$GPGGA,120654,5230.79,N,1319.33,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120654,A,5230.79,N,1319.33,E,27.6,271.0,030308,11.2,W,A*30 -$GPGGA,120655,5230.79,N,1319.32,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120655,A,5230.79,N,1319.32,E,27.4,278.0,030308,11.2,W,A*3b -$GPGGA,120656,5230.79,N,1319.3,E,1,07,1.3,50.6,M,39.2,M,,*79 -$GPRMC,120656,A,5230.79,N,1319.3,E,27.2,274.0,030308,11.2,W,A*00 -$GPGGA,120657,5230.79,N,1319.29,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120657,A,5230.79,N,1319.29,E,26.2,274.0,030308,11.2,W,A*38 -$GPGGA,120658,5230.79,N,1319.28,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120658,A,5230.79,N,1319.28,E,25.8,284.0,030308,11.2,W,A*30 -$GPGGA,120659,5230.79,N,1319.27,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120659,A,5230.79,N,1319.27,E,26.7,292.0,030308,11.2,W,A*35 -$GPGGA,120700,5230.8,N,1319.26,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120700,A,5230.8,N,1319.26,E,28.2,299.0,030308,11.2,W,A*0f -$GPGGA,120701,5230.8,N,1319.24,E,1,07,1.3,50.6,M,39.2,M,,*79 -$GPRMC,120701,A,5230.8,N,1319.24,E,29.6,294.0,030308,11.2,W,A*04 -$GPGGA,120702,5230.8,N,1319.23,E,1,07,1.3,50.6,M,39.2,M,,*7d -$GPRMC,120702,A,5230.8,N,1319.23,E,30.6,294.0,030308,11.2,W,A*08 -$GPGGA,120703,5230.81,N,1319.22,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120703,A,5230.81,N,1319.22,E,33.0,295.0,030308,11.2,W,A*3d -$GPGGA,120704,5230.81,N,1319.2,E,1,07,1.3,50.6,M,39.2,M,,*79 -$GPRMC,120704,A,5230.81,N,1319.2,E,34.0,291.0,030308,11.2,W,A*0b -$GPGGA,120705,5230.82,N,1319.19,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120705,A,5230.82,N,1319.19,E,35.0,290.0,030308,11.2,W,A*33 -$GPGGA,120706,5230.82,N,1319.17,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120706,A,5230.82,N,1319.17,E,35.0,281.0,030308,11.2,W,A*3e -$GPGGA,120707,5230.82,N,1319.16,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120707,A,5230.82,N,1319.16,E,34.5,290.0,030308,11.2,W,A*3a -$GPGGA,120708,5230.82,N,1319.14,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120708,A,5230.82,N,1319.14,E,34.0,283.0,030308,11.2,W,A*30 -$GPGGA,120709,5230.83,N,1319.13,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120709,A,5230.83,N,1319.13,E,33.5,282.0,030308,11.2,W,A*34 -$GPGGA,120710,5230.83,N,1319.11,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120710,A,5230.83,N,1319.11,E,31.6,291.0,030308,11.2,W,A*3d -$GPGGA,120711,5230.83,N,1319.1,E,1,07,1.3,50.6,M,39.2,M,,*7c -$GPRMC,120711,A,5230.83,N,1319.1,E,31.6,276.0,030308,11.2,W,A*04 -$GPGGA,120712,5230.83,N,1319.09,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120712,A,5230.83,N,1319.09,E,31.1,283.0,030308,11.2,W,A*32 -$GPGGA,120713,5230.83,N,1319.07,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120713,A,5230.83,N,1319.07,E,31.6,285.0,030308,11.2,W,A*3c -$GPGGA,120714,5230.84,N,1319.06,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120714,A,5230.84,N,1319.06,E,32.1,288.0,030308,11.2,W,A*34 -$GPGGA,120715,5230.84,N,1319.04,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120715,A,5230.84,N,1319.04,E,33.0,294.0,030308,11.2,W,A*3a -$GPGGA,120716,5230.85,N,1319.03,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120716,A,5230.85,N,1319.03,E,33.0,297.0,030308,11.2,W,A*3c -$GPGGA,120717,5230.85,N,1319.02,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120717,A,5230.85,N,1319.02,E,32.6,293.0,030308,11.2,W,A*3f -$GPGGA,120718,5230.85,N,1319,E,1,07,1.3,50.6,M,39.2,M,,*6c -$GPRMC,120718,A,5230.85,N,1319,E,31.1,295.0,030308,11.2,W,A*1e -$GPGGA,120719,5230.86,N,1318.99,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120719,A,5230.86,N,1318.99,E,29.2,296.0,030308,11.2,W,A*3a -$GPGGA,120720,5230.86,N,1318.98,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120720,A,5230.86,N,1318.98,E,27.7,301.0,030308,11.2,W,A*35 -$GPGGA,120721,5230.86,N,1318.97,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120721,A,5230.86,N,1318.97,E,24.8,292.0,030308,11.2,W,A*3c -$GPGGA,120722,5230.87,N,1318.96,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120722,A,5230.87,N,1318.96,E,21.9,302.0,030308,11.2,W,A*33 -$GPGGA,120723,5230.87,N,1318.95,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120723,A,5230.87,N,1318.95,E,11.7,293.0,030308,11.2,W,A*35 -$GPGGA,120724,5230.87,N,1318.95,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120724,A,5230.87,N,1318.95,E,7.8,300.0,030308,11.2,W,A*01 -$GPGGA,120725,5230.87,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120725,A,5230.87,N,1318.94,E,3.9,298.0,030308,11.2,W,A*04 -$GPGGA,120726,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120726,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*19 -$GPGGA,120727,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120727,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*18 -$GPGGA,120728,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120728,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*17 -$GPGGA,120729,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120729,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*16 -$GPGGA,120730,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120730,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*1e -$GPGGA,120731,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120731,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*1f -$GPGGA,120732,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120732,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*1c -$GPGGA,120733,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120733,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*1d -$GPGGA,120734,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120734,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*1a -$GPGGA,120735,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120735,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*1b -$GPGGA,120736,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120736,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*18 -$GPGGA,120737,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120737,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*19 -$GPGGA,120738,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120738,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*16 -$GPGGA,120739,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120739,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*17 -$GPGGA,120740,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120740,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*19 -$GPGGA,120741,5230.88,N,1318.94,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120741,A,5230.88,N,1318.94,E,0,305.0,030308,11.2,W,A*18 -$GPGGA,120742,5230.88,N,1318.93,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120742,A,5230.88,N,1318.93,E,1.0,295.0,030308,11.2,W,A*0b -$GPGGA,120743,5230.88,N,1318.93,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120743,A,5230.88,N,1318.93,E,3.9,314.0,030308,11.2,W,A*09 -$GPGGA,120744,5230.88,N,1318.93,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120744,A,5230.88,N,1318.93,E,11.7,296.0,030308,11.2,W,A*38 -$GPGGA,120745,5230.88,N,1318.92,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120745,A,5230.88,N,1318.92,E,15.6,286.0,030308,11.2,W,A*3c -$GPGGA,120746,5230.88,N,1318.92,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120746,A,5230.88,N,1318.92,E,23.3,303.0,030308,11.2,W,A*33 -$GPGGA,120747,5230.88,N,1318.91,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120747,A,5230.88,N,1318.91,E,25.3,298.0,030308,11.2,W,A*34 -$GPGGA,120748,5230.89,N,1318.9,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,120748,A,5230.89,N,1318.9,E,29.2,298.0,030308,11.2,W,A*06 -$GPGGA,120749,5230.89,N,1318.89,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120749,A,5230.89,N,1318.89,E,29.2,298.0,030308,11.2,W,A*3f -$GPGGA,120750,5230.89,N,1318.88,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120750,A,5230.89,N,1318.88,E,29.2,303.0,030308,11.2,W,A*35 -$GPGGA,120751,5230.9,N,1318.87,E,1,07,1.3,50.6,M,39.2,M,,*75 -$GPRMC,120751,A,5230.9,N,1318.87,E,29.2,300.0,030308,11.2,W,A*00 -$GPGGA,120752,5230.9,N,1318.86,E,1,07,1.3,50.6,M,39.2,M,,*77 -$GPRMC,120752,A,5230.9,N,1318.86,E,29.2,294.0,030308,11.2,W,A*0e -$GPGGA,120753,5230.9,N,1318.85,E,1,07,1.3,50.6,M,39.2,M,,*75 -$GPRMC,120753,A,5230.9,N,1318.85,E,29.2,296.0,030308,11.2,W,A*0e -$GPGGA,120754,5230.91,N,1318.84,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120754,A,5230.91,N,1318.84,E,25.3,294.0,030308,11.2,W,A*36 -$GPGGA,120755,5230.91,N,1318.83,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120755,A,5230.91,N,1318.83,E,25.8,298.0,030308,11.2,W,A*37 -$GPGGA,120756,5230.91,N,1318.82,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120756,A,5230.91,N,1318.82,E,26.2,293.0,030308,11.2,W,A*37 -$GPGGA,120757,5230.92,N,1318.8,E,1,07,1.3,50.6,M,39.2,M,,*76 -$GPRMC,120757,A,5230.92,N,1318.8,E,27.2,297.0,030308,11.2,W,A*02 -$GPGGA,120758,5230.92,N,1318.79,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120758,A,5230.92,N,1318.79,E,29.2,296.0,030308,11.2,W,A*34 -$GPGGA,120759,5230.93,N,1318.77,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120759,A,5230.93,N,1318.77,E,35.0,293.0,030308,11.2,W,A*30 -$GPGGA,120800,5230.93,N,1318.76,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120800,A,5230.93,N,1318.76,E,36.9,300.0,030308,11.2,W,A*33 -$GPGGA,120801,5230.94,N,1318.74,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120801,A,5230.94,N,1318.74,E,38.9,296.0,030308,11.2,W,A*37 -$GPGGA,120802,5230.94,N,1318.73,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120802,A,5230.94,N,1318.73,E,38.9,303.0,030308,11.2,W,A*3e -$GPGGA,120803,5230.95,N,1318.71,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120803,A,5230.95,N,1318.71,E,38.9,299.0,030308,11.2,W,A*3e -$GPGGA,120804,5230.95,N,1318.69,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120804,A,5230.95,N,1318.69,E,38.9,295.0,030308,11.2,W,A*3c -$GPGGA,120805,5230.96,N,1318.67,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120805,A,5230.96,N,1318.67,E,38.9,298.0,030308,11.2,W,A*3d -$GPGGA,120806,5230.96,N,1318.66,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120806,A,5230.96,N,1318.66,E,38.9,297.0,030308,11.2,W,A*30 -$GPGGA,120807,5230.97,N,1318.65,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120807,A,5230.97,N,1318.65,E,38.9,303.0,030308,11.2,W,A*3f -$GPGGA,120808,5230.97,N,1318.64,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120808,A,5230.97,N,1318.64,E,38.9,298.0,030308,11.2,W,A*32 -$GPGGA,120809,5230.98,N,1318.62,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120809,A,5230.98,N,1318.62,E,26.2,300.0,030308,11.2,W,A*3e -$GPGGA,120810,5230.98,N,1318.61,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120810,A,5230.98,N,1318.61,E,25.8,292.0,030308,11.2,W,A*36 -$GPGGA,120811,5230.98,N,1318.6,E,1,07,1.3,50.6,M,39.2,M,,*7f -$GPRMC,120811,A,5230.98,N,1318.6,E,25.8,295.0,030308,11.2,W,A*01 -$GPGGA,120812,5230.99,N,1318.59,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120812,A,5230.99,N,1318.59,E,23.3,297.0,030308,11.2,W,A*36 -$GPGGA,120813,5230.99,N,1318.57,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120813,A,5230.99,N,1318.57,E,19.4,297.0,030308,11.2,W,A*37 -$GPGGA,120814,5230.99,N,1318.56,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120814,A,5230.99,N,1318.56,E,13.6,295.0,030308,11.2,W,A*3b -$GPGGA,120815,5231,N,1318.55,E,1,07,1.3,50.6,M,39.2,M,,*63 -$GPRMC,120815,A,5231,N,1318.55,E,13.6,300.0,030308,11.2,W,A*1b -$GPGGA,120816,5231,N,1318.54,E,1,07,1.3,50.6,M,39.2,M,,*61 -$GPRMC,120816,A,5231,N,1318.54,E,13.6,299.0,030308,11.2,W,A*18 -$GPGGA,120817,5231.01,N,1318.53,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120817,A,5231.01,N,1318.53,E,19.4,298.0,030308,11.2,W,A*38 -$GPGGA,120818,5231.01,N,1318.52,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120818,A,5231.01,N,1318.52,E,30.6,298.0,030308,11.2,W,A*3f -$GPGGA,120819,5231.01,N,1318.5,E,1,07,1.3,50.6,M,39.2,M,,*75 -$GPRMC,120819,A,5231.01,N,1318.5,E,31.1,297.0,030308,11.2,W,A*05 -$GPGGA,120820,5231.02,N,1318.49,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120820,A,5231.02,N,1318.49,E,31.1,299.0,030308,11.2,W,A*3a -$GPGGA,120821,5231.02,N,1318.48,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,120821,A,5231.02,N,1318.48,E,31.1,298.0,030308,11.2,W,A*3b -$GPGGA,120822,5231.03,N,1318.47,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120822,A,5231.03,N,1318.47,E,30.6,299.0,030308,11.2,W,A*31 -$GPGGA,120823,5231.03,N,1318.45,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120823,A,5231.03,N,1318.45,E,30.1,302.0,030308,11.2,W,A*36 -$GPGGA,120824,5231.04,N,1318.44,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120824,A,5231.04,N,1318.44,E,30.1,299.0,030308,11.2,W,A*34 -$GPGGA,120825,5231.04,N,1318.43,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120825,A,5231.04,N,1318.43,E,35.0,298.0,030308,11.2,W,A*37 -$GPGGA,120826,5231.05,N,1318.41,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120826,A,5231.05,N,1318.41,E,35.0,298.0,030308,11.2,W,A*37 -$GPGGA,120827,5231.05,N,1318.4,E,1,07,1.3,50.6,M,39.2,M,,*7d -$GPRMC,120827,A,5231.05,N,1318.4,E,27.7,297.0,030308,11.2,W,A*0c -$GPGGA,120828,5231.05,N,1318.38,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120828,A,5231.05,N,1318.38,E,27.2,295.0,030308,11.2,W,A*3b -$GPGGA,120829,5231.06,N,1318.37,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120829,A,5231.06,N,1318.37,E,27.2,291.0,030308,11.2,W,A*32 -$GPGGA,120830,5231.06,N,1318.36,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120830,A,5231.06,N,1318.36,E,25.3,302.0,030308,11.2,W,A*33 -$GPGGA,120831,5231.06,N,1318.35,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120831,A,5231.06,N,1318.35,E,23.3,301.0,030308,11.2,W,A*34 -$GPGGA,120832,5231.07,N,1318.34,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120832,A,5231.07,N,1318.34,E,19.4,295.0,030308,11.2,W,A*35 -$GPGGA,120833,5231.07,N,1318.33,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120833,A,5231.07,N,1318.33,E,15.6,297.0,030308,11.2,W,A*3f -$GPGGA,120834,5231.07,N,1318.32,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120834,A,5231.07,N,1318.32,E,9.7,300.0,030308,11.2,W,A*0a -$GPGGA,120835,5231.08,N,1318.32,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120835,A,5231.08,N,1318.32,E,5.8,300.0,030308,11.2,W,A*07 -$GPGGA,120836,5231.08,N,1318.31,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120836,A,5231.08,N,1318.31,E,3.9,298.0,030308,11.2,W,A*00 -$GPGGA,120837,5231.08,N,1318.31,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120837,A,5231.08,N,1318.31,E,1.9,289.0,030308,11.2,W,A*03 -$GPGGA,120838,5231.08,N,1318.3,E,1,07,1.3,50.6,M,39.2,M,,*79 -$GPRMC,120838,A,5231.08,N,1318.3,E,1.9,300.0,030308,11.2,W,A*3d -$GPGGA,120839,5231.08,N,1318.3,E,1,07,1.3,50.6,M,39.2,M,,*78 -$GPRMC,120839,A,5231.08,N,1318.3,E,3.9,285.0,030308,11.2,W,A*32 -$GPGGA,120840,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120840,A,5231.08,N,1318.29,E,3.9,285.0,030308,11.2,W,A*04 -$GPGGA,120841,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120841,A,5231.08,N,1318.29,E,3.9,312.0,030308,11.2,W,A*0a -$GPGGA,120842,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120842,A,5231.08,N,1318.29,E,1.9,285.0,030308,11.2,W,A*04 -$GPGGA,120843,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120843,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*13 -$GPGGA,120844,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120844,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*14 -$GPGGA,120845,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120845,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*15 -$GPGGA,120846,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120846,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*16 -$GPGGA,120847,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120847,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*17 -$GPGGA,120848,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120848,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*18 -$GPGGA,120849,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120849,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*19 -$GPGGA,120850,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120850,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*11 -$GPGGA,120851,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120851,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*10 -$GPGGA,120852,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120852,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*13 -$GPGGA,120853,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120853,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*12 -$GPGGA,120854,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120854,A,5231.08,N,1318.29,E,0,285.0,030308,11.2,W,A*15 -$GPGGA,120855,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120855,A,5231.08,N,1318.29,E,7.8,285.0,030308,11.2,W,A*05 -$GPGGA,120856,5231.08,N,1318.29,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120856,A,5231.08,N,1318.29,E,9.7,240.0,030308,11.2,W,A*0e -$GPGGA,120857,5231.08,N,1318.28,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120857,A,5231.08,N,1318.28,E,11.7,281.0,030308,11.2,W,A*3a -$GPGGA,120858,5231.09,N,1318.27,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120858,A,5231.09,N,1318.27,E,18.0,299.0,030308,11.2,W,A*3c -$GPGGA,120859,5231.09,N,1318.26,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120859,A,5231.09,N,1318.26,E,19.9,297.0,030308,11.2,W,A*3a -$GPGGA,120900,5231.09,N,1318.25,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120900,A,5231.09,N,1318.25,E,22.4,297.0,030308,11.2,W,A*31 -$GPGGA,120901,5231.1,N,1318.24,E,1,07,1.3,50.6,M,39.2,M,,*7e -$GPRMC,120901,A,5231.1,N,1318.24,E,22.8,303.0,030308,11.2,W,A*09 -$GPGGA,120902,5231.1,N,1318.23,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120902,A,5231.1,N,1318.23,E,21.9,293.0,030308,11.2,W,A*07 -$GPGGA,120903,5231.1,N,1318.22,E,1,07,1.3,50.6,M,39.2,M,,*7a -$GPRMC,120903,A,5231.1,N,1318.22,E,19.0,296.0,030308,11.2,W,A*00 -$GPGGA,120904,5231.1,N,1318.21,E,1,07,1.3,50.6,M,39.2,M,,*7e -$GPRMC,120904,A,5231.1,N,1318.21,E,15.1,300.0,030308,11.2,W,A*07 -$GPGGA,120905,5231.11,N,1318.2,E,1,07,1.3,50.6,M,39.2,M,,*7f -$GPRMC,120905,A,5231.11,N,1318.2,E,14.6,292.0,030308,11.2,W,A*0a -$GPGGA,120906,5231.11,N,1318.19,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120906,A,5231.11,N,1318.19,E,16.0,297.0,030308,11.2,W,A*32 -$GPGGA,120907,5231.11,N,1318.18,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120907,A,5231.11,N,1318.18,E,19.0,293.0,030308,11.2,W,A*39 -$GPGGA,120908,5231.12,N,1318.17,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120908,A,5231.12,N,1318.17,E,21.4,297.0,030308,11.2,W,A*31 -$GPGGA,120909,5231.12,N,1318.16,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120909,A,5231.12,N,1318.16,E,24.3,296.0,030308,11.2,W,A*32 -$GPGGA,120910,5231.12,N,1318.15,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120910,A,5231.12,N,1318.15,E,25.8,301.0,030308,11.2,W,A*3c -$GPGGA,120911,5231.13,N,1318.14,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120911,A,5231.13,N,1318.14,E,26.2,303.0,030308,11.2,W,A*36 -$GPGGA,120912,5231.13,N,1318.13,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120912,A,5231.13,N,1318.13,E,26.7,299.0,030308,11.2,W,A*35 -$GPGGA,120913,5231.14,N,1318.12,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120913,A,5231.14,N,1318.12,E,27.2,299.0,030308,11.2,W,A*36 -$GPGGA,120914,5231.14,N,1318.1,E,1,07,1.3,50.6,M,39.2,M,,*79 -$GPRMC,120914,A,5231.14,N,1318.1,E,28.2,297.0,030308,11.2,W,A*02 -$GPGGA,120915,5231.14,N,1318.09,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120915,A,5231.14,N,1318.09,E,29.2,304.0,030308,11.2,W,A*31 -$GPGGA,120916,5231.15,N,1318.08,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120916,A,5231.15,N,1318.08,E,29.6,302.0,030308,11.2,W,A*30 -$GPGGA,120917,5231.15,N,1318.07,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120917,A,5231.15,N,1318.07,E,30.6,305.0,030308,11.2,W,A*31 -$GPGGA,120918,5231.16,N,1318.06,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120918,A,5231.16,N,1318.06,E,31.6,305.0,030308,11.2,W,A*3d -$GPGGA,120919,5231.16,N,1318.05,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,120919,A,5231.16,N,1318.05,E,31.6,300.0,030308,11.2,W,A*3a -$GPGGA,120920,5231.17,N,1318.03,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120920,A,5231.17,N,1318.03,E,30.6,298.0,030308,11.2,W,A*36 -$GPGGA,120921,5231.17,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120921,A,5231.17,N,1318.02,E,28.2,296.0,030308,11.2,W,A*35 -$GPGGA,120922,5231.17,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120922,A,5231.17,N,1318.01,E,26.2,293.0,030308,11.2,W,A*3e -$GPGGA,120923,5231.18,N,1318,E,1,07,1.3,50.6,M,39.2,M,,*6e -$GPRMC,120923,A,5231.18,N,1318,E,23.8,299.0,030308,11.2,W,A*1a -$GPGGA,120924,5231.18,N,1317.99,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120924,A,5231.18,N,1317.99,E,21.4,298.0,030308,11.2,W,A*33 -$GPGGA,120925,5231.19,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120925,A,5231.19,N,1317.98,E,20.4,306.0,030308,11.2,W,A*35 -$GPGGA,120926,5231.19,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120926,A,5231.19,N,1317.98,E,21.9,354.0,030308,11.2,W,A*3d -$GPGGA,120927,5231.21,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120927,A,5231.21,N,1317.97,E,23.3,349.0,030308,11.2,W,A*3c -$GPGGA,120928,5231.22,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120928,A,5231.22,N,1317.97,E,28.7,352.0,030308,11.2,W,A*35 -$GPGGA,120929,5231.23,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120929,A,5231.23,N,1317.97,E,29.6,355.0,030308,11.2,W,A*32 -$GPGGA,120930,5231.24,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120930,A,5231.24,N,1317.97,E,30.1,4.0,030308,11.2,W,A*35 -$GPGGA,120931,5231.25,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120931,A,5231.25,N,1317.97,E,29.6,7.0,030308,11.2,W,A*39 -$GPGGA,120932,5231.26,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120932,A,5231.26,N,1317.98,E,31.6,18.0,030308,11.2,W,A*01 -$GPGGA,120933,5231.27,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,120933,A,5231.27,N,1317.98,E,33.5,20.0,030308,11.2,W,A*0b -$GPGGA,120934,5231.27,N,1317.99,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,120934,A,5231.27,N,1317.99,E,33.5,22.0,030308,11.2,W,A*0f -$GPGGA,120935,5231.28,N,1317.99,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120935,A,5231.28,N,1317.99,E,32.6,19.0,030308,11.2,W,A*0b -$GPGGA,120936,5231.29,N,1318,E,1,07,1.3,50.6,M,39.2,M,,*68 -$GPRMC,120936,A,5231.29,N,1318,E,31.1,23.0,030308,11.2,W,A*25 -$GPGGA,120937,5231.3,N,1318,E,1,07,1.3,50.6,M,39.2,M,,*51 -$GPRMC,120937,A,5231.3,N,1318,E,31.1,12.0,030308,11.2,W,A*1e -$GPGGA,120938,5231.31,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120938,A,5231.31,N,1318.01,E,29.6,16.0,030308,11.2,W,A*05 -$GPGGA,120939,5231.32,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,120939,A,5231.32,N,1318.02,E,25.3,21.0,030308,11.2,W,A*09 -$GPGGA,120940,5231.33,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120940,A,5231.33,N,1318.02,E,23.3,16.0,030308,11.2,W,A*04 -$GPGGA,120941,5231.34,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120941,A,5231.34,N,1318.02,E,23.3,13.0,030308,11.2,W,A*07 -$GPGGA,120942,5231.35,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120942,A,5231.35,N,1318.02,E,23.3,6.0,030308,11.2,W,A*31 -$GPGGA,120943,5231.36,N,1318.02,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,120943,A,5231.36,N,1318.02,E,20.4,347.0,030308,11.2,W,A*31 -$GPGGA,120944,5231.36,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120944,A,5231.36,N,1318.01,E,24.3,322.0,030308,11.2,W,A*35 -$GPGGA,120945,5231.37,N,1318.01,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120945,A,5231.37,N,1318.01,E,26.7,321.0,030308,11.2,W,A*30 -$GPGGA,120946,5231.38,N,1318,E,1,07,1.3,50.6,M,39.2,M,,*6f -$GPRMC,120946,A,5231.38,N,1318,E,28.7,320.0,030308,11.2,W,A*1c -$GPGGA,120947,5231.38,N,1317.99,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,120947,A,5231.38,N,1317.99,E,30.6,319.0,030308,11.2,W,A*3e -$GPGGA,120948,5231.39,N,1317.98,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,120948,A,5231.39,N,1317.98,E,32.1,323.0,030308,11.2,W,A*3d -$GPGGA,120949,5231.4,N,1317.97,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,120949,A,5231.4,N,1317.97,E,32.6,324.0,030308,11.2,W,A*0d -$GPGGA,120950,5231.4,N,1317.96,E,1,07,1.3,50.6,M,39.2,M,,*79 -$GPRMC,120950,A,5231.4,N,1317.96,E,32.6,325.0,030308,11.2,W,A*05 -$GPGGA,120951,5231.41,N,1317.95,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,120951,A,5231.41,N,1317.95,E,32.6,321.0,030308,11.2,W,A*32 -$GPGGA,120952,5231.42,N,1317.94,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,120952,A,5231.42,N,1317.94,E,33.0,326.0,030308,11.2,W,A*33 -$GPGGA,120953,5231.43,N,1317.93,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,120953,A,5231.43,N,1317.93,E,33.5,323.0,030308,11.2,W,A*34 -$GPGGA,120954,5231.44,N,1317.92,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,120954,A,5231.44,N,1317.92,E,32.6,323.0,030308,11.2,W,A*37 -$GPGGA,120955,5231.45,N,1317.91,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,120955,A,5231.45,N,1317.91,E,32.1,308.0,030308,11.2,W,A*3a -$GPGGA,120956,5231.45,N,1317.9,E,1,07,1.3,50.6,M,39.2,M,,*7c -$GPRMC,120956,A,5231.45,N,1317.9,E,32.1,331.0,030308,11.2,W,A*02 -$GPGGA,120957,5231.46,N,1317.89,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,120957,A,5231.46,N,1317.89,E,31.1,327.0,030308,11.2,W,A*3c -$GPGGA,120958,5231.47,N,1317.88,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,120958,A,5231.47,N,1317.88,E,31.1,317.0,030308,11.2,W,A*30 -$GPGGA,120959,5231.48,N,1317.88,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,120959,A,5231.48,N,1317.88,E,33.0,352.0,030308,11.2,W,A*3c -$GPGGA,121000,5231.49,N,1317.88,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,121000,A,5231.49,N,1317.88,E,33.0,352.0,030308,11.2,W,A*39 -$GPGGA,121001,5231.5,N,1317.87,E,1,07,1.3,50.6,M,39.2,M,,*74 -$GPRMC,121001,A,5231.5,N,1317.87,E,33.0,341.0,030308,11.2,W,A*0d -$GPGGA,121002,5231.51,N,1317.87,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,121002,A,5231.51,N,1317.87,E,32.6,347.0,030308,11.2,W,A*3e -$GPGGA,121003,5231.52,N,1317.86,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121003,A,5231.52,N,1317.86,E,32.1,348.0,030308,11.2,W,A*35 -$GPGGA,121004,5231.53,N,1317.86,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,121004,A,5231.53,N,1317.86,E,31.6,349.0,030308,11.2,W,A*36 -$GPGGA,121005,5231.54,N,1317.86,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121005,A,5231.54,N,1317.86,E,30.6,350.0,030308,11.2,W,A*39 -$GPGGA,121006,5231.55,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121006,A,5231.55,N,1317.85,E,29.2,347.0,030308,11.2,W,A*32 -$GPGGA,121007,5231.56,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,121007,A,5231.56,N,1317.85,E,25.8,349.0,030308,11.2,W,A*38 -$GPGGA,121008,5231.57,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,121008,A,5231.57,N,1317.85,E,15.6,354.0,030308,11.2,W,A*37 -$GPGGA,121009,5231.58,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,121009,A,5231.58,N,1317.85,E,3.9,347.0,030308,11.2,W,A*03 -$GPGGA,121010,5231.58,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,121010,A,5231.58,N,1317.85,E,11.7,344.0,030308,11.2,W,A*35 -$GPGGA,121011,5231.58,N,1317.85,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,121011,A,5231.58,N,1317.85,E,13.6,356.0,030308,11.2,W,A*34 -$GPGGA,121012,5231.58,N,1317.84,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,121012,A,5231.58,N,1317.84,E,15.6,299.0,030308,11.2,W,A*32 -$GPGGA,121013,5231.58,N,1317.84,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,121013,A,5231.58,N,1317.84,E,15.6,335.0,030308,11.2,W,A*34 -$GPGGA,121014,5231.59,N,1317.84,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,121014,A,5231.59,N,1317.84,E,19.4,350.0,030308,11.2,W,A*3f -$GPGGA,121015,5231.59,N,1317.84,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121015,A,5231.59,N,1317.84,E,19.4,353.0,030308,11.2,W,A*3d -$GPGGA,121016,5231.61,N,1317.84,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,121016,A,5231.61,N,1317.84,E,25.3,347.0,030308,11.2,W,A*38 -$GPGGA,121017,5231.61,N,1317.83,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121017,A,5231.61,N,1317.83,E,25.3,349.0,030308,11.2,W,A*30 -$GPGGA,121018,5231.62,N,1317.83,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,121018,A,5231.62,N,1317.83,E,26.7,351.0,030308,11.2,W,A*32 -$GPGGA,121019,5231.63,N,1317.83,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,121019,A,5231.63,N,1317.83,E,29.2,354.0,030308,11.2,W,A*3d -$GPGGA,121020,5231.64,N,1317.83,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121020,A,5231.64,N,1317.83,E,30.1,349.0,030308,11.2,W,A*37 -$GPGGA,121021,5231.65,N,1317.83,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121021,A,5231.65,N,1317.83,E,31.1,350.0,030308,11.2,W,A*3e -$GPGGA,121022,5231.65,N,1317.82,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,121022,A,5231.65,N,1317.82,E,32.6,349.0,030308,11.2,W,A*30 -$GPGGA,121023,5231.66,N,1317.82,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121023,A,5231.66,N,1317.82,E,33.0,350.0,030308,11.2,W,A*3d -$GPGGA,121024,5231.67,N,1317.82,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,121024,A,5231.67,N,1317.82,E,33.0,350.0,030308,11.2,W,A*3b -$GPGGA,121025,5231.68,N,1317.82,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,121025,A,5231.68,N,1317.82,E,33.5,346.0,030308,11.2,W,A*37 -$GPGGA,121026,5231.69,N,1317.81,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,121026,A,5231.69,N,1317.81,E,33.5,353.0,030308,11.2,W,A*32 -$GPGGA,121027,5231.7,N,1317.81,E,1,07,1.3,50.6,M,39.2,M,,*74 -$GPRMC,121027,A,5231.7,N,1317.81,E,33.0,354.0,030308,11.2,W,A*09 -$GPGGA,121028,5231.71,N,1317.81,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,121028,A,5231.71,N,1317.81,E,33.0,349.0,030308,11.2,W,A*3b -$GPGGA,121029,5231.72,N,1317.81,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,121029,A,5231.72,N,1317.81,E,31.1,348.0,030308,11.2,W,A*3b -$GPGGA,121030,5231.72,N,1317.8,E,1,07,1.3,50.6,M,39.2,M,,*71 -$GPRMC,121030,A,5231.72,N,1317.8,E,30.1,343.0,030308,11.2,W,A*08 -$GPGGA,121031,5231.73,N,1317.8,E,1,07,1.3,50.6,M,39.2,M,,*71 -$GPRMC,121031,A,5231.73,N,1317.8,E,28.2,345.0,030308,11.2,W,A*04 -$GPGGA,121032,5231.74,N,1317.8,E,1,07,1.3,50.6,M,39.2,M,,*75 -$GPRMC,121032,A,5231.74,N,1317.8,E,24.8,341.0,030308,11.2,W,A*02 -$GPGGA,121033,5231.74,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,121033,A,5231.74,N,1317.79,E,20.4,348.0,030308,11.2,W,A*34 -$GPGGA,121034,5231.75,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121034,A,5231.75,N,1317.79,E,16.0,347.0,030308,11.2,W,A*3c -$GPGGA,121035,5231.75,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121035,A,5231.75,N,1317.79,E,14.6,354.0,030308,11.2,W,A*3b -$GPGGA,121036,5231.75,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,121036,A,5231.75,N,1317.79,E,3.9,336.0,030308,11.2,W,A*05 -$GPGGA,121037,5231.75,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,121037,A,5231.75,N,1317.79,E,2.9,290.0,030308,11.2,W,A*08 -$GPGGA,121038,5231.76,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121038,A,5231.76,N,1317.79,E,2.9,343.0,030308,11.2,W,A*0b -$GPGGA,121039,5231.76,N,1317.79,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,121039,A,5231.76,N,1317.79,E,13.6,344.0,030308,11.2,W,A*32 -$GPGGA,121040,5231.76,N,1317.78,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121040,A,5231.76,N,1317.78,E,17.5,339.0,030308,11.2,W,A*30 -$GPGGA,121041,5231.77,N,1317.78,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121041,A,5231.77,N,1317.78,E,19.9,352.0,030308,11.2,W,A*3f -$GPGGA,121042,5231.78,N,1317.78,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,121042,A,5231.78,N,1317.78,E,21.9,344.0,030308,11.2,W,A*3f -$GPGGA,121043,5231.79,N,1317.77,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,121043,A,5231.79,N,1317.77,E,23.3,343.0,030308,11.2,W,A*3f -$GPGGA,121044,5231.8,N,1317.77,E,1,07,1.3,50.6,M,39.2,M,,*77 -$GPRMC,121044,A,5231.8,N,1317.77,E,23.3,356.0,030308,11.2,W,A*0a -$GPGGA,121045,5231.81,N,1317.77,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,121045,A,5231.81,N,1317.77,E,17.5,342.0,030308,11.2,W,A*3e -$GPGGA,121046,5231.81,N,1317.77,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121046,A,5231.81,N,1317.77,E,11.2,352.0,030308,11.2,W,A*3d -$GPGGA,121047,5231.81,N,1317.77,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121047,A,5231.81,N,1317.77,E,1.9,340.0,030308,11.2,W,A*05 -$GPGGA,121048,5231.81,N,1317.77,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,121048,A,5231.81,N,1317.77,E,1.9,343.0,030308,11.2,W,A*09 -$GPGGA,121049,5231.81,N,1317.76,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,121049,A,5231.81,N,1317.76,E,1.5,324.0,030308,11.2,W,A*04 -$GPGGA,121050,5231.81,N,1317.76,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,121050,A,5231.81,N,1317.76,E,2.4,313.0,030308,11.2,W,A*0a -$GPGGA,121051,5231.81,N,1317.76,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,121051,A,5231.81,N,1317.76,E,11.7,347.0,030308,11.2,W,A*3b -$GPGGA,121052,5231.82,N,1317.76,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,121052,A,5231.82,N,1317.76,E,17.5,345.0,030308,11.2,W,A*3d -$GPGGA,121053,5231.82,N,1317.76,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,121053,A,5231.82,N,1317.76,E,19.4,345.0,030308,11.2,W,A*33 -$GPGGA,121054,5231.83,N,1317.76,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121054,A,5231.83,N,1317.76,E,19.4,350.0,030308,11.2,W,A*31 -$GPGGA,121055,5231.83,N,1317.76,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121055,A,5231.83,N,1317.76,E,21.9,348.0,030308,11.2,W,A*3f -$GPGGA,121056,5231.84,N,1317.75,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,121056,A,5231.84,N,1317.75,E,24.3,344.0,030308,11.2,W,A*3b -$GPGGA,121057,5231.85,N,1317.75,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,121057,A,5231.85,N,1317.75,E,25.3,342.0,030308,11.2,W,A*3c -$GPGGA,121058,5231.86,N,1317.75,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,121058,A,5231.86,N,1317.75,E,27.7,351.0,030308,11.2,W,A*34 -$GPGGA,121059,5231.86,N,1317.74,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,121059,A,5231.86,N,1317.74,E,28.7,346.0,030308,11.2,W,A*3d -$GPGGA,121100,5231.87,N,1317.74,E,1,07,1.3,50.6,M,39.2,M,,*42 -$GPRMC,121100,A,5231.87,N,1317.74,E,30.6,347.0,030308,11.2,W,A*38 -$GPGGA,121101,5231.88,N,1317.74,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,121101,A,5231.88,N,1317.74,E,31.6,340.0,030308,11.2,W,A*30 -$GPGGA,121102,5231.89,N,1317.73,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,121102,A,5231.89,N,1317.73,E,32.6,341.0,030308,11.2,W,A*37 -$GPGGA,121103,5231.9,N,1317.73,E,1,07,1.3,50.6,M,39.2,M,,*70 -$GPRMC,121103,A,5231.9,N,1317.73,E,34.0,340.0,030308,11.2,W,A*0f -$GPGGA,121104,5231.91,N,1317.72,E,1,07,1.3,50.6,M,39.2,M,,*47 -$GPRMC,121104,A,5231.91,N,1317.72,E,35.0,341.0,030308,11.2,W,A*38 -$GPGGA,121105,5231.92,N,1317.72,E,1,07,1.3,50.6,M,39.2,M,,*45 -$GPRMC,121105,A,5231.92,N,1317.72,E,35.5,342.0,030308,11.2,W,A*3c -$GPGGA,121106,5231.93,N,1317.71,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121106,A,5231.93,N,1317.71,E,35.0,338.0,030308,11.2,W,A*35 -$GPGGA,121107,5231.94,N,1317.7,E,1,07,1.3,50.6,M,39.2,M,,*73 -$GPRMC,121107,A,5231.94,N,1317.7,E,34.0,336.0,030308,11.2,W,A*0d -$GPGGA,121108,5231.94,N,1317.7,E,1,07,1.3,50.6,M,39.2,M,,*7c -$GPRMC,121108,A,5231.94,N,1317.7,E,32.6,337.0,030308,11.2,W,A*03 -$GPGGA,121109,5231.95,N,1317.69,E,1,07,1.3,50.6,M,39.2,M,,*44 -$GPRMC,121109,A,5231.95,N,1317.69,E,29.6,339.0,030308,11.2,W,A*3f -$GPGGA,121110,5231.96,N,1317.69,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,121110,A,5231.96,N,1317.69,E,29.2,339.0,030308,11.2,W,A*30 -$GPGGA,121111,5231.97,N,1317.68,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,121111,A,5231.97,N,1317.68,E,25.8,333.0,030308,11.2,W,A*3d -$GPGGA,121112,5231.97,N,1317.68,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,121112,A,5231.97,N,1317.68,E,25.3,339.0,030308,11.2,W,A*3f -$GPGGA,121113,5231.98,N,1317.68,E,1,07,1.3,50.6,M,39.2,M,,*43 -$GPRMC,121113,A,5231.98,N,1317.68,E,20.9,343.0,030308,11.2,W,A*33 -$GPGGA,121114,5231.98,N,1317.67,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121114,A,5231.98,N,1317.67,E,19.4,339.0,030308,11.2,W,A*31 -$GPGGA,121115,5231.99,N,1317.67,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121115,A,5231.99,N,1317.67,E,17.5,341.0,030308,11.2,W,A*31 -$GPGGA,121116,5231.99,N,1317.67,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,121116,A,5231.99,N,1317.67,E,16.5,344.0,030308,11.2,W,A*36 -$GPGGA,121117,5232,N,1317.66,E,1,07,1.3,50.6,M,39.2,M,,*65 -$GPRMC,121117,A,5232,N,1317.66,E,14.6,324.0,030308,11.2,W,A*1c -$GPGGA,121118,5232,N,1317.66,E,1,07,1.3,50.6,M,39.2,M,,*6a -$GPRMC,121118,A,5232,N,1317.66,E,12.6,332.0,030308,11.2,W,A*12 -$GPGGA,121119,5232,N,1317.66,E,1,07,1.3,50.6,M,39.2,M,,*6b -$GPRMC,121119,A,5232,N,1317.66,E,14.1,342.0,030308,11.2,W,A*15 -$GPGGA,121120,5232.01,N,1317.66,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,121120,A,5232.01,N,1317.66,E,16.5,339.0,030308,11.2,W,A*3a -$GPGGA,121121,5232.01,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,121121,A,5232.01,N,1317.65,E,16.5,335.0,030308,11.2,W,A*34 -$GPGGA,121122,5232.01,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,121122,A,5232.01,N,1317.65,E,16.5,322.0,030308,11.2,W,A*31 -$GPGGA,121123,5232.02,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,121123,A,5232.02,N,1317.65,E,16.5,334.0,030308,11.2,W,A*34 -$GPGGA,121124,5232.02,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121124,A,5232.02,N,1317.64,E,19.0,331.0,030308,11.2,W,A*3d -$GPGGA,121125,5232.03,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121125,A,5232.03,N,1317.64,E,17.0,338.0,030308,11.2,W,A*3a -$GPGGA,121126,5232.03,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,121126,A,5232.03,N,1317.64,E,13.6,334.0,030308,11.2,W,A*37 -$GPGGA,121127,5232.03,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,121127,A,5232.03,N,1317.64,E,11.2,349.0,030308,11.2,W,A*3a -$GPGGA,121128,5232.03,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*46 -$GPRMC,121128,A,5232.03,N,1317.64,E,1.9,352.0,030308,11.2,W,A*05 -$GPGGA,121129,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,121129,A,5232.04,N,1317.64,E,1.9,352.0,030308,11.2,W,A*03 -$GPGGA,121130,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,121130,A,5232.04,N,1317.64,E,0.5,352.0,030308,11.2,W,A*06 -$GPGGA,121131,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,121131,A,5232.04,N,1317.64,E,0,352.0,030308,11.2,W,A*1c -$GPGGA,121132,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,121132,A,5232.04,N,1317.64,E,0,352.0,030308,11.2,W,A*1f -$GPGGA,121133,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121133,A,5232.04,N,1317.64,E,0,352.0,030308,11.2,W,A*1e -$GPGGA,121134,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,121134,A,5232.04,N,1317.64,E,0,352.0,030308,11.2,W,A*19 -$GPGGA,121135,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,121135,A,5232.04,N,1317.64,E,0,352.0,030308,11.2,W,A*18 -$GPGGA,121136,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,121136,A,5232.04,N,1317.64,E,0,352.0,030308,11.2,W,A*1b -$GPGGA,121137,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,121137,A,5232.04,N,1317.64,E,0,352.0,030308,11.2,W,A*1a -$GPGGA,121138,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*40 -$GPRMC,121138,A,5232.04,N,1317.64,E,0,352.0,030308,11.2,W,A*15 -$GPGGA,121139,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*41 -$GPRMC,121139,A,5232.04,N,1317.64,E,1.0,352.0,030308,11.2,W,A*0b -$GPGGA,121140,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4f -$GPRMC,121140,A,5232.04,N,1317.64,E,7.8,357.0,030308,11.2,W,A*0e -$GPGGA,121141,5232.04,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4e -$GPRMC,121141,A,5232.04,N,1317.64,E,15.6,357.0,030308,11.2,W,A*32 -$GPGGA,121142,5232.05,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4c -$GPRMC,121142,A,5232.05,N,1317.64,E,16.5,14.0,030308,11.2,W,A*04 -$GPGGA,121143,5232.05,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,121143,A,5232.05,N,1317.64,E,18.5,17.0,030308,11.2,W,A*08 -$GPGGA,121144,5232.06,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*48 -$GPRMC,121144,A,5232.06,N,1317.65,E,20.9,21.0,030308,11.2,W,A*0f -$GPGGA,121145,5232.06,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*49 -$GPRMC,121145,A,5232.06,N,1317.65,E,20.9,18.0,030308,11.2,W,A*04 -$GPGGA,121146,5232.07,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121146,A,5232.07,N,1317.65,E,19.4,18.0,030308,11.2,W,A*01 -$GPGGA,121147,5232.07,N,1317.65,E,1,07,1.3,50.6,M,39.2,M,,*4a -$GPRMC,121147,A,5232.07,N,1317.65,E,17.5,348.0,030308,11.2,W,A*39 -$GPGGA,121148,5232.08,N,1317.64,E,1,07,1.3,50.6,M,39.2,M,,*4b -$GPRMC,121148,A,5232.08,N,1317.64,E,11.7,333.0,030308,11.2,W,A*30 -$GPGGA,121149,5232.08,N,1317.63,E,1,07,1.3,50.6,M,39.2,M,,*4d -$GPRMC,121149,A,5232.08,N,1317.63,E,7.8,315.0,030308,11.2,W,A*0a diff --git a/doc/src/snippets/qtcluster/qtcluster-base.pro b/doc/src/snippets/qtcluster/qtcluster-base.pro deleted file mode 100644 index 69f914e5..00000000 --- a/doc/src/snippets/qtcluster/qtcluster-base.pro +++ /dev/null @@ -1,109 +0,0 @@ -TEMPLATE = app -TARGET = qtcluster -INCLUDEPATH += . -QT += quick - -# Enable for static version -#CONFIG += static -#DEFINES += STATIC - -CONFIG += SPORTS_CAR -CONFIG += HYBRID_CAR - -#Enable compile flags based on config flags -SPORTS_CAR: DEFINES += SPORTS_CAR -HYBRID_CAR: DEFINES += HYBRID_CAR - -qtHaveModule(3drender) { -QT += 3dcore 3drender 3dquick 3dquick-private -HEADERS += \ - scenehelper.h -SOURCES += \ - scenehelper.cpp -} - -CONFIG += resources_big - -SOURCES += \ - main.cpp \ - gauge.cpp \ - gaugenode.cpp \ - qtiviclusterdata.cpp \ - etcprovider.cpp \ - circularindicator.cpp - -DEFINES += NO_NETWORK - -RESOURCES += \ - qtcluster.qrc \ - -RESOURCES += images.qrc - -SPORTS_CAR: { - RESOURCES += sportsqml.qrc - - RESOURCES += sportscar_15k.qrc - RESOURCES += sportsimages.qrc -} - -HYBRID_CAR: { - RESOURCES += \ - hybridqml.qrc - -RESOURCES += hybridimages.qrc -} - -RESOURCES += iso-icons.qrc - -ISO_ICONS = \ - iso_grs_7000_4_0083 \ - iso_grs_7000_4_1434A \ - iso_grs_7000_4_0246 \ - iso_grs_7000_4_0245 \ - iso_grs_7000_4_0247 \ - iso_grs_7000_4_1555 \ - iso_grs_7000_4_1702 \ - iso_grs_7000_4_0249 \ - iso_grs_7000_4_0238 \ - iso_grs_7000_4_0456 - - -OTHER_FILES += \ - qml/* \ - qml/dash_sports/* \ - qml/dash_hybrid/* \ - qml/dash_hybrid/gauges/* \ - qml/dash_safety/* \ - -#win32 | win64: { -# deploy.path = $$OUT_PWD -#} else { - deploy.path = /data/user/qt -#} - -#message($$deploy.path) - -#qml_data.files += qml/* -#qml_data.path = $$deploy.path/$$TARGET/qml -#font_data.files += fonts/* -#font_data.path = $$deploy.path/$$TARGET/fonts -#image_data.files += images/* -#image_data.path = $$deploy.path/$$TARGET/images -target.path = $$deploy.path/$$TARGET -INSTALLS += \ - target \ -# video_data \ -# qml_data \ -# font_data \ -# image_data - -HEADERS += \ - gauge.h \ - gaugenode.h \ - qtiviclusterdata.h \ - etcprovider.h \ - circularindicator.h - -macos: QMAKE_INFO_PLIST = Info-macos.plist -ios|tvos: QMAKE_INFO_PLIST = Info-ios.plist - diff --git a/doc/src/snippets/qtcluster/qtcluster.pro b/doc/src/snippets/qtcluster/qtcluster.pro deleted file mode 100644 index ffaa7caf..00000000 --- a/doc/src/snippets/qtcluster/qtcluster.pro +++ /dev/null @@ -1,8 +0,0 @@ -TEMPLATE = subdirs - -SUBDIRS = \ - qtcluster-base.pro \ - designerImports\ClusterDemo\plugin.pro - -QML_IMPORT_PATH = $$PWD/imports -QML_DESIGNER_IMPORT_PATH = $$PWD/designerImports diff --git a/doc/src/snippets/qtcluster/qtcluster.qrc b/doc/src/snippets/qtcluster/qtcluster.qrc deleted file mode 100644 index c0029b12..00000000 --- a/doc/src/snippets/qtcluster/qtcluster.qrc +++ /dev/null @@ -1,14 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>qml/TurnIndicator.qml</file> - <file>qml/ValueSource.qml</file> - <file>qml/MapView.qml</file> - <file>qml/VideoView.qml</file> - <file>qml/functions.js</file> - <file>qml/ConsumptionView.qml</file> - <file>qml/MediaPlayerView.qml</file> - <file>qml/route.txt</file> - <file>qml/VehicleInfoNote.qml</file> - <file>qml/FpsCounter.qml</file> - </qresource> -</RCC> diff --git a/doc/src/snippets/qtcluster/qtiviclusterdata.cpp b/doc/src/snippets/qtcluster/qtiviclusterdata.cpp deleted file mode 100644 index 8c78326d..00000000 --- a/doc/src/snippets/qtcluster/qtiviclusterdata.cpp +++ /dev/null @@ -1,344 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 Pelagicore AG -** Contact: http://www.qt.io/ or http://www.pelagicore.com/ -** -** This file is part of the QtIVI module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3-PELAGICORE$ -** Commercial License Usage -** Licensees holding valid commercial Qt IVI licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Pelagicore. For licensing terms -** and conditions, contact us at http://www.pelagicore.com. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** $QT_END_LICENSE$ -** -** SPDX-License-Identifier: LGPL-3.0 -** -****************************************************************************/ - -#include "qtiviclusterdata.h" - -QtIVIClusterData::QtIVIClusterData(QObject* parent) - : QObject(parent), - m_vehicleSpeed(0), - m_latitude(0), - m_longitude(0), - m_direction(0), - m_flatTire(false), - m_doorOpen(false), - m_lightFailure(false), - m_reverse(false), - m_leftTurnLight(false), - m_rightTurnLight(false), - m_headLight(false), - m_parkLight(false), - m_carId(1), - m_brake(false), - m_engineTemp(60), - m_oilTemp(0.0), - m_oilPressure(0), - m_batteryPotential(80.0), - m_gasLevel(67.0), - m_rpm(4000), - m_gear(1) -{ - connectToServiceObject(); -} - -void QtIVIClusterData::connectToServiceObject() -{ - initializeZones(); -} - -ZonedProperties *QtIVIClusterData::zoneAt(const QString &zone) const -{ - foreach (ZonedProperties *f, m_zoneFeatures) - if (f->zone() == zone) - return f; - return 0; -} - -void QtIVIClusterData::initializeZones() -{ - -} - -QVariantMap QtIVIClusterData::zoneFeatureMap() const -{ - return m_zoneFeatureMap; - -} - -double QtIVIClusterData::vehicleSpeed() const -{ - return m_vehicleSpeed; -} - -double QtIVIClusterData::latitude() const -{ - return m_latitude; -} - -double QtIVIClusterData::longitude() const -{ - return m_longitude; -} - -double QtIVIClusterData::direction() const -{ - return m_direction; -} - -bool QtIVIClusterData::flatTire() const -{ - return m_flatTire; -} - -bool QtIVIClusterData::doorOpen() const -{ - return m_doorOpen; -} - -bool QtIVIClusterData::lightFailure() const -{ - return m_lightFailure; -} - -bool QtIVIClusterData::reverse() const -{ - return m_reverse; -} - -bool QtIVIClusterData::leftTurnLight() const -{ - return m_leftTurnLight; -} - -bool QtIVIClusterData::rightTurnLight() const -{ - return m_rightTurnLight; -} - -bool QtIVIClusterData::headLight() const -{ - return m_headLight; -} - -bool QtIVIClusterData::parkLight() const -{ - return m_parkLight; -} - -int QtIVIClusterData::carId() const -{ - return m_carId; -} - -bool QtIVIClusterData::brake() const -{ - return m_brake; -} - -int QtIVIClusterData::engineTemp() const -{ - return m_engineTemp; -} - -double QtIVIClusterData::oilTemp() const -{ - return m_oilTemp; -} - -int QtIVIClusterData::oilPressure() const -{ - return m_oilPressure; -} - -double QtIVIClusterData::batteryPotential() const -{ - return m_batteryPotential; -} - -double QtIVIClusterData::gasLevel() const -{ - return m_gasLevel; -} - -int QtIVIClusterData::rpm() const -{ - return m_rpm; -} - -int QtIVIClusterData::gear() const -{ - return m_gear; -} - -void QtIVIClusterData::classBegin() -{ - -} - -void QtIVIClusterData::componentComplete() -{ - -} - -void QtIVIClusterData::onVehicleSpeedChanged(double vehicleSpeed, const QString &zone) -{ - Q_UNUSED(zone); - m_vehicleSpeed = vehicleSpeed; - emit vehicleSpeedChanged(vehicleSpeed); -} - -void QtIVIClusterData::onLatitudeChanged(double latitude, const QString &zone) -{ - Q_UNUSED(zone); - m_latitude = latitude; - emit latitudeChanged(latitude); -} - -void QtIVIClusterData::onLongitudeChanged(double longitude, const QString &zone) -{ - Q_UNUSED(zone); - m_longitude = longitude; - emit longitudeChanged(longitude); -} - -void QtIVIClusterData::onDirectionChanged(double direction, const QString &zone) -{ - Q_UNUSED(zone); - m_direction = direction; - emit directionChanged(direction); -} - -void QtIVIClusterData::onFlatTireChanged(bool flatTire, const QString &zone) -{ - Q_UNUSED(zone); - m_flatTire = flatTire; - emit flatTireChanged(flatTire); -} - -void QtIVIClusterData::onDoorOpenChanged(bool doorOpen, const QString &zone) -{ - ZonedProperties *z = zoneAt(zone); - if (z) { - z->setDoorOpen(doorOpen); - } -} - -void QtIVIClusterData::onLightFailureChanged(bool lightFailure, const QString &zone) -{ - Q_UNUSED(zone); - m_lightFailure = lightFailure; - emit lightFailureChanged(lightFailure); -} - -void QtIVIClusterData::onReverseChanged(bool reverse, const QString &zone) -{ - Q_UNUSED(zone); - m_reverse = reverse; - emit reverseChanged(reverse); -} - -void QtIVIClusterData::onLeftTurnLightChanged(bool leftTurnLight, const QString &zone) -{ - Q_UNUSED(zone); - m_leftTurnLight = leftTurnLight; - emit leftTurnLightChanged(leftTurnLight); -} - -void QtIVIClusterData::onRightTurnLightChanged(bool rightTurnLight, const QString &zone) -{ - Q_UNUSED(zone); - m_rightTurnLight = rightTurnLight; - emit rightTurnLightChanged(rightTurnLight); -} - -void QtIVIClusterData::onHeadLightChanged(bool headLight, const QString &zone) -{ - Q_UNUSED(zone); - m_headLight = headLight; - emit headLightChanged(headLight); -} - -void QtIVIClusterData::onParkLightChanged(bool parkLight, const QString &zone) -{ - Q_UNUSED(zone); - m_parkLight = parkLight; - emit parkLightChanged(parkLight); -} - -void QtIVIClusterData::onCarIdChanged(int carId, const QString &zone) -{ - Q_UNUSED(zone); - m_carId = carId; - emit carIdChanged(carId); -} - -void QtIVIClusterData::onBrakeChanged(bool brakeOn, const QString &zone) -{ - Q_UNUSED(zone); - m_brake = brakeOn; - emit brakeChanged(brakeOn); -} - -void QtIVIClusterData::onEngineTempChanged(int engineTemp, const QString &zone) -{ - Q_UNUSED(zone); - m_engineTemp = engineTemp; - emit engineTempChanged(engineTemp); -} - -void QtIVIClusterData::onOilTempChanged(double oilTemp, const QString &zone) -{ - Q_UNUSED(zone); - m_oilTemp = oilTemp; - emit oilTempChanged(oilTemp); -} - -void QtIVIClusterData::onOilPressureChanged(int oilPressure, const QString &zone) -{ - Q_UNUSED(zone); - m_oilPressure = oilPressure; - emit oilPressureChanged(oilPressure); -} - -void QtIVIClusterData::onBatteryPotentialChanged(double batteryPotential, const QString &zone) -{ - Q_UNUSED(zone); - m_batteryPotential = batteryPotential; - emit batteryPotentialChanged(batteryPotential); -} - -void QtIVIClusterData::onGasLevelChanged(double gasLevel, const QString &zone) -{ - Q_UNUSED(zone); - m_gasLevel = gasLevel; - emit gasLevelChanged(gasLevel); -} - -void QtIVIClusterData::onRpmChanged(int rpm, const QString &zone) -{ - Q_UNUSED(zone); - m_rpm = rpm; - emit rpmChanged(rpm); -} - -void QtIVIClusterData::onGearChanged(int gear, const QString &zone) -{ - Q_UNUSED(zone); - m_gear = gear; - emit gearChanged(gear); -} diff --git a/doc/src/snippets/qtcluster/qtiviclusterdata.h b/doc/src/snippets/qtcluster/qtiviclusterdata.h deleted file mode 100644 index 7d263219..00000000 --- a/doc/src/snippets/qtcluster/qtiviclusterdata.h +++ /dev/null @@ -1,223 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 Pelagicore AG -** Contact: http://www.qt.io/ or http://www.pelagicore.com/ -** -** This file is part of the QtIVI module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3-PELAGICORE$ -** Commercial License Usage -** Licensees holding valid commercial Qt IVI licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Pelagicore. For licensing terms -** and conditions, contact us at http://www.pelagicore.com. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** $QT_END_LICENSE$ -** -** SPDX-License-Identifier: LGPL-3.0 -** -****************************************************************************/ - -#ifndef CLUSTERDATA_H -#define CLUSTERDATA_H - -#include <QObject> -#include <QQmlParserStatus> -#include <QQmlProperty> - -#ifndef NO_NETWORK -#include "clusterdatabackend.h" -#endif - -QT_BEGIN_NAMESPACE - -#ifndef NO_NETWORK -class ClusterDataBackend; -#endif - -class ZonedProperties : public QObject -{ - Q_OBJECT - Q_PROPERTY(bool doorOpen READ doorOpen NOTIFY doorOpenChanged) - -public: - ZonedProperties(QObject *parent=0) : QObject(parent), m_zone(""), m_doorOpen(false) {} - - void setZone(const QString &zone) { m_zone = zone; } - QString zone() { return m_zone; } - - bool doorOpen() { return m_doorOpen; } - void setDoorOpen(const bool &d) { m_doorOpen = d; emit doorOpenChanged(); } -signals: - void zoneChanged(const QString &zone); - void doorOpenChanged(); - -private: - QString m_zone; - bool m_doorOpen; -}; - -class QtIVIClusterData : public QObject, public QQmlParserStatus -{ - Q_OBJECT - Q_INTERFACES(QQmlParserStatus) - - Q_PROPERTY(double vehicleSpeed READ vehicleSpeed NOTIFY vehicleSpeedChanged) - Q_PROPERTY(double latitude READ latitude NOTIFY latitudeChanged) - Q_PROPERTY(double longitude READ longitude NOTIFY longitudeChanged) - Q_PROPERTY(double direction READ direction NOTIFY directionChanged) - Q_PROPERTY(bool flatTire READ flatTire NOTIFY flatTireChanged) - Q_PROPERTY(bool lightFailure READ lightFailure NOTIFY lightFailureChanged) - Q_PROPERTY(bool reverse READ reverse NOTIFY reverseChanged) - Q_PROPERTY(bool leftTurnLight READ leftTurnLight NOTIFY leftTurnLightChanged) - Q_PROPERTY(bool rightTurnLight READ rightTurnLight NOTIFY rightTurnLightChanged) - Q_PROPERTY(bool headLight READ headLight NOTIFY headLightChanged) - Q_PROPERTY(bool parkLight READ parkLight NOTIFY parkLightChanged) - Q_PROPERTY(int carId READ carId NOTIFY carIdChanged) - Q_PROPERTY(bool brake READ brake NOTIFY brakeChanged) - Q_PROPERTY(int engineTemp READ engineTemp NOTIFY engineTempChanged) - Q_PROPERTY(double oilTemp READ oilTemp NOTIFY oilTempChanged) - Q_PROPERTY(int oilPressure READ oilPressure NOTIFY oilPressureChanged) - Q_PROPERTY(double batteryPotential READ batteryPotential NOTIFY batteryPotentialChanged) - Q_PROPERTY(double gasLevel READ gasLevel NOTIFY gasLevelChanged) - Q_PROPERTY(int rpm READ rpm NOTIFY rpmChanged) - Q_PROPERTY(int gear READ gear NOTIFY gearChanged) - - Q_PROPERTY(QVariantMap zoneAt READ zoneFeatureMap NOTIFY zonesChanged) - -public: - - QtIVIClusterData(QObject *parent=0); - - double vehicleSpeed() const; - double latitude() const; - double longitude() const; - double direction() const; - bool flatTire() const; - bool doorOpen() const; - bool lightFailure() const; - bool reverse() const; - bool leftTurnLight() const; - bool rightTurnLight() const; - bool headLight() const; - bool parkLight() const; - int carId() const; - bool brake() const; - int engineTemp() const; - double oilTemp() const; - int oilPressure() const; - double batteryPotential() const; - double gasLevel() const; - int rpm() const; - int gear() const; - -Q_SIGNALS: - void vehicleSpeedChanged(double vehicleSpeed); - void latitudeChanged(double latitude); - void longitudeChanged(double longitude); - void directionChanged(double direction); - void flatTireChanged(bool flatTire); - void doorOpenChanged(bool doorOpen); - void lightFailureChanged(bool lightFailure); - void reverseChanged(bool Reverse); - void leftTurnLightChanged(bool leftTurnLight); - void rightTurnLightChanged(bool rightTurnLight); - void headLightChanged(bool headLight); - void parkLightChanged(bool parkLight); - void carIdChanged(int carId); - void brakeChanged(bool brakeOn ); - void engineTempChanged(int engineTemp); - void oilTempChanged(double oilTemp); - void oilPressureChanged(int oilPressure); - void batteryPotentialChanged(double batteryPotential); - void gasLevelChanged(double gasLevel); - void rpmChanged(int rpm); - void gearChanged(int gear); - void zonesChanged(); - -protected: - //TODO This doesn't work for the C++ usecases we should use the constructor there instead - // Also this means a qml dependency in the core, do we want that ? - virtual void classBegin(); - virtual void componentComplete(); - -private Q_SLOTS: - void onVehicleSpeedChanged(double vehicleSpeed, const QString &zone); - void onLatitudeChanged(double latitude, const QString &zone); - void onLongitudeChanged(double longitude, const QString &zone); - void onDirectionChanged(double direction, const QString &zone); - void onFlatTireChanged(bool flatTire, const QString &zone); - void onDoorOpenChanged(bool doorOpen, const QString &zone); - void onLightFailureChanged(bool lightFailure, const QString &zone); - void onReverseChanged(bool reverse, const QString &zone); - void onLeftTurnLightChanged(bool leftTurnLight, const QString &zone); - void onRightTurnLightChanged(bool rightTurnLight, const QString &zone); - void onHeadLightChanged(bool headLight, const QString &zone); - void onParkLightChanged(bool parkLight, const QString &zone); - void onCarIdChanged(int carId, const QString &zone); - void onBrakeChanged(bool brakeOn, const QString &zone ); - void onEngineTempChanged(int engineTemp, const QString &zone); - void onOilTempChanged(double oilTemp, const QString &zone); - void onOilPressureChanged(int oilPressure, const QString &zone); - void onBatteryPotentialChanged(double batteryPotential, const QString &zone); - void onGasLevelChanged(double gasLevel, const QString &zone); - void onRpmChanged(int rpm, const QString &zone); - void onGearChanged(int gear, const QString &zone); - -protected: - // QtIVIAbstractZonedFeature* createZoneFeature(const QString &zone) override; - // QtIVIClusterData* zonedFeature(const QString &zone); - - -private: - void connectToServiceObject(); - QVariantMap zoneFeatureMap() const; - void initializeZones(); - ZonedProperties *zoneAt(const QString &zone) const; - -private: - //QtIVIClusterDataBackendInterface* clusterDataBackend(); -#ifndef NO_NETWORK - ClusterDataBackend *backend; -#endif - - double m_vehicleSpeed; - double m_latitude; - double m_longitude; - double m_direction; - bool m_flatTire; - bool m_doorOpen; - bool m_lightFailure; - bool m_reverse; - bool m_leftTurnLight; - bool m_rightTurnLight; - bool m_headLight; - bool m_parkLight; - int m_carId; - bool m_brake; - qint8 m_engineTemp; - double m_oilTemp; - int m_oilPressure; - double m_batteryPotential; - double m_gasLevel; - int m_rpm; - int m_gear; - - QVariantMap m_zoneFeatureMap; - QList<ZonedProperties*> m_zoneFeatures; - QVariantList m_zoneFeatureList; - -}; - -QT_END_NAMESPACE - -#endif // CLUSTERDATA_H diff --git a/doc/src/snippets/qtcluster/scenehelper.cpp b/doc/src/snippets/qtcluster/scenehelper.cpp deleted file mode 100644 index 7ee5ec58..00000000 --- a/doc/src/snippets/qtcluster/scenehelper.cpp +++ /dev/null @@ -1,219 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 "scenehelper.h" - -QObject *SceneHelper::findEntity(Qt3DRender::QSceneLoader *loader, const QString &name) -{ - // The QSceneLoader instance is a component of an entity. The loaded scene - // tree is added under this entity. - QVector<Qt3DCore::QEntity *> entities = loader->entities(); - - if (entities.isEmpty()) - return 0; - - // Technically there could be multiple entities referencing the scene loader - // but sharing is discouraged, and in our case there will be one anyhow. - Qt3DCore::QEntity *root = entities[0]; - - // The scene structure and names always depend on the asset. - return root->findChild<Qt3DCore::QEntity *>(name); -} - -void SceneHelper::removeFromScene(Qt3DRender::QSceneLoader *loader, const QStringList &names) -{ - QVector<Qt3DCore::QEntity *> entities = loader->entities(); - - if (entities.isEmpty()) - return; - - Qt3DCore::QEntity *root = entities[0]; - - foreach (QString name, names) { - QObject *entity = root->findChild<Qt3DCore::QEntity *>(name); - entity->setParent(nullptr); - } -} - -void SceneHelper::addBasicMaterials(Qt3DRender::QSceneLoader *loader, - Qt3DRender::QMaterial *material, QStringList names) -{ - QVector<Qt3DCore::QEntity *> entities = loader->entities(); - - if (entities.isEmpty()) - return; - - Qt3DCore::QEntity *root = entities[0]; - - addComponents(names, root, material); -} - -void SceneHelper::addTextureMaterial(Qt3DRender::QSceneLoader *loader, - Qt3DRender::QMaterial *material, QString name) -{ - QVector<Qt3DCore::QEntity *> entities = loader->entities(); - - if (entities.isEmpty()) - return; - - Qt3DCore::QEntity *root = entities[0]; - - addComponent(name, root, material); -} - -void SceneHelper::replaceMaterial(Qt3DRender::QSceneLoader *loader, const QString &name, - Qt3DRender::QMaterial *material) -{ - QVector<Qt3DCore::QEntity *> entities = loader->entities(); - - if (entities.isEmpty()) - return; - - Qt3DCore::QEntity *root = entities[0]; - Qt3DCore::QEntity *entity = root->findChild<Qt3DCore::QEntity *>(name); - if (entity) { -#if (QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)) - QVector<Qt3DCore::QComponent *> components = entity->components(); -#else - Qt3DCore::QComponentList components = entity->components(); -#endif - foreach (Qt3DCore::QComponent *comp, components) { - if (qobject_cast<Qt3DRender::QMaterial *>(comp)) { - entity->removeComponent(comp); - break; - } - } - entity->addComponent(material); - } -} - -void SceneHelper::addComponents(QStringList &names, Qt3DCore::QEntity *root, - Qt3DRender::QMaterial *material) -{ - foreach (QString name, names) { - Qt3DCore::QEntity *entity = root->findChild<Qt3DCore::QEntity *>(name); - if (entity) { -#if (QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)) - QVector<Qt3DCore::QComponent *> components = entity->components(); -#else - Qt3DCore::QComponentList components = entity->components(); -#endif - foreach (Qt3DCore::QComponent *comp, components) { - if (qobject_cast<Qt3DRender::QMaterial *>(comp)) { - //qDebug() << " removing " << comp; - entity->removeComponent(comp); - break; - } - } - entity->addComponent(material); - } - } -} - -void SceneHelper::searchCamera(Qt3DRender::QSceneLoader *loader, const QString &name) -{ - QVector<Qt3DCore::QEntity *> entities = loader->entities(); - - if (entities.isEmpty()) - return; - - Qt3DCore::QEntity *root = entities[0]; - Qt3DCore::QEntity *entity = root->findChild<Qt3DCore::QEntity *>(name); - //qDebug() << "Found entity " << entity; -#if (QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)) - QVector<Qt3DCore::QComponent *> components = entity->components(); -#else - Qt3DCore::QComponentList components = entity->components(); -#endif - foreach (Qt3DCore::QComponent *comp, components) { -#if (QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)) - if (qobject_cast<Qt3DRender::QCameraLens *>(comp)) { - Qt3DRender::QCameraLens *lens = qobject_cast<Qt3DRender::QCameraLens *>(comp); - Q_UNUSED(lens) - } -#else - if (qobject_cast<Qt3DCore::QCameraLens *>(comp)) { - Qt3DCore::QCameraLens *lens = qobject_cast<Qt3DCore::QCameraLens *>(comp); - } -#endif - - } -} - -void SceneHelper::addComponent(QString &name, Qt3DCore::QEntity *root, - Qt3DRender::QMaterial *material) -{ - - Qt3DCore::QEntity *entity = root->findChild<Qt3DCore::QEntity *>(name); - - if (entity) { -#if (QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)) - QVector<Qt3DCore::QComponent *> components = entity->components(); -#else - Qt3DCore::QComponentList components = entity->components(); -#endif - foreach (Qt3DCore::QComponent *comp, components) { - if (qobject_cast<Qt3DRender::QMaterial *>(comp)) { - entity->removeComponent(comp); - break; - } - } - - entity->addComponent(material); - } else { - - } -} - -void SceneHelper::addListEntry(const QVariant &list, QObject *entry) -{ - QQmlListReference ref = list.value<QQmlListReference>(); - ref.append(entry); -} diff --git a/doc/src/snippets/qtcluster/scenehelper.h b/doc/src/snippets/qtcluster/scenehelper.h deleted file mode 100644 index 6e4dc3a7..00000000 --- a/doc/src/snippets/qtcluster/scenehelper.h +++ /dev/null @@ -1,92 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, 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 The Qt Company Ltd 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 SCENEHELPER_H -#define SCENEHELPER_H - -#include <QtGlobal> -#include <QResource> - -#include <Qt3DRender/QRenderAspect> -#include <Qt3DRender/QSceneLoader> -#include <Qt3DCore/QEntity> -#if (QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)) -#include <Qt3DRender/QCameraLens> -#else -#include <Qt3DCore/QCameraLens> -#endif -#include <Qt3DRender/QMaterial> -#include <Qt3DQuick/QQmlAspectEngine> -#include <Qt3DCore/QComponent> -#include <QtQml> - -class SceneHelper : public QObject -{ - Q_OBJECT - -public: - Q_INVOKABLE QObject *findEntity(Qt3DRender::QSceneLoader *loader, const QString &name); - Q_INVOKABLE void addListEntry(const QVariant &list, QObject *entry); - Q_INVOKABLE void removeFromScene(Qt3DRender::QSceneLoader *loader, const QStringList &names); - Q_INVOKABLE void addBasicMaterials(Qt3DRender::QSceneLoader *loader, - Qt3DRender::QMaterial *material, QStringList names); - Q_INVOKABLE void addTextureMaterial(Qt3DRender::QSceneLoader *loader, - Qt3DRender::QMaterial *material, QString name); - Q_INVOKABLE void replaceMaterial(Qt3DRender::QSceneLoader *loader, const QString &name, - Qt3DRender::QMaterial *material); - Q_INVOKABLE void searchCamera(Qt3DRender::QSceneLoader *loader, const QString &name); - -private: - void addComponents(QStringList &names, Qt3DCore::QEntity *root, - Qt3DRender::QMaterial *material); - void addComponent(QString &name, Qt3DCore::QEntity *root, Qt3DRender::QMaterial *material); -}; - -#endif // SCENEHELPER_H diff --git a/doc/src/snippets/qtcluster/sportscar_15k.qrc b/doc/src/snippets/qtcluster/sportscar_15k.qrc deleted file mode 100644 index c0a1df90..00000000 --- a/doc/src/snippets/qtcluster/sportscar_15k.qrc +++ /dev/null @@ -1,7 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file alias="Map11.jpg">qml/models/Map11.jpg</file> - <file alias="sportscar.qgltf">qml/models/sportscar_15k.qgltf</file> - <file alias="sportscar_15k_1.bin">qml/models/sportscar_15k_1.bin</file> - </qresource> -</RCC> diff --git a/doc/src/snippets/qtcluster/sportsimages.qrc b/doc/src/snippets/qtcluster/sportsimages.qrc deleted file mode 100644 index c4c9a91b..00000000 --- a/doc/src/snippets/qtcluster/sportsimages.qrc +++ /dev/null @@ -1,11 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>images/SportCarForParkSensors.png</file> - <file>images/Gauge_RPM.png</file> - <file>images/Gauge_Speed.png</file> - <file>images/MapLocationSport.png</file> - <file>images/RearCameraOverlaySport.png</file> - <file>images/SportCarFloorShadow.png</file> - <file>images/DashboardFrameSport-mask.png</file> - </qresource> -</RCC> diff --git a/doc/src/snippets/qtcluster/sportsqml.qrc b/doc/src/snippets/qtcluster/sportsqml.qrc deleted file mode 100644 index 88534c19..00000000 --- a/doc/src/snippets/qtcluster/sportsqml.qrc +++ /dev/null @@ -1,23 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>qml/dash_sports/Dashboard.qml</file> - <file>qml/dash_sports/DashboardFrame.qml</file> - <file>qml/dash_sports/SpeedoMeter.qml</file> - <file>qml/dash_sports/RPMGauge.qml</file> - <file>qml/dash_sports/Gauge.qml</file> - <file>qml/dash_sports/SpeedoMeter_vertex.qml</file> - <file>qml/dash_sports/RPMGauge_vertex.qml</file> - <file>qml/dash_sports/SpeedoMeter_painter.qml</file> - <file>qml/dash_sports/RPMGauge_painter.qml</file> - <file>qml/dash_sports/RPMFlipable.qml</file> - <file>qml/dash_sports/CenterStack.qml</file> - <file>qml/dash_sports/SpeedoMeterLoader.qml</file> - <file>qml/dash_sports/DashboardForm.ui.qml</file> - <file>qml/dash_sports/DashboardView.qml</file> - <file>qml/dash_sports/CarLoader.qml</file> - <file>qml/dash_sports/CameraLoader.qml</file> - <file>qml/CarParkingSports.qml</file> - <file>qml/CarViewSports.qml</file> - <file>qml/CarModelSports.qml</file> - </qresource> -</RCC> diff --git a/doc/src/whatsnew/whatsnew511.qdoc b/doc/src/whatsnew/whatsnew511.qdoc index 5df7103a..76afa595 100644 --- a/doc/src/whatsnew/whatsnew511.qdoc +++ b/doc/src/whatsnew/whatsnew511.qdoc @@ -72,7 +72,7 @@ code instead of assembly. \li New hotspot JIT that generates optimized assembly for byte code that gets repeatedly executed. - \li \c {CONFIG += qmlcompiler} now also works in the open source version, by + \li \c {CONFIG += qtquickcompiler} now also works in the open source version, by embedding the generated byte code at compile time. \endlist |