geomety::within not compiling for model::box
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
Hi Mark, Mark Meijer wrote:
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
FrameCoord_t; typedef boost::geometry::model::box 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);
Is this the code which is causing troubles? In the error messages Media::DetectionBox_t is mentioned instead of FrameBox_t. The above code compiles with Boost.1.51 (I assume you're using this version). Could you prepare some minimal not compiling example? With #includes and everything. Btw, which version of VS are you using? Regards, Adam
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
::NOT_IMPLEMENTED_FOR_THIS_TYPES::* ***********)(boost::mpl::assert_::types )' 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 ' 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::withinMedia::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 ::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 ' 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> _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
participants (2)
-
Adam Wulkiewicz
-
mark meijer