ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
Short answer: You are right.
Longer answer: As you said gmapping implements SLAM and thus contains localization. AMCL only implements localization and thus needs a map from somewhere.
There reason of the use that you have seen is that to actually create the map without teleop one would need a node like explore, so unless that's part of the task, just building the map by hand and only using localization afterwards is fine. Also localization should be more stable.