ITK  5.4.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
itk::RGBAPixel< TComponent > Class Template Reference

#include <itkRGBAPixel.h>

Detailed Description

template<typename TComponent = unsigned short>
class itk::RGBAPixel< TComponent >

Represent Red, Green, Blue and Alpha components for color images.

This class is templated over the representation used for each component.

The following syntax for assigning an index is allowed/suggested:

RGBAPixel<float> pixel; pixel = 1.0f, 0.0f, .5f, .8;
RGBAPixel<char> pixelArray[2];
pixelArray[0] = 255, 255, 255, 230;
pixelArray[1] = 255, 255, 244, 255;

Since RGBAPixel is a subclass of Array, you can access its components as: pixel[0], pixel[1], pixel[2], pixel[3]

ITK Sphinx Examples:
Examples
SphinxExamples/src/Core/Common/MakePartOfImageTransparent/Code.cxx, SphinxExamples/src/Core/Common/UseParallelizeImageRegion/Code.cxx, and SphinxExamples/src/IO/ImageBase/ConvertImageToAnotherType/Code.cxx.

Definition at line 59 of file itkRGBAPixel.h.

+ Inheritance diagram for itk::RGBAPixel< TComponent >:
+ Collaboration diagram for itk::RGBAPixel< TComponent >:

Public Types

using BaseArray = FixedArray< TComponent, 4 >
 
using ComponentType = TComponent
 
using LuminanceType = typename NumericTraits< ComponentType >::RealType
 
using Self = RGBAPixel
 
using Superclass = FixedArray< TComponent, 4 >
 
- Public Types inherited from itk::FixedArray< TComponent, 4 >
using CArray = ValueType[VLength]
 
using const_iterator = const ValueType *
 
using const_pointer = const ValueType *
 
using const_reference = const ValueType &
 
using const_reverse_iterator = std::reverse_iterator< const_iterator >
 
using ConstIterator = const ValueType *
 
using Iterator = ValueType *
 
using iterator = ValueType *
 
using pointer = ValueType *
 
using reference = ValueType &
 
using reverse_iterator = std::reverse_iterator< iterator >
 
using SizeType = unsigned int
 
using ValueType = TComponent
 

Public Member Functions

const ComponentTypeGetAlpha () const
 
const ComponentTypeGetBlue () const
 
const ComponentTypeGetGreen () const
 
LuminanceType GetLuminance () const
 
ComponentType GetNthComponent (int c) const
 
const ComponentTypeGetRed () const
 
ComponentType GetScalarValue () const
 
bool operator< (const Self &r) const
 
RGBAPixeloperator= (const ComponentType r[4])
 
bool operator== (const Self &r) const
 
 RGBAPixel (std::nullptr_t)=delete
 
void SetAlpha (ComponentType alpha)
 
void SetBlue (ComponentType blue)
 
void SetGreen (ComponentType green)
 
void SetNthComponent (int c, const ComponentType &v)
 
void SetRed (ComponentType red)
 
 RGBAPixel ()=default
 
template<typename TRGBAPixelValueType >
 RGBAPixel (const RGBAPixel< TRGBAPixelValueType > &r)
 
 RGBAPixel (const ComponentType r[4])
 
 RGBAPixel (const ComponentType &r)
 
Self operator+ (const Self &r) const
 
Self operator- (const Self &r) const
 
Self operator* (const ComponentType &r) const
 
Self operator/ (const ComponentType &r) const
 
const Selfoperator+= (const Self &r)
 
const Selfoperator-= (const Self &r)
 
const Selfoperator*= (const ComponentType &r)
 
const Selfoperator/= (const ComponentType &r)
 
void Set (ComponentType red, ComponentType green, ComponentType blue, ComponentType alpha)
 
- Public Member Functions inherited from itk::FixedArray< TComponent, 4 >
Iterator Begin ()
 
ConstIterator Begin () const
 
constexpr const_iterator begin () const noexcept
 
constexpr iterator begin () noexcept
 
constexpr const_iterator cbegin () const noexcept
 
constexpr const_iterator cend () const noexcept
 
const_reverse_iterator crbegin () const
 
const_reverse_iterator crend () const
 
ValueTypedata ()
 
const ValueTypedata () const
 
Iterator End ()
 
ConstIterator End () const
 
constexpr const_iterator end () const noexcept
 
constexpr iterator end () noexcept
 
void Fill (const ValueType &)
 
 FixedArray ()=default
 
 FixedArray (const FixedArray< TFixedArrayValueType, VLength > &r)
 
 FixedArray (const std::array< ValueType, VLength > &stdArray)
 
 FixedArray (const TScalarValue *r)
 
ValueTypeGetDataPointer ()
 
const ValueTypeGetDataPointer () const
 
 ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION (FixedArray)
 
 itkLegacyMacro (ConstReverseIterator rBegin() const)
 
 itkLegacyMacro (ConstReverseIterator rEnd() const)
 
 itkLegacyMacro (ReverseIterator rBegin())
 
 itkLegacyMacro (ReverseIterator rEnd())
 
FixedArrayoperator= (const FixedArray< TFixedArrayValueType, VLength > &r)
 
FixedArrayoperator= (const ValueType r[VLength])
 
bool operator== (const FixedArray &r) const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
SizeType Size () const
 
constexpr SizeType size () const
 
void swap (FixedArray &other)
 
 FixedArray (const ValueType r[VLength])
 
 FixedArray (const ValueType &)
 
constexpr reference operator[] (unsigned int index)
 
constexpr const_reference operator[] (unsigned int index) const
 
void SetElement (unsigned int index, const_reference value)
 
const_reference GetElement (unsigned int index) const
 

Static Public Member Functions

static unsigned int GetNumberOfComponents ()
 
- Static Public Member Functions inherited from itk::FixedArray< TComponent, 4 >
static constexpr FixedArray Filled (const ValueType &value)
 

Static Public Attributes

static constexpr unsigned int Dimension = 4
 
static constexpr unsigned int Length = 4
 
- Static Public Attributes inherited from itk::FixedArray< TComponent, 4 >
static constexpr unsigned int Dimension
 
static constexpr unsigned int Length
 

Member Typedef Documentation

◆ BaseArray

template<typename TComponent = unsigned short>
using itk::RGBAPixel< TComponent >::BaseArray = FixedArray<TComponent, 4>

Convenience type alias.

Definition at line 73 of file itkRGBAPixel.h.

◆ ComponentType

template<typename TComponent = unsigned short>
using itk::RGBAPixel< TComponent >::ComponentType = TComponent

Define the component type.

Definition at line 76 of file itkRGBAPixel.h.

◆ LuminanceType

template<typename TComponent = unsigned short>
using itk::RGBAPixel< TComponent >::LuminanceType = typename NumericTraits<ComponentType>::RealType

Definition at line 77 of file itkRGBAPixel.h.

◆ Self

template<typename TComponent = unsigned short>
using itk::RGBAPixel< TComponent >::Self = RGBAPixel

Standard class type aliases.

Definition at line 63 of file itkRGBAPixel.h.

◆ Superclass

template<typename TComponent = unsigned short>
using itk::RGBAPixel< TComponent >::Superclass = FixedArray<TComponent, 4>

Definition at line 64 of file itkRGBAPixel.h.

Constructor & Destructor Documentation

◆ RGBAPixel() [1/5]

template<typename TComponent = unsigned short>
itk::RGBAPixel< TComponent >::RGBAPixel ( )
default

Default-constructor.

Note
The other five "special member functions" are defaulted implicitly, following the C++ "Rule of Zero".

◆ RGBAPixel() [2/5]

template<typename TComponent = unsigned short>
template<typename TRGBAPixelValueType >
itk::RGBAPixel< TComponent >::RGBAPixel ( const RGBAPixel< TRGBAPixelValueType > &  r)
inline

Pass-through constructor for the Array base class.

Definition at line 90 of file itkRGBAPixel.h.

◆ RGBAPixel() [3/5]

template<typename TComponent = unsigned short>
itk::RGBAPixel< TComponent >::RGBAPixel ( const ComponentType  r[4])
inline

Pass-through constructor for the Array base class.

Definition at line 93 of file itkRGBAPixel.h.

◆ RGBAPixel() [4/5]

template<typename TComponent = unsigned short>
itk::RGBAPixel< TComponent >::RGBAPixel ( std::nullptr_t  )
delete

Prevents copy-initialization from nullptr, as well as from 0 (NULL).

◆ RGBAPixel() [5/5]

template<typename TComponent = unsigned short>
itk::RGBAPixel< TComponent >::RGBAPixel ( const ComponentType r)
inlineexplicit

Explicit constructor

Definition at line 103 of file itkRGBAPixel.h.

Member Function Documentation

◆ GetAlpha()

template<typename TComponent = unsigned short>
const ComponentType& itk::RGBAPixel< TComponent >::GetAlpha ( ) const
inline

Get the Alpha component.

Definition at line 234 of file itkRGBAPixel.h.

◆ GetBlue()

template<typename TComponent = unsigned short>
const ComponentType& itk::RGBAPixel< TComponent >::GetBlue ( ) const
inline

Get the Blue component.

Definition at line 227 of file itkRGBAPixel.h.

◆ GetGreen()

template<typename TComponent = unsigned short>
const ComponentType& itk::RGBAPixel< TComponent >::GetGreen ( ) const
inline

Get the Green component.

Definition at line 220 of file itkRGBAPixel.h.

◆ GetLuminance()

template<typename TComponent = unsigned short>
LuminanceType itk::RGBAPixel< TComponent >::GetLuminance ( ) const

◆ GetNthComponent()

template<typename TComponent = unsigned short>
ComponentType itk::RGBAPixel< TComponent >::GetNthComponent ( int  c) const
inline

Return the value for the Nth component.

Definition at line 150 of file itkRGBAPixel.h.

