/// <summary> /// Get the center part of a matrix with the specified border. /// Note that the part retains the pixel coordinates of the original matrix. /// </summary> public static Matrix <T> SubCenter <T>(this Matrix <T> m, Border2l b) { return(m.SubMatrixWindow(m.FX + b.Min.X, m.FY + b.Min.Y, m.SX - b.Max.X - b.Min.X, m.SY - b.Max.Y - b.Min.Y)); }
/// <summary> /// Get the maximal y edge part of a matrix with the specified border. /// Note that the part retains the pixel coordinates of the original matrix. /// </summary> public static Matrix <Td, Tv> SubMaxY <Td, Tv>(this Matrix <Td, Tv> m, long b) { return(m.SubMatrixWindow(m.FX, m.EY - b, m.SX, b)); }
/// <summary> /// Get the maximal x edge part of a matrix with the specified border. /// Note that the part retains the pixel coordinates of the original matrix. /// </summary> public static Matrix <Td, Tv> SubMaxX <Td, Tv>(this Matrix <Td, Tv> m, long b) { return(m.SubMatrixWindow(m.EX - b, m.FY, b, m.SY)); }
/// <summary> /// Get the minimal y edge part of a matrix with the specified border. /// Note that the part retains the pixel coordinates of the original matrix. /// </summary> /// <summary> /// Get the minimal y edge part of a matrix with the specified border. /// Note that the part retains the pixel coordinates of the original matrix. /// </summary> public static Matrix <T> SubMinY <T>(this Matrix <T> m, long b) { return(m.SubMatrixWindow(m.FX, m.FY, m.SX, b)); }
/// <summary> /// Get the minimal x edge part of a matrix with the specified border. /// Note that the part retains the pixel coordinates of the original matrix. /// </summary> public static Matrix <T> SubMinX <T>(this Matrix <T> m, long b) { return(m.SubMatrixWindow(m.FX, m.FY, b, m.SY)); }