01111         res.[mass](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#abe7ecae2d26767aa83a516ed43f320be) = body->GetMass().GetAsDouble();
    01112 
    01113         gazebo::Vector3 principalI = body->GetMass().GetPrincipalMoments();
    01114         gazebo::Vector3 productI = body->GetMass().GetProductsofInertia();
    01115         res.[ixx](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#a693e256ee64465731f334f9586189835) = principalI.x;
    01116         res.[iyy](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#a8c09a50b176d466c122750c1a1f6c534) = principalI.y;
    01117         res.[izz](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#aec9283fb378580adf59f415f71567130) = principalI.z;
    01118         res.[ixy](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#a53b2ac8712e9f23ef85d931bbec6e1db) = productI.x;
    01119         res.[ixz](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#a9f7f4b49278f39123fff78ba32cd553a) = productI.y;
    01120         res.[iyz](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#adedb524e8ecd8bad50e8ee44e696e65f) = productI.z;
    01121 
    01122         gazebo::Vector3 com = body->GetMass().GetCoG();
    01123         res.[com](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#afcb11f89b56db057dfde28788215c405).[position](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Pose__.html#a27067d1772d85a856b0e4ed4690a80b4).[x](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Point__.html#acd9420e6916084b2a9c09019bfda1708) = com.x;
    01124         res.[com](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#afcb11f89b56db057dfde28788215c405).[position](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Pose__.html#a27067d1772d85a856b0e4ed4690a80b4).[y](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Point__.html#a46a84ff5a3e5817ab5693abda66fccb0) = com.y;
    01125         res.[com](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#afcb11f89b56db057dfde28788215c405).[position](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Pose__.html#a27067d1772d85a856b0e4ed4690a80b4).[z](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Point__.html#a061f0093e927a95998f35ceceb5cebda) = com.z;
    01126         res.[com](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#afcb11f89b56db057dfde28788215c405).[orientation](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Pose__.html#af8c1d34a44a7628ea9c3e571339f5a28).[x](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Quaternion__.html#a11f3b4e2df587ce516fd2a8140c1c7c5) = 0; // @todo: gazebo do not support rotated inertia yet
    01127         res.[com](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#afcb11f89b56db057dfde28788215c405).[orientation](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Pose__.html#af8c1d34a44a7628ea9c3e571339f5a28).[y](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Quaternion__.html#a601c978178311ce3a618afb38c0b6b98) = 0;
    01128         res.[com](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#afcb11f89b56db057dfde28788215c405).[orientation](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Pose__.html#af8c1d34a44a7628ea9c3e571339f5a28).[z](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Quaternion__.html#ae2caceb9fc4b2fd01acd8419aa7ebc2e) = 0;
    01129         res.[com](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#afcb11f89b56db057dfde28788215c405).[orientation](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Pose__.html#af8c1d34a44a7628ea9c3e571339f5a28).[w](../../../api/geometry_msgs/html/structgeometry__msgs_1_1Quaternion__.html#a440791d268a65607ecbac21e0ed153cf) = 1;
    01130 
    01131         res.[success](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#a84ce8f4df675b6924cfa52a366663e5f) = true;
    01132         res.[status_message](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkPropertiesResponse__.html#a70abfa0b58777c634a35301a549dcc0e) = "GetLinkProperties: got properties";
    01133         return true;
    01134       }
    01135       return true;
    01136     }
    01137 
    [01140](classGazeboROSNode.html#af0eae1e0c329412d822c8c72e9f60b3e)     bool [getLinkState](classGazeboROSNode.html#af0eae1e0c329412d822c8c72e9f60b3e)([gazebo_msgs::GetLinkState::Request](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkStateRequest__.html) &req,[gazebo_msgs::GetLinkState::Response](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkStateResponse__.html) &res)
    01141     {
    01142       gazebo::Body* body = dynamic_cast<gazebo::Body*>(gazebo::World::Instance()->GetEntityByName(req.[link_name](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkStateRequest__.html#a2c698b3773b198139f234c5c0a3d9dbb)));
    01143       gazebo::Body* frame = dynamic_cast<gazebo::Body*>(gazebo::World::Instance()->GetEntityByName(req.[reference_frame](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkStateRequest__.html#a83af84cb417fc8e9297c12f514a2be53)));
    01144       if (body == NULL)
    01145       {
    01146         res.[success](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkStateResponse__.html#ab078790cbd3b85968631041914f263eb) = false;
    01147         res.[status_message](../../gazebo_msgs/html/structgazebo__msgs_1_1GetLinkStateResponse__.html#ae6630d81e448f045256efffe68e5b7bd) = "GetLinkState: link not found, did you forget to scope the link by model name?";
    01148         return false;
    01149       }
    01150 
    01151       // get body pose
    01152       gazebo::Pose3d body_pose = body->GetWorldPose();