Skip to content
Snippets Groups Projects
Commit c5d5ac90 authored by Антон Кудряшов's avatar Антон Кудряшов
Browse files

generic matrix created.

parent 7a72d260
Branches
No related tags found
No related merge requests found
using System;
using System.Collections.Generic;
namespace WindStressPRM
{
/// <summary>
/// Generic Matrix of type T
/// </summary>
/// <typeparam name="T"></typeparam>
public class Matrix<T>
{
/// <summary>
/// Size of cell. In meters
/// </summary>
public CellSize Size { get; set; }
/// <summary>
/// Cells Container
/// </summary>
public T[,] Cells { get; set; }
/// <summary>
/// Number of rows in matrix
/// </summary>
/// <returns></returns>
public int RowsCount()
{
return Cells.Rank > 0 ? Cells.GetLength(0) : 0;
}
/// <summary>
/// Number of columns
/// </summary>
/// <returns></returns>
public int ColumnCount()
{
return Cells.Rank > 1 ? Cells.GetLength(1) : 0;
}
}
/// <summary>
/// Cell Sizes
/// Параметры ячейки (регулярной сетки)
/// </summary>
public class CellSize
{
/// <summary>
/// ширина ячейки (расстояние между соседними по широте центрами ячеек)
/// </summary>
public double Width { get; set; }
/// <summary>
/// высота ячейки (расстояние между соседними по долготе центрами ячеек)
/// </summary>
public double Height { get; set; }
/// <summary>
/// designated constructor
/// </summary>
/// <param name="wdh">Cell Width</param>
/// <param name="hgh">Cell Height</param>
public CellSize(double wdh, double hgh)
{
this.Width = wdh;
this.Height = hgh;
if (!(this.CheckValue()))
{
throw new System.ArgumentException("Cell width or height values are incorrect!");
}
}
/// <summary>
/// Проверка валидности полей
/// </summary>
/// <returns></returns>
public bool CheckValue()
{
return Width > 0 && Height > 0;
}
}
}
......@@ -198,43 +198,6 @@ namespace WindStressPRM
}
}
/// <summary>
/// Cell Size parameters
/// Параметры ячейки (регулярной сетки)
/// </summary>
public class CellSize
{
/// <summary>
/// ширина ячейки (расстояние между соседними по широте центрами ячеек)
/// </summary>
public double Width { get; set; }
/// <summary>
/// высота ячейки (расстояние между соседними по долготе центрами ячеек)
/// </summary>
public double Height { get; set; }
/// <summary>
/// designated constructor
/// </summary>
/// <param name="wdh">Cell Width</param>
/// <param name="hgh">Cell Height</param>
public CellSize(double wdh, double hgh)
{
this.Width = wdh;
this.Height = hgh;
if (!(this.CheckValue()))
{
throw new System.ArgumentException("Cell width or height values are incorrect!");
}
}
/// <summary>
/// Проверка валидности полей
/// </summary>
/// <returns></returns>
public bool CheckValue()
{
return Width > 0 && Height > 0;
}
}
/// <summary>
/// power line object
/// объект - ЛЭП
/// </summary>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment