载入中...
搜索中...
未找到
RoadNetwork.h
浏览该文件的文档.
22 [[nodiscard]] Result<std::uint32_t> addNode(float x, float y, float z, float junctionRadius = 6.f);
98 [[nodiscard]] Result<void> setNodeJunctionControl(std::uint32_t nodeId, RoadJunctionControl control);
116 [[nodiscard]] Result<void> setEdgeControlPoints(std::uint32_t edgeId, std::vector<RoadControlPoint> controlPoints);
124 [[nodiscard]] Result<int> setEdgeLaneCounts(std::uint32_t edgeId, int lanesForward, int lanesBackward);
152 [[nodiscard]] Result<std::uint32_t> detachEdgeEndpoint(std::uint32_t edgeId, bool fromEndpoint);
165 [[nodiscard]] Result<RoadEdgeSplitResult> splitEdge(std::uint32_t edgeId, std::size_t controlPointIndex,
178 [[nodiscard]] Result<RoadEdgeSplitResult> splitEdge(std::uint32_t edgeId, std::size_t controlPointIndex,
190 [[nodiscard]] Result<RoadEdgeSplitResult> splitEdgeAtPosition(std::uint32_t edgeId, RoadControlPoint position,
193 [[nodiscard]] Result<RoadEdgeSplitResult> splitEdgeAtPosition(std::uint32_t edgeId, RoadControlPoint position,
208 [[nodiscard]] Result<RoadEdgeSplitResult> splitEdgeAtSplineParameter(std::uint32_t edgeId, float parameter,
234 [[nodiscard]] int laneLinkCount() const noexcept { return static_cast<int>(laneLinks_.size()); }
236 [[nodiscard]] int blockedLaneLinkCount() const noexcept { return static_cast<int>(blockedLaneLinks_.size()); }
249 [[nodiscard]] const std::vector<RoadLaneConnection>& laneLinks() const noexcept { return laneLinks_; }
256 [[nodiscard]] static Result<RoadNetwork> makeInterchange(float span = 48.f, float bridgeHeight = 8.f, int lanes = 2,
264 [[nodiscard]] static Result<RoadNetwork> makeBridge(float length = 36.f, float height = 6.f, int lanes = 2);
279 [[nodiscard]] static Result<RoadNetwork> makeFan(float span, int lanes, std::vector<float> armAnglesDeg,
Owning directed road graph with lane connectivity.
Definition RoadNetwork.h:19
const std::vector< RoadLaneConnection > & laneLinks() const noexcept
Lane links.
Definition RoadNetwork.h:249
const std::vector< RoadLaneConnection > & blockedLaneLinks() const noexcept
Borrow deterministic persistent turn prohibitions until the next network mutation.
Definition RoadNetwork.h:251
int blockedLaneLinkCount() const noexcept
Return persistent exact turn prohibitions owned by this network.
Definition RoadNetwork.h:236
Definition RoadBake.cpp:17
RoadJunctionControl
Authoritative traffic-control policy applied to every approach of one junction node.
Definition RoadTypes.h:43
One authored control point on a road centerline (world space, Y-up).
Definition RoadTypes.h:12
Directed centerline edge with optional reverse lanes.
Definition RoadTypes.h:61
One legal lane-to-lane connection inside a junction.
Definition RoadTypes.h:90
Cross-section and structural style for one road edge.
Definition RoadTypes.h:19