18 #include <unordered_map>
113 return os <<
"[" << P.
x <<
", " << P.
y <<
", " << P.
z <<
"]";
117 return A.
x == B.
x && A.
y == B.
y && A.
z == B.
z;
124 std::vector<PointXYZ>
pts;
147 template <
class BBOX>
float operator[](int i) const
PointXYZ & operator-=(const PointXYZ &P)
PointXYZ(float x0, float y0, float z0)
float dot(const PointXYZ P) const
PointXYZ cross(const PointXYZ P) const
PointXYZ & operator*=(const float &a)
PointXYZ & operator+=(const PointXYZ &P)
static PointXYZ floor(const PointXYZ P)
PointXYZ min_point(std::vector< PointXYZ > points)
bool operator==(const PointXYZ A, const PointXYZ B)
std::ostream & operator<<(std::ostream &os, const PointXYZ P)
PointXYZ operator-(const PointXYZ A, const PointXYZ B)
PointXYZ operator*(const PointXYZ P, const float a)
PointXYZ operator+(const PointXYZ A, const PointXYZ B)
PointXYZ max_point(std::vector< PointXYZ > points)
MiniVec< float, N > floor(const MiniVec< float, N > &a)
Generic file read and write utility for python interface.
bool kdtree_get_bbox(BBOX &) const
size_t kdtree_get_point_count() const
std::vector< PointXYZ > pts
float kdtree_get_pt(const size_t idx, const size_t dim) const