栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

C++ 修改YAML文件的一个node节点

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++ 修改YAML文件的一个node节点

这是相机到激光的外参文件,我需要更改rotation的w,x,y,z,但是不改其他的node

header:
  seq: 0
  stamp:
    secs: 0
    nsecs: 0
  frame_id: velodyne128
child_frame_id: right_front
transform:
  translation:
    x: 0.51
    y: 0.31
    z: -0.10
  rotation:
    w: 0.20917936691977584
    x: -0.393691854453879
    y: 0.74159674408047471
    z: -0.50128333840348849
YAML::Node _baseNode = YAML::LoadFile("right_front_extrinsics.yaml");
_baseNode["transform"]["rotation"]["w"]= q.w;
_baseNode["transform"]["rotation"]["x"]= q.x;
_baseNode["transform"]["rotation"]["y"]= q.y;
_baseNode["transform"]["rotation"]["z"]= q.z;
ofstream fout("right_front_extrinsics.yaml"); //保存
fout << _baseNode;
 
fout.close();

需要注意的是,这里先加载yaml文件,再覆盖,最后写入。

参考:C++ YAML: How to edit/write to a node in a .yaml file - Stack Overflow

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/604415.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号