Parasol Planning Library (PPL)
WorkspaceBoundingSphere.h
Go to the documentation of this file.
1 #ifndef WORKSPACE_BOUNDING_SPHERE_H_
2 #define WORKSPACE_BOUNDING_SPHERE_H_
3 
5 
6 
11 
12  public:
13 
16 
17  explicit WorkspaceBoundingSphere(const size_t _n,
18  const double _radius = std::numeric_limits<double>::max());
19 
20  explicit WorkspaceBoundingSphere(const std::vector<double>& _center,
21  const double _radius = std::numeric_limits<double>::max());
22 
23  explicit WorkspaceBoundingSphere(const Vector3d& _center,
24  const double _radius = std::numeric_limits<double>::max());
25 
27 
28  virtual ~WorkspaceBoundingSphere() noexcept;
29 
30  virtual std::unique_ptr<Boundary> Clone() const override;
31 
35 
36  virtual Boundary::Space Type() const noexcept override;
37 
38  virtual std::string Name() const noexcept override;
39 
43 
44  using Boundary::InBoundary;
45 
46  virtual bool InBoundary(const Cfg& _cfg) const override;
47 
51 
53  virtual GMSPolyhedron MakePolyhedron() const override;
54 
56 };
57 
58 #endif
Definition: AbstractBoundingSphere.h:12
Definition: Boundary.h:30
Space
The types of space that can be modeled with boundaries.
Definition: Boundary.h:38
Definition: Cfg.h:38
Definition: GMSPolyhedron.h:42
A 2 or 3 dimensional bounding sphere in workspace.
Definition: WorkspaceBoundingSphere.h:10
virtual std::string Name() const noexcept override
Get the name of the boundary type.
Definition: WorkspaceBoundingSphere.cpp:60
virtual ~WorkspaceBoundingSphere() noexcept
virtual Boundary::Space Type() const noexcept override
Get the space type.
Definition: WorkspaceBoundingSphere.cpp:53
virtual GMSPolyhedron MakePolyhedron() const override
This will be an approximate sphere with 480 faces.
Definition: WorkspaceBoundingSphere.cpp:76
virtual bool InBoundary(const Vector3d &_p) const
Definition: Boundary.cpp:94
WorkspaceBoundingSphere(const size_t _n, const double _radius=std::numeric_limits< double >::max())
Definition: WorkspaceBoundingSphere.cpp:11
virtual std::unique_ptr< Boundary > Clone() const override
Definition: WorkspaceBoundingSphere.cpp:43
Definition: XMLNode.h:27