Ubuntu下urdf模型转换成proto模型

由于 Ubuntu 24.04,直接使用 pip install 会报错

可以在项目文件夹中创建一个 Python 虚拟环境来安装:

复制代码
# 1. 创建虚拟环境 (名为 venv)
python3 -m venv venv

# 2. 激活虚拟环境
source venv/bin/activate

# 3. 在虚拟环境中安装
pip install urdf2webots

urdf2webots 通过 pip 安装后,并没有提供一个直接在终端敲的命令,它主要是一个供 Python 代码调用的"库"

解决方法:写一个Python 脚本来调用它

bash 复制代码
vim 脚本名.py

如下内容:

bash 复制代码
import os
from urdf2webots.importer import convertUrdfFile

# ================= 配置区域 =================
# 1. 输入: URDF 绝对路径,输入自己的存放的路径
input_urdf_path = "/home/yyyy/workspaces/duck_robot/virtual_robot/urdf/virtual_robot.urdf"

# 2. 输出: 目标文件夹
output_dir = "/home/yyyy/my_webots_project1/protos"

# 3. 输出文件名
output_filename = "virtual_robot.proto"

# 组合完整的输出路径
output_file_path = os.path.join(output_dir, output_filename)

if not os.path.exists(input_urdf_path):
    print(f"错误: 找不到输入文件!请检查路径:\n{input_urdf_path}")
    exit()

if not os.path.exists(output_dir):
    print(f"目录不存在,正在创建: {output_dir}")
    os.makedirs(output_dir, exist_ok=True)


try:
    # --- 调用 convertUrdfFile ---
    # 根据函数名推断,参数名应该是 input 和 output
    convertUrdfFile(input=input_urdf_path, output=output_file_path, normal=True, box_collision=False)

except TypeError as e:
    # 如果参数名还是不对,这里会捕获并尝试另一种极简调用方式
    print(f"\n参数名警告: {e}")
    print("尝试使用位置参数重新运行...")
    convertUrdfFile(input_urdf_path, output_file_path)
    print("\n再次尝试后转换成功!(使用了默认配置)")

except Exception as e:
    print(f"\n转换过程中发生错误: {e}")
相关推荐
红红谈说11 分钟前
浏览器自动化环境老是起不来?依赖治理与启动自检的一次复盘
运维·自动化·浏览器自动化·进程残留·环境依赖·启动自检·版本比较
程序猿老A14 分钟前
阿里云linux服务器安装mysql并实现远程访问
linux·服务器·阿里云
wuminyu19 分钟前
JVM虚拟线程的底层实现原理分析
java·linux·c语言·jvm·c++
M78佐菲27 分钟前
ARM学习笔记(9)
linux·arm开发·笔记·嵌入式硬件·学习
赵民勇29 分钟前
glib-compile-schemas命令详解
linux·运维
小小、码农42 分钟前
〖Linux文件系统〗:彻底打通文件 IO 全链路
linux·开发语言·数据结构·c++·系统
大侠归来1 小时前
cJSON 源码解析:parse_string 函数深入剖析
linux·网络·算法
小小、码农1 小时前
〖Linux进程间通信〗IPC全家桶:匿名管道、FIFO、共享内存、消息队列与信号量一篇打通
linux·运维·服务器
阳光九叶草LXGZXJ1 小时前
达梦数据库-学习-67-SSL加密认证
linux·运维·数据库·sql·学习·ssl
掉进电商坑三年没爬出来的东叔1 小时前
2026最新:青龙面板搭建全自动薅羊毛脚本,云服务器24小时挂机教程
运维·服务器·pygame