libmove3d  3.13.0
/home/slemaign/softs-local/BioMove3D-git/collision/Kcd/include/kcd_aabb_tree.h
00001 #ifndef KCD_AABB_HIER_H
00002 #define KCD_AABB_HIER_H
00003 
00004 /* #include "kcd.h" */
00005 
00006 typedef struct axis_list_el{
00007   double val;                  /* key on which this element is sorted */
00008   int the_bb;                  /* AABB from which val originates */
00009 }axis_list_el,*axis_list_elp,**axis_list_elpp;
00010 
00011 typedef struct aabb_hier_el{
00012   int the_bb;                      /* AABB around the group of AABBs in lists, nr in all_bbs */
00013   int this_hier_level;
00014   int this_place_at_level;
00015   axis_list_elp *aabb_xlist;
00016   int aabb_xlist_nofels;
00017   axis_list_elp *aabb_ylist;
00018   int aabb_ylist_nofels;
00019   axis_list_elp *aabb_zlist;
00020   int aabb_zlist_nofels;
00021   /* children of type aabb_hier_el */
00022   int group_below_nr;                    /* nr of children */
00023   int *group_below_aabb_hier_el;         /* indices on lower level */
00024 }aabb_hier_el;
00025 
00026 typedef struct hash_on_aabb_axis_list
00027 {
00028   double            hashval;
00029   axis_list_el     *hashed_el;
00030 }hash_on_aabb_axis_list;
00031 
00032 typedef aabb_hier_el     *kcd_aabb_list ;
00033 typedef kcd_aabb_list    *kcd_aabb_lists;
00034 
00035 
00036 #endif
00037 
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines