GenGeo  1.1
BoxWithJointSet.h
Go to the documentation of this file.
1 
2 // //
3 // Copyright (c) 2007-2014 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.opensource.org/licenses/osl-3.0.php //
10 // //
12 
13 #ifndef __BOXWITHJOINTSET_H
14 #define __BOXWITHJOINTSET_H
15 
16 // --- Project includes ---
17 #include "BoxWithPlanes3D.h"
18 #include "TriPatchSet.h"
19 #include "geometry/Triangle3D.h"
20 
21 // --- STL includes ---
22 #include <vector>
23 
24 using std::vector;
25 
26 //--- IO includes ---
27 #include <iostream>
28 
36 {
37  protected:
38  vector<Triangle3D> m_joints;
39 
40  public:
42  BoxWithJointSet(const Vector3&,const Vector3&);
43  virtual ~BoxWithJointSet(){};
44 
45  virtual const map<double,const AGeometricObject*> getClosestObjects(const Vector3&,int) const;
46  void addJoints(const TriPatchSet&);
47  virtual bool isIn(const Sphere&);
48 
49  friend ostream& operator<< (ostream&, const BoxWithJointSet&);
50 };
51 
52 #endif // __BOXWITHJOINTSET_H