CARLA
 
载入中...
搜索中...
未找到
静态 Public 成员函数 | 所有成员列表
carla::geom::Math类 参考

#include <Math.h>

静态 Public 成员函数

template<typename T >
static T Clamp (T a, T min=T(0), T max=T(1))
 
static auto Cross (const Vector3D &a, const Vector3D &b)
 
static auto Distance (const Vector3D &a, const Vector3D &b)
 
static auto Distance2D (const Vector3D &a, const Vector3D &b)
 
static std::pair< float, float > DistanceArcToPoint (Vector3D p, Vector3D start_pos, float length, float heading, float curvature)
 Returns a pair containing:
 
static std::pair< float, float > DistanceSegmentToPoint (const Vector3D &p, const Vector3D &v, const Vector3D &w)
 Returns a pair containing:
 
static auto DistanceSquared (const Vector3D &a, const Vector3D &b)
 
static auto DistanceSquared2D (const Vector3D &a, const Vector3D &b)
 
static auto Dot (const Vector3D &a, const Vector3D &b)
 
static auto Dot2D (const Vector3D &a, const Vector3D &b)
 
static std::vector< int > GenerateRange (int a, int b)
 
static Vector3D GetForwardVector (const Rotation &rotation)
 Compute the unit vector pointing towards the X-axis of rotation.
 
static Vector3D GetRightVector (const Rotation &rotation)
 Compute the unit vector pointing towards the Y-axis of rotation.
 
static Vector3D GetUpVector (const Rotation &rotation)
 Compute the unit vector pointing towards the Y-axis of rotation.
 
static double GetVectorAngle (const Vector3D &a, const Vector3D &b)
 Returns the angle between 2 vectors in radians
 
static float LinearLerp (float a, float b, float f)
 
template<typename T >
static constexpr T Pi ()
 
template<typename T >
static constexpr T Pi2 ()
 
static Vector3D RotatePointOnOrigin2D (Vector3D p, float angle)
 
template<typename T >
static T Square (const T &a)
 
template<typename T >
static constexpr T ToDegrees (T rad)
 
template<typename T >
static constexpr T ToRadians (T deg)
 

详细描述

在文件 Math.h21 行定义.

成员函数说明

◆ Clamp()

template<typename T >
static T carla::geom::Math::Clamp ( T a,
T min = T(0),
T max = T(1) )
inlinestatic

在文件 Math.h49 行定义.

引用了 min().

被这些函数引用 carla::road::MapBuilder::AddSignalReference(), DistanceSegmentToPoint(), carla::road::Road::GetDirectedPointIn(), carla::road::Road::GetDirectedPointInNoLaneOffset(), carla::road::element::GeometryLine::PosFromDist(), carla::road::element::GeometryArc::PosFromDist() , 以及 carla::road::element::GeometrySpiral::PosFromDist().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ Cross()

static auto carla::geom::Math::Cross ( const Vector3D & a,
const Vector3D & b )
inlinestatic

◆ Distance()

static auto carla::geom::Math::Distance ( const Vector3D & a,
const Vector3D & b )
inlinestatic

在文件 Math.h78 行定义.

引用了 DistanceSquared().

被这些函数引用 carla::geom::ComputeVertexWeight(), carla::geom::Location::Distance(), carla::road::Road::GetNearestLane() , 以及 TEST().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ Distance2D()

static auto carla::geom::Math::Distance2D ( const Vector3D & a,
const Vector3D & b )
inlinestatic

在文件 Math.h82 行定义.

引用了 DistanceSquared2D().

被这些函数引用 DistanceArcToPoint(), DistanceSegmentToPoint() , 以及 carla::road::Map::GetWaypoint().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ DistanceArcToPoint()

std::pair< float, float > carla::geom::Math::DistanceArcToPoint ( Vector3D p,
Vector3D start_pos,
float length,
float heading,
float curvature )
static

Returns a pair containing:

  • first: distance across the arc from start_pos to p' where p' = p projected on Arc
  • second: Euclidean distance from p to p'
待办事项
: Because Unreal's coordinates, hacky way to correct the -y, this must be changed in the future

在文件 Math.cpp33 行定义.

引用了 DEBUG_ASSERT, Distance2D(), RotatePointOnOrigin2D(), carla::geom::Vector3D::x , 以及 carla::geom::Vector3D::y.

被这些函数引用 carla::road::element::GeometryArc::DistanceTo() , 以及 TEST().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ DistanceSegmentToPoint()

std::pair< float, float > carla::geom::Math::DistanceSegmentToPoint ( const Vector3D & p,
const Vector3D & v,
const Vector3D & w )
static

Returns a pair containing:

  • first: distance from v to p' where p' = p projected on segment (w - v)
  • second: Euclidean distance from p to p'
    参数
    ppoint to calculate distance
    vfirst point of the segment
    wsecond point of the segment

在文件 Math.cpp18 行定义.

引用了 Clamp(), Distance2D(), DistanceSquared2D() , 以及 Dot2D().

被这些函数引用 carla::road::element::GeometryLine::DistanceTo(), carla::road::Map::GetClosestWaypointOnRoad() , 以及 TEST().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ DistanceSquared()

static auto carla::geom::Math::DistanceSquared ( const Vector3D & a,
const Vector3D & b )
inlinestatic

在文件 Math.h70 行定义.

引用了 Square(), carla::geom::Vector3D::x, carla::geom::Vector3D::y , 以及 carla::geom::Vector3D::z.

被这些函数引用 Distance() , 以及 carla::geom::Location::DistanceSquared().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ DistanceSquared2D()

static auto carla::geom::Math::DistanceSquared2D ( const Vector3D & a,
const Vector3D & b )
inlinestatic

在文件 Math.h74 行定义.

引用了 Square(), carla::geom::Vector3D::x , 以及 carla::geom::Vector3D::y.

被这些函数引用 Distance2D() , 以及 DistanceSegmentToPoint().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ Dot()

static auto carla::geom::Math::Dot ( const Vector3D & a,
const Vector3D & b )
inlinestatic

在文件 Math.h62 行定义.

引用了 carla::geom::Vector3D::x, carla::geom::Vector3D::y , 以及 carla::geom::Vector3D::z.

被这些函数引用 GetVectorAngle() , 以及 carla::client::detail::Client::SpawnActorWithParent().

+ 这是这个函数的调用关系图:

◆ Dot2D()

static auto carla::geom::Math::Dot2D ( const Vector3D & a,
const Vector3D & b )
inlinestatic

在文件 Math.h66 行定义.

引用了 carla::geom::Vector3D::x , 以及 carla::geom::Vector3D::y.

被这些函数引用 DistanceSegmentToPoint().

+ 这是这个函数的调用关系图:

◆ GenerateRange()

std::vector< int > carla::geom::Math::GenerateRange ( int a,
int b )
static

在文件 Math.cpp151 行定义.

被这些函数引用 ACarlaGameModeBase::DebugShowSignals().

+ 这是这个函数的调用关系图:

◆ GetForwardVector()

Vector3D carla::geom::Math::GetForwardVector ( const Rotation & rotation)
static

Compute the unit vector pointing towards the X-axis of rotation.

在文件 Math.cpp117 行定义.

引用了 carla::geom::Rotation::pitch, ToRadians() , 以及 carla::geom::Rotation::yaw.

被这些函数引用 carla::geom::Rotation::GetForwardVector().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetRightVector()

Vector3D carla::geom::Math::GetRightVector ( const Rotation & rotation)
static

Compute the unit vector pointing towards the Y-axis of rotation.

在文件 Math.cpp125 行定义.

引用了 carla::geom::Rotation::pitch, carla::geom::Rotation::roll, ToRadians() , 以及 carla::geom::Rotation::yaw.

被这些函数引用 carla::geom::Rotation::GetRightVector().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetUpVector()

Vector3D carla::geom::Math::GetUpVector ( const Rotation & rotation)
static

Compute the unit vector pointing towards the Y-axis of rotation.

在文件 Math.cpp138 行定义.

引用了 carla::geom::Rotation::pitch, carla::geom::Rotation::roll, ToRadians() , 以及 carla::geom::Rotation::yaw.

被这些函数引用 carla::geom::Rotation::GetUpVector().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetVectorAngle()

double carla::geom::Math::GetVectorAngle ( const Vector3D & a,
const Vector3D & b )
static

Returns the angle between 2 vectors in radians

在文件 Math.cpp14 行定义.

引用了 Dot() , 以及 carla::geom::Vector3D::Length().

被这些函数引用 carla::road::Map::CreateRtree().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ LinearLerp()

static float carla::geom::Math::LinearLerp ( float a,
float b,
float f )
inlinestatic

在文件 Math.h86 行定义.

◆ Pi()

template<typename T >
static constexpr T carla::geom::Math::Pi ( )
inlinestaticconstexpr

在文件 Math.h25 行定义.

◆ Pi2()

template<typename T >
static constexpr T carla::geom::Math::Pi2 ( )
inlinestaticconstexpr

在文件 Math.h31 行定义.

◆ RotatePointOnOrigin2D()

Vector3D carla::geom::Math::RotatePointOnOrigin2D ( Vector3D p,
float angle )
static

在文件 Math.cpp111 行定义.

引用了 carla::geom::Vector3D::x , 以及 carla::geom::Vector3D::y.

被这些函数引用 DistanceArcToPoint().

+ 这是这个函数的调用关系图:

◆ Square()

template<typename T >
static T carla::geom::Math::Square ( const T & a)
inlinestatic

在文件 Math.h54 行定义.

被这些函数引用 DistanceSquared() , 以及 DistanceSquared2D().

+ 这是这个函数的调用关系图:

◆ ToDegrees()

template<typename T >
static constexpr T carla::geom::Math::ToDegrees ( T rad)
inlinestaticconstexpr

在文件 Math.h37 行定义.

被这些函数引用 CaService::AddBasicVehicleContainerHighFrequency(), carla::road::MapBuilder::AddSignalPositionInertial(), CaService::CheckHeadingDelta(), carla::road::MapBuilder::ComputeSignalTransform(), carla::road::Lane::ComputeTransform(), CaService::GetHeading() , 以及 ARayCastSemanticLidar::SimulateLidar().

+ 这是这个函数的调用关系图:

◆ ToRadians()

template<typename T >
static constexpr T carla::geom::Math::ToRadians ( T deg)
inlinestaticconstexpr

在文件 Math.h43 行定义.

被这些函数引用 GetForwardVector(), carla::geom::Transform::GetInverseMatrix(), carla::geom::Transform::GetMatrix(), GetRightVector(), GetUpVector(), carla::geom::Rotation::InverseRotateVector(), carla::geom::LatLonToMercator(), carla::geom::LatToScale(), carla::geom::Rotation::RotateVector() , 以及 ARayCastSemanticLidar::SimulateLidar().

+ 这是这个函数的调用关系图:

该类的文档由以下文件生成: