M3 CMAKE项目发生器

m3project-creator的Python项目详细描述


M3 CMAKE项目创建者
==============================

此脚本生成一个cmake项目,该项目包含一个简单的sin控制器来控制meka robot。

下载
```猛击
sudo-e pip安装m3project creator
```
升级

```猛击
sudo-e pip install m3project creator--升级
```

运行脚本
启动图形用户界面:
```猛击
m3create_包
```
或控制台版本:
```猛击
m创建包-h
```
示例:
```猛击
m3create_pkg m3awesome_project sincontrollers myawesomecontroller项目
```
新功能:

*基于模板的生成器(请参见模板文件夹)
*控制台接口
*在gui上:在生成文件之前预览它们(在树上双击它们)

生成的文件

**mycontroller.cpp**:包含组件类(继承自m3component类)的源文件。
**mycontroller.h**:关联的头文件。
**factory_proxy.cpp**:此文件由m3系统用于实例化组件。
*(可选)**mycontroller.proto**:可用于与控制器通信的protobuf文件(例如使用python)。这在m3软件中使用。
*(可选)**mycontroller.py**:控制器的python接口
*(可选)**controller_example.py**:关于如何使用python接口的示例

生成的项目

```猛击
我的项目
——钢骨混凝土
——我的项目
——组件
——我的课程.cpp
——我的级工厂.cpp
`--cmakelists.txt
`--cmakelists.txt
——包括
——我的项目
`——我的成分
`——我的班级.h
——原型
——我的项目
`——我的成分
`——我的类.proto
——Python
——我的项目
——组件
初始化
——我的课堂.py
`——我的类示例.py
`--
机器人配置
——组件
`——我的课程v1.yml
`--m3配置YML
`--cmakelists.txt
```
编译项目
如果没有m3-cmake-u模块变量集(m3软件的最新版本):
```
回声$m3_cmake_模块
```
然后,您可能需要一些有用的findxxx.cmake(对于m3系统、yamlccp、protobuf等):
```
CD/路径/到/您的/项目
Git克隆https://github.com/ahoarau/meka-cmake-modules.git
```
然后您可以安全地编译项目:

```猛击
CD/路径/到/您的/项目
mkdir生成
CD构建
克马克..
品牌
```

这将生成以下文件:

**libmycomponent.so**:需要在m3中加载的库。在lib中生成/
**my_class.cc**:生成的protobuf源文件。生成于内部/
**my_class.pb.h**:生成的protobuf头。生成于内部/
**my_class.pb.py**:生成的protobuf python源代码。用python生成/
**setup.bash**:包含包信息的文件
*
运行项目##
让m3知道要签出的外部路径(您应该在打开的所有终端中执行此操作):
```猛击
源/路径/到/您的/项目/设置.bash
```
照常运行服务器:
```猛击
m3rt_服务器运行
```
组件应该位于可用组件列表的顶部(默认名称为controller_example_v1)。

使rviz中的机器人可视化:
```猛击
Roslaunch Meka_描述m3ens_即启动
```
添加机器人模型并将“固定框架”更改为“t0”。
现在**启用**组件并查看机器人移动:
```猛击
先嘘!
cd/path/to/your/project/python/componentdir/mycontroller/
python mycontroller示例.py
```

祝你好运!

基于Meka Robotics,LLC提供的m3project_creator.py。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何用java表示这个数学函数的算法   Java/Stream帮助:仅使用streams将嵌套的映射列表转换为映射   使用Selenium连接到数据库时发生java未知主机异常   java如何了解jvm内存使用:“堆内存”和“堆外内存”   java Oracle BI报告导入模板   java如何使用Spring将xml转换为bean?   java线程。join()以保证执行顺序   java从THINGSPEAK到ANDROID应用程序获取JSON数据   使用Java的stanford库中的异常   java正确使用来自其他类文件的方法   如果集合中的元素类型为接口类型,如何填充集合?(爪哇)   记录java。util。记录器创建的文件超过了应有的数量   类Java对象uniq值   尝试调用无法应用于()的方法时出现java错误