QString FileSystemUtils::buildCommand()
{
// 获取可执行文件的目录
QString executablePath = QCoreApplication::applicationDirPath();
// 构建 .ini 文件的相对路径
QString iniFilePath = executablePath + "/../../share/" + "pkg_simulator_main_ui/" + "simulation_platform.ini";
QSettings settings(iniFilePath, QSettings::IniFormat);
// 检查文件是否存在
QFile file(iniFilePath);
if (!file.exists()) {
std::cerr << "INI file does not exist: " << file.fileName().toStdString() << std::endl;
return "";
}
settings.beginGroup("Project");
QString projectPath = settings.value("act_project_path", "").toString();
settings.endGroup();
std::cout << "projectPath from setting.value" << projectPath.toStdString() << std::endl;
QString pythonNodeCommand = QString("source %1install/setup.bash;/opt/ros/foxy/bin/ros2 launch %2launch_act.py")
.arg(projectPath)
.arg(projectPath);
std::cout << "pythonNodeCommand:" << pythonNodeCommand.toStdString() << std::endl;
return pythonNodeCommand;
}