Class CollisionEnvironment<TCharacter, TObstacle>
This class provide a cartesian
IEnvironment implementation,
used in conjunction with single and multi-point geometries.
Inheritance
System.Object
CollisionEnvironment<TCharacter, TObstacle>
Assembly: Mars.Components.dll
Syntax
public class CollisionEnvironment<TCharacter, TObstacle> : object, ICollisionEnvironment<TCharacter, TObstacle>, IEnvironment, IModelObject where TCharacter : ICharacter where TObstacle : IObstacle
Type Parameters
Name |
Description |
TCharacter |
The concrete type which can move within the environment. |
TObstacle |
The concrete type used for collision. |
Constructors
CollisionEnvironment()
Declaration
public CollisionEnvironment()
Properties
BoundingBox
Declaration
public BoundingBox BoundingBox { get; set; }
Property Value
Characters
Declaration
public IEnumerable<TCharacter> Characters { get; }
Property Value
Type |
Description |
IEnumerable<TCharacter> |
|
DefaultCollision
Declaration
public CollisionKind DefaultCollision { get; set; }
Property Value
DefaultVisibility
Declaration
public VisibilityKind DefaultVisibility { get; set; }
Property Value
RoutingPointsCount
Declaration
public int RoutingPointsCount { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
RoutingPointsGenerator
Declaration
public IRoutingPointsGenerator RoutingPointsGenerator { get; set; }
Property Value
Methods
ExploreCharacters(TCharacter, Geometry, Func<TCharacter, Boolean>)
Declaration
public IEnumerable<TCharacter> ExploreCharacters(TCharacter source, Geometry intersectingArea, Func<TCharacter, bool> predicate = null)
Parameters
Type |
Name |
Description |
TCharacter |
source |
|
Geometry |
intersectingArea |
|
Func<TCharacter, System.Boolean> |
predicate |
|
Returns
Type |
Description |
IEnumerable<TCharacter> |
|
ExploreObstacles(Geometry, Func<TObstacle, Boolean>)
Declaration
public IEnumerable<TObstacle> ExploreObstacles(Geometry intersectingArea, Func<TObstacle, bool> predicate = null)
Parameters
Type |
Name |
Description |
Geometry |
intersectingArea |
|
Func<TObstacle, System.Boolean> |
predicate |
|
Returns
Type |
Description |
IEnumerable<TObstacle> |
|
FindRoute(TCharacter, Position)
Declaration
public IEnumerable<Position> FindRoute(TCharacter character, Position goal)
Parameters
Type |
Name |
Description |
TCharacter |
character |
|
Position |
goal |
|
Returns
Insert(TCharacter, Position)
Declaration
public bool Insert(TCharacter character, Position position)
Parameters
Type |
Name |
Description |
TCharacter |
character |
|
Position |
position |
|
Returns
Type |
Description |
System.Boolean |
|
Insert(TObstacle, Geometry)
Declaration
public bool Insert(TObstacle obstacle, Geometry geometry)
Parameters
Type |
Name |
Description |
TObstacle |
obstacle |
|
Geometry |
geometry |
|
Returns
Type |
Description |
System.Boolean |
|
Move(TCharacter, Double, Double)
Declaration
public Position Move(TCharacter character, double bearing, double distance)
Parameters
Type |
Name |
Description |
TCharacter |
character |
|
System.Double |
bearing |
|
System.Double |
distance |
|
Returns
PosAt(TCharacter, Position)
Declaration
public Position PosAt(TCharacter character, Position target)
Parameters
Type |
Name |
Description |
TCharacter |
character |
|
Position |
target |
|
Returns
PrintMeshAndGeometries(String, String)
Declaration
public void PrintMeshAndGeometries(string meshPath = "mesh.geojson", string geometriesPath = "geometries.geojson")
Parameters
Type |
Name |
Description |
System.String |
meshPath |
|
System.String |
geometriesPath |
|
Remove(TCharacter)
Declaration
public bool Remove(TCharacter character)
Parameters
Type |
Name |
Description |
TCharacter |
character |
|
Returns
Type |
Description |
System.Boolean |
|
Remove(TObstacle)
Declaration
public bool Remove(TObstacle obstacle)
Parameters
Type |
Name |
Description |
TObstacle |
obstacle |
|
Returns
Type |
Description |
System.Boolean |
|
Implements