19 static constexpr auto Dim = 2;
55 const float epsilon = 2.0f * std::numeric_limits<float>::epsilon())
const {
56 const float len =
Length();
57 if (len <= std::max(epsilon, 0.0f)) {
60 const float k = 1.0f / len;
127 return (
x == rhs.
x) && (
y == rhs.
y);
131 return !(*
this == rhs);
138#ifdef LIBCARLA_INCLUDED_FROM_UE4
142 return *
this * 1e-2f;
151 return FVector2D{
x,
y};
156 MSGPACK_DEFINE_ARRAY(
x,
y)
This file contains definitions of common data structures used in traffic manager.
Vector2D ToMeters() const
Return a Vector2D converted from centimeters to meters.
friend Vector2D operator/(float lhs, Vector2D rhs)
friend Vector2D operator-(Vector2D lhs, const Vector2D &rhs)
bool operator==(const Vector2D &rhs) const
Vector2D & operator*=(float rhs)
static constexpr auto Dim
friend Vector2D operator+(Vector2D lhs, const Vector2D &rhs)
Vector2D(float ix, float iy)
friend Vector2D operator/(Vector2D lhs, float rhs)
Vector2D & operator+=(const Vector2D &rhs)
FVector2D ToFVector2D() const
float SquaredLength() const
bool operator!=(const Vector2D &rhs) const
friend Vector2D operator*(Vector2D lhs, float rhs)
Vector2D ToCentimeters() const
Return a Vector2D converted from meters to centimeters.
Vector2D & operator/=(float rhs)
Vector2D MakeUnitVector(const float epsilon=2.0f *std::numeric_limits< float >::epsilon()) const
Return a unit-length copy of this vector.
friend Vector2D operator*(float lhs, Vector2D rhs)
Vector2D & operator-=(const Vector2D &rhs)