7namespace gtsam_points {
25 using iterator_category = std::forward_iterator_tag;
26 using value_type = Eigen::Vector3i;
27 using difference_type = std::ptrdiff_t;
28 using pointer =
const Eigen::Vector3i*;
29 using reference = Eigen::Vector3i&;
33 const Eigen::Vector3i& operator*()
const;
35 bool operator!=(
const Iterator& other)
const;
41 Eigen::Vector3i coord;
42 Eigen::Vector3d t_max;
49 VoxelRaycaster(
const Eigen::Vector4d& start,
const Eigen::Vector4d&
end,
double voxel_size);
65 Eigen::Vector3i start_coord;
66 Eigen::Vector3i end_coord;
67 Eigen::Vector3d t_delta;
68 Eigen::Vector3d t_max_init;
Iterator for traversing voxel coordinates along the ray.
Definition voxel_raycaster.hpp:23
Raycasting-based voxel traversal algorithm. The iterator traverses voxel coordinates intersected by t...
Definition voxel_raycaster.hpp:20
const Eigen::Vector3i & start_voxel() const
Get the start voxel coordinate.
Iterator end() const
Get the end iterator. (end() == end_coord)
VoxelRaycaster(const Eigen::Vector4d &start, const Eigen::Vector4d &end, double voxel_size)
Constructor.
Iterator begin() const
Get the begin iterator. (begin() == start_coord)
const Eigen::Vector3i & end_voxel() const
Get the end voxel coordinate.