Published pointcloud points order
The pointcloud is measured, using simulated velodyne sensors, by scanning the environment horizontally and then vertically. It's somehow like using a sick lidar at multiple pitch angles. The real velodyne sensor scans the environment by using vertical layers (16,32) all around its vertical axis with known angular resolution. It is better for the simulated velodyne to publish the points in the velodyne pointcloud using vertical layers in the same way than the real velodyne sensor. It is more realistic. Basically the improvement implies to change a couple of code lines:
GazeboRosVelodyneLaser.cpp should read
void GazeboRosVelodyneLaser::OnScan(ConstLaserScanStampedPtr& _msg) .... for (i = 0; i < rangeCount; i++) { for (j = 0; j < verticalRangeCount; j++) { ...
Since I don't have rights to push modifications, could you please fix this on the master branch.
Comments (2)
-
-
- changed status to resolved
Thanks for pointing that out. It should be fixed now. Pull requests for code changes are always welcome.
- Log in to comment
Changed iteration order to more closely represent the live velodyne driver
Addresses issue
#12→ <<cset c8fffd5698df>>