Marble
14#ifndef MARBLE_QUATERNION_H
15#define MARBLE_QUATERNION_H
17#include "marble_export.h"
31typedef qreal xmmfloat[4];
32typedef xmmfloat matrix[3];
34class MARBLE_EXPORT Quaternion
38 Quaternion(qreal w, qreal x, qreal y, qreal z);
45 static Quaternion fromSpherical(qreal lon, qreal lat);
46 static Quaternion fromEuler(qreal pitch, qreal yaw, qreal roll);
48 static Quaternion slerp(
const Quaternion &q1,
const Quaternion &q2, qreal t);
49 static Quaternion nlerp(
const Quaternion &q1,
const Quaternion &q2, qreal t);
52 Quaternion operator*(
const Quaternion &q)
const;
53 Quaternion
operator+(
const Quaternion &q)
const;
54 Quaternion operator*(qreal factor)
const;
56 Quaternion &operator*=(
const Quaternion &q);
57 Quaternion &operator*=(qreal);
59 void getSpherical(qreal &lon, qreal &lat)
const;
65 Quaternion inverse()
const;
66 Quaternion log()
const;
67 Quaternion exp()
const;
73 void rotateAroundAxis(
const Quaternion &q);
75 void toMatrix(matrix &m)
const;
76 void rotateAroundAxis(
const matrix &m);
84#ifndef QT_NO_DEBUG_STREAM
85MARBLE_EXPORT
QDebug operator<<(
QDebug,
const Marble::Quaternion &);
QAction * roll(const QObject *recvr, const char *slot, QObject *parent)
KIOCORE_EXPORT bool operator==(const UDSEntry &entry, const UDSEntry &other)
QString normalize(QStringView str)
Binds a QML item to a specific geodetic location in screen coordinates.
QCA_EXPORT const SecureArray operator+(const SecureArray &a, const SecureArray &b)
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Jan 24 2025 11:52:10 by
doxygen 1.13.2 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.