initial
This commit is contained in:
73
docs/custom_path/install_custom_path.sh
Normal file
73
docs/custom_path/install_custom_path.sh
Normal file
@@ -0,0 +1,73 @@
|
||||
#!/bin/bash
|
||||
# 安装自定义路径功能脚本
|
||||
|
||||
echo "=========================================="
|
||||
echo " AGV 自定义路径功能安装脚本"
|
||||
echo "=========================================="
|
||||
|
||||
# 1. 检查必要文件
|
||||
if [ ! -f "src/path_curve_custom.cpp" ]; then
|
||||
echo "错误: 找不到 src/path_curve_custom.cpp"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 2. 备份原始头文件
|
||||
echo "备份原始头文件..."
|
||||
cp include/path_curve.h include/path_curve.h.backup
|
||||
|
||||
# 3. 修改头文件
|
||||
echo "更新头文件..."
|
||||
|
||||
# 添加 string 头文件
|
||||
sed -i '5 a #include <string>' include/path_curve.h
|
||||
|
||||
# 在 setPathPoints 方法后添加新方法声明
|
||||
sed -i '/void setPathPoints/a \
|
||||
\
|
||||
/**\
|
||||
* @brief 从CSV文件加载路径点\
|
||||
* @param filename CSV文件路径\
|
||||
* @param has_header 是否包含表头(默认true)\
|
||||
* @return 是否加载成功\
|
||||
*/\
|
||||
bool loadFromCSV(const std::string& filename, bool has_header = true);\
|
||||
\
|
||||
/**\
|
||||
* @brief 将路径点保存到CSV文件\
|
||||
* @param filename CSV文件路径\
|
||||
* @return 是否保存成功\
|
||||
*/\
|
||||
bool saveToCSV(const std::string& filename) const;\
|
||||
\
|
||||
/**\
|
||||
* @brief 使用样条插值生成路径\
|
||||
* @param key_points 关键路径点\
|
||||
* @param num_points 生成的路径点总数\
|
||||
* @param tension 张力参数\
|
||||
*/\
|
||||
void generateSpline(const std::vector<PathPoint>& key_points,\
|
||||
int num_points = 100,\
|
||||
double tension = 0.5);' include/path_curve.h
|
||||
|
||||
# 4. 修改 CMakeLists.txt
|
||||
echo "更新 CMakeLists.txt..."
|
||||
cp CMakeLists.txt CMakeLists.txt.backup
|
||||
|
||||
sed -i '/src\/path_curve.cpp/a \ src/path_curve_custom.cpp' CMakeLists.txt
|
||||
|
||||
# 5. 重新编译
|
||||
echo "重新编译项目..."
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake ..
|
||||
cmake --build .
|
||||
|
||||
echo "=========================================="
|
||||
echo " 安装完成!"
|
||||
echo "=========================================="
|
||||
echo "备份文件:"
|
||||
echo " - include/path_curve.h.backup"
|
||||
echo " - CMakeLists.txt.backup"
|
||||
echo ""
|
||||
echo "使用指南: CUSTOM_PATH_GUIDE.md"
|
||||
echo "示例文件: examples/custom_path.csv"
|
||||
Reference in New Issue
Block a user