{"action":"created","comment":{"url":"https://api.github.com/repos/ros-planning/moveit/pulls/comments/228411575","pull_request_review_id":168678622,"id":228411575,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyODQxMTU3NQ==","diff_hunk":"@@ -215,6 +272,17 @@ void World::clearObjects()\n   objects_.clear();\n }\n \n+bool World::setNamedFramesOfObject(const std::string& id, const std::map<std::string, Eigen::Affine3d>& named_frames)","path":"moveit_core/collision_detection/src/world.cpp","position":75,"original_position":75,"commit_id":"5487c35fe67e499751422fe1deef7aca749a2118","original_commit_id":"5487c35fe67e499751422fe1deef7aca749a2118","user":{"login":"felixvd","id":4535737,"node_id":"MDQ6VXNlcjQ1MzU3Mzc=","avatar_url":"https://avatars0.githubusercontent.com/u/4535737?v=4","gravatar_id":"","url":"https://api.github.com/users/felixvd","html_url":"https://github.com/felixvd","followers_url":"https://api.github.com/users/felixvd/followers","following_url":"https://api.github.com/users/felixvd/following{/other_user}","gists_url":"https://api.github.com/users/felixvd/gists{/gist_id}","starred_url":"https://api.github.com/users/felixvd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/felixvd/subscriptions","organizations_url":"https://api.github.com/users/felixvd/orgs","repos_url":"https://api.github.com/users/felixvd/repos","events_url":"https://api.github.com/users/felixvd/events{/privacy}","received_events_url":"https://api.github.com/users/felixvd/received_events","type":"User","site_admin":false},"body":"I can imagine some use cases, but I don't think it's required for a first version. Do you have anything specific in mind?","created_at":"2018-10-26T05:50:34Z","updated_at":"2018-10-26T05:50:34Z","html_url":"https://github.com/ros-planning/moveit/pull/1060#discussion_r228411575","pull_request_url":"https://api.github.com/repos/ros-planning/moveit/pulls/1060","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/ros-planning/moveit/pulls/comments/228411575"},"html":{"href":"https://github.com/ros-planning/moveit/pull/1060#discussion_r228411575"},"pull_request":{"href":"https://api.github.com/repos/ros-planning/moveit/pulls/1060"}},"in_reply_to_id":224997401},"pull_request":{"url":"https://api.github.com/repos/ros-planning/moveit/pulls/1060","id":214506218,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE0NTA2MjE4","html_url":"https://github.com/ros-planning/moveit/pull/1060","diff_url":"https://github.com/ros-planning/moveit/pull/1060.diff","patch_url":"https://github.com/ros-planning/moveit/pull/1060.patch","issue_url":"https://api.github.com/repos/ros-planning/moveit/issues/1060","number":1060,"state":"open","locked":false,"title":"Add named frames to CollisionObjects","user":{"login":"felixvd","id":4535737,"node_id":"MDQ6VXNlcjQ1MzU3Mzc=","avatar_url":"https://avatars0.githubusercontent.com/u/4535737?v=4","gravatar_id":"","url":"https://api.github.com/users/felixvd","html_url":"https://github.com/felixvd","followers_url":"https://api.github.com/users/felixvd/followers","following_url":"https://api.github.com/users/felixvd/following{/other_user}","gists_url":"https://api.github.com/users/felixvd/gists{/gist_id}","starred_url":"https://api.github.com/users/felixvd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/felixvd/subscriptions","organizations_url":"https://api.github.com/users/felixvd/orgs","repos_url":"https://api.github.com/users/felixvd/repos","events_url":"https://api.github.com/users/felixvd/events{/privacy}","received_events_url":"https://api.github.com/users/felixvd/received_events","type":"User","site_admin":false},"body":"### Description\r\n\r\nThis PR implements #1041. It adds named frames to collision objects so that they can be used for planning, both as targets in the planning scene, as well as end effector links when the objects are attached to the robot. This allows writing commands like \"Move the tip of the screwdriver to the head of the screw\" or \"Move the spout of the teapot to the top of the mug\". It also opens up avenues for using in-hand pose estimation to update the pose of an object in the gripper (e.g. grasp a tool, confirm the object pose with a camera, then use the updated tool tip pose on the object).\r\n\r\nCurrently, the named frames are displayed in Rviz in the Scene Objects tab and as red dots on the `AttachedBodies`. I also made a header file that converts URDF files to `collision_object` messages in C++, but it's not part of this PR. I didn't test it a lot yet, so there are surely some bugs, but it should be good enough to try out.\r\n\r\n[Here](https://gist.github.com/felixvd/9b79be2bd10cc615e980f389bab2096d) is a gist that you can use to create the following example images. These run for a UR5, but you have to adjust everything to your system and fill in some variables. I didn't have time to prepare a whole test package.\r\n\r\n![2018-9-11-ps-extension](https://user-images.githubusercontent.com/4535737/45336934-a9af8200-b5c0-11e8-85be-31d180b2a07c.png)\r\n\r\nThe result of \"Move the cylinder tip to the bottom of the box\":\r\n\r\n![2018-09-11-ps-extension-2](https://user-images.githubusercontent.com/4535737/45336938-ac11dc00-b5c0-11e8-8e5d-71c56015c264.png)\r\n\r\nOpen ToDos:\r\n\r\n* Test the path and trajectory constraints (I only checked that it works on goal constraints)\r\n* Integrate the frames' visualization into Rviz (should they be published to TF? Should there be a checkbox?)\r\n* Implement MOVE for CollisionObjects and AttachedBodies (would be great for updating the object pose in the gripper)\r\n* Check effect on performance\r\n\r\n### Checklist\r\n- [x] **Required by CI**: Code is auto formatted using [clang-format](http://moveit.ros.org/documentation/contributing/code)\r\n- [ ] Extended the tutorials / documentation, if necessary [reference](http://moveit.ros.org/documentation/contributing/)\r\n- [x] Include a screenshot if changing a GUI\r\n- [ ] Created tests, which fail without this PR [reference](http://docs.ros.org/kinetic/api/moveit_tutorials/html/doc/tests.html)\r\n- [ ] Decide if this should be cherry-picked to other current ROS branches\r\n- [ ] While waiting for someone to review your request, please consider reviewing [another open pull request](https://github.com/ros-planning/moveit/pulls) to support the maintainers\r\n\r\n[//]: # \"You can expect a response from a maintainer within 7 days. If you haven't heard anything by then, feel free to ping the thread. Thank you!\"\r\n","created_at":"2018-09-11T04:04:02Z","updated_at":"2018-10-26T05:50:34Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f1683ceea29fb2f9d6e026be40d49df5c6d422f0","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/ros-planning/moveit/pulls/1060/commits","review_comments_url":"https://api.github.com/repos/ros-planning/moveit/pulls/1060/comments","review_comment_url":"https://api.github.com/repos/ros-planning/moveit/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ros-planning/moveit/issues/1060/comments","statuses_url":"https://api.github.com/repos/ros-planning/moveit/statuses/5487c35fe67e499751422fe1deef7aca749a2118","head":{"label":"felixvd:extend-planning-scene","ref":"extend-planning-scene","sha":"5487c35fe67e499751422fe1deef7aca749a2118","user":{"login":"felixvd","id":4535737,"node_id":"MDQ6VXNlcjQ1MzU3Mzc=","avatar_url":"https://avatars0.githubusercontent.com/u/4535737?v=4","gravatar_id":"","url":"https://api.github.com/users/felixvd","html_url":"https://github.com/felixvd","followers_url":"https://api.github.com/users/felixvd/followers","following_url":"https://api.github.com/users/felixvd/following{/other_user}","gists_url":"https://api.github.com/users/felixvd/gists{/gist_id}","starred_url":"https://api.github.com/users/felixvd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/felixvd/subscriptions","organizations_url":"https://api.github.com/users/felixvd/orgs","repos_url":"https://api.github.com/users/felixvd/repos","events_url":"https://api.github.com/users/felixvd/events{/privacy}","received_events_url":"https://api.github.com/users/felixvd/received_events","type":"User","site_admin":false},"repo":{"id":142812487,"node_id":"MDEwOlJlcG9zaXRvcnkxNDI4MTI0ODc=","name":"moveit","full_name":"felixvd/moveit","private":false,"owner":{"login":"felixvd","id":4535737,"node_id":"MDQ6VXNlcjQ1MzU3Mzc=","avatar_url":"https://avatars0.githubusercontent.com/u/4535737?v=4","gravatar_id":"","url":"https://api.github.com/users/felixvd","html_url":"https://github.com/felixvd","followers_url":"https://api.github.com/users/felixvd/followers","following_url":"https://api.github.com/users/felixvd/following{/other_user}","gists_url":"https://api.github.com/users/felixvd/gists{/gist_id}","starred_url":"https://api.github.com/users/felixvd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/felixvd/subscriptions","organizations_url":"https://api.github.com/users/felixvd/orgs","repos_url":"https://api.github.com/users/felixvd/repos","events_url":"https://api.github.com/users/felixvd/events{/privacy}","received_events_url":"https://api.github.com/users/felixvd/received_events","type":"User","site_admin":false},"html_url":"https://github.com/felixvd/moveit","description":"The MoveIt! motion planning framework","fork":true,"url":"https://api.github.com/repos/felixvd/moveit","forks_url":"https://api.github.com/repos/felixvd/moveit/forks","keys_url":"https://api.github.com/repos/felixvd/moveit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/felixvd/moveit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/felixvd/moveit/teams","hooks_url":"https://api.github.com/repos/felixvd/moveit/hooks","issue_events_url":"https://api.github.com/repos/felixvd/moveit/issues/events{/number}","events_url":"https://api.github.com/repos/felixvd/moveit/events","assignees_url":"https://api.github.com/repos/felixvd/moveit/assignees{/user}","branches_url":"https://api.github.com/repos/felixvd/moveit/branches{/branch}","tags_url":"https://api.github.com/repos/felixvd/moveit/tags","blobs_url":"https://api.github.com/repos/felixvd/moveit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/felixvd/moveit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/felixvd/moveit/git/refs{/sha}","trees_url":"https://api.github.com/repos/felixvd/moveit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/felixvd/moveit/statuses/{sha}","languages_url":"https://api.github.com/repos/felixvd/moveit/languages","stargazers_url":"https://api.github.com/repos/felixvd/moveit/stargazers","contributors_url":"https://api.github.com/repos/felixvd/moveit/contributors","subscribers_url":"https://api.github.com/repos/felixvd/moveit/subscribers","subscription_url":"https://api.github.com/repos/felixvd/moveit/subscription","commits_url":"https://api.github.com/repos/felixvd/moveit/commits{/sha}","git_commits_url":"https://api.github.com/repos/felixvd/moveit/git/commits{/sha}","comments_url":"https://api.github.com/repos/felixvd/moveit/comments{/number}","issue_comment_url":"https://api.github.com/repos/felixvd/moveit/issues/comments{/number}","contents_url":"https://api.github.com/repos/felixvd/moveit/contents/{+path}","compare_url":"https://api.github.com/repos/felixvd/moveit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/felixvd/moveit/merges","archive_url":"https://api.github.com/repos/felixvd/moveit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/felixvd/moveit/downloads","issues_url":"https://api.github.com/repos/felixvd/moveit/issues{/number}","pulls_url":"https://api.github.com/repos/felixvd/moveit/pulls{/number}","milestones_url":"https://api.github.com/repos/felixvd/moveit/milestones{/number}","notifications_url":"https://api.github.com/repos/felixvd/moveit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/felixvd/moveit/labels{/name}","releases_url":"https://api.github.com/repos/felixvd/moveit/releases{/id}","deployments_url":"https://api.github.com/repos/felixvd/moveit/deployments","created_at":"2018-07-30T02:02:22Z","updated_at":"2018-07-30T02:02:26Z","pushed_at":"2018-09-11T04:40:50Z","git_url":"git://github.com/felixvd/moveit.git","ssh_url":"git@github.com:felixvd/moveit.git","clone_url":"https://github.com/felixvd/moveit.git","svn_url":"https://github.com/felixvd/moveit","homepage":"http://moveit.ros.org/","size":55380,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"bsd-3-clause","name":"BSD 3-Clause \"New\" or \"Revised\" License","spdx_id":"BSD-3-Clause","url":"https://api.github.com/licenses/bsd-3-clause","node_id":"MDc6TGljZW5zZTU="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"kinetic-devel"}},"base":{"label":"ros-planning:kinetic-devel","ref":"kinetic-devel","sha":"98616412846b6bb100df7d4fd159815e1a2633a0","user":{"login":"ros-planning","id":2328631,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIzMjg2MzE=","avatar_url":"https://avatars2.githubusercontent.com/u/2328631?v=4","gravatar_id":"","url":"https://api.github.com/users/ros-planning","html_url":"https://github.com/ros-planning","followers_url":"https://api.github.com/users/ros-planning/followers","following_url":"https://api.github.com/users/ros-planning/following{/other_user}","gists_url":"https://api.github.com/users/ros-planning/gists{/gist_id}","starred_url":"https://api.github.com/users/ros-planning/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ros-planning/subscriptions","organizations_url":"https://api.github.com/users/ros-planning/orgs","repos_url":"https://api.github.com/users/ros-planning/repos","events_url":"https://api.github.com/users/ros-planning/events{/privacy}","received_events_url":"https://api.github.com/users/ros-planning/received_events","type":"Organization","site_admin":false},"repo":{"id":64340188,"node_id":"MDEwOlJlcG9zaXRvcnk2NDM0MDE4OA==","name":"moveit","full_name":"ros-planning/moveit","private":false,"owner":{"login":"ros-planning","id":2328631,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIzMjg2MzE=","avatar_url":"https://avatars2.githubusercontent.com/u/2328631?v=4","gravatar_id":"","url":"https://api.github.com/users/ros-planning","html_url":"https://github.com/ros-planning","followers_url":"https://api.github.com/users/ros-planning/followers","following_url":"https://api.github.com/users/ros-planning/following{/other_user}","gists_url":"https://api.github.com/users/ros-planning/gists{/gist_id}","starred_url":"https://api.github.com/users/ros-planning/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ros-planning/subscriptions","organizations_url":"https://api.github.com/users/ros-planning/orgs","repos_url":"https://api.github.com/users/ros-planning/repos","events_url":"https://api.github.com/users/ros-planning/events{/privacy}","received_events_url":"https://api.github.com/users/ros-planning/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/ros-planning/moveit","description":":robot: The MoveIt! motion planning framework","fork":false,"url":"https://api.github.com/repos/ros-planning/moveit","forks_url":"https://api.github.com/repos/ros-planning/moveit/forks","keys_url":"https://api.github.com/repos/ros-planning/moveit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ros-planning/moveit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ros-planning/moveit/teams","hooks_url":"https://api.github.com/repos/ros-planning/moveit/hooks","issue_events_url":"https://api.github.com/repos/ros-planning/moveit/issues/events{/number}","events_url":"https://api.github.com/repos/ros-planning/moveit/events","assignees_url":"https://api.github.com/repos/ros-planning/moveit/assignees{/user}","branches_url":"https://api.github.com/repos/ros-planning/moveit/branches{/branch}","tags_url":"https://api.github.com/repos/ros-planning/moveit/tags","blobs_url":"https://api.github.com/repos/ros-planning/moveit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ros-planning/moveit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ros-planning/moveit/git/refs{/sha}","trees_url":"https://api.github.com/repos/ros-planning/moveit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ros-planning/moveit/statuses/{sha}","languages_url":"https://api.github.com/repos/ros-planning/moveit/languages","stargazers_url":"https://api.github.com/repos/ros-planning/moveit/stargazers","contributors_url":"https://api.github.com/repos/ros-planning/moveit/contributors","subscribers_url":"https://api.github.com/repos/ros-planning/moveit/subscribers","subscription_url":"https://api.github.com/repos/ros-planning/moveit/subscription","commits_url":"https://api.github.com/repos/ros-planning/moveit/commits{/sha}","git_commits_url":"https://api.github.com/repos/ros-planning/moveit/git/commits{/sha}","comments_url":"https://api.github.com/repos/ros-planning/moveit/comments{/number}","issue_comment_url":"https://api.github.com/repos/ros-planning/moveit/issues/comments{/number}","contents_url":"https://api.github.com/repos/ros-planning/moveit/contents/{+path}","compare_url":"https://api.github.com/repos/ros-planning/moveit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ros-planning/moveit/merges","archive_url":"https://api.github.com/repos/ros-planning/moveit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ros-planning/moveit/downloads","issues_url":"https://api.github.com/repos/ros-planning/moveit/issues{/number}","pulls_url":"https://api.github.com/repos/ros-planning/moveit/pulls{/number}","milestones_url":"https://api.github.com/repos/ros-planning/moveit/milestones{/number}","notifications_url":"https://api.github.com/repos/ros-planning/moveit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ros-planning/moveit/labels{/name}","releases_url":"https://api.github.com/repos/ros-planning/moveit/releases{/id}","deployments_url":"https://api.github.com/repos/ros-planning/moveit/deployments","created_at":"2016-07-27T20:38:09Z","updated_at":"2018-10-26T02:06:18Z","pushed_at":"2018-10-26T00:54:45Z","git_url":"git://github.com/ros-planning/moveit.git","ssh_url":"git@github.com:ros-planning/moveit.git","clone_url":"https://github.com/ros-planning/moveit.git","svn_url":"https://github.com/ros-planning/moveit","homepage":"http://moveit.ros.org/","size":55600,"stargazers_count":269,"watchers_count":269,"language":"C++","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":272,"mirror_url":null,"archived":false,"open_issues_count":264,"license":{"key":"bsd-3-clause","name":"BSD 3-Clause \"New\" or \"Revised\" License","spdx_id":"BSD-3-Clause","url":"https://api.github.com/licenses/bsd-3-clause","node_id":"MDc6TGljZW5zZTU="},"forks":272,"open_issues":264,"watchers":269,"default_branch":"melodic-devel"}},"_links":{"self":{"href":"https://api.github.com/repos/ros-planning/moveit/pulls/1060"},"html":{"href":"https://github.com/ros-planning/moveit/pull/1060"},"issue":{"href":"https://api.github.com/repos/ros-planning/moveit/issues/1060"},"comments":{"href":"https://api.github.com/repos/ros-planning/moveit/issues/1060/comments"},"review_comments":{"href":"https://api.github.com/repos/ros-planning/moveit/pulls/1060/comments"},"review_comment":{"href":"https://api.github.com/repos/ros-planning/moveit/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ros-planning/moveit/pulls/1060/commits"},"statuses":{"href":"https://api.github.com/repos/ros-planning/moveit/statuses/5487c35fe67e499751422fe1deef7aca749a2118"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"felixvd"}}