ScummVM API documentation
QDEngine::Rect< scalar_type, vect_type > Struct Template Reference

Абстрактый прямоугольник. More...

#include <Rect.h>

Public Types

typedef vect_type VectType
 
typedef scalar_type ScalarType
 
typedef Rect< ScalarType, VectType > RectType
 
typedef Rangef RangeType
 

Public Member Functions

 Rect (const VectType &size)
 Создаёт Rect размера _size, левый-верхний угол остаётся в точке (0, 0).
 
 Rect (ScalarType left, ScalarType top, ScalarType width, ScalarType height)
 
 Rect (const VectType &_topleft, const VectType &size)
 
void set (ScalarType left, ScalarType top, ScalarType width, ScalarType height)
 
ScalarType left () const
 
ScalarType top () const
 
ScalarType width () const
 
ScalarType height () const
 
VectType _lefttop () const
 
VectType right_top () const
 
VectType _leftbottom () const
 
VectType right_bottom () const
 
ScalarType right () const
 
ScalarType bottom () const
 
VectType center () const
 Возвращает координаты цетра прямоугольника.
 
VectType size () const
 Возвращает размер прямоугольника.
 
void left (ScalarType left)
 
void top (ScalarType top)
 
void width (ScalarType width)
 
void height (ScalarType height)
 
void right (ScalarType right)
 
void bottom (ScalarType bottom)
 
void center (const VectType &center)
 Переносит центр прямоугольника в точку _center не изменяя его размер.
 
void size (const VectType &size)
 Устанавливает новые размеры, сохраняя левый-верхний угол в преждней точке.
 
bool point_inside (const VectType &point) const
 Проверяет не находится ли точка _point внутри прямоугольника
 
bool rect_inside (const RectType &rect) const
 Проверяет не находится ли прямоугольник _rect внутри прямоугольника
 
bool rect_overlap (const RectType &rect) const
 
RectType scaled (const VectType &scale, const VectType &origin) const
 Производит скэлинг. More...
 
void validate ()
 Исправляет отрицательную ширину/высоту
 
RectType intersection (const RectType &rect) const
 
RectType operator+ (const VectType &point) const
 
RectType operator- (const VectType &point) const
 
RectType operator* (const VectType &point) const
 
RectType operator* (const RectType &rhs) const
 
RectType operator/ (const RectType &rhs) const
 
RectType operator/ (const VectType &point) const
 
bool operator== (const RectType &rect) const
 
bool eq (const RectType &rect, ScalarType eps=FLT_COMPARE_TOLERANCE) const
 
bool operator!= (const RectType &rect) const
 

Protected Member Functions

bool clipLine (VectType &pos0, VectType &pos1) const
 

Protected Attributes

ScalarType _left
 
ScalarType _top
 
ScalarType _width
 
ScalarType _height
 

Detailed Description

template<typename scalar_type, class vect_type>
struct QDEngine::Rect< scalar_type, vect_type >

Абстрактый прямоугольник.

Parameters
ScalarType- скалярный тип
VectType- векторный тип

Member Function Documentation

◆ scaled()

template<typename scalar_type , class vect_type >
RectType QDEngine::Rect< scalar_type, vect_type >::scaled ( const VectType &  scale,
const VectType &  origin 
) const
inline

Производит скэлинг.

Возвращает копию прямоугольника, над которой произведён скэлинг относительно точки _origin.


The documentation for this struct was generated from the following file: