__host__ __device__ ProbabilisticVoxel ProbabilisticVoxel::reduce(const ProbabilisticVoxel voxel, const ProbabilisticVoxel other_voxel) { ProbabilisticVoxel res = voxel; res.updateOccupancy(other_voxel.getOccupancy()); return res; }
bool DefaultCollider::collide(const ProbabilisticVoxel& v1) const { return v1.getOccupancy() >= m_threshold1; }
__host__ __device__ bool DefaultCollider::collide(const BitVoxel<length>& v1, const ProbabilisticVoxel& v2) const { return v2.getOccupancy() >= m_threshold2 && !v1.bitVector().isZero(); }
bool SVCollider::collide(const ProbabilisticVoxel& v1, const ProbabilisticVoxel& v2) const { return v1.getOccupancy() >= m_threshold1 && v2.getOccupancy() > m_threshold2; }