<QtMath> - Generic Math Functions

Le fichier d'en-tête <QtMath> fournit diverses fonctions mathématiques. Plus...

Header: #include <QtMath>

Fonctions

auto qAcos(T v)
auto qAsin(T v)
auto qAtan2(T1 y, T2 x)
auto qAtan(T v)
int qCeil(T v)
auto qCos(T v)
double qDegreesToRadians(double degrees)
float qDegreesToRadians(float degrees)
(since 6.0) long double qDegreesToRadians(long double degrees)
auto qExp(T v)
auto qFabs(T v)
int qFloor(T v)
(since 6.1) auto qHypot(F first, Fs... rest)
(since 6.1) auto qHypot(Tx x, Ty y)
(since 6.1) auto qHypot(Tx x, Ty y, Tz z)
auto qLn(T v)
quint32 qNextPowerOfTwo(quint32 value)
quint32 qNextPowerOfTwo(qint32 value)
quint64 qNextPowerOfTwo(qint64 value)
quint64 qNextPowerOfTwo(quint64 value)
auto qPow(T1 x, T2 y)
double qRadiansToDegrees(double radians)
float qRadiansToDegrees(float radians)
(since 6.0) long double qRadiansToDegrees(long double radians)
auto qSin(T v)
auto qSqrt(T v)
auto qTan(T v)

Description détaillée

Ces fonctions sont en partie des définitions de commodité pour les opérations mathématiques de base qui ne sont pas disponibles dans les bibliothèques C ou Standard Template.

L'en-tête assure également la définition de certaines constantes spécifiées dans POSIX, mais non présentes dans les normes C++ (donc absentes de <math.h> sur certaines plates-formes) :

ConstanteDescription
M_ELa base des logarithmes naturels, e = exp(1)
M_LOG2ELe logarithme de base deux de e
M_LOG10ELe logarithme en base dix de e
M_LN2Le logarithme naturel de deux
M_LN10Le logarithme naturel de dix
M_PILe rapport entre la circonférence et le diamètre d'un cercle, π
M_PI_2Demi M_PI, π / 2
M_PI_4Quart de M_PI, π / 4
M_1_PIL'inverse de M_PI, 1 / π
M_2_PIDeux fois l'inverse de M_PI, 2 / π
M_2_SQRTPIDeux divisé par la racine carrée de pi, 2 / √π
M_SQRT2La racine carrée de deux, √2
M_SQRT1_2Le toit carré de la moitié, 1 / √2

Fonction Documentation

template <typename T> auto qAcos(T v)

Renvoie l'arccosinus de v sous forme d'angle en radians. L'arccosinus est l'opération inverse du cosinus.

Voir aussi qAtan(), qAsin() et qCos().

template <typename T> auto qAsin(T v)

Renvoie l'arcsinus de v sous forme d'angle en radians. L'arcsinus est l'opération inverse du sinus.

Voir également qSin(), qAtan() et qAcos().

template <typename T1, typename T2> auto qAtan2(T1 y, T2 x)

Renvoie l'arctangente d'un point spécifié par les coordonnées y et x. Cette fonction renvoie l'angle (argument) de ce point.

Voir aussi qAtan() et qHypot().

template <typename T> auto qAtan(T v)

Renvoie l'arctangente de v sous forme d'angle en radians. L'arctangente est l'opération inverse de la tangente.

Voir aussi qTan(), qAcos(), et qAsin().

template <typename T> int qCeil(T v)

Renvoie le plafond de la valeur v.

Le plafond est le plus petit entier qui n'est pas inférieur à v. Par exemple, si v est 41,2, le plafond est 42.

Voir aussi qFloor().

template <typename T> auto qCos(T v)

Renvoie le cosinus d'un angle v en radians.

Voir également qSin() et qTan().

[constexpr] double qDegreesToRadians(double degrees)

Cette fonction convertit les degrees en double en radians.

Exemple :

double degrees = 180.0;
double radians = qDegreesToRadians(degrees);

Voir aussi qRadiansToDegrees().

[constexpr] float qDegreesToRadians(float degrees)

Cette fonction convertit le degrees en float en radians.

Exemple :

float degrees = 180.0f;
float radians = qDegreesToRadians(degrees);

Voir aussi qRadiansToDegrees().

[constexpr, since 6.0] long double qDegreesToRadians(long double degrees)

Cette fonction convertit le degrees en double en radians.

Cette fonction a été introduite dans Qt 6.0.

Voir aussi qRadiansToDegrees().

template <typename T> auto qExp(T v)

Renvoie la fonction exponentielle de e à la puissance de v.

Voir aussi qLn().

template <typename T> auto qFabs(T v)

Renvoie la valeur absolue de v.

template <typename T> int qFloor(T v)

Renvoie le plancher de la valeur v.

Le plancher est le plus grand entier qui n'est pas supérieur à v. Par exemple, si v est 41.2, le plancher est 41.

Voir également qCeil().

[since 6.1] template <typename F, typename... Fs> auto qHypot(F first, Fs... rest)

Renvoie la distance à partir de l'origine dans un nombre arbitraire de dimensions

C'est la même chose que pour les formes à deux et trois arguments, supportées par std::hypot(), mais avec autant de paramètres numériques que vous souhaitez lui passer. Utilise first et chacun des rest comme coordonnées, en effectuant un calcul équivalent au carré de chacun, en additionnant et en renvoyant la racine carrée, sauf que le sous-débit et le débordement sont évités dans la mesure du possible.

Cette fonction a été introduite dans Qt 6.1.

Voir aussi qSqrt().

[since 6.1] template <typename Tx, typename Ty> auto qHypot(Tx x, Ty y)

Renvoie la distance d'un point (x, y) par rapport à l'origine (0, 0).

Il s'agit de qSqrt(x * x + y * y), optimisé. En particulier, le sous-débit et le débordement peuvent être évités.

Accepte n'importe quel mélange de types numériques, renvoyant le même type de virgule flottante que std::hypot(). Si l'un des paramètres est infini, le résultat l'est aussi ; sinon, si l'un des paramètres est un NaN, le résultat l'est aussi.

Il s'agit d'une fonction surchargée.

Cette fonction a été introduite dans Qt 6.1.

Voir aussi qSqrt() et qAtan2().

[since 6.1] template < typename Tx, typename Ty, typename Tz > auto qHypot(Tx x, Ty y, Tz z)

Renvoie la distance d'un point (x, y, z) par rapport à l'origine (0, 0, 0).

Il s'agit de qSqrt(x * x + y * y + z * z), optimisé si nécessaire. En particulier, le sous-débit et le débordement peuvent être évités.

Accepte n'importe quel mélange de types numériques, renvoyant le même type de virgule flottante que std::hypot(). Si un paramètre est infini, le résultat l'est aussi ; sinon, si un paramètre est NaN, le résultat l'est aussi.

Il s'agit d'une fonction surchargée.

Cette fonction a été introduite dans Qt 6.1.

Voir aussi qSqrt().

template <typename T> auto qLn(T v)

Renvoie le logarithme naturel de v. Le logarithme naturel utilise la base e.

Voir aussi qExp().

[constexpr] quint32 qNextPowerOfTwo(quint32 value)

Cette fonction renvoie la puissance de deux la plus proche supérieure à value. Pour 0, elle renvoie 1, et pour les valeurs supérieures ou égales à 2^31, le résultat est indéfini.

[constexpr] quint32 qNextPowerOfTwo(qint32 value)

Cette fonction renvoie la puissance de deux la plus proche supérieure à value. Pour les valeurs négatives, le résultat est indéfini.

Il s'agit d'une fonction surchargée.

[constexpr] quint64 qNextPowerOfTwo(qint64 value)

Cette fonction renvoie la puissance de deux la plus proche supérieure à value. Pour les valeurs négatives, le résultat est indéfini.

Il s'agit d'une fonction surchargée.

[constexpr] quint64 qNextPowerOfTwo(quint64 value)

Cette fonction renvoie la puissance de deux la plus proche supérieure à value. Pour 0, elle renvoie 1, et pour les valeurs supérieures ou égales à 2^63, le résultat est indéfini.

template <typename T1, typename T2> auto qPow(T1 x, T2 y)

Renvoie la valeur de x élevée à la puissance de y, c'est-à-dire que x est la base et y l'exposant.

Voir aussi qSqrt().

[constexpr] double qRadiansToDegrees(double radians)

Cette fonction convertit le radians en double en degrés.

Exemple :

double radians = M_PI;
double degrees = qRadiansToDegrees(radians);

Voir aussi qDegreesToRadians().

[constexpr] float qRadiansToDegrees(float radians)

Cette fonction convertit la valeur radians en degrés.

Exemple :

float radians = float(M_PI);
float degrees = qRadiansToDegrees(radians);

Voir aussi qDegreesToRadians().

[constexpr, since 6.0] long double qRadiansToDegrees(long double radians)

Cette fonction convertit le radians en double en degrés.

Cette fonction a été introduite dans Qt 6.0.

Voir aussi qDegreesToRadians().

template <typename T> auto qSin(T v)

Renvoie le sinus de l'angle v en radians.

Voir également qCos() et qTan().

template <typename T> auto qSqrt(T v)

Renvoie la racine carrée de v. Cette fonction renvoie un NaN si v est un nombre négatif.

Voir aussi qPow() et qHypot().

template <typename T> auto qTan(T v)

Renvoie la tangente d'un angle v en radians.

Voir également qSin() et qCos().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.