7#ifndef __PNTREELIGHT_H__
8#define __PNTREELIGHT_H__
13template<
typename T,
typename U,
unsigned char N>
17 PNTreeLight(T pos[N], T size[N], T sizeLimit = 1e-5);
void setPosition(T pos[N])
Set the position of the PNTreeLight.
virtual ~PNTreeLight()
Destructeur of PNTreeLight.
PNTreeLight & operator=(const PNTreeLight< T, U, N > &other)
Definition of equal operator of PNTreeLight.
PNTreeLight()
Default constructeur of PNTreeLight.
bool saveGnuplotData(const std::string &fileName)
Saves the PNTreeLight into a txt file for gnuplot.
T p_pos[N]
Position of the hyper cube.
T p_sizeLimit
Size limit of the cells.
const U * getLastData(T *posData) const
Get the data of the last node in the N tree.
void copyPNTreeLight(const PNTreeLight< T, U, N > &other)
Copy function of PNTreeLight.
T p_size[N]
Size of the hyper cube.
PNTreeLightNode< T, U, N > p_node
Table of the children of the current node.
const U * getCloserData(T *posData) const
Get the closer data from the given position.
void setSize(T size[N])
Set the size of the PNTreeLight.
const U * getCloserDataDist(T &distFromCloserData, T *posData) const
Get the closer data from the given position.
bool addElement(T *posData, U *data)
Add an element in the PNTreeLightNode.
void setLimitSize(T limitSize)
Set the limit size of the PNTreeLight cells.
void initialisationPNTreeLight(T pos[N], T size[N], T sizeLimit)
Initialisation function of the class PNTreeLight.