Classes | |
| class | CityAreaDescription |
| class | DoublyConnectedEdgeList |
| Simple doubly-connected edge list structure. More... | |
| class | GraphGenerator |
| Random DoublyConnectedEdgeList generator. More... | |
| class | GraphParser |
| class | Position |
| class | RoadSegmentBuilder |
| class | RoadSegmentDescription |
Typedefs | |
| using | Graph = DoublyConnectedEdgeList |
Enumerations | |
| enum | EIntersectionType { EIntersectionType::Turn90Deg, EIntersectionType::TIntersection, EIntersectionType::XIntersection } |
Functions | |
| static std::pair< DoublyConnectedEdgeList::HalfEdge *, DoublyConnectedEdgeList::HalfEdge * > | FindPositionInNode (DoublyConnectedEdgeList::HalfEdge &halfEdge) |
| Return the pair {prev, next}, where prev/next is the previous/next edge counterclockwise around edge's source node. More... | |
| static void | fixGraphData (Graph &graph) |
| static Graph::Position | getDirection (const Graph::HalfEdge &edge) |
| static int | getQuadrant (float angle) |
| static std::pair< Graph::HalfEdge *, Graph::HalfEdge * > | getRandomOpposingEdges (Graph::Face &face, FRandomStream &random) |
| static float | getRotation (float angle0, float angle1) |
| static float | getRotation (float angle0, float angle1, float angle2) |
| static const Graph::Position & | getSourcePosition (const Graph::HalfEdge &edge) |
| static const Graph::Position & | getTargetPosition (const Graph::HalfEdge &edge) |
| struct GraphHalfEdge | INHERIT_GRAPH_TYPE_BASE_CLASS ('e') |
| struct GraphNode | INHERIT_GRAPH_TYPE_BASE_CLASS ('n') |
| struct GraphFace | INHERIT_GRAPH_TYPE_BASE_CLASS ('f') |
| static void | randomize (Graph &graph, const int32 seed) |
| static int32 | signOf (int32 val) |
| static Graph::Face * | splitFace (Graph &graph, Graph::Face &face, FRandomStream &random) |
Variables | |
| static constexpr int32 | MARGIN = 6 |
| typedef DoublyConnectedEdgeList MapGen::Graph |
Definition at line 14 of file GraphGenerator.cpp.
|
strong |
| Enumerator | |
|---|---|
| Turn90Deg | |
| TIntersection | |
| XIntersection | |
Definition at line 11 of file CityMapDefinitions.h.
|
static |
Return the pair {prev, next}, where prev/next is the previous/next edge counterclockwise around edge's source node.
I.e., edge's position is in between prev and next.
Note: Always returns the half-edge pointing out from node.
The time complexity is O(n*log(n)) where n is the number of edges of edge's source.
Definition at line 42 of file DoublyConnectedEdgeList.cpp.
References MapGen::DoublyConnectedEdgeList::GetAngle().
Referenced by MapGen::DoublyConnectedEdgeList::AddNode(), MapGen::DoublyConnectedEdgeList::ConnectNodes(), and MapGen::DoublyConnectedEdgeList::SplitEdge().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 53 of file GraphParser.cpp.
References MapGen::DoublyConnectedEdgeList::GetAngle(), MapGen::DoublyConnectedEdgeList::GetLeavingHalfEdge(), MapGen::DoublyConnectedEdgeList::GetNextInNode(), MapGen::DoublyConnectedEdgeList::GetNodes(), getRotation(), TIntersection, Turn90Deg, and XIntersection.
Referenced by MapGen::GraphParser::GraphParser().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 34 of file GraphGenerator.cpp.
References getSourcePosition(), and getTargetPosition().
Referenced by splitFace().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 23 of file GraphParser.cpp.
Referenced by getRotation().
Here is the caller graph for this function:
|
static |
Definition at line 38 of file GraphGenerator.cpp.
References MapGen::DoublyConnectedEdgeList::GetHalfEdge(), and MapGen::DoublyConnectedEdgeList::GetNextInFace().
Referenced by splitFace().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 28 of file GraphParser.cpp.
References getQuadrant(), and min().
Referenced by fixGraphData().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 35 of file GraphParser.cpp.
References getQuadrant(), and carla::traffic_manager::constants::MotionPlan::PI.
Here is the call graph for this function:
|
static |
Definition at line 26 of file GraphGenerator.cpp.
References MapGen::DoublyConnectedEdgeList::Node::GetPosition(), and MapGen::DoublyConnectedEdgeList::GetSource().
Referenced by getDirection(), and splitFace().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 30 of file GraphGenerator.cpp.
References MapGen::DoublyConnectedEdgeList::Node::GetPosition(), and MapGen::DoublyConnectedEdgeList::GetTarget().
Referenced by getDirection(), and splitFace().
Here is the call graph for this function:
Here is the caller graph for this function:| struct GraphHalfEdge MapGen::INHERIT_GRAPH_TYPE_BASE_CLASS | ( | 'e' | ) |
Definition at line 56 of file GraphTypes.h.
| struct GraphNode MapGen::INHERIT_GRAPH_TYPE_BASE_CLASS | ( | 'n' | ) |
Definition at line 47 of file GraphTypes.h.
| struct GraphFace MapGen::INHERIT_GRAPH_TYPE_BASE_CLASS | ( | 'f' | ) |
Definition at line 61 of file GraphTypes.h.
|
static |
Definition at line 75 of file GraphGenerator.cpp.
References MapGen::DoublyConnectedEdgeList::CountFaces(), MapGen::DoublyConnectedEdgeList::CountHalfEdges(), MapGen::DoublyConnectedEdgeList::CountNodes(), MapGen::DoublyConnectedEdgeList::GetFaces(), and splitFace().
Referenced by MapGen::GraphGenerator::Generate().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 22 of file GraphGenerator.cpp.
Referenced by splitFace().
Here is the caller graph for this function:
|
static |
Definition at line 55 of file GraphGenerator.cpp.
References MapGen::DoublyConnectedEdgeList::ConnectNodes(), getDirection(), getRandomOpposingEdges(), getSourcePosition(), getTargetPosition(), signOf(), and MapGen::DoublyConnectedEdgeList::SplitEdge().
Referenced by randomize().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 16 of file GraphGenerator.cpp.
1.8.13