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
RasterLayer
Implements
System.IDisposable
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()
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
Overrides
|
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
|
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
|
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
|
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
|
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
Returns
| Type |
Description |
| System.Boolean |
|
Overrides
|
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
Implements
System.IDisposable
Extension Methods