Chassis v2.1.1
Chassisはロボコンでの足回り制御を行うためのC++ライブラリである。
Loading...
Searching...
No Matches
CoordinateUnit.h File Reference

座標、速度を表す構造体 CoordinateUnit を提供する。 More...

#include <chrono>
#include <cmath>
#include "bits/float_cmp.h"
Include dependency graph for CoordinateUnit.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  rct::CoordinateUnit< N >
 座標、速度を示す構造体。 rct::Coordinate, rct::Velocity
More...
 

Namespaces

namespace  rct
 robot control library
 

Typedefs

using rct::Coordinate = CoordinateUnit< 0 >
 座標を示す構造体
 
using rct::Velocity = CoordinateUnit<-1 >
 速度を示す構造体
 

Functions

template<int M, int N>
CoordinateUnit< Mrct::unit_cast (const CoordinateUnit< N > &obj)
 CoordinateUnitをCoordinateUnitにキャストする。
 
constexpr float rct::distance (const Coordinate &p1, const Coordinate &p2)
 2つの座標間の距離を計算する。
 
template<class T >
constexpr T rct::lerp (const T &a, const T &b, float t) noexcept
 二点aとbの間を、時間tで線形補間 (linear interpolate) する。
 
operator

演算子を定義 CoordinateUnit同士の加減算, floatとの乗除算, chrono::microsecondsとの乗除算

template<int N>
CoordinateUnit< Nrct::operator+ (const CoordinateUnit< N > &lhs, const CoordinateUnit< N > &rhs)
 
template<int N>
CoordinateUnit< Nrct::operator- (const CoordinateUnit< N > &lhs, const CoordinateUnit< N > &rhs)
 
template<int N>
CoordinateUnit< Nrct::operator* (const CoordinateUnit< N > &lhs, const float rhs)
 
template<int N>
CoordinateUnit< Nrct::operator* (const float lhs, const CoordinateUnit< N > &rhs)
 
template<int N>
CoordinateUnit< Nrct::operator/ (const CoordinateUnit< N > &lhs, const float rhs)
 
template<int N>
CoordinateUnit< N+1 > rct::operator* (const CoordinateUnit< N > &obj, const std::chrono::microseconds &sec)
 
template<int N>
CoordinateUnit< N+1 > rct::operator* (const std::chrono::microseconds &sec, const CoordinateUnit< N > &obj)
 
template<int N>
CoordinateUnit< N - 1 > rct::operator/ (const CoordinateUnit< N > &obj, const std::chrono::microseconds &sec)
 
template<int N>
bool rct::operator== (const CoordinateUnit< N > &lhs, const CoordinateUnit< N > &rhs)
 
template<int N>
bool rct::operator!= (const CoordinateUnit< N > &lhs, const CoordinateUnit< N > &rhs)
 

Detailed Description

座標、速度を表す構造体 CoordinateUnit を提供する。

License
This project is released under the MIT License, see LICENSE.

Definition in file CoordinateUnit.h.