• MARS Website
  • 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>
    • SpatialLane
    • SpatialNode
    • WorldIndexExtensions
  • 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
    • AbstractEnvelopedLayer
    • AbstractLayer
    • AbstractVectorFeature
    • AgentSchedulerLayer<TAgent, TLayer>
    • QuerySourceLoader
    • 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
    • StepExecutionContext
  • 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
    • IChangingLayer
    • IDataContainer
    • IDataLayer
    • IDataSet
    • IEnvelopDataLayer
    • ILayer
    • IMarsDslLayer
    • IModalChoiceConsumer
    • InitSimulationStep
    • INotifyChangedSource<T>
    • 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 RasterLayer

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Inheritance
System.Object
AbstractLayer
AbstractEnvelopedLayer
RasterLayer
Implements
IRasterLayer
IDataLayer
IRaster<System.Double>
IEnvelopDataLayer
IDataSet
System.IDisposable
IChangingLayer
ILayer
IModelObject
Inherited Members
AbstractEnvelopedLayer.IsTemporalChanging
AbstractEnvelopedLayer.MinLon
AbstractEnvelopedLayer.MinLat
AbstractEnvelopedLayer.MaxLon
AbstractEnvelopedLayer.MaxLat
AbstractEnvelopedLayer.IsDisposed
AbstractEnvelopedLayer.Dispose()
AbstractEnvelopedLayer.Dispose(Boolean)
AbstractLayer.Mapping
AbstractLayer.RegisterAgent
AbstractLayer.UnregisterAgent
AbstractLayer.Context
AbstractLayer.Container
AbstractLayer.EntityManager
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: Mars.Components.Layers
Assembly: Mars.Components.dll
Syntax
public abstract class RasterLayer : AbstractEnvelopedLayer, IRasterLayer, IDataLayer, IRaster<double>, IEnvelopDataLayer, IDataSet, IDisposable, IChangingLayer, ILayer, IModelObject

Properties

| Improve this Doc View Source

AllowDiagonalMove

