//create line with lenght and diretion private static int[,] LineProcess(int size, LineStructElementDegree lineType) { int[,] resultH = new int [1, size]; int[,] resultV = new int [size, 1]; int[,] tempRes = new int [size, size]; ArrGen <int> d = new ArrGen <int>(); if (HelpMe(size, size)) { switch (lineType) { case LineStructElementDegree.horizontal: resultH = d.ArrOfSingle(1, size, 1); return(resultH); case LineStructElementDegree.vertical: resultV = d.ArrOfSingle(size, 1, 1); return(resultV); case LineStructElementDegree.plus45: int m = size - 1; int n = 0; for (int i = 0; i < size; i++) { for (int j = 0; j < size; j++) { if (i == n && j == m) { tempRes[i, j] = 1; } } m--; n++; } return(tempRes); case LineStructElementDegree.minus45: for (int i = 0; i < size; i++) { for (int j = 0; j < size; j++) { if (i == j) { tempRes[i, j] = 1; } } } return(tempRes); } } return(tempRes); }
public static (int[, ] structerElement, string elementInf) LineStructure(int size, LineStructElementDegree lineType) { return(StructureElement.Line(size, lineType), "strElemLine" + "_Size_" + size + "_lineType_" + lineType); }
public static int[,] Line(int size, LineStructElementDegree lineType) { return(LineProcess(size, lineType)); }