40 #ifndef PCL_COMMON_POINT_OPERATORS_H
41 #define PCL_COMMON_POINT_OPERATORS_H
54 template <
typename Po
intT>
inline PointT
58 result.getVector3fMap () += rhs.getVector3fMap ();
62 template <
typename Po
intT>
inline PointT
66 result.getVector3fMap () -= rhs.getVector3fMap ();
70 template <
typename Po
intT>
inline PointT
74 result.getVector3fMap () *= scalar;
78 template <
typename Po
intT>
inline PointT
82 result.getVector3fMap () *= scalar;
86 template <
typename Po
intT>
inline PointT
90 result.getVector3fMap () /= scalar;
94 template <
typename Po
intT>
inline PointT
98 result.getVector3fMap () /= scalar;
102 template <
typename Po
intT>
inline PointT&
105 lhs.getVector3fMap () += rhs.getVector3fMap ();
109 template <
typename Po
intT>
inline PointT&
112 lhs.getVector3fMap () -= rhs.getVector3fMap ();
116 template <
typename Po
intT>
inline PointT&
119 p.getVector3fMap () *= scalar;
123 template <
typename Po
intT>
inline PointT&
126 p.getVector3fMap () /= scalar;
135 result.getVector3fMap () += rhs.getVector3fMap ();
144 result.getVector3fMap () -= rhs.getVector3fMap ();
153 result.getVector3fMap () *= scalar;
162 result.getVector3fMap () *= scalar;
170 lhs.getVector3fMap () += rhs.getVector3fMap ();
178 lhs.getVector3fMap () -= rhs.getVector3fMap ();
186 lhs.getVector3fMap () *= scalar;
194 result.getVector3fMap () += rhs.getVector3fMap ();
195 result.getNormalVector3fMap () += rhs.getNormalVector3fMap ();
205 result.getVector3fMap () -= rhs.getVector3fMap ();
206 result.getNormalVector3fMap () -= rhs.getNormalVector3fMap ();
215 lhs.getVector3fMap () += rhs.getVector3fMap ();
216 lhs.getNormalVector3fMap () += rhs.getNormalVector3fMap ();
225 lhs.getVector3fMap () -= rhs.getVector3fMap ();
226 lhs.getNormalVector3fMap () -= rhs.getNormalVector3fMap ();
235 lhs.getVector3fMap () *= scalar;
236 lhs.getNormalVector3fMap () *= scalar;
246 result.getVector3fMap () *= scalar;
247 result.getNormalVector3fMap () *= scalar;
256 return (
operator* (scalar, p));
264 result.getNormalVector3fMap () += rhs.getNormalVector3fMap ();
273 result.getNormalVector3fMap () -= rhs.getNormalVector3fMap ();
282 result.getNormalVector3fMap () *= scalar;
291 result.getNormalVector3fMap () *= scalar;
299 lhs.getNormalVector3fMap () += rhs.getNormalVector3fMap ();
307 lhs.getNormalVector3fMap () -= rhs.getNormalVector3fMap ();
315 lhs.getNormalVector3fMap () *= scalar;
325 result.getVector3fMap () = lhs.getVector3fMap ();
326 result.getVector3fMap () += rhs.getVector3fMap ();
327 result.r =
static_cast<uint8_t
> (lhs.r + rhs.r);
328 result.g =
static_cast<uint8_t
> (lhs.g + rhs.g);
329 result.b =
static_cast<uint8_t
> (lhs.b + rhs.b);
337 result.getVector3fMap () = lhs.getVector3fMap ();
338 result.getVector3fMap () -= rhs.getVector3fMap ();
339 result.r =
static_cast<uint8_t
> (lhs.r - rhs.r);
340 result.g =
static_cast<uint8_t
> (lhs.g - rhs.g);
341 result.b =
static_cast<uint8_t
> (lhs.b - rhs.b);
349 result.getVector3fMap () = p.getVector3fMap ();
350 result.getVector3fMap () *= scalar;
351 result.r =
static_cast<uint8_t
> (scalar * p.r);
352 result.g =
static_cast<uint8_t
> (scalar * p.g);
353 result.b =
static_cast<uint8_t
> (scalar * p.b);
361 result.getVector3fMap () = p.getVector3fMap ();
362 result.getVector3fMap () *= scalar;
363 result.r =
static_cast<uint8_t
> (scalar * p.r);
364 result.g =
static_cast<uint8_t
> (scalar * p.g);
365 result.b =
static_cast<uint8_t
> (scalar * p.b);
372 lhs.getVector3fMap () += rhs.getVector3fMap ();
373 lhs.r =
static_cast<uint8_t
> (lhs.r + rhs.r);
374 lhs.g =
static_cast<uint8_t
> (lhs.g + rhs.g);
375 lhs.b =
static_cast<uint8_t
> (lhs.b + rhs.b);
382 lhs.getVector3fMap () -= rhs.getVector3fMap ();
383 lhs.r =
static_cast<uint8_t
> (lhs.r - rhs.r);
384 lhs.g =
static_cast<uint8_t
> (lhs.g - rhs.g);
385 lhs.b =
static_cast<uint8_t
> (lhs.b - rhs.b);
392 lhs.getVector3fMap () *= scalar;
393 lhs.r =
static_cast<uint8_t
> (lhs.r * scalar);
394 lhs.g =
static_cast<uint8_t
> (lhs.g * scalar);
395 lhs.b =
static_cast<uint8_t
> (lhs.b * scalar);
404 result.getVector3fMap () = lhs.getVector3fMap ();
405 result.getVector3fMap () += rhs.getVector3fMap ();
406 result.r =
static_cast<uint8_t
> (lhs.r + rhs.r);
407 result.g =
static_cast<uint8_t
> (lhs.g + rhs.g);
408 result.b =
static_cast<uint8_t
> (lhs.b + rhs.b);
416 result.getVector3fMap () = lhs.getVector3fMap ();
417 result.getVector3fMap () -= rhs.getVector3fMap ();
418 result.r =
static_cast<uint8_t
> (lhs.r - rhs.r);
419 result.g =
static_cast<uint8_t
> (lhs.g - rhs.g);
420 result.b =
static_cast<uint8_t
> (lhs.b - rhs.b);
428 result.getVector3fMap () = p.getVector3fMap ();
429 result.getVector3fMap () *= scalar;
430 result.r =
static_cast<uint8_t
> (scalar * p.r);
431 result.g =
static_cast<uint8_t
> (scalar * p.g);
432 result.b =
static_cast<uint8_t
> (scalar * p.b);
440 result.getVector3fMap () = p.getVector3fMap ();
441 result.getVector3fMap () *= scalar;
442 result.r =
static_cast<uint8_t
> (scalar * p.r);
443 result.g =
static_cast<uint8_t
> (scalar * p.g);
444 result.b =
static_cast<uint8_t
> (scalar * p.b);
451 lhs.getVector3fMap () += rhs.getVector3fMap ();
452 lhs.r =
static_cast<uint8_t
> (lhs.r + rhs.r);
453 lhs.g =
static_cast<uint8_t
> (lhs.g + rhs.g);
454 lhs.b =
static_cast<uint8_t
> (lhs.b + rhs.b);
461 lhs.getVector3fMap () -= rhs.getVector3fMap ();
462 lhs.r =
static_cast<uint8_t
> (lhs.r - rhs.r);
463 lhs.g =
static_cast<uint8_t
> (lhs.g - rhs.g);
464 lhs.b =
static_cast<uint8_t
> (lhs.b - rhs.b);
471 lhs.getVector3fMap () *= scalar;
472 lhs.r =
static_cast<uint8_t
> (lhs.r * scalar);
473 lhs.g =
static_cast<uint8_t
> (lhs.g * scalar);
474 lhs.b =
static_cast<uint8_t
> (lhs.b * scalar);
483 result.r =
static_cast<uint8_t
> (lhs.r + rhs.r);
484 result.g =
static_cast<uint8_t
> (lhs.g + rhs.g);
485 result.b =
static_cast<uint8_t
> (lhs.b + rhs.b);
493 result.r =
static_cast<uint8_t
> (lhs.r - rhs.r);
494 result.g =
static_cast<uint8_t
> (lhs.g - rhs.g);
495 result.b =
static_cast<uint8_t
> (lhs.b - rhs.b);
503 result.r =
static_cast<uint8_t
> (scalar * p.r);
504 result.g =
static_cast<uint8_t
> (scalar * p.g);
505 result.b =
static_cast<uint8_t
> (scalar * p.b);
513 result.r =
static_cast<uint8_t
> (scalar * p.r);
514 result.g =
static_cast<uint8_t
> (scalar * p.g);
515 result.b =
static_cast<uint8_t
> (scalar * p.b);
522 lhs.r =
static_cast<uint8_t
> (lhs.r + rhs.r);
523 lhs.g =
static_cast<uint8_t
> (lhs.g + rhs.g);
524 lhs.b =
static_cast<uint8_t
> (lhs.b + rhs.b);
531 lhs.r =
static_cast<uint8_t
> (lhs.r - rhs.r);
532 lhs.g =
static_cast<uint8_t
> (lhs.g - rhs.g);
533 lhs.b =
static_cast<uint8_t
> (lhs.b - rhs.b);
540 lhs.r =
static_cast<uint8_t
> (lhs.r * scalar);
541 lhs.g =
static_cast<uint8_t
> (lhs.g * scalar);
542 lhs.b =
static_cast<uint8_t
> (lhs.b * scalar);