26 #include <ArmarXCore/core/FramedPose.h>
37 setNumberParameters(1);
54 if (dataFields.size() != 1)
56 printf(
"Size of dataFields: %d\n", (
int)dataFields.size());
57 throw InvalidConditionException(
"Wrong number of datafields for condition equals ");
64 return (
sqrt(((
value.x - getParameter(0).getClass<Vector3>().
x) *
65 (
value.x - getParameter(0).getClass<Vector3>().
x)) +
66 ((
value.y - getParameter(0).getClass<Vector3>().y) *
67 (
value.y - getParameter(0).getClass<Vector3>().y)) +
68 ((
value.z - getParameter(0).getClass<Vector3>().
x) *
69 (
value.x - getParameter(0).getClass<Vector3>().z))) == 0);
72 return (
sqrt(((
value.x - getParameter(0).getClass<FramedPosition>().
x) *
73 (
value.x - getParameter(0).getClass<FramedPosition>().
x)) +
74 ((
value.y - getParameter(0).getClass<FramedPosition>().y) *
75 (
value.y - getParameter(0).getClass<FramedPosition>().y)) +
76 ((
value.z - getParameter(0).getClass<FramedPosition>().
x) *
77 (
value.x - getParameter(0).getClass<FramedPosition>().z))) == 0);
80 return (
sqrt(((
value.qw - getParameter(0).getClass<Quaternion>().qw) *
81 (
value.qw - getParameter(0).getClass<Quaternion>().qw)) +
82 ((
value.qx - getParameter(0).getClass<Quaternion>().qx) *
83 (
value.qx - getParameter(0).getClass<Quaternion>().qx)) +
84 ((
value.qy - getParameter(0).getClass<Quaternion>().qy) *
85 (
value.qy - getParameter(0).getClass<Quaternion>().qy)) +
86 ((
value.qz - getParameter(0).getClass<Quaternion>().qx) *
87 (
value.qx - getParameter(0).getClass<Quaternion>().qz))) == 0);
90 return (
sqrt(((
value.qw - getParameter(0).getClass<FramedOrientation>().qw) *
91 (
value.qw - getParameter(0).getClass<FramedOrientation>().qw)) +
92 ((
value.qx - getParameter(0).getClass<FramedOrientation>().qx) *
93 (
value.qx - getParameter(0).getClass<FramedOrientation>().qx)) +
94 ((
value.qy - getParameter(0).getClass<FramedOrientation>().qy) *
95 (
value.qy - getParameter(0).getClass<FramedOrientation>().qy)) +
96 ((
value.qz - getParameter(0).getClass<FramedOrientation>().qx) *
97 (
value.qx - getParameter(0).getClass<FramedOrientation>().qz))) == 0);
100 return (
sqrt(((
value.x - getParameter(0).getClass<Pose>().
x) *
101 (
value.x - getParameter(0).getClass<Pose>().
x)) +
102 ((
value.y - getParameter(0).getClass<Pose>().y) *
103 (
value.y - getParameter(0).getClass<Pose>().y)) +
104 ((
value.z - getParameter(0).getClass<Pose>().
x) *
105 (
value.x - getParameter(0).getClass<Pose>().z))) +
106 sqrt(((
value.qw - getParameter(0).getClass<Pose>().qw) *
107 (
value.qw - getParameter(0).getClass<Pose>().qw)) +
108 ((
value.qx - getParameter(0).getClass<Pose>().qx) *
109 (
value.qx - getParameter(0).getClass<Pose>().qx)) +
110 ((
value.qy - getParameter(0).getClass<Pose>().qy) *
111 (
value.qy - getParameter(0).getClass<Pose>().qy)) +
112 ((
value.qz - getParameter(0).getClass<Pose>().qx) *
113 (
value.qx - getParameter(0).getClass<Pose>().qz))) ==