63 PointVec(std::string
const& name, std::vector<Point*>&& points,
66 double const rel_eps = std::numeric_limits<double>::epsilon());
71 PointVec(std::string
const& name, std::vector<Point*>&& points,
73 double const rel_eps = std::numeric_limits<double>::epsilon());
90 void push_back(
Point* pnt, std::string
const*
const name)
override;
153 std::unique_ptr<GeoLib::OctTree<GeoLib::Point, 16>>
_oct_tree;
Definition of the AABB class.
Definition of the Point class.
Implementation of the OctTree class.
Definition of the GeoLib::TemplateVec class.
Class AABB is an axis aligned bounding box around a given set of geometric points of (template) type ...
This class manages pointers to Points in a std::vector along with a name. It also handles the deletio...
std::vector< std::string > _id_to_name_map
PointType getType() const
std::unique_ptr< GeoLib::OctTree< GeoLib::Point, 16 > > _oct_tree
std::vector< std::size_t > _pnt_id_map
const GeoLib::AABB & getAABB() const
std::size_t uniqueInsert(Point *pnt)
const std::vector< std::size_t > & getIDMap() const
void setNameForElement(std::size_t id, std::string const &name) override
Sets the given name for the element of the given ID.
std::size_t push_back(Point *pnt)
PointVec & operator=(PointVec &&rhs)=delete
std::string const & getItemNameByID(std::size_t id) const
PointVec(const PointVec &)=delete
PointType
Signals if the vector contains object of type Point or Station.
PointVec & operator=(const PointVec &rhs)=delete
void correctNameIDMapping()
PointVec(PointVec &&)=delete
void resetInternalDataStructures()
The class TemplateVec takes a unique name and manages a std::vector of pointers to data elements of t...
std::map< std::string, std::size_t > NameIdMap