![]() |
Duckcpp 2.1.0
Duckcpp is a high-performance c++ graphics engine.
|
Specifies a 2 dimensional size. More...
#include <duckcpp/core/engine/dimension2d.hpp>
Public Member Functions | |
| dimension2d () | |
| Default constructor for empty dimension. | |
| dimension2d (const T &width, const T &height) | |
| Constructor with width and height. | |
| dimension2d (const vector2d< T > &other) | |
| template<class U > | |
| dimension2d (const dimension2d< U > &other) | |
| Use this constructor only where you are sure that the conversion is valid. | |
| template<class U > | |
| dimension2d< T > & | operator= (const dimension2d< U > &other) |
| bool | operator== (const dimension2d< T > &other) const |
| Equality operator. | |
| bool | operator!= (const dimension2d< T > &other) const |
| Inequality operator. | |
| bool | operator== (const vector2d< T > &other) const |
| bool | operator!= (const vector2d< T > &other) const |
| dimension2d< T > & | set (const T &width, const T &height) |
| Set to new values. | |
| dimension2d< T > & | operator/= (const T &scale) |
| Divide width and height by scalar. | |
| dimension2d< T > | operator/ (const T &scale) const |
| Divide width and height by scalar. | |
| dimension2d< T > & | operator*= (const T &scale) |
| Multiply width and height by scalar. | |
| dimension2d< T > | operator* (const T &scale) const |
| Multiply width and height by scalar. | |
| dimension2d< T > & | operator+= (const dimension2d< T > &other) |
| Add another dimension to this one. | |
| dimension2d< T > | operator+ (const dimension2d< T > &other) const |
| Add two dimensions. | |
| dimension2d< T > & | operator-= (const dimension2d< T > &other) |
| Subtract a dimension from this one. | |
| dimension2d< T > | operator- (const dimension2d< T > &other) const |
| Subtract one dimension from another. | |
| T | getArea () const |
| Get area. | |
| dimension2d< T > | getOptimalSize (bool requirePowerOfTwo=true, bool requireSquare=false, bool larger=true, dcpp::uint32_kt maxValue=0) const |
| Get the optimal size according to some properties. | |
| dimension2d< T > | getInterpolated (const dimension2d< T > &other, dcpp::float32_kt d) const |
| Get the interpolated dimension. | |
Public Attributes | |
| T | Width |
| Width of the dimension. | |
| T | Height |
| Height of the dimension. | |
|
inline |
Get the interpolated dimension.
| other | Other dimension to interpolate with. |
| d | Value between 0.0f and 1.0f. d=0 returns other, d=1 returns this, values between interpolate. |
|
inline |
Get the optimal size according to some properties.
This is a function often used for texture dimension calculations. The function returns the next larger or smaller dimension which is a power-of-two dimension (2^n,2^m) and/or square (Width=Height).
| requirePowerOfTwo | Forces the result to use only powers of two as values. |
| requireSquare | Makes width==height in the result |
| larger | Choose whether the result is larger or smaller than the current dimension. If one dimension need not be changed it is kept with any value of larger. |
| maxValue | Maximum texturesize. if value > 0 size is clamped to maxValue |