Indicates if the path contains diagonal movement. If false, then only Manhattan movement is permitted.
Declaration
protected bool AllowDiagonalMove { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

CellHeight

Gets or sets the geographic height of a cell the projected units. Setting this will automatically adjust the affine coefficient to a negative value.
Declaration
public double CellHeight { get; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

CellWidth

Gets or sets the geographic width of a cell in the projected units.
Declaration
public double CellWidth { get; }
Property Value
Type Description
System.Double
| Improve this Doc View Source

Count

Gets the amount of cells with a concrete value (is not equal NoDataValue).
Declaration
public int Count { get; }
Property Value
Type Description
System.Int32
| Improve this Doc View Source

DistanceMetric

Defines the heuristic metric for exploration
Declaration
protected IMetric<double[]> DistanceMetric { get; set; }
Property Value
Type Description
IMetric<System.Double[]>
| Improve this Doc View Source

Extent

Gets or sets the image bounds being used to define the geospatial raster or image
Declaration
public override BoundingBox Extent { get; set; }
Property Value
Type Description
BoundingBox
Overrides
AbstractEnvelopedLayer.Extent
| Improve this Doc View Source

Height

Gets the vertical count of the cells in the raster.
Declaration
public int Height { get; }
Property Value
Type Description
System.Int32
| Improve this Doc View Source

IsChanged

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public bool IsChanged { get; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

Item[Position]

Gets or sets the value on the current band, given a geospatial position.
Declaration
public double this[Position pos] { get; set; }
Parameters
Type Name Description
Position pos The geospatial coordinate of the cell
Property Value
Type Description
System.Double
| Improve this Doc View Source

Item[Double, Double]

Gets or sets the value on the current band, given a and value which can be a continuous coordinate in space, such as geographic coordinates (longitude, latitude);
Declaration
public double this[double xCoord, double yCoord] { get; set; }
Parameters
Type Name Description
System.Double xCoord The x coordinate of the cell
System.Double yCoord The y coordinate of the cell
Property Value
Type Description
System.Double
| Improve this Doc View Source

Item[Int32, Int32]

Gets or sets the value on the current band, given a x and y index;
Declaration
public double this[int x, int y] { get; set; }
Parameters
Type Name Description
System.Int32 x The x coordinate of the cell
System.Int32 y The y coordinate of the cell
Property Value
Type Description
System.Double
| Improve this Doc View Source

LowerLeft

The lower left corner as a geospatial Position.
Declaration
public Position LowerLeft { get; }
Property Value
Type Description
Position
| Improve this Doc View Source

NoDataValue

Gets or sets a float showing the no-data values.
Declaration
public double? NoDataValue { get; }
Property Value
Type Description
System.Nullable<System.Double>
| Improve this Doc View Source

UpperRight

The upper right corner as a geospatial Position.
Declaration
public Position UpperRight { get; }
Property Value
Type Description
Position
| Improve this Doc View Source

Width

Gets the horizontal count of the cells in the raster.
Declaration
public int Width { get; }
Property Value
Type Description
System.Int32

Methods

| Improve this Doc View Source

ConvertToGridCoordinate(Double, Double, out Int32)

Converts the raster continuous coordinate into precise raster cell index able to access the raster by index.
Declaration
protected int ConvertToGridCoordinate(double xCoordinate, double yCoordinate, out int y)
Parameters
Type Name Description
System.Double xCoordinate The y coordinate of the position.
System.Double yCoordinate The x coordinate of the position.
System.Int32 y Output y cell index
Returns
Type Description
System.Int32 Output x cell index
| Improve this Doc View Source

Explore(Position, Double, Int32, Func<Double, Boolean>)

Executes a point query at the specified position to get all features inside radius, filtered by an optional predicate and limited
Declaration
public ICollection<NodeDistance<K2dTreeNode<double>>> Explore(Position position, double radius = -1, int count = -1, Func<double, bool> predicate = null)
Parameters
Type Name Description
Position position The outgoing position from which to start the query.
System.Double radius The exploration radius.
System.Int32 count The limit of queried features
System.Func<System.Double, System.Boolean> predicate The optional predicate to filter out specific features
Returns
Type Description
System.Collections.Generic.ICollection<NodeDistance<K2dTreeNode<System.Double>>> A collection with distance based order of the explored features.
| Improve this Doc View Source

FindPath(Position, Position)

Tries to find a route from a start cell to a goal cell.
Declaration
public List<Position> FindPath(Position start, Position goal)
Parameters
Type Name Description
Position start Position that identifies the starting cell
Position goal Position that identifies the ending cell
Returns
Type Description
System.Collections.Generic.List<Position> A list of positions that describe the path from start to end; an empty list of no path could be found
| Improve this Doc View Source

FindPath(Int32, Int32, Int32, Int32)

Tries to find a route from a start cell to a goal cell.
Declaration
public List<Position> FindPath(int startX, int startY, int goalX, int goalY)
Parameters
Type Name Description
System.Int32 startX Describes the x coordinate of the starting cell.
System.Int32 startY Describes the y coordinate of the starting cell.
System.Int32 goalX Describes the x coordinate of the ending cell.
System.Int32 goalY Describes the y coordinate of the ending cell.
Returns
Type Description
System.Collections.Generic.List<Position> A list of positions that describe the path from start to end; an empty list of no path could be found
| Improve this Doc View Source

GetCurrentTick()

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public override long GetCurrentTick()
Returns
Type Description
System.Int64
Overrides
AbstractLayer.GetCurrentTick()
| Improve this Doc View Source

GetNeighbourCellWithMaxValue(Position)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
[Obsolete("This method should not be used anymore. Please use Explore(..) instead")]
public Position GetNeighbourCellWithMaxValue(Position coordinate)
Parameters
Type Name Description
Position coordinate
Returns
Type Description
Position
| Improve this Doc View Source

GetValue(Position)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public double GetValue(Position coordinate)
Parameters
Type Name Description
Position coordinate
Returns
Type Description
System.Double
| Improve this Doc View Source

GetValueByGeoPosition(Position)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public double GetValueByGeoPosition(Position coordinate)
Parameters
Type Name Description
Position coordinate
Returns
Type Description
System.Double
| Improve this Doc View Source

Increase(Double, Double, Double)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public double Increase(double xCoord, double yCoord, double value)
Parameters
Type Name Description
System.Double xCoord
System.Double yCoord
System.Double value
Returns
Type Description
System.Double
| Improve this Doc View Source

Increase(Int32, Int32, Double)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public double Increase(int x, int y, double value)
Parameters
Type Name Description
System.Int32 x
System.Int32 y
System.Double value
Returns
Type Description
System.Double
| Improve this Doc View Source

InitLayer(LayerInitData, RegisterAgent, UnregisterAgent)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public override bool InitLayer(LayerInitData layerInitData, RegisterAgent registerAgentHandle = null, UnregisterAgent unregisterAgent = null)
Parameters
Type Name Description
LayerInitData layerInitData
RegisterAgent registerAgentHandle
UnregisterAgent unregisterAgent
Returns
Type Description
System.Boolean
Overrides
AbstractLayer.InitLayer(LayerInitData, RegisterAgent, UnregisterAgent)
| Improve this Doc View Source

IsInRaster(Position)

Checks for the encapsulated position">> whether this point is inside the raster
Declaration
public bool IsInRaster(Position position)
Parameters
Type Name Description
Position position The position containing the coordinates.
Returns
Type Description
System.Boolean Returns true when the point is inside the raster rectangle.
| Improve this Doc View Source

IsRoutable(Position)

Indicates if a cell is routable, so can be used for movement, or not. This is the overload for usability purposes: the logic is defined in
IsRoutable(int, int)
.
Declaration
public bool IsRoutable(Position cellPosition)
Parameters
Type Name Description
Position cellPosition Identifies the cell by index.
Returns
Type Description
System.Boolean True, if routing is possible on this cell, false otherwise
| Improve this Doc View Source

IsRoutable(Double, Double)

Indicates if a cell is routable, so can be used for movement, or not. This is the overload for usability purposes: the logic is defined in
IsRoutable(int, int)
.
Declaration
public bool IsRoutable(double x, double y)
Parameters
Type Name Description
System.Double x Identifies the cell on the x-axis.
System.Double y Identifies the cell on the y-axis.
Returns
Type Description
System.Boolean True, if routing is possible on this cell, false otherwise
| Improve this Doc View Source

IsRoutable(Int32, Int32)

Indicates if a cell is routable, so can be used for movement, or not.
Declaration
public virtual bool IsRoutable(int x, int y)
Parameters
Type Name Description
System.Int32 x Identifies the cell on the x-axis.
System.Int32 y Identifies the cell on the y-axis.
Returns
Type Description
System.Boolean True, if routing is possible on this cell, false otherwise
| Improve this Doc View Source

ParseData(String)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
protected void ParseData(string file)
Parameters
Type Name Description
System.String file
| Improve this Doc View Source

Reduce(Double, Double, Double)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public double Reduce(double xCoord, double yCoord, double value)
Parameters
Type Name Description
System.Double xCoord
System.Double yCoord
System.Double value
Returns
Type Description
System.Double
| Improve this Doc View Source

Reduce(Int32, Int32, Double)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public double Reduce(int x, int y, double value)
Parameters
Type Name Description
System.Int32 x
System.Int32 y
System.Double value
Returns
Type Description
System.Double
| Improve this Doc View Source

SerializeValueCells()

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public IEnumerable<string> SerializeValueCells()
Returns
Type Description
System.Collections.Generic.IEnumerable<System.String>
| Improve this Doc View Source

SetCurrentTick(Int64)

Represents a generic raster implementation which provides functionality to explore for nearest cells and saved objects, to pass a "metadata.csv" with a file-mapping to enable a time-series dimension and a concurrency control to be used by multiple concurrent threads.
Declaration
public override void SetCurrentTick(long currentTick)
Parameters
Type Name Description
System.Int64 currentTick
Overrides
AbstractLayer.SetCurrentTick(Int64)

Implements

IRasterLayer
IDataLayer
IRaster<TValue>
IEnvelopDataLayer
IDataSet
System.IDisposable
IChangingLayer
ILayer
IModelObject

Extension Methods

Serializer.Save<T>(T, out Byte[], SerializerCompression)
Serializer.Save<T>(T, Stream, SerializerCompression)
Serializer.Save<T>(T, BinaryFormatter, Stream, SerializerCompression)
Serializer.Save<T>(T, String, SerializerCompression)
Serializer.Save<T>(T, String)
Matrix.Concatenate<T>(T, T[])
Matrix.Replace<T>(T, Object, Object)
PositionHelper.ToGeoPosition(IRasterLayer, Position)
DomainDataImporter.Import(Object, InputConfiguration)
ObjectSerialize.Serialize(Object)
Matrix.IsEqual(Object, Object, Decimal, Decimal)
  • Improve this Doc
  • View Source
In This Article
Back to top Copyright © MARS GROUP. HAW Hamburg