46 str +=
"( x-axis: " + FloatingPointNumToString(ConvertRadToDeg(
x_angle)) +
" [deg], y-axis : " +
47 FloatingPointNumToString(ConvertRadToDeg(
y_angle)) +
48 " [deg], z-axis: " + FloatingPointNumToString(ConvertRadToDeg(
z_angle)) +
49 " [deg]) xyz-euler angles";
std::string FloatingPointNumToString(const T num, const int digit=kDigit, const int width=kWidth)
小数を文字列に変換する関数. C++ では C のフォーマットのように %3.3f とかで小数を文字列に変換できないため自作する.
constexpr T ConvertRadToDeg(const T rad) noexcept
角度を [rad]から [deg] に変換する関数.
Vector3 RotateVector3(const Vector3 &vec, const EulerXYZ &rot)
回転させたベクトルを返す.三角関数の処理が多く重たいので注意.
RotationMatrix3x3 ToRotationMatrix(const Quaternion &q)
クォータニオンから回転角行列への変換.
float x_angle
X 軸周りの回転 [rad]
float y_angle
Y 軸周りの回転 [rad]
std::string ToStringDeg() const
オイラー角を文字列に変換する. 単位は 度 [deg].
std::string ToCsvString() const
オイラー角をCsv形式の文字列に変換する.カンマ区切り. 単位は ラジアン [rad]
std::string ToString() const
オイラー角を文字列に変換する. 単位は ラジアン [rad]
float z_angle
Z 軸周りの回転 [rad]