ESyS-Particle  2.3.4
BoundingBox.h
Go to the documentation of this file.
1 // //
3 // Copyright (c) 2003-2017 by The University of Queensland //
4 // Centre for Geoscience Computing //
5 // http://earth.uq.edu.au/centre-geoscience-computing //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.apache.org/licenses/LICENSE-2.0 //
10 // //
12 
13 
14 #ifndef ESYS_LSMBOUNDINGBOX_H
15 #define ESYS_LSMBOUNDINGBOX_H
16 
17 #include "Foundation/vec3.h"
18 
19 namespace esys
20 {
21  namespace lsm
22  {
28  {
29  public:
30  inline BoundingBox();
31 
32  inline BoundingBox(const Vec3 &minBBoxPt, const Vec3 &maxBBoxPt);
33 
34  inline virtual ~BoundingBox();
35 
36  inline double getVolume() const;
37 
38  inline const Vec3 &getMinPt() const;
39 
40  inline const Vec3 &getMaxPt() const;
41 
42  inline bool operator==(const BoundingBox &bbox) const;
43 
44  inline Vec3 getSizes() const;
45 
46  inline bool contains(const Vec3 &pt, double tolerance = 0.0) const;
47 
48  private:
51  };
52  inline std::ostream &operator<<(std::ostream &oStream, const BoundingBox &bbox);
53  }
54 }
55 
57 
58 #endif
esys::lsm::BoundingBox::getMaxPt
const Vec3 & getMaxPt() const
Definition: BoundingBox.hpp:45
esys::lsm::BoundingBox::m_maxPt
Vec3 m_maxPt
Definition: BoundingBox.h:50
esys::lsm::BoundingBox::getVolume
double getVolume() const
Definition: BoundingBox.hpp:34
esys::lsm::BoundingBox
3D bounding box
Definition: BoundingBox.h:28
esys
Definition: CheckPointable.cpp:17
esys::lsm::BoundingBox::operator==
bool operator==(const BoundingBox &bbox) const
Definition: BoundingBox.hpp:50
esys::lsm::operator<<
std::ostream & operator<<(std::ostream &oStream, const SimpleConnectionData &connectionData)
Definition: GeometryReader.cpp:134
esys::lsm::BoundingBox::getMinPt
const Vec3 & getMinPt() const
Definition: BoundingBox.hpp:40
esys::lsm::BoundingBox::contains
bool contains(const Vec3 &pt, double tolerance=0.0) const
Definition: BoundingBox.hpp:60
Vec3
Definition: vec3.h:47
vec3.h
esys::lsm::BoundingBox::~BoundingBox
virtual ~BoundingBox()
Definition: BoundingBox.hpp:30
esys::lsm::BoundingBox::getSizes
Vec3 getSizes() const
Definition: BoundingBox.hpp:78
esys::lsm::BoundingBox::BoundingBox
BoundingBox()
Definition: BoundingBox.hpp:18
BoundingBox.hpp
esys::lsm::BoundingBox::m_minPt
Vec3 m_minPt
Definition: BoundingBox.h:49
BoundingBox.h