Is this not supported for box type?

NOT_IMPLEMENTED_FOR_THIS_TYPES


Thanks for having a look,

Mark




typedef boost::geometry::model::d2::point_xy<int16_t, boost::geometry::cs::cartesian> FrameCoord_t;
typedef boost::geometry::model::box<FrameCoord_t> FrameBox_t;

FrameBox_t box1;
FrameBox_t box2;
boost::geometry::assign_values(box1, 10, 10, 20, 20);
boost::geometry::assign_values(box2, 0, 0, 100, 100);

bool is_within = boost::geometry::within(box1, box2);





15>ClCompile:
15>  Main.cpp
15>G:\work\software-external\libs\Boost\boost_1_51_0\boost/geometry/strategies/within.hpp(57): error C2664: 'boost::mpl::assertion_failed' : cannot convert parameter 1 from 'boost::mpl::failed ************(__thiscall boost::geometry::strategy::within::services::default_strategy<TagContained,TagContaining,CastedTagContained,CastedTagContaining,CsTagContained,CsTagContaining,GeometryContained,GeometryContaining>::NOT_IMPLEMENTED_FOR_THIS_TYPES::* ***********)(boost::mpl::assert_::types<T1,T2>)' to 'boost::mpl::assert<false>::type'
15>          with
15>          [
15>              TagContained=boost::geometry::box_tag,
15>              TagContaining=boost::geometry::box_tag,
15>              CastedTagContained=boost::geometry::box_tag,
15>              CastedTagContaining=boost::geometry::areal_tag,
15>              CsTagContained=boost::geometry::cartesian_tag,
15>              CsTagContaining=boost::geometry::cartesian_tag,
15>              GeometryContained=Media::DetectionBox_t,
15>              GeometryContaining=Media::DetectionBox_t,
15>              T1=Media::DetectionBox_t,
15>              T2=Media::DetectionBox_t
15>          ]
15>          No constructor could take the source type, or constructor overload resolution was ambiguous
15>          G:\work\software-external\libs\Boost\boost_1_51_0\boost/geometry/algorithms/within.hpp(285) : see reference to class template instantiation 'boost::geometry::strategy::within::services::default_strategy<TagContained,TagContaining,CastedTagContained,CastedTagContaining,CsTagContained,CsTagContaining,GeometryContained,GeometryContaining>' being compiled
15>          with
15>          [
15>              TagContained=boost::geometry::box_tag,
15>              TagContaining=boost::geometry::box_tag,
15>              CastedTagContained=boost::geometry::box_tag,
15>              CastedTagContaining=boost::geometry::areal_tag,
15>              CsTagContained=boost::geometry::cartesian_tag,
15>              CsTagContaining=boost::geometry::cartesian_tag,
15>              GeometryContained=Media::DetectionBox_t,
15>              GeometryContaining=Media::DetectionBox_t
15>          ]
15>          FrameProcessorVideoIq.cpp(357) : see reference to function template instantiation 'bool boost::geometry::within<Media::DetectionBox_t,Media::DetectionBox_t>(const Geometry1 &,const Geometry2 &)' being compiled
15>          with
15>          [
15>              Geometry1=Media::DetectionBox_t,
15>              Geometry2=Media::DetectionBox_t
15>          ]
15>G:\work\software-external\libs\Boost\boost_1_51_0\boost/geometry/strategies/within.hpp(57): error C2866: 'boost::geometry::strategy::within::services::default_strategy<TagContained,TagContaining,CastedTagContained,CastedTagContaining,CsTagContained,CsTagContaining,GeometryContained,GeometryContaining>::mpl_assertion_in_line_40' : a const static data member of a managed type must be initialized at the point of declaration
15>          with
15>          [
15>              TagContained=boost::geometry::box_tag,
15>              TagContaining=boost::geometry::box_tag,
15>              CastedTagContained=boost::geometry::box_tag,
15>              CastedTagContaining=boost::geometry::areal_tag,
15>              CsTagContained=boost::geometry::cartesian_tag,
15>              CsTagContaining=boost::geometry::cartesian_tag,
15>              GeometryContained=Media::DetectionBox_t,
15>              GeometryContaining=Media::DetectionBox_t
15>          ]
15>G:\work\software-external\libs\Boost\boost_1_51_0\boost/geometry/algorithms/within.hpp(285): error C2039: 'type' : is not a member of 'boost::geometry::strategy::within::services::default_strategy<TagContained,TagContaining,CastedTagContained,CastedTagContaining,CsTagContained,CsTagContaining,GeometryContained,GeometryContaining>'
15>          with
15>          [
15>              TagContained=boost::geometry::box_tag,
15>              TagContaining=boost::geometry::box_tag,
15>              CastedTagContained=boost::geometry::box_tag,
15>              CastedTagContaining=boost::geometry::areal_tag,
15>              CsTagContained=boost::geometry::cartesian_tag,
15>              CsTagContaining=boost::geometry::cartesian_tag,
15>              GeometryContained=Media::DetectionBox_t,
15>              GeometryContaining=Media::DetectionBox_t
15>          ]
15>G:\work\software-external\libs\Boost\boost_1_51_0\boost/geometry/algorithms/within.hpp(291): error C2955: 'boost::type' : use of class template requires template argument list
15>          G:\work\software-external\libs\Boost\boost_1_51_0\boost/type.hpp(14) : see declaration of 'boost::type'
15>
15>Build FAILED.
15>