
An n-dimensional box is represented as: -xlow, ylow, (lower left point) -xhigh, yhigh. (higher right point). Only integer coordinates are supported for the points. This is used in the API for R*-trees.
Definition at line 52 of file nbox.h.
Public Types | |
| typedef w_base_t::int4_t | int4_t | 
| enum | |
| enum | sob_cmp_t | 
| Enum to describe comparisons.  | |
Public Member Functions | |
| bool | is_Null () const | 
| nbox_t (int dimension=max_dimension) | |
| nbox_t (int dimension, int box[]) | |
| nbox_t (const nbox_t &nbox) | |
| nbox_t (const char *s, int len) | |
| virtual | ~nbox_t () | 
| int | dimension () const | 
| return given dimension  | |
| int | bound (int n) const | 
| return highest value for nth dimension  | |
| int | side (int n) const | 
| return length of nth side  | |
| int | center (int n) const | 
| return middle of nth side  | |
| bool | empty () const | 
| void | squared () | 
| void | nullify () | 
| void | canonize () | 
| Make canonical.   | |
| int | hvalue (const nbox_t &universe, int level=0) const | 
| Return Hilbert value.  | |
| int | hcmp (const nbox_t &other, const nbox_t &universe, int level=0) const | 
| Comparison function for Hilbert values.   | |
| void | print (ostream &, int level) const | 
| void | draw (int level, ostream &DrawFile, const nbox_t &CoverAll) const | 
| double | area () const | 
| Area of a box Return value: >0 : valid box =0 : a point <0 : empty box.  | |
| int | margin () | 
| Margin of a Rectangle.  | |
| nbox_t | operator^ (const nbox_t &other) const | 
| nbox_t | operator+ (const nbox_t &other) const | 
| nbox_t & | operator+= (const nbox_t &other) | 
| nbox_t & | operator= (const nbox_t &other) | 
| bool | operator== (const nbox_t &other) const | 
| bool | operator/ (const nbox_t &other) const | 
| bool | contains (const nbox_t &other) const | 
| bool | operator|| (const nbox_t &other) const | 
| bool | operator> (const nbox_t &other) const | 
| bool | operator< (const nbox_t &other) const | 
| double | operator * (const nbox_t &other) const | 
| nbox_t (const char *s) | |
| For Tcl/smsh use only.  | |
| operator char * () | |
| For Tcl/smsh use only.  | |
| void | put (const char *) | 
| For Tcl/smsh use only.  | |
| void | bytes2box (const char *key, int klen) | 
| conversion from key to box  | |
| const void * | kval () const | 
| conversion from box to key  | |
| int | klen () const | 
| conversion from box to key  | |
Static Public Attributes | |
| static const int4_t | max_int4 = w_base_t::int4_max | 
| static const int4_t | min_int4 = w_base_t::int4_min | 
| static nbox_t & | Null = __Null__ | 
| Special marker for queries. This is not a box with area 0, but rather, a non-box i.e., not a legit value.  | |
Protected Attributes | |
| int4_t | array [2 *max_dimension] | 
| int | dim | 
Friends | |
| ostream & | operator<< (ostream &os, const nbox_t &box) | 
| nbox_t::nbox_t | ( | int |  dimension = max_dimension           | 
          ) | 
Create a box.
| [in] | dimension | Number of dimensions for the "box". | 
Definition at line 76 of file nbox.cpp.
References array, nullify(), and w_assert9.
Referenced by operator+(), and operator^().
Here is the call graph for this function:

Here is the caller graph for this function:

| nbox_t::nbox_t | ( | int | dimension, | |
| int | box[] | |||
| ) | 
| nbox_t::nbox_t | ( | const nbox_t & | nbox | ) | 
| nbox_t::nbox_t | ( | const char * | s, | |
| int | len | |||
| ) | 
| void nbox_t::canonize | ( | ) | 
Some binary operations: ^: intersection -> box +: bounding box -> box (result of addition) +=: enlarge by adding the new box ==: exact match -> boolean /: containment -> boolean ||: overlap -> boolean >: bigger (comapre low values) -> boolean <: smaller (comapre low values) -> boolean *: square of distance between centers of two boxes
Definition at line 294 of file nbox.cpp.
References array, dim, nbox_t(), and w_assert1.
Here is the call graph for this function:

 1.4.7