◆ GetNumberOfComponents()

template<typename TComponent = unsigned short>
static unsigned int itk::RGBAPixel< TComponent >::GetNumberOfComponents ( )
inlinestatic

Return the number of components.

Definition at line 143 of file itkRGBAPixel.h.

◆ GetRed()

template<typename TComponent = unsigned short>
const ComponentType& itk::RGBAPixel< TComponent >::GetRed ( ) const
inline

Get the Red component.

Definition at line 213 of file itkRGBAPixel.h.

◆ GetScalarValue()

template<typename TComponent = unsigned short>
ComponentType itk::RGBAPixel< TComponent >::GetScalarValue ( ) const
inline

Return the Euclidean norm of the vector defined by the RGB components. Alpha is not used.

Definition at line 157 of file itkRGBAPixel.h.

◆ operator*()

template<typename TComponent = unsigned short>
Self itk::RGBAPixel< TComponent >::operator* ( const ComponentType r) const

Arithmetic operations between pixels. Return a new RGBAPixel.

◆ operator*=()

template<typename TComponent = unsigned short>
const Self& itk::RGBAPixel< TComponent >::operator*= ( const ComponentType r)

Arithmetic-assignment operators.

◆ operator+()

template<typename TComponent = unsigned short>
Self itk::RGBAPixel< TComponent >::operator+ ( const Self r) const

Arithmetic operations between pixels. Return a new RGBAPixel.

◆ operator+=()

template<typename TComponent = unsigned short>
const Self& itk::RGBAPixel< TComponent >::operator+= ( const Self r)

Arithmetic-assignment operators.

◆ operator-()

template<typename TComponent = unsigned short>
Self itk::RGBAPixel< TComponent >::operator- ( const Self r) const

Arithmetic operations between pixels. Return a new RGBAPixel.

◆ operator-=()

template<typename TComponent = unsigned short>
const Self& itk::RGBAPixel< TComponent >::operator-= ( const Self r)

Arithmetic-assignment operators.

◆ operator/()

template<typename TComponent = unsigned short>
Self itk::RGBAPixel< TComponent >::operator/ ( const ComponentType r) const

Arithmetic operations between pixels. Return a new RGBAPixel.

◆ operator/=()

template<typename TComponent = unsigned short>
const Self& itk::RGBAPixel< TComponent >::operator/= ( const ComponentType r)

Arithmetic-assignment operators.

◆ operator<()

template<typename TComponent = unsigned short>
bool itk::RGBAPixel< TComponent >::operator< ( const Self r) const

Implements strict weak ordering. For use in STL, e.g. std::map.

◆ operator=()

template<typename TComponent = unsigned short>
RGBAPixel& itk::RGBAPixel< TComponent >::operator= ( const ComponentType  r[4])

Pass-through assignment operator for the Array base class.

◆ operator==()

template<typename TComponent = unsigned short>
bool itk::RGBAPixel< TComponent >::operator== ( const Self r) const

◆ Set()

template<typename TComponent = unsigned short>
void itk::RGBAPixel< TComponent >::Set ( ComponentType  red,
ComponentType  green,
ComponentType  blue,
ComponentType  alpha 
)
inline

Set the four components.

Definition at line 202 of file itkRGBAPixel.h.

◆ SetAlpha()

template<typename TComponent = unsigned short>
void itk::RGBAPixel< TComponent >::SetAlpha ( ComponentType  alpha)
inline

Set the Alpha component.

Definition at line 195 of file itkRGBAPixel.h.

◆ SetBlue()

template<typename TComponent = unsigned short>
void itk::RGBAPixel< TComponent >::SetBlue ( ComponentType  blue)
inline

Set the Blue component.

Definition at line 188 of file itkRGBAPixel.h.

◆ SetGreen()

template<typename TComponent = unsigned short>
void itk::RGBAPixel< TComponent >::SetGreen ( ComponentType  green)
inline

Set the Green component.

Definition at line 181 of file itkRGBAPixel.h.

◆ SetNthComponent()

template<typename TComponent = unsigned short>
void itk::RGBAPixel< TComponent >::SetNthComponent ( int  c,
const ComponentType v 
)
inline

Set the Nth component to v.

Definition at line 167 of file itkRGBAPixel.h.

◆ SetRed()

template<typename TComponent = unsigned short>
void itk::RGBAPixel< TComponent >::SetRed ( ComponentType  red)
inline

Set the Red component.

Definition at line 174 of file itkRGBAPixel.h.

Member Data Documentation

◆ Dimension

template<typename TComponent = unsigned short>
constexpr unsigned int itk::RGBAPixel< TComponent >::Dimension = 4
staticconstexpr

Dimension of the vector space.

Definition at line 67 of file itkRGBAPixel.h.

◆ Length

template<typename TComponent = unsigned short>
constexpr unsigned int itk::RGBAPixel< TComponent >::Length = 4
staticconstexpr

Length of the pixel.

Definition at line 70 of file itkRGBAPixel.h.


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