Pose Recorder
This service receives
PoseData from another service and prints the current Pose on request (pressing a button) to the command line. It may be used to gather a list of point locations for 3D object calibration with a callibrated pointing device.
It could be extended to automaticaly print the Pose every some seconds, potentially providing some kind of accoustic feedback.
It also can be used as a starting point for a lot of other services that receive some kind of events.
Needs & Abilities
The service does not have an XML
ServiceDescription. Instead it describes and registers its needs and abilities in the main part of the program code.
Interaction with other Services
- The service receives PoseData from another service and prints the current Pose on request.
More Documentation
How-To
This section describes how to set up and try out the Pose Recorder Service.
Installation
No special packages are required. If you want to run the python script from inside the source directory, you will need to
add the DWARF python libraries (
dwarf/bin
) to your
PYTHONPATH
.
Testing
Start some service that sends out
PoseData. Adjust the
PoseData need in the
ServiceDescription part of the main program code (there is no XML service description for this service)
**************************************************************
** **
** PoseRecorder **
** by Martin Bauer **
** $Date: 2005/03/23 19:44:04 $ **
** **
** press enter to get the current pose. **
** you may type comments for each measurement as well. **
** **
**************************************************************
0.000000 0.000000 0.000000 this is all zero because no service is connected.
0.000000 0.000000 0.000000
1.069366 1.313827 0.193441 now we receive events :-)
1.069366 1.313827 0.193441
1.069366 1.313827 0.193441
1.069366 1.313827 0.193441 the object is not moving.
1.069366 1.313827 0.193441
...
Command Line Parameter
There are no command line parameter.
Known Bugs and Limitations
This service is not yet completely integrated into the configure/build system. This does not matter, though.
The predicate for the
PoseData need has to be adjusted for your special use. It would be useful to print the currently used predicate to the command line. It also would be useful to print the connected service to the command line, and not to allow requesting Pose as long as no other service is connected.
History