16#ifndef Octree_Double_included
17#define Octree_Double_included
19#include <Octree_Int.h>
38template <
typename _SIZE_>
50 template<
class _TAB_TYPE_>
51 void build_elements(
const _TAB_TYPE_& coords,
const IntTab_t& elements,
const double epsilon,
const bool include_virtual);
70 template<
class _TAB_TYPE_>
85template <
typename _SIZE_>
93 if (rnd_x >= -0.49 && rnd_x <= coord_max + 0.49)
95 ix = (int) floor(rnd_x + 0.5);
102template <
typename _SIZE_>
112 if (xmin > coord_max || xmax < 0.)
117 x0 = (int) (floor(xmin+0.5));
118 if (xmax > coord_max)
121 x1 = (int) (floor(xmax+0.5));
128#include <Octree_Double.tpp>
: Un octree permettant de chercher dans l'espace des elements ou des points decrits par des coordonne...
const ArrOfInt_t & floor_elements() const
bool integer_position(double x, int direction, int &ix) const
Convertit une coordonnee reelle en coordonnee entiere pour l'octree_int.
DoubleTab_T< _SIZE_ > DoubleTab_t
void compute_origin_factors(const _TAB_TYPE_ &coords, const double epsilon, const int include_virtual)
methode outil pour build_nodes et build_elements (calcul des facteurs de conversion entre reels et en...
static int_t search_nodes_close_to(const ArrOfDouble &point, const DoubleTab_t &coords, ArrOfInt_t &node_list, double epsilon)
Idem que search_nodes_close_to(double x, double y, double z, .
static int_t search_nodes_close_to(double x, double y, double z, const DoubleTab_t &coords, ArrOfInt_t &node_list, double epsilon)
Methode hors classe Cherche parmi les sommets de la liste node_list ceux qui sont a une.
ArrOfInt_T< _SIZE_ > ArrOfInt_t
bool integer_position_clip(double xmin, double xmax, int &x0, int &x1, int direction) const
int_t search_elements_box(const ArrOfDouble ¢er, const double radius, ArrOfInt_t &elements) const
cherche tous les elements ou points ayant potentiellement une intersection non vide avec la boite don...
void build_nodes(const DoubleTab_t &coords, const bool include_virtual, const double epsilon=0.)
construit un octree contenant les points de coordonnees coords.
Octree_Int_32_64< int > octree_int_
ArrOfDouble_T< _SIZE_ > ArrOfDouble_t
int_t search_elements(double x, double y, double z, int_t &index) const
cherche les elements ou les points contenus dans l'octree_floor qui contient le point (x,...
int_t search_elements_box(double xmin, double ymin, double zmin, double xmax, double ymax, double zmax, ArrOfInt_t &elements) const
cherche tous les elements ou points ayant potentiellement une intersection non vide avec la boite don...
IntTab_T< _SIZE_ > IntTab_t
void build_elements(const _TAB_TYPE_ &coords, const IntTab_t &elements, const double epsilon, const bool include_virtual)
Construit un octree a partir d'elements volumiques decrits par des ensembles de sommets.
: Un octree permettant de retrouver des objets ponctuels ou parallelipipediques dans un espace 1D,...
static const int coord_max_