KrisLibrary  1.0.0
AngleSet.h
1 #ifndef MATH_ANGLE_SET_H
2 #define MATH_ANGLE_SET_H
3 
4 #include "angle.h"
5 #include <vector>
6 
7 namespace Math {
8 
12 struct AngleSet : public std::vector<AngleInterval>
13 {
14  typedef std::vector<AngleInterval> BaseT;
15 
16  inline void SetCircle() { resize(1); (*this)[0].setCircle(); }
17  inline void SetEmpty() { clear(); }
18  void Union(const BaseT&);
19  void Intersect(const BaseT&);
20  void Subtract(const BaseT&);
21  void Union(const AngleInterval&);
22  void Intersect(const AngleInterval&);
23  void Subtract(const AngleInterval&);
24 };
25 
26 } //namespace Math
27 
28 #endif
A contiguous range of angles.
Definition: angle.h:33
Planar (R2) rotation utilities.
Contains all definitions in the Math package.
Definition: WorkspaceBound.h:12
A set of AngleIntervals.
Definition: AngleSet.h:12