Correct issue with function overload ambiguity when passing function pointer to expression constructor on windows
parent
58fa326f85
commit
cc4cdc93a3
|
@ -20,7 +20,11 @@ typedef Expression<Rot2> Rot2_;
|
||||||
typedef Expression<Pose2> Pose2_;
|
typedef Expression<Pose2> Pose2_;
|
||||||
|
|
||||||
Point2_ transform_to(const Pose2_& x, const Point2_& p) {
|
Point2_ transform_to(const Pose2_& x, const Point2_& p) {
|
||||||
return Point2_(x, &Pose2::transform_to, p);
|
Point2(Pose2::*transform)(const Point2& p,
|
||||||
|
boost::optional<Matrix23&> H1,
|
||||||
|
boost::optional<Matrix2&> H2) const = &Pose2::transform_to;
|
||||||
|
|
||||||
|
return Point2_(x, transform, p);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3D Geometry
|
// 3D Geometry
|
||||||
|
@ -30,7 +34,12 @@ typedef Expression<Rot3> Rot3_;
|
||||||
typedef Expression<Pose3> Pose3_;
|
typedef Expression<Pose3> Pose3_;
|
||||||
|
|
||||||
Point3_ transform_to(const Pose3_& x, const Point3_& p) {
|
Point3_ transform_to(const Pose3_& x, const Point3_& p) {
|
||||||
return Point3_(x, &Pose3::transform_to, p);
|
|
||||||
|
Point3(Pose3::*transform)(const Point3& p,
|
||||||
|
boost::optional<Matrix36&> Dpose,
|
||||||
|
boost::optional<Matrix3&> Dpoint) const = &Pose3::transform_to;
|
||||||
|
|
||||||
|
return Point3_(x, transform, p);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Projection
|
// Projection
|
||||||
|
|
Loading…
Reference in New Issue