39 #ifndef PCL_TYPE_CONVERSIONS_H
40 #define PCL_TYPE_CONVERSIONS_H
57 out.x = in.x; out.y = in.y; out.z = in.z;
58 out.
intensity = 0.299f * in.r + 0.587f * in.g + 0.114f * in.b;
72 out.x = in.x; out.y = in.y; out.z = in.z;
74 out.
v = std::max (in.r, std::max (in.g, in.b));
75 min = std::min (in.r, std::min (in.g, in.b));
78 out.
s = (out.
v - min) / out.
v;
87 out.h =
static_cast<float> (in.g - in.b) / (out.v - min);
88 else if (in.g == out.v)
89 out.h =
static_cast<float> (2 + (in.b - in.r) / (out.v - min));
91 out.h =
static_cast<float> (4 + (in.r - in.g) / (out.v - min));
108 out.r = out.g = out.b =
static_cast<uint8_t
> (in.
v);
112 int i =
static_cast<int> (floorf (a));
113 float f = a -
static_cast<float> (i);
114 float p = in.
v * (1 - in.
s);
115 float q = in.
v * (1 - in.
s * f);
116 float t = in.
v * (1 - in.
s * (1 - f));
122 out.r =
static_cast<uint8_t
> (255 * in.
v);
123 out.g =
static_cast<uint8_t
> (255 * t);
124 out.b =
static_cast<uint8_t
> (255 * p);
129 out.r =
static_cast<uint8_t
> (255 * q);
130 out.g =
static_cast<uint8_t
> (255 * in.
v);
131 out.b =
static_cast<uint8_t
> (255 * p);
136 out.r =
static_cast<uint8_t
> (255 * p);
137 out.g =
static_cast<uint8_t
> (255 * in.
v);
138 out.b =
static_cast<uint8_t
> (255 * t);
143 out.r =
static_cast<uint8_t
> (255 * p);
144 out.g =
static_cast<uint8_t
> (255 * q);
145 out.b =
static_cast<uint8_t
> (255 * in.
v);
150 out.r =
static_cast<uint8_t
> (255 * t);
151 out.g =
static_cast<uint8_t
> (255 * p);
152 out.b =
static_cast<uint8_t
> (255 * in.
v);
157 out.r =
static_cast<uint8_t
> (255 * in.
v);
158 out.g =
static_cast<uint8_t
> (255 * p);
159 out.b =
static_cast<uint8_t
> (255 * q);
176 for (
size_t i = 0; i < in.
points.size (); i++)
193 for (
size_t i = 0; i < in.
points.size (); i++)
202 #endif //#ifndef PCL_TYPE_CONVERSIONS_H