22 # include <vcl_msvc_warnings.h> 33 inline T
R()
const {
return r; }
34 inline T
G()
const {
return g; }
35 inline T
B()
const {
return b; }
36 inline T
A()
const {
return a; }
47 r(red),
g(green),
b(blue),
a(alpha) {}
52 return r==o.
r &&
g==o.
g &&
b==o.
b &&
a==o.
a;
73 T
grey()
const {
return T(0.5+
r*0.299+0.587*
g+0.114*
b); }
75 #if 0 // deprecated -- use .grey() instead 76 operator T()
const {
return T(0.5+
r*0.299+0.587*
g+0.114*
b); }
80 #define VIL_RGBA_INSTANTIATE \ 81 extern "please include vil/vil_rgba.hxx instead"
vil_rgba< T > & operator=(const vil_rgba< S > &that)
vil_rgba(T v)
Create grey (v,v,v,1) vil_rgba cell from value v.
vil_rgba(const vil_rgba< S > &that)
vil_rgba(T red, T green, T blue, T alpha=1)
Construct from four values.
bool operator==(vil_rgba< T > const &o) const
equality.
T grey() const
Convert vil_rgba to gray using standard (.299, .587, .114) RGB weighting.
This is the appropriate pixel type for RGBA colour images.