CARLA
 
载入中...
搜索中...
未找到
命名空间 | | 函数 | 变量
carla::geom 命名空间参考

命名空间

namespace  deformation
 

class  BoundingBox
 
class  CubicPolynomial
 Describes a Cubic Polynomial so: f(x) = a + bx + cx^2 + dx^3 更多...
 
class  GeoLocation
 
class  Location
 
class  Math
 
class  Mesh
 Mesh data container, validator and exporter. 更多...
 
class  MeshFactory
 Mesh helper generator 更多...
 
struct  MeshMaterial
 Material that references the vertex index start and end of a mesh where it is affecting. 更多...
 
class  PointCloudRtree
 Rtree class working with 3D point clouds. 更多...
 
class  Rotation
 
class  SegmentCloudRtree
 Rtree class working with 3D segment clouds. 更多...
 
class  Simplification
 
class  Transform
 
class  Vector2D
 
class  Vector3D
 
class  Vector3DInt
 
struct  VertexInfo
 
struct  VertexNeighbors
 
struct  VertexWeight
 

函数

static VertexWeight ComputeVertexWeight (const MeshFactory::RoadParameters &road_param, const VertexInfo &vertex_info, const VertexInfo &neighbor_info)
 
std::vector< VertexNeighborsGetVertexNeighborhoodAndWeights (const MeshFactory::RoadParameters &road_param, std::vector< std::unique_ptr< Mesh > > &lane_meshes)
 
static void LatLonAddMeters (double lat_start, double lon_start, double dx, double dy, double &lat_end, double &lon_end)
 Adds meters dx/dy to given lat/lon and returns new lat/lon.
 
template<class float_type >
static void LatLonToMercator (double lat, double lon, double scale, float_type &mx, float_type &my)
 Converts lat/lon/scale to mx/my (mx/my in meters if correct scale is given).
 
static double LatToScale (double lat)
 Convert latitude to scale, which is needed by mercator transformations
 
static void MercatorToLatLon (double mx, double my, double scale, double &lat, double &lon)
 Converts mx/my/scale to lat/lon (mx/my in meters if correct scale is given).
 
Mesh operator+ (const Mesh &lhs, const Mesh &rhs)
 
std::ostream & operator<< (std::ostream &out, const Vector3D &vector3D)
 

变量

static constexpr double EARTH_RADIUS_EQUA = 6378137.0
 Earth radius at equator [m].
 
static constexpr double EPSILON = 10.0 * std::numeric_limits<double>::epsilon()
 We use this epsilon to shift the waypoints away from the edges of the lane sections to avoid floating point precision errors.
 
static constexpr double MESH_EPSILON = 50.0 * std::numeric_limits<double>::epsilon()
 

函数说明

◆ ComputeVertexWeight()

static VertexWeight carla::geom::ComputeVertexWeight ( const MeshFactory::RoadParameters & road_param,
const VertexInfo & vertex_info,
const VertexInfo & neighbor_info )
static

在文件 MeshFactory.cpp1060 行定义.

引用了 carla::geom::Math::Distance(), carla::geom::VertexInfo::is_static, carla::geom::MeshFactory::RoadParameters::lane_ends_multiplier, carla::geom::VertexInfo::lane_mesh_idx, carla::geom::MeshFactory::RoadParameters::max_weight_distance, carla::geom::MeshFactory::RoadParameters::same_lane_weight_multiplier , 以及 carla::geom::VertexInfo::vertex.

被这些函数引用 GetVertexNeighborhoodAndWeights().

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

◆ GetVertexNeighborhoodAndWeights()

std::vector< VertexNeighbors > carla::geom::GetVertexNeighborhoodAndWeights ( const MeshFactory::RoadParameters & road_param,
std::vector< std::unique_ptr< Mesh > > & lane_meshes )

在文件 MeshFactory.cpp1086 行定义.

引用了 ComputeVertexWeight(), carla::geom::VertexNeighbors::neighbors , 以及 carla::geom::VertexNeighbors::vertex.

被这些函数引用 carla::geom::MeshFactory::MergeAndSmooth().

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

◆ LatLonAddMeters()

static void carla::geom::LatLonAddMeters ( double lat_start,
double lon_start,
double dx,
double dy,
double & lat_end,
double & lon_end )
static

Adds meters dx/dy to given lat/lon and returns new lat/lon.

在文件 GeoLocation.cpp51 行定义.

引用了 LatLonToMercator(), LatToScale() , 以及 MercatorToLatLon().

被这些函数引用 carla::geom::GeoLocation::Transform().

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

◆ LatLonToMercator()

template<class float_type >
static void carla::geom::LatLonToMercator ( double lat,
double lon,
double scale,
float_type & mx,
float_type & my )
static

Converts lat/lon/scale to mx/my (mx/my in meters if correct scale is given).

在文件 GeoLocation.cpp38 行定义.

引用了 EARTH_RADIUS_EQUA , 以及 carla::geom::Math::ToRadians().

被这些函数引用 LatLonAddMeters().

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

◆ LatToScale()

static double carla::geom::LatToScale ( double lat)
static

Convert latitude to scale, which is needed by mercator transformations

参数
latlatitude in degrees (DEG)
返回
scale factor
注解
when converting from lat/lon -> mercator and back again, or vice versa, use the same scale in both transformations!

在文件 GeoLocation.cpp31 行定义.

引用了 carla::geom::Math::ToRadians().

被这些函数引用 LatLonAddMeters().

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

◆ MercatorToLatLon()

static void carla::geom::MercatorToLatLon ( double mx,
double my,
double scale,
double & lat,
double & lon )
static

Converts mx/my/scale to lat/lon (mx/my in meters if correct scale is given).

在文件 GeoLocation.cpp45 行定义.

引用了 EARTH_RADIUS_EQUA.

被这些函数引用 LatLonAddMeters().

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

◆ operator+()

Mesh carla::geom::operator+ ( const Mesh & lhs,
const Mesh & rhs )

在文件 Mesh.cpp385 行定义.

◆ operator<<()

std::ostream & carla::geom::operator<< ( std::ostream & out,
const Vector3D & vector3D )

变量说明

◆ EARTH_RADIUS_EQUA

constexpr double carla::geom::EARTH_RADIUS_EQUA = 6378137.0
staticconstexpr

Earth radius at equator [m].

在文件 GeoLocation.cpp23 行定义.

被这些函数引用 LatLonToMercator() , 以及 MercatorToLatLon().

◆ EPSILON

constexpr double carla::geom::EPSILON = 10.0 * std::numeric_limits<double>::epsilon()
staticconstexpr

◆ MESH_EPSILON

constexpr double carla::geom::MESH_EPSILON = 50.0 * std::numeric_limits<double>::epsilon()
staticconstexpr