#pragma once #include #include #include #include #include #include #include #include namespace bg = boost::geometry; namespace bu = boost::units; namespace snake { typedef bg::model::point BoostPoint; //typedef std::vector BoostPointList; typedef bg::model::polygon BoostPolygon; typedef bg::model::linestring BoostLineString; typedef std::vector> Int64Matrix; typedef bg::model::box BoostBox; typedef bu::quantity Length; typedef bu::quantity Area; typedef bu::quantity Angle; } namespace boost{ namespace geometry{ namespace model { bool operator==(snake::BoostPoint p1, snake::BoostPoint p2){ return (p1.get<0>() == p2.get<0>()) && (p1.get<1>() == p2.get<1>()); } bool operator!=(snake::BoostPoint p1, snake::BoostPoint p2){ return !(p1 == p2); } } // namespace model } // namespace geometry } // namespace boost