Class AbstractIntersectionHandle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle>
Provides the possibility to handle intersections without traffic lights.
Inheritance
System.Object
AbstractIntersectionHandle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle>
Implements
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: SOHDomain.Steering.Handles.Intersection
Assembly: SOHDomain.dll
Syntax
public abstract class AbstractIntersectionHandle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle> : IIntersectionTrafficCode where TSteeringCapable : ISteeringCapable where TPassengerCapable : IPassengerCapable where TSteeringHandle : ISteeringHandle where TPassengerHandle : IPassengerHandle
Type Parameters
Name | Description |
---|---|
TSteeringCapable | |
TPassengerCapable | |
TSteeringHandle | |
TPassengerHandle |
Constructors
| Improve this Doc View SourceAbstractIntersectionHandle(Vehicle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle>, IVehicleAccelerator)
Provides the possibility to handle intersections without traffic lights.
Declaration
protected AbstractIntersectionHandle(Vehicle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle> vehicle, IVehicleAccelerator vehicleAccelerator)
Parameters
Type | Name | Description |
---|---|---|
Vehicle<TSteeringCapable, TPassengerCapable, TSteeringHandle, TPassengerHandle> | vehicle | |
IVehicleAccelerator | vehicleAccelerator |
Properties
| Improve this Doc View SourceVehicle
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
Type | Description |
---|---|
IVehicleAccelerator |
Methods
| Improve this Doc View SourceCollectIncomingEntities(ISpatialNode)
Provides the possibility to handle intersections without traffic lights.
Declaration
protected static IEnumerable<ISpatialGraphEntity> CollectIncomingEntities(ISpatialNode spatialNode)
Parameters
Type | Name | Description |
---|---|---|
ISpatialNode | spatialNode |
Returns
Type | Description |
---|---|
System.Collections.Generic.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 = 100)
Parameters
Type | Name | Description |
---|---|---|
ISpatialEdge | incomingEdge | The edge from which to explore. |
System.Double | distance | The distance in meter to explore |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<ISpatialGraphEntity> | Returns an System.Collections.Generic.IEnumerable<T> of ISpatialGraphEntitys which are within the desired explore distance. |