This document introduces the demo project of "rotation_action_demo", including how to rotate clockwise, anticlockwise and turn to a particular angle. |
Content
Sample Code:
Higher version of Visual Studio will cause errors. sometime you will need to upgrade SP1 package to make your VS compatable with .Net Framework. |
(Either one of following)
Right click on "rotation_action_demo", then " Properties",configure "include" and "lib" directories to the corresponding folder path of Slamware SDK.
It's not necessary to copy files to the project directory, user will only need to configure the path of SDK. |
The robot will turn anticlockwise, then clockwise, and finally turn to the position where the value of yaw is pi.
SlamwareCorePlatform sdp = SlamwareCorePlatform::connect(argv[1], 1445); std::cout <<"SDK Version: " << sdp.getSDKVersion() << std::endl; std::cout <<"SDP Version: " << sdp.getSDPVersion() << std::endl; rpos::actions::MoveAction action = sdp.getCurrentAction(); if (action) action.cancel(); //anticlockwise rotation rpos::core::Rotation rotation(pi*2, 0, 0); action = sdp.rotate(rotation); action.waitUntilDone(); std::cout << "Action Status: " << action.getStatus() << std::endl; //clockwise rotation rotation.yaw() = pi * (-2); action = sdp.rotate(rotation); action.waitUntilDone(); std::cout << "Action Status: " << action.getStatus() << std::endl; //rotate to a certain orientation rpos::core::Rotation orientation(pi, 0, 0); action = sdp.rotateTo(orientation); action.waitUntilDone(); std::cout << "Action Status: " << action.getStatus() << std::endl; |