Irrlicht 3D Engine
irr::core::dimension2d< T > Class Template Reference

Specifies a 2 dimensional size. More...

#include <dimension2d.h>

Public Member Functions

 dimension2d ()
 Default constructor for empty dimension. More...
 
 dimension2d (const T &width, const T &height)
 Constructor with width and height. More...
 
 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. More...
 
getArea () const
 Get area. More...
 
dimension2d< T > getInterpolated (const dimension2d< T > &other, f32 d) const
 Get the interpolated dimension. More...
 
dimension2d< T > getOptimalSize (bool requirePowerOfTwo=true, bool requireSquare=false, bool larger=true, u32 maxValue=0) const
 Get the optimal size according to some properties. More...
 
dimension2d< T > operator * (const T &scale) const
 Multiply width and height by scalar. More...
 
dimension2d< T > & operator *= (const T &scale)
 Multiply width and height by scalar. More...
 
bool operator!= (const dimension2d< T > &other) const
 Inequality operator. More...
 
bool operator!= (const vector2d< T > &other) const
 
dimension2d< T > operator+ (const dimension2d< T > &other) const
 Add two dimensions. More...
 
dimension2d< T > & operator+= (const dimension2d< T > &other)
 Add another dimension to this one. More...
 
dimension2d< T > operator- (const dimension2d< T > &other) const
 Subtract one dimension from another. More...
 
dimension2d< T > & operator-= (const dimension2d< T > &other)
 Subtract a dimension from this one. More...
 
dimension2d< T > operator/ (const T &scale) const
 Divide width and height by scalar. More...
 
dimension2d< T > & operator/= (const T &scale)
 Divide width and height by scalar. More...
 
template<class U >
dimension2d< T > & operator= (const dimension2d< U > &other)
 
bool operator== (const dimension2d< T > &other) const
 Equality operator. More...
 
bool operator== (const vector2d< T > &other) const
 
dimension2d< T > & set (const T &width, const T &height)
 Set to new values. More...
 

Public Attributes

Height
 Height of the dimension. More...
 
Width
 Width of the dimension. More...
 

Detailed Description

template<class T>
class irr::core::dimension2d< T >

Specifies a 2 dimensional size.

Definition at line 20 of file dimension2d.h.

Constructor & Destructor Documentation

◆ dimension2d() [1/4]

template<class T>
irr::core::dimension2d< T >::dimension2d ( )
inline

Default constructor for empty dimension.

Definition at line 24 of file dimension2d.h.

◆ dimension2d() [2/4]

template<class T>
irr::core::dimension2d< T >::dimension2d ( const T &  width,
const T &  height 
)
inline

Constructor with width and height.

Definition at line 26 of file dimension2d.h.

◆ dimension2d() [3/4]

template<class T>
irr::core::dimension2d< T >::dimension2d ( const vector2d< T > &  other)

Definition at line 399 of file vector2d.h.

◆ dimension2d() [4/4]

template<class T>
template<class U >
irr::core::dimension2d< T >::dimension2d ( const dimension2d< U > &  other)
inlineexplicit

Use this constructor only where you are sure that the conversion is valid.

Definition at line 33 of file dimension2d.h.

Member Function Documentation

◆ getArea()

template<class T>
T irr::core::dimension2d< T >::getArea ( ) const
inline

Get area.

Definition at line 130 of file dimension2d.h.

◆ getInterpolated()

template<class T>
dimension2d<T> irr::core::dimension2d< T >::getInterpolated ( const dimension2d< T > &  other,
f32  d 
) const
inline

Get the interpolated dimension.

Parameters
otherOther dimension to interpolate with.
dValue between 0.0f and 1.0f. d=0 returns other, d=1 returns this, values between interpolate.
Returns
Interpolated dimension.

Definition at line 196 of file dimension2d.h.

◆ getOptimalSize()

template<class T>
dimension2d<T> irr::core::dimension2d< T >::getOptimalSize ( bool  requirePowerOfTwo = true,
bool  requireSquare = false,
bool  larger = true,
u32  maxValue = 0 
) const
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).

Parameters
requirePowerOfTwoForces the result to use only powers of two as values.
requireSquareMakes width==height in the result
largerChoose 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.
maxValueMaximum texturesize. if value > 0 size is clamped to maxValue
Returns
The optimal dimension under the given constraints.

Definition at line 150 of file dimension2d.h.

◆ operator *()

template<class T>
dimension2d<T> irr::core::dimension2d< T >::operator * ( const T &  scale) const
inline

Multiply width and height by scalar.

Definition at line 96 of file dimension2d.h.

◆ operator *=()

template<class T>
dimension2d<T>& irr::core::dimension2d< T >::operator *= ( const T &  scale)
inline

Multiply width and height by scalar.

Definition at line 88 of file dimension2d.h.

◆ operator!=() [1/2]

template<class T>
bool irr::core::dimension2d< T >::operator!= ( const dimension2d< T > &  other) const
inline

Inequality operator.

Definition at line 53 of file dimension2d.h.

◆ operator!=() [2/2]

template<class T>
bool irr::core::dimension2d< T >::operator!= ( const vector2d< T > &  other) const
inline

Definition at line 60 of file dimension2d.h.

◆ operator+()

template<class T>
dimension2d<T> irr::core::dimension2d< T >::operator+ ( const dimension2d< T > &  other) const
inline

Add two dimensions.

Definition at line 110 of file dimension2d.h.

◆ operator+=()

template<class T>
dimension2d<T>& irr::core::dimension2d< T >::operator+= ( const dimension2d< T > &  other)
inline

Add another dimension to this one.

Definition at line 102 of file dimension2d.h.

◆ operator-()

template<class T>
dimension2d<T> irr::core::dimension2d< T >::operator- ( const dimension2d< T > &  other) const
inline

Subtract one dimension from another.

Definition at line 124 of file dimension2d.h.

◆ operator-=()

template<class T>
dimension2d<T>& irr::core::dimension2d< T >::operator-= ( const dimension2d< T > &  other)
inline

Subtract a dimension from this one.

Definition at line 116 of file dimension2d.h.

◆ operator/()

template<class T>
dimension2d<T> irr::core::dimension2d< T >::operator/ ( const T &  scale) const
inline

Divide width and height by scalar.

Definition at line 82 of file dimension2d.h.

◆ operator/=()

template<class T>
dimension2d<T>& irr::core::dimension2d< T >::operator/= ( const T &  scale)
inline

Divide width and height by scalar.

Definition at line 74 of file dimension2d.h.

◆ operator=()

template<class T>
template<class U >
dimension2d<T>& irr::core::dimension2d< T >::operator= ( const dimension2d< U > &  other)
inline

Definition at line 37 of file dimension2d.h.

◆ operator==() [1/2]

template<class T>
bool irr::core::dimension2d< T >::operator== ( const dimension2d< T > &  other) const
inline

Equality operator.

Definition at line 46 of file dimension2d.h.

◆ operator==() [2/2]

template<class T>
bool irr::core::dimension2d< T >::operator== ( const vector2d< T > &  other) const

Definition at line 402 of file vector2d.h.

◆ set()

template<class T>
dimension2d<T>& irr::core::dimension2d< T >::set ( const T &  width,
const T &  height 
)
inline

Set to new values.

Definition at line 66 of file dimension2d.h.

Member Data Documentation

◆ Height

◆ Width


The documentation for this class was generated from the following files: