VTK  9.3.20240419
Public Member Functions | List of all members
vtkRect< T > Class Template Reference

templated base type for storage of 2D rectangles. More...

#include <vtkRect.h>

Inheritance diagram for vtkRect< T >:
[legend]
Collaboration diagram for vtkRect< T >:
[legend]

Public Member Functions

 vtkRect ()=default
 
 vtkRect (const T &x, const T &y, const T &width, const T &height)
 
 vtkRect (const T *init)
 
void SetX (const T &x)
 Set the x component of the rectangle bottom corner, i.e. More...
 
const T & GetX () const
 Get the x component of the rectangle bottom corner, i.e. More...
 
void SetY (const T &y)
 Set the y component of the rectangle bottom corner, i.e. More...
 
const T & GetY () const
 Get the y component of the rectangle bottom corner, i.e. More...
 
void SetWidth (const T &width)
 Set the width of the rectanle, i.e. More...
 
const T & GetWidth () const
 Get the width of the rectangle, i.e. More...
 
void SetHeight (const T &height)
 Set the height of the rectangle, i.e. More...
 
const T & GetHeight () const
 Get the height of the rectangle, i.e. More...
 
const T & GetLeft () const
 Get the left boundary of the rectangle along the X direction. More...
 
GetRight () const
 Get the right boundary of the rectangle along the X direction. More...
 
GetTop () const
 Get the top boundary of the rectangle along the Y direction. More...
 
const T & GetBottom () const
 Get the bottom boundary of the rectangle along the Y direction. More...
 
vtkVector2< T > GetBottomLeft () const
 Get the bottom left corner of the rect as a vtkVector. More...
 
vtkVector< T, 2 > GetTopLeft () const
 Get the top left corner of the rect as a vtkVector. More...
 
vtkVector< T, 2 > GetBottomRight () const
 Get the bottom right corner of the rect as a vtkVector. More...
 
vtkVector< T, 2 > GetTopRight () const
 Get the bottom left corner of the rect as a vtkVector. More...
 
bool IntersectsWith (const vtkRect< T > &rect) const
 Returns true if the rect argument overlaps this rect. More...
 
void MoveTo (T x, T y)
 Move the rectangle, moving the bottom-left corner to the given position. More...
 
bool Intersect (const vtkRect< T > &other)
 Intersect with other rectangle. More...
 
vtkVector2d GetCenter () const
 Returns the center of the rect as a vtkVector2d. More...
 
void Set (const T &x, const T &y, const T &width, const T &height)
 Set the x, y components of the rectangle, and the width/height. More...
 
void AddPoint (const T point[2])
 Expand this rect to contain the point passed in. More...
 
void AddPoint (T x, T y)
 Expand this rect to contain the point passed in. More...
 
void AddRect (const vtkRect< T > &rect)
 Expand this rect to contain the rect passed in. More...
 
- Public Member Functions inherited from vtkVector< T, 4 >
 vtkVector ()=default
 
 vtkVector (const T &scalar)
 Initialize all of the vector's elements with the supplied scalar. More...
 
 vtkVector (const T *init)
 Initialize the vector's elements with the elements of the supplied array. More...
 
double Norm () const
 Get the norm of the vector, i.e. More...
 
SquaredNorm () const
 Get the squared norm of the vector. More...
 
double Normalize ()
 Normalize the vector in place. More...
 
vtkVector< T, Size > Normalized () const
 Return the normalized form of this vector. More...
 
Dot (const vtkVector< T, Size > &other) const
 The dot product of this and the supplied vector. More...
 
vtkVector< T, Size > operator- (const vtkVector< T, Size > &other) const
 Substraction operation of this and the supplied vector. More...
 
vtkVector< T, Size > operator* (const T &other) const
 Multiply this vector by a scalar value. More...
 
vtkVector< TR, Size > Cast () const
 Cast the vector to the specified type, returning the result. More...
 
- Public Member Functions inherited from vtkTuple< T, Size >
 vtkTuple ()=default
 The default constructor does not initialize values. More...
 
 vtkTuple (const T &scalar)
 Initialize all of the tuple's elements with the supplied scalar. More...
 
 vtkTuple (const T *init)
 Initialize the tuple's elements with the elements of the supplied array. More...
 
 vtkTuple (const std::array< T, Size > &values)
 Initialize the tuple's elements using a std::array for matching type and size. More...
 
int GetSize () const
 Get the size of the tuple. More...
 
T * GetData ()
 Get a pointer to the underlying data of the tuple. More...
 
const T * GetData () const
 
T & operator[] (int i)
 Get a reference to the underlying data element of the tuple. More...
 
const T & operator[] (int i) const
 
operator() (int i) const
 Get the value of the tuple at the index specified. More...
 
bool Compare (const vtkTuple< T, Size > &other, const T &tol) const
 Equality operator with a tolerance to allow fuzzy comparisons. More...
 
template<typename TR >
vtkTuple< TR, Size > Cast () const
 Cast the tuple to the specified type, returning the result. More...
 

Additional Inherited Members

- Protected Attributes inherited from vtkTuple< T, Size >
Data [Size]
 The only thing stored in memory! More...
 

Detailed Description

template<typename T>
class vtkRect< T >

templated base type for storage of 2D rectangles.

This class is a templated data type for storing and manipulating rectangles. The memory layout is a contiguous array of the specified type, such that a float[4] can be cast to a vtkRectf and manipulated. Also a float[12] could be cast and used as a vtkRectf[3].

Tests:
vtkRect (Tests)

Definition at line 27 of file vtkRect.h.

Constructor & Destructor Documentation

◆ vtkRect() [1/3]

template<typename T >
vtkRect< T >::vtkRect ( )
default

◆ vtkRect() [2/3]

template<typename T >
vtkRect< T >::vtkRect ( const T &  x,
const T &  y,
const T &  width,
const T &  height 
)
inline

Definition at line 32 of file vtkRect.h.

◆ vtkRect() [3/3]

template<typename T >
vtkRect< T >::vtkRect ( const T *  init)
inlineexplicit

Definition at line 40 of file vtkRect.h.

Member Function Documentation

◆ Set()

template<typename T >
void vtkRect< T >::Set ( const T &  x,
const T &  y,
const T &  width,
const T &  height 
)
inline

Set the x, y components of the rectangle, and the width/height.

Definition at line 49 of file vtkRect.h.

◆ SetX()

template<typename T >
void vtkRect< T >::SetX ( const T &  x)
inline

Set the x component of the rectangle bottom corner, i.e.

element 0.

Definition at line 61 of file vtkRect.h.

◆ GetX()

template<typename T >
const T& vtkRect< T >::GetX ( ) const
inline

Get the x component of the rectangle bottom corner, i.e.

element 0.

Definition at line 66 of file vtkRect.h.

◆ SetY()

template<typename T >
void vtkRect< T >::SetY ( const T &  y)
inline

Set the y component of the rectangle bottom corner, i.e.

element 1.

Definition at line 71 of file vtkRect.h.

◆ GetY()

template<typename T >
const T& vtkRect< T >::GetY ( ) const
inline

Get the y component of the rectangle bottom corner, i.e.

element 1.

Definition at line 76 of file vtkRect.h.

◆ SetWidth()

template<typename T >
void vtkRect< T >::SetWidth ( const T &  width)
inline

Set the width of the rectanle, i.e.

element 2.

Definition at line 81 of file vtkRect.h.

◆ GetWidth()

template<typename T >
const T& vtkRect< T >::GetWidth ( ) const
inline

Get the width of the rectangle, i.e.

element 2.

Definition at line 86 of file vtkRect.h.

◆ SetHeight()

template<typename T >
void vtkRect< T >::SetHeight ( const T &  height)
inline

Set the height of the rectangle, i.e.

element 3.

Definition at line 91 of file vtkRect.h.

◆ GetHeight()

template<typename T >
const T& vtkRect< T >::GetHeight ( ) const
inline

Get the height of the rectangle, i.e.

element 3.

Definition at line 96 of file vtkRect.h.

◆ GetLeft()

template<typename T >
const T& vtkRect< T >::GetLeft ( ) const
inline

Get the left boundary of the rectangle along the X direction.

Definition at line 101 of file vtkRect.h.

◆ GetRight()

template<typename T >
T vtkRect< T >::GetRight ( ) const
inline

Get the right boundary of the rectangle along the X direction.

Definition at line 106 of file vtkRect.h.

◆ GetTop()

template<typename T >
T vtkRect< T >::GetTop ( ) const
inline

Get the top boundary of the rectangle along the Y direction.

Definition at line 111 of file vtkRect.h.

◆ GetBottom()

template<typename T >
const T& vtkRect< T >::GetBottom ( ) const
inline

Get the bottom boundary of the rectangle along the Y direction.

Definition at line 116 of file vtkRect.h.

◆ GetBottomLeft()

template<typename T >
vtkVector2<T> vtkRect< T >::GetBottomLeft ( ) const
inline

Get the bottom left corner of the rect as a vtkVector.

Definition at line 121 of file vtkRect.h.

◆ GetTopLeft()

template<typename T >
vtkVector<T, 2> vtkRect< T >::GetTopLeft ( ) const
inline

Get the top left corner of the rect as a vtkVector.

Definition at line 126 of file vtkRect.h.

◆ GetBottomRight()

template<typename T >
vtkVector<T, 2> vtkRect< T >::GetBottomRight ( ) const
inline

Get the bottom right corner of the rect as a vtkVector.

Definition at line 131 of file vtkRect.h.

◆ GetTopRight()

template<typename T >
vtkVector<T, 2> vtkRect< T >::GetTopRight ( ) const
inline

Get the bottom left corner of the rect as a vtkVector.

Definition at line 139 of file vtkRect.h.

◆ AddPoint() [1/2]

template<typename T >
void vtkRect< T >::AddPoint ( const T  point[2])
inline

Expand this rect to contain the point passed in.

Definition at line 145 of file vtkRect.h.

◆ AddPoint() [2/2]

template<typename T >
void vtkRect< T >::AddPoint ( x,
y 
)
inline

Expand this rect to contain the point passed in.

Definition at line 181 of file vtkRect.h.

◆ AddRect()

template<typename T >
void vtkRect< T >::AddRect ( const vtkRect< T > &  rect)
inline

Expand this rect to contain the rect passed in.

Definition at line 192 of file vtkRect.h.

◆ IntersectsWith()

template<typename T >
bool vtkRect< T >::IntersectsWith ( const vtkRect< T > &  rect) const
inline

Returns true if the rect argument overlaps this rect.

If the upper bound of one rect is equal to the lower bound of the other rect, then this will return false (in that case, the rects would be considered to be adjacent but not overlapping).

Definition at line 238 of file vtkRect.h.

◆ MoveTo()

template<typename T >
void vtkRect< T >::MoveTo ( x,
y 
)
inline

Move the rectangle, moving the bottom-left corner to the given position.

The rectangles size remains unchanged.

Definition at line 271 of file vtkRect.h.

◆ Intersect()

template<typename T >
bool vtkRect< T >::Intersect ( const vtkRect< T > &  other)
inline

Intersect with other rectangle.

If this->IntersectsWith(other) is true, this method will update this rect to the intersection of this and other and return true. If this->IntersectsWith(other) returns false, then this method will return false leaving this rect unchanged.

Returns true if the intersection was performed otherwise false.

Definition at line 285 of file vtkRect.h.

◆ GetCenter()

template<typename T >
vtkVector2d vtkRect< T >::GetCenter ( ) const
inline

Returns the center of the rect as a vtkVector2d.

Definition at line 306 of file vtkRect.h.


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