meta data for this page
  •  

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

lab:ros:calculate-posture-by-tf2 [2020/06/02 20:43]
strv 作成
lab:ros:calculate-posture-by-tf2 [2020/06/02 20:45] (現在)
strv
ライン 64: ライン 64:
 ### メッセージからtfに変換 ### メッセージからtfに変換
  
-```c+++```c
 #include <​tf2/​convert.h>​ #include <​tf2/​convert.h>​
 #include <​tf2_geometry_msgs/​tf2_geometry_msgs.h>​ #include <​tf2_geometry_msgs/​tf2_geometry_msgs.h>​
ライン 77: ライン 77:
 なんでかこれはconvertがうまくできない.ヒントを渡してもダメ.教えて偉い人. なんでかこれはconvertがうまくできない.ヒントを渡してもダメ.教えて偉い人.
  
-```c+++```c
 #include <​tf2/​convert.h>​ #include <​tf2/​convert.h>​
 #include <​tf2_geometry_msgs/​tf2_geometry_msgs.h>​ #include <​tf2_geometry_msgs/​tf2_geometry_msgs.h>​
ライン 92: ライン 92:
 たとえば,タイムスタンプありのtransformは次のように定義できます. たとえば,タイムスタンプありのtransformは次のように定義できます.
  
-```c+++```c
 tf2::​Stamped<​tf2::​Transform>​ stamped_transform;​ tf2::​Stamped<​tf2::​Transform>​ stamped_transform;​
 ``` ```
ライン 98: ライン 98:
 これを使うと,次のような変換もできます. これを使うと,次のような変換もできます.
  
-```c+++```c
 geometry_msgs::​TransformStamped msg = tf2::​toMsg(tf2::​Stamped<​tf2::​Transform>​(tf,​ ros::​Time::​now(),​ frame_id)); geometry_msgs::​TransformStamped msg = tf2::​toMsg(tf2::​Stamped<​tf2::​Transform>​(tf,​ ros::​Time::​now(),​ frame_id));
 msg.child_frame_id = child_frame_id;​ msg.child_frame_id = child_frame_id;​
ライン 114: ライン 114:
 例えば,2つのtfの姿勢の差をとりたいときはこんな感じです. 例えば,2つのtfの姿勢の差をとりたいときはこんな感じです.
  
-```c+++```c
 tf2::​Transform tf1, tf2, tf_delta; tf2::​Transform tf1, tf2, tf_delta;
 tf_delta = tf2.inverse() * tf1; tf_delta = tf2.inverse() * tf1;
ライン 127: ライン 127:
 2つのquaternionを補間する例は次のようにかけます. 2つのquaternionを補間する例は次のようにかけます.
  
-```c+++```c
 double d = 0.1; double d = 0.1;
 tf2::​Quaternion q1, q2;  // 入力のQuaternion tf2::​Quaternion q1, q2;  // 入力のQuaternion