Class AbstractIntersectionHandle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle>
Provides the possibility to handle intersections without traffic lights.
Inheritance
System.Object
AbstractIntersectionHandle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle>
Assembly: SOHDomain.dll
Syntax
public abstract class AbstractIntersectionHandle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle> : object, IIntersectionTrafficCode where TSteeringCapable : ISteeringCapable where TPassengerCapable : IPassengerCapable where TSteeringHandle : ISteeringHandle where TPassengerHandle : IPassengerHandle
Type Parameters
Name |
Description |
TSteeringCapable |
|
TPassengerCapable |
|
TSteeringHandle |
|
TPassengerHandle |
|
Constructors
AbstractIntersectionHandle(Vehicle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle>, IVehicleAccelerator)
Declaration
protected AbstractIntersectionHandle(Vehicle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle> vehicle, IVehicleAccelerator vehicleAccelerator)
Parameters
Type |
Name |
Description |
Vehicle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle> |
vehicle |
|
IVehicleAccelerator |
vehicleAccelerator |
|
Properties
Vehicle
Vehicle that is using this handle.
Declaration
protected Vehicle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle> Vehicle { get; }
Property Value
Type |
Description |
Vehicle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle> |
|
VehicleAccelerator
Acceleration module of the vehicle.
Declaration
protected IVehicleAccelerator VehicleAccelerator { get; }
Property Value
Methods
CollectIncomingEntities(ISpatialNode)
Declaration
protected static IEnumerable<ISpatialGraphEntity> CollectIncomingEntities(ISpatialNode spatialNode)
Parameters
Type |
Name |
Description |
ISpatialNode |
spatialNode |
|
Returns
Type |
Description |
IEnumerable<ISpatialGraphEntity> |
|
Evaluate(EdgeExploreResult, DirectionType)
Provides a speed change for given situation that is described in the parameters.
Declaration
public abstract double Evaluate(EdgeExploreResult edgeExploreResult, DirectionType vehicleDirection)
Parameters
Type |
Name |
Description |
EdgeExploreResult |
edgeExploreResult |
Holds information about the relevant environment status. |
DirectionType |
vehicleDirection |
In which the driver wants to drive. |
Returns
Type |
Description |
System.Double |
The acceleration / deceleration ratio. |
ExploreIncomingEdge(ISpatialEdge, Double)
Performs an exploration query on the specified incomingEdge
and
collects each first appearing entity which is coming from this edge.
Declaration
protected static IEnumerable<ISpatialGraphEntity> ExploreIncomingEdge(ISpatialEdge incomingEdge, double distance = null)
Parameters
Type |
Name |
Description |
ISpatialEdge |
incomingEdge |
The edge from which to explore. |
System.Double |
distance |
The distance in meter to explore |
Returns
Type |
Description |
IEnumerable<ISpatialGraphEntity> |
Returns an of s which
are within the desired explore distance.
|
Implements