• Documentation
  • Core API
  • SmartOpenHamburg API
  • Model Components API
  • Common API

    Show / Hide Table of Contents
    • Mars.Components
      • DependencyRegistrationModelling
    • Mars.Components.Agents
      • AbstractAgent
      • AbstractEntity
      • Agent
    • Mars.Components.Environments
      • AbstractEnvironment
      • AbstractGraphElement
      • AlwaysPassingNodeGuard
      • EntityLane<TEntity>
      • GeoEnvironment
      • GeoHashEnvironment<T>
      • IEnvironmentMediator
      • IModalChoiceResolver
      • PathHeuristics
      • SpatialEdge
      • SpatialGraphEntityExtensions
      • SpatialGraphEnvironment
      • SpatialGraphHelper
      • SpatialHashEnvironment<TEntity>
      • SpatialNode
    • Mars.Components.Environments.Cartesian
      • CartesianEnvironment<TEntity>
      • CollisionEnvironment<TCharacter, TObstacle>
      • CollisionKind
      • ConeExplorationView
      • ExplorationView
      • GeometryFactory
      • ICartesianEnvironment<TEntity>
      • ICharacter
      • ICollidable
      • ICollisionEnvironment<TCharacter, TObstacle>
      • IObstacle
      • IVisible
      • RayExplorationView
      • TrapezoidExploration
      • VisibilityKind
    • Mars.Components.Environments.Cartesian.Routing
      • CartesianRoutingService<TObstacle>
      • GeometryCoordinatesRoutingPointsGenerator
      • HomogenousRoutingPointsGenerator
      • IRoutingPointsGenerator
      • RandomRoutingPointsGenerator
      • SectionalRandomRoutingPointsGenerator
    • Mars.Components.Layers
      • AbstractActiveLayer
      • AbstractDataLayer
      • AbstractLayer
      • AgentSchedulerLayer<TAgent, TLayer>
      • BoundDataSet
      • DisposeBase
      • MatrixRaster
      • QuerySourceLoader
      • Raster
      • Raster<TValue>
      • RasterLayer
      • SchedulerEntry
      • SchedulerLayer
      • VectorFeature
      • VectorLayer
      • VectorLayer<T>
      • VectorLayerHelper
    • Mars.Components.Layers.Temporal
      • IQueryFieldProvider
      • ITemporalObjectCatalog
      • ITemporalObjectIterator
      • TemporalCatalogFeature<TKey>
      • TemporalFeatureKind
      • TemporalMetadataLoader
    • Mars.Components.Services
      • AgentManager
    • Mars.Components.Services.Explorations
      • BoltzmannExploration
      • EpsilonGreedyExploration
      • IExplorationPolicy
      • RouletteWheelExploration
      • TabuSearchExploration
    • Mars.Components.Services.Learning
      • InfiniteQLearning
      • QLearning
      • Sarsa
    • Mars.Components.Services.Planning
      • ActionPlanResult
      • GoapAction
      • GoapAgentStates
      • GoapGoal
      • GoapPlanner
      • GoapStateKey<T>
      • GoapStateProperty
      • GoapStateProperty<TElement>
      • IGoapAction
      • IGoapAgentStates
      • IGoapGoal
      • IGoapPlanner
      • IGoapStateKey
      • StatesCommons
    • Mars.Components.Services.Planning.ActionCommons
      • AllGoalsSatisfiedAction
      • NoGoalReachableAction
    • Mars.Components.Starter
      • Command
      • CommandArgumentContainer
      • CommandParser
      • CommandSet
      • HelpCommand
      • Option
      • OptionContext
      • OptionException
      • OptionSet
      • OptionValueCollection
      • OptionValueType
      • SimulationStarter
    • Mars.Components.Starter.Exceptions
      • SimulationStartupException
    • Mars.Interfaces
      • IModelObject
      • ISimulationContainer
      • ISimulationContext
      • ISimulationModule
      • ISimulationState
      • IStepExecutionContext
      • SimulationContext
      • SimulationContext.WorkflowStateType
    • Mars.Interfaces.Agents
      • IAgent
      • IAgent<TLayer>
      • IEntity
      • IMarsDslAgent
      • IModalCapabilitiesAgent
      • ISpatialGraphEntity
      • ITickClient
    • Mars.Interfaces.Annotations
      • ActiveConstructor
      • PropertyDescription
    • Mars.Interfaces.Data
      • AbstractDomainData
      • GeometryData
      • IDomainData
      • IGeometryData
      • IIdentifiableData
      • IMarsFeature
      • IRasterBandData
      • ISource
      • IStringData
      • IStringStructuredData
      • IStructuredData
      • IStructuredDataGeometry
      • IValueData
      • LayerInitData
      • RasterBandData
      • StringDataDto
      • StructuredData
      • VectorStructuredData
    • Mars.Interfaces.Environments
      • BoundingBox
      • DirectionType
      • EdgeExploreResult
      • EdgeStop
      • ExploreDirection
      • GeoPositionExtension
      • HighwayType
      • IEdge<TEdge, TNode>
      • IEntityLane<TEntity>
      • IEnvironment
      • IEnvironment<TEntity>
      • IGeoGridEnvironment<T>
      • IGraphEntity
      • IGraphEnvironment<TEdge, TNode>
      • INode<TEdge, TNode>
      • INodeGuard
      • IPositionable
      • IRoutePlanner
      • ISpatialEdge
      • ISpatialGraphEnvironment
      • ISpatialLane
      • ISpatialNode
      • LaneExploreResult
      • ModalChoice
      • MultimodalRoute
      • NodeIntegrationKind
      • Position
      • Route
      • RouteStop
      • Size
      • SpatialGraphExploreResult
      • SpatialModalityType
      • TrafficLightPhase
    • Mars.Interfaces.Layers
      • FinallySimulationStep
      • IBoundedDataLayer
      • IChangingLayer
      • IDataContainer
      • IDataLayer
      • IDataSet
      • ILayer
      • IMarsDslLayer
      • IModalChoiceConsumer
      • InitSimulationStep
      • INotifyChangedSource<T>
      • IRaster
      • IRaster<TValue>
      • IRasterLayer
      • ISteppedActiveLayer
      • IVectorFeature
      • IVectorLayer
      • IVectorLayer<T>
      • IVectorNode<TEntity>
      • RegisterAgent
      • UnregisterAgent
    • Mars.Interfaces.Model
      • ActiveTypeMapping
      • AgentMapping
      • AgentType
      • ConstructorType
      • ContainsOperator
      • DataContainer
      • DataType
      • EntityMapping
      • EntityType
      • Execution
      • FeatureType
      • Globals
      • IdentifiableElement
      • IndividualMapping
      • Input
      • InputConfiguration
      • LayerMapping
      • LayerType
      • ModelDescription
      • ModelElement
      • ObjectType
      • Output
      • OutputConfiguration
      • OutputFilter
      • OutputKind
      • OutputTargetType
      • ParameterMapping
      • Processing
      • ProcessingConfiguration
      • ProcessingTargetType
      • PropertyType
      • SimulationConfig
      • TimeSpanUnit
      • TimeSpanUnitExtensions
      • TypeElement
      • TypeMapping
    • Mars.Interfaces.Model.Converters
      • CultureConverter
      • SerializationTypeConverter
      • TimeSpanUnitConverter
    • Mars.Interfaces.Model.Exceptions
      • InvalidTypeException
      • MissingTypeException
    • Mars.Interfaces.Model.Options
      • AbstractEndpointOptions
      • AbstractFileOptions
      • AbstractOptions
      • AscOptions
      • CsvOptions
      • GeoJsonOptions
      • MongoOptions
      • MqttOptions
      • PostgresSqlOptions
      • RedisOptions
      • RelationalEndpointOptions
      • SerializationType
      • SocketOutputOptions
      • SpatialGraphOptions
      • SqLiteOptions
      • TripsOptions

    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>
    Implements
    ICollisionEnvironment<TCharacter, TObstacle>
    IEnvironment
    IModelObject
    Namespace: Mars.Components.Environments.Cartesian
    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
    Type Description
    BoundingBox

    Characters

    Declaration
    public IEnumerable<TCharacter> Characters { get; }
    Property Value
    Type Description
    IEnumerable<TCharacter>

    DefaultCollision

    Declaration
    public CollisionKind DefaultCollision { get; set; }
    Property Value
    Type Description
    CollisionKind

    DefaultVisibility

    Declaration
    public VisibilityKind DefaultVisibility { get; set; }
    Property Value
    Type Description
    VisibilityKind

    RoutingPointsCount

    Declaration
    public int RoutingPointsCount { get; set; }
    Property Value
    Type Description
    System.Int32

    RoutingPointsGenerator

    Declaration
    public IRoutingPointsGenerator RoutingPointsGenerator { get; set; }
    Property Value
    Type Description
    IRoutingPointsGenerator

    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
    Type Description
    IEnumerable<Position>

    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
    Type Description
    Position

    PosAt(TCharacter, Position)

    Declaration
    public Position PosAt(TCharacter character, Position target)
    Parameters
    Type Name Description
    TCharacter character
    Position target
    Returns
    Type Description
    Position

    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

    ICollisionEnvironment<TCharacter, TObstacle>
    IEnvironment
    IModelObject
    Back to top Copyright © MARS GROUP.
    HAW Hamburg