public ActionResult CalculateRowAndColumn(VertexCoordinates c) { if (c != null) { string rowLetter = CalculateRow(c.V1y, c.V2y); bool isRightAngleOnTop; if (c.V1y < c.V2y) { isRightAngleOnTop = false; } else { isRightAngleOnTop = true; } string columnNumber = CalculateColumn(c.V1x, c.V3x, isRightAngleOnTop); string[] validRows = new string[] { "A", "B", "C", "D", "E", "F" }; string[] validColumns = new string[] { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12" }; if (!string.IsNullOrEmpty(rowLetter) && !string.IsNullOrEmpty(columnNumber) && validRows.Contains(rowLetter) && validColumns.Contains(columnNumber)) { ViewBag.Result = rowLetter + columnNumber; } else { ViewBag.Result = "Error: check inputs"; } } return(View()); }
public ActionResult CalculateTriangleCoordinates(string row, string column) { VertexCoordinates c = new VertexCoordinates(); if (!string.IsNullOrWhiteSpace(row) && !string.IsNullOrWhiteSpace(column)) { Tuple <int, int> rCoordinates = GetRowCoordinates(row); Tuple <int, int> cCoordinates = GetColumnCoordinates(column); int intColumn = Convert.ToInt32(column); if (rCoordinates == null || cCoordinates == null) { ViewBag.Message = "Error: check inputs"; return(View()); } if (intColumn % 2 == 0) { c.V1x = cCoordinates.Item1 > cCoordinates.Item2 ? cCoordinates.Item1 : cCoordinates.Item2; c.V1y = rCoordinates.Item1 > rCoordinates.Item2 ? rCoordinates.Item1 : rCoordinates.Item2; c.V2x = cCoordinates.Item1 > cCoordinates.Item2 ? cCoordinates.Item1 : cCoordinates.Item2; c.V2y = rCoordinates.Item1 < rCoordinates.Item2 ? rCoordinates.Item1 : rCoordinates.Item2; c.V3x = cCoordinates.Item1 < cCoordinates.Item2 ? cCoordinates.Item1 : cCoordinates.Item2; c.V3y = rCoordinates.Item1 > rCoordinates.Item2 ? rCoordinates.Item1 : rCoordinates.Item2; } else { c.V1x = cCoordinates.Item1 < cCoordinates.Item2 ? cCoordinates.Item1 : cCoordinates.Item2; c.V1y = rCoordinates.Item1 < rCoordinates.Item2 ? rCoordinates.Item1 : rCoordinates.Item2; c.V2x = cCoordinates.Item1 < cCoordinates.Item2 ? cCoordinates.Item1 : cCoordinates.Item2; c.V2y = rCoordinates.Item1 > rCoordinates.Item2 ? rCoordinates.Item1 : rCoordinates.Item2; c.V3x = cCoordinates.Item1 > cCoordinates.Item2 ? cCoordinates.Item1 : cCoordinates.Item2; c.V3y = rCoordinates.Item1 < rCoordinates.Item2 ? rCoordinates.Item1 : rCoordinates.Item2; } } return(View(c)); }