The <QtMath> header file provides various math functions. 更多...
头: | #include <QtMath> |
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 ) |
float | qDegreesToRadians (float degrees ) |
double | qDegreesToRadians (double degrees ) |
(从 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 (Tx x , Ty y ) |
(since 6.1)
auto
|
qHypot (Tx x , Ty y , Tz z ) |
(since 6.1)
auto
|
qHypot (F first , Fs... rest ) |
auto | qLn (T v ) |
quint32 | qNextPowerOfTwo (quint32 value ) |
quint32 | qNextPowerOfTwo (qint32 value ) |
quint64 | qNextPowerOfTwo (quint64 value ) |
quint64 | qNextPowerOfTwo (qint64 value ) |
auto | qPow (T1 x , T2 y ) |
float | qRadiansToDegrees (float radians ) |
double | qRadiansToDegrees (double radians ) |
(从 6.0 起)
long double
|
qRadiansToDegrees (long double radians ) |
auto | qSin (T v ) |
auto | qSqrt (T v ) |
auto | qTan (T v ) |
These functions are partly convenience definitions for basic math operations not available in the C or Standard Template Libraries.
The header also ensures some constants specified in POSIX, but not present in C++ standards (so absent from <math.h> on some platforms), are defined:
常量 | 描述 |
---|---|
M_E
|
The base of the natural logarithms, e = exp(1) |
M_LOG2E
|
The base-two logarithm of e |
M_LOG10E
|
The base-ten logarithm of e |
M_LN2
|
The natural logarithm of two |
M_LN10
|
The natural logarithm of ten |
M_PI
|
The ratio of a circle's circumference to diameter, π |
M_PI_2
|
Half M_PI, π / 2 |
M_PI_4
|
Quarter M_PI, π / 4 |
M_1_PI
|
The inverse of M_PI, 1 / π |
M_2_PI
|
Twice the inverse of M_PI, 2 / π |
M_2_SQRTPI
|
Two divided by the square root of pi, 2 / √π |
M_SQRT2
|
The square root of two, √2 |
M_SQRT1_2
|
The square roof of half, 1 / √2 |
Returns the arccosine of v as an angle in radians. Arccosine is the inverse operation of cosine.
另请参阅 qAtan (), qAsin (),和 qCos ().
Returns the arcsine of v as an angle in radians. Arcsine is the inverse operation of sine.
另请参阅 qSin (), qAtan (),和 qAcos ().
Returns the arctangent of a point specified by the coordinates y and x . This function will return the angle (argument) of that point.
Returns the arctangent of v as an angle in radians. Arctangent is the inverse operation of tangent.
另请参阅 qTan (), qAcos (),和 qAsin ().
Returns the ceiling of the value v .
The ceiling is the smallest integer that is not less than v . For example, if v is 41.2, then the ceiling is 42.
另请参阅 qFloor ().
Returns the cosine of an angle v in radians.
[constexpr]
float
qDegreesToRadians
(
float
degrees
)
This function converts the degrees in float to radians.
范例:
float degrees = 180.0f float radians = qDegreesToRadians(degrees)
另请参阅 qRadiansToDegrees ().
[constexpr]
double
qDegreesToRadians
(
double
degrees
)
This function converts the degrees in double to radians.
范例:
double degrees = 180.0 double radians = qDegreesToRadians(degrees)
另请参阅 qRadiansToDegrees ().
[constexpr, since 6.0]
long
double
qDegreesToRadians
(
long
double
degrees
)
This function converts the degrees in double to radians.
该函数在 Qt 6.0 引入。
另请参阅 qRadiansToDegrees ().
Returns the exponential function of
e
to the power of
v
.
另请参阅 qLn ().
Returns the absolute value of v .
Returns the floor of the value v .
The floor is the largest integer that is not greater than v . For example, if v is 41.2, then the floor is 41.
另请参阅 qCeil ().
[since 6.1]
template <typename Tx, typename Ty>
auto
qHypot
(
Tx
x
,
Ty
y
)
这是重载函数。
Returns the distance of a point ( x , y ) from the origin (0, 0).
这为 qSqrt (x * x + y * y), optimized. In particular, underflow and overflow may be avoided.
Accepts any mix of numeric types, returning the same floating-point type as std::hypot(). If either parameter is infinite, so is the result; otherwise, if either is a NaN, so is the result.
该函数在 Qt 6.1 引入。
[since 6.1]
template <typename Tx, typename Ty, typename Tz>
auto
qHypot
(
Tx
x
,
Ty
y
,
Tz
z
)
这是重载函数。
Returns the distance of a point (x, y, z) from the origin (0, 0, 0).
这为 qSqrt (x * x + y * y + z * z), optimized where supported. In particular, underflow and overflow may be avoided.
Accepts any mix of numeric types, returning the same floating-point type as std::hypot(). If any parameter is infinite, so is the result; otherwise, if any is NaN, so is the result.
该函数在 Qt 6.1 引入。
另请参阅 qSqrt ().
[since 6.1]
template <typename F, typename... Fs>
auto
qHypot
(
F
first
,
Fs
...
rest
)
Returns the distance from origin in arbitrarily many dimensions
This is as for the two-argument and three-argument forms, supported by std::hypot(), but with as many numeric parameters as you care to pass to it. Uses first and each of the rest as coordinates, performing a calculation equivalent to squaring each, summing and returning the square root, save that underflow and overflow are avoided as far as possible.
该函数在 Qt 6.1 引入。
另请参阅 qSqrt ().
Returns the natural logarithm of v . Natural logarithm uses base e.
另请参阅 qExp ().
[constexpr]
quint32
qNextPowerOfTwo
(
quint32
value
)
This function returns the nearest power of two greater than value . For 0 it returns 1, and for values larger than or equal to 2^31 the result is undefined.
[constexpr]
quint32
qNextPowerOfTwo
(
qint32
value
)
这是重载函数。
This function returns the nearest power of two greater than value . For negative values the result is undefined.
[constexpr]
quint64
qNextPowerOfTwo
(
quint64
value
)
This function returns the nearest power of two greater than value . For 0 it returns 1, and for values larger than or equal to 2^63 the result is undefined.
[constexpr]
quint64
qNextPowerOfTwo
(
qint64
value
)
这是重载函数。
This function returns the nearest power of two greater than value . For negative values the result is undefined.
返回值为 x raised to the power of y . That is, x is the base and y is the exponent.
另请参阅 qSqrt ().
[constexpr]
float
qRadiansToDegrees
(
float
radians
)
This function converts the radians in float to degrees.
范例:
float radians = float(M_PI) float degrees = qRadiansToDegrees(radians)
另请参阅 qDegreesToRadians ().
[constexpr]
double
qRadiansToDegrees
(
double
radians
)
This function converts the radians in double to degrees.
范例:
double radians = M_PI double degrees = qRadiansToDegrees(radians)
另请参阅 qDegreesToRadians ().
[constexpr, since 6.0]
long
double
qRadiansToDegrees
(
long
double
radians
)
This function converts the radians in double to degrees.
该函数在 Qt 6.0 引入。
另请参阅 qDegreesToRadians ().
Returns the sine of the angle v in radians.
Returns the square root of v . This function returns a NaN if v is a negative number.
Returns the tangent of an angle v in radians.