CARLA
 
载入中...
搜索中...
未找到
CityMapMeshTag.cpp
浏览该文件的文档.
1// Copyright (c) 2017 Computer Vision Center (CVC) at the Universitat Autonoma
2// de Barcelona (UAB).
3//
4// This work is licensed under the terms of the MIT license.
5// For a copy, see <https://opensource.org/licenses/MIT>.
6
7#include "Carla.h"
8#include "CityMapMeshTag.h"
9
10#include "Package.h"
11
12#include <array>
13
14// 定义函数CityMapMeshTag::GetBaseMeshTag,该函数返回一个ECityMapMeshTag类型的值
15// 用于获取基础的网格标签,这里具体返回的是RoadTwoLanes_LaneLeft这个标签类型
17{
18 return ECityMapMeshTag::RoadTwoLanes_LaneLeft;
19}
20
21// 定义函数CityMapMeshTag::GetRoadIntersectionSize,该函数返回一个无符号32位整数
22// 用于获取道路交叉路口的大小,这里返回的值是5u(无符号整数5)
24{
25 return 5u;
26}
27
28// 定义函数CityMapMeshTag::ToString,该函数接受一个ECityMapMeshTag类型的参数Tag
29// 用于将ECityMapMeshTag类型的枚举值转换为对应的字符串表示形式
31{
32 // 在任何包中查找名为ECityMapMeshTag的枚举类型对象,如果找不到则返回nullptr
33 const UEnum* ptr = FindObject<UEnum>(ANY_PACKAGE, TEXT("ECityMapMeshTag"), true);
34 // 如果没有找到对应的枚举类型对象
35 if(!ptr)
36 // 返回一个表示"Invalid"的字符串
37 return FString("Invalid");
38 // 如果找到了对应的枚举类型对象,则通过该对象根据传入的枚举值Tag获取对应的名称字符串并返回
39 return ptr->GetNameStringByIndex(static_cast<int32>(Tag));
40}
ECityMapMeshTag
用于标识ProceduralMapGenerator所使用的网格的标签
static FString ToString(ECityMapMeshTag Tag)
获取一个标签名称作为 FString
static ECityMapMeshTag GetBaseMeshTag()
返回基础网格。基础网格定义了地图缩放的单位图块
static uint32 GetRoadIntersectionSize()
获取道路交叉口一侧的图块大小。即,返回N,使得NxN 大小相当于一个道路交叉口的部分