Iso cubes are axis-aligned cuboids, i.e. a cube with faces parallel to the x, y, and z plane. Iso cuboids are the 3 dimensional version of iso rectangles and shares the feature that it can be constructed from bounding boxes (in 3D). An Iso cube is degenerate all its vertices are coplanar.






Various input. See the Constructor section.


A vector of iso cubes or an object to convert to it


An euclid_iso_cube vector


3 dimensional iso cubes

  • Providing a bbox will create iso cubes matching the bbox

  • Providing two points will create iso cubes with the points as diagonal opposite vertices

  • Providing 6 numeric will construct iso cubes with the given extent, with the numerics being interpreted in the following order: minimum x, minimum y, minimum z, maximum x, maximum y, and maximum z


# Construction p <- point(sample(10, 2), sample(10, 2), sample(10, 2)) iso_cube(p[1], p[2])
#> <3D euclid_iso_cubes [1]> #> [1] [<x:1, y:6, z:3>, <x:8, y:6, z:3>, <x:8, y:8, z:3>, <x:1, y:8, z:3>, <x:1, y:8, z:8>, <x:1, y:6, z:8>, <x:8, y:6, z:8>, <x:8, y:8, z:8>]
iso_cube(4, 10, 7, 16, -4, 0)
#> <3D euclid_iso_cubes [1]> #> [1] [<x:4, y:10, z:7>, <x:16, y:10, z:7>, <x:16, y:-4, z:7>, <x:4, y:-4, z:7>, <x:4, y:-4, z:0>, <x:4, y:10, z:0>, <x:16, y:10, z:0>, <x:16, y:-4, z:0>]
s <- sphere(point(5, 9, 2), 13) iso_cube(bbox(s))
#> <3D euclid_iso_cubes [1]> #> [1] [<x:1.39, y:5.39, z:-1.61>, <x:8.61, y:5.39, z:-1.61>, <x:8.61, y:12.6, z:-1.61>, <x:1.39, y:12.6, z:-1.61>, <x:1.39, y:12.6, z:5.61>, <x:1.39, y:5.39, z:5.61>, <x:8.61, y:5.39, z:5.61>, <x:8.61, y:12.6, z:5.61>]