cube ( float8 ) → cube Makes a one dimensional cube with both coordinates the same. cube(1) → (1) |
cube ( float8, float8 ) → cube Makes a one dimensional cube. cube(1, 2) → (1),(2) |
cube ( float8[] ) → cube Makes a zero-volume cube using the coordinates defined by the array. cube(ARRAY[1,2,3]) → (1, 2, 3) |
cube ( float8[], float8[] ) → cube Makes a cube with upper right and lower left coordinates as defined by the two arrays, which must be of the same length. cube(ARRAY[1,2], ARRAY[3,4]) → (1, 2),(3, 4) |
cube ( cube, float8 ) → cube Makes a new cube by adding a dimension on to an existing cube, with the same values for both endpoints of the new coordinate. This is useful for building cubes piece by piece from calculated values. cube('(1,2),(3,4)'::cube, 5) → (1, 2, 5),(3, 4, 5) |
cube ( cube, float8, float8 ) → cube Makes a new cube by adding a dimension on to an existing cube. This is useful for building cubes piece by piece from calculated values. cube('(1,2),(3,4)'::cube, 5, 6) → (1, 2, 5),(3, 4, 6) |
cube_dim ( cube ) → integer Returns the number of dimensions of the cube. cube_dim('(1,2),(3,4)') → 2 |
cube_ll_coord ( cube, integer ) → float8 Returns the _n_-th coordinate value for the lower left corner of the cube. cube_ll_coord('(1,2),(3,4)', 2) → 2 |
cube_ur_coord ( cube, integer ) → float8 Returns the _n_-th coordinate value for the upper right corner of the cube. cube_ur_coord('(1,2),(3,4)', 2) → 4 |
cube_is_point ( cube ) → boolean Returns true if the cube is a point, that is, the two defining corners are the same. cube_is_point(cube(1,1)) → t |
cube_distance ( cube, cube ) → float8 Returns the distance between two cubes. If both cubes are points, this is the normal distance function. cube_distance('(1,2)', '(3,4)') → 2.8284271247461903 |
cube_subset ( cube, integer[] ) → cube Makes a new cube from an existing cube, using a list of dimension indexes from an array. Can be used to extract the endpoints of a single dimension, or to drop dimensions, or to reorder them as desired. cube_subset(cube('(1,3,5),(6,7,8)'), ARRAY[2]) → (3),(7) cube_subset(cube('(1,3,5),(6,7,8)'), ARRAY[3,2,1,1]) → (5, 3, 1, 1),(8, 7, 6, 6) |
cube_union ( cube, cube ) → cube Produces the union of two cubes. cube_union('(1,2)', '(3,4)') → (1, 2),(3, 4) |
cube_inter ( cube, cube ) → cube Produces the intersection of two cubes. cube_inter('(1,2)', '(3,4)') → (3, 4),(1, 2) |
cube_enlarge ( c cube, r double, n integer ) → cube Increases the size of the cube by the specified radius r in at least n dimensions. If the radius is negative the cube is shrunk instead. All defined dimensions are changed by the radius r. Lower-left coordinates are decreased by r and upper-right coordinates are increased by r. If a lower-left coordinate is increased to more than the corresponding upper-right coordinate (this can only happen when r < 0) than both coordinates are set to their average. If _n_ is greater than the number of defined dimensions and the cube is being enlarged (_r_ > 0), then extra dimensions are added to make n altogether; 0 is used as the initial value for the extra coordinates. This function is useful for creating bounding boxes around a point for searching for nearby points. cube_enlarge('(1,2),(3,4)', 0.5, 3) → (0.5, 1.5, -0.5),(3.5, 4.5, 0.5) |