Replaced parameters.Length with dedicated variable for length

This commit is contained in:
Lukasz Baldyga committed 2020-11-15 04:57:27 +00:00
1 parent 876b607d43
commit 20db613096
1 file changed
+27 -25
@@ -1,4 +1,4 @@
using System; using System;
using System.CodeDom; using System.CodeDom;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
@@ -30,12 +30,14 @@ namespace Advanced_Software_Engineering {
string command = commandAndParameters["command"][0]; string command = commandAndParameters["command"][0];
string[] parameters = commandAndParameters.Keys.Contains("parameters") ? commandAndParameters["parameters"] : new string[] { }; string[] parameters = commandAndParameters.Keys.Contains("parameters") ? commandAndParameters["parameters"] : new string[] { };
int parameterLength = parameters.Length;
switch (command) { switch (command) {
//Drawing commands
case "move": case "move":
case "moveto": case "moveto":
//Check parameters //Check parameters
if (parameters.Length == 2) { if (parameterLength == 2) {
return new MoveTo(drawer, return new MoveTo(drawer,
Value.ConvertToInt(parameters[0]), Value.ConvertToInt(parameters[0]),
Value.ConvertToInt(parameters[1])); Value.ConvertToInt(parameters[1]));
@@ -46,7 +48,7 @@ namespace Advanced_Software_Engineering {
case "line": case "line":
case "lineto": case "lineto":
//Check parameters //Check parameters
if (parameters.Length == 2) { if (parameterLength == 2) {
return new return new
DrawTo(drawer, DrawTo(drawer,
Value.ConvertToInt(parameters[0]), Value.ConvertToInt(parameters[0]),
@@ -55,13 +57,13 @@ namespace Advanced_Software_Engineering {
case "regularpolygon": case "regularpolygon":
case "rp": case "rp":
//Check parameters //Check parameters
if (parameters.Length == 2) { if (parameterLength == 2) {
return new return new
RegularPolygon(drawer, RegularPolygon(drawer,
Value.ConvertToInt(parameters[0]), Value.ConvertToInt(parameters[0]),
Value.ConvertToDouble(parameters[1]) Value.ConvertToDouble(parameters[1])
); );
} else if (parameters.Length == 3) { } else if (parameterLength == 3) {
return new RegularPolygon(drawer, return new RegularPolygon(drawer,
Value.ConvertToInt(parameters[0]), Value.ConvertToInt(parameters[0]),
Value.ConvertToDouble(parameters[1]), Value.ConvertToDouble(parameters[1]),
@@ -70,12 +72,12 @@ namespace Advanced_Software_Engineering {
} else throw new Exception(command + " has an incorrect number of parameters"); } else throw new Exception(command + " has an incorrect number of parameters");
case "square": case "square":
//Check parameters //Check parameters
if (parameters.Length == 1) { if (parameterLength == 1) {
return new return new
Square(drawer, Square(drawer,
Value.ConvertToDouble(parameters[0]) Value.ConvertToDouble(parameters[0])
); );
} else if (parameters.Length == 2) { } else if (parameterLength == 2) {
return new Square(drawer, return new Square(drawer,
Value.ConvertToDouble(parameters[0]), Value.ConvertToDouble(parameters[0]),
Value.ConvertToDouble(parameters[1]) Value.ConvertToDouble(parameters[1])
@@ -83,7 +85,7 @@ namespace Advanced_Software_Engineering {
} else throw new Exception(command + " has an incorrect number of parameters"); } else throw new Exception(command + " has an incorrect number of parameters");
case "quadrilateral": case "quadrilateral":
//Check parameters //Check parameters
if (parameters.Length == 8) { if (parameterLength == 8) {
return new Quadrilateral(drawer, return new Quadrilateral(drawer,
Value.ConvertToPoint(parameters[0], parameters[1]), Value.ConvertToPoint(parameters[0], parameters[1]),
Value.ConvertToPoint(parameters[2], parameters[3]), Value.ConvertToPoint(parameters[2], parameters[3]),
@@ -93,12 +95,12 @@ namespace Advanced_Software_Engineering {
} else throw new Exception(command + " has an incorrect number of parameters"); } else throw new Exception(command + " has an incorrect number of parameters");
case "rectangle": case "rectangle":
//Check parameters //Check parameters
if (parameters.Length == 2) { if (parameterLength == 2) {
return new Rectangle(drawer, return new Rectangle(drawer,
Value.ConvertToDouble(parameters[0]), Value.ConvertToDouble(parameters[0]),
Value.ConvertToDouble(parameters[1]) Value.ConvertToDouble(parameters[1])
); );
} else if (parameters.Length == 8) { } else if (parameterLength == 8) {
return new Quadrilateral(drawer, return new Quadrilateral(drawer,
Value.ConvertToPoint(parameters[0], parameters[1]), Value.ConvertToPoint(parameters[0], parameters[1]),
Value.ConvertToPoint(parameters[2], parameters[3]), Value.ConvertToPoint(parameters[2], parameters[3]),
@@ -108,7 +110,7 @@ namespace Advanced_Software_Engineering {
} else throw new Exception(command + " has an incorrect number of parameters"); } else throw new Exception(command + " has an incorrect number of parameters");
case "circle": case "circle":
//Check parameters //Check parameters
if (parameters.Length == 1) { if (parameterLength == 1) {
return new return new
Circle(drawer, Circle(drawer,
Value.ConvertToDouble(parameters[0]) Value.ConvertToDouble(parameters[0])
@@ -116,18 +118,18 @@ namespace Advanced_Software_Engineering {
} else throw new Exception(command + " has an incorrect number of parameters"); } else throw new Exception(command + " has an incorrect number of parameters");
case "triangle": case "triangle":
//Check parameters //Check parameters
if (parameters.Length == 1) { if (parameterLength == 1) {
return new return new
Triangle(drawer, Triangle(drawer,
Value.ConvertToDouble(parameters[0]) Value.ConvertToDouble(parameters[0])
); );
} else if (parameters.Length == 2) { } else if (parameterLength == 2) {
return new return new
Triangle(drawer, Triangle(drawer,
Value.ConvertToDouble(parameters[0]), Value.ConvertToDouble(parameters[0]),
Value.ConvertToDouble(parameters[1]) Value.ConvertToDouble(parameters[1])
); );
} else if (parameters.Length == 6) { } else if (parameterLength == 6) {
return new Triangle(drawer, return new Triangle(drawer,
Value.ConvertToPoint(parameters[0], parameters[1]), Value.ConvertToPoint(parameters[0], parameters[1]),
Value.ConvertToPoint(parameters[2], parameters[3]), Value.ConvertToPoint(parameters[2], parameters[3]),
@@ -136,36 +138,36 @@ namespace Advanced_Software_Engineering {
} else throw new Exception(command + " has an incorrect number of parameters"); } else throw new Exception(command + " has an incorrect number of parameters");
case "dot": case "dot":
if (parameters.Length == 0) { if (parameterLength == 0) {
return new Dot(drawer); return new Dot(drawer);
} else throw new Exception(command + " doesn't take parameters"); } else throw new Exception(command + " doesn't take parameters");
case "clear": case "clear":
if (parameters.Length == 0) { if (parameterLength == 0) {
return new Clear(drawer); return new Clear(drawer);
} else throw new Exception(command + " doesn't take parameters"); } else throw new Exception(command + " doesn't take parameters");
case "reset": case "reset":
case "resetpen": case "resetpen":
if (parameters.Length == 0) { if (parameterLength == 0) {
return new ResetPen(drawer); return new ResetPen(drawer);
} else throw new Exception(command + " doesn't take parameters"); } else throw new Exception(command + " doesn't take parameters");
case "fillon": case "fillon":
if (parameters.Length == 0) { if (parameterLength == 0) {
return new Fill(drawer, true); return new Fill(drawer, true);
} else throw new Exception(command + " doesn't take parameters"); } else throw new Exception(command + " doesn't take parameters");
case "filloff": case "filloff":
if (parameters.Length == 0) { if (parameterLength == 0) {
return new Fill(drawer, false); return new Fill(drawer, false);
} else throw new Exception(command + " doesn't take parameters"); } else throw new Exception(command + " doesn't take parameters");
case "pen": case "pen":
if (parameters.Length == 1) { if (parameterLength == 1) {
return new PenColor(drawer, Value.TextToColor(parameters[0])); return new PenColor(drawer, Value.TextToColor(parameters[0]));
} else if (parameters.Length == 3) { } else if (parameterLength == 3) {
return new PenColor(drawer, return new PenColor(drawer,
Value.IntsToColor( Value.IntsToColor(
Value.ConvertToInt(parameters[0]), Value.ConvertToInt(parameters[0]),
@@ -173,7 +175,7 @@ namespace Advanced_Software_Engineering {
Value.ConvertToInt(parameters[2]) Value.ConvertToInt(parameters[2])
) )
); );
} else if (parameters.Length == 4) { } else if (parameterLength == 4) {
return new PenColor(drawer, return new PenColor(drawer,
Value.IntsToColor( Value.IntsToColor(
Value.ConvertToInt(parameters[0]), Value.ConvertToInt(parameters[0]),
@@ -184,9 +186,9 @@ namespace Advanced_Software_Engineering {
); );
} else throw new Exception(command + " has an incorrect number of parameters"); } else throw new Exception(command + " has an incorrect number of parameters");
case "fill": case "fill":
if (parameters.Length == 1) { if (parameterLength == 1) {
return new FillColor(drawer, Value.TextToColor(parameters[0])); return new FillColor(drawer, Value.TextToColor(parameters[0]));
} else if (parameters.Length == 3) { } else if (parameterLength == 3) {
return new FillColor(drawer, return new FillColor(drawer,
Value.IntsToColor( Value.IntsToColor(
Value.ConvertToInt(parameters[0]), Value.ConvertToInt(parameters[0]),
@@ -194,7 +196,7 @@ namespace Advanced_Software_Engineering {
Value.ConvertToInt(parameters[2]) Value.ConvertToInt(parameters[2])
) )
); );
} else if (parameters.Length == 4) { } else if (parameterLength == 4) {
return new FillColor(drawer, return new FillColor(drawer,
Value.IntsToColor( Value.IntsToColor(
Value.ConvertToInt(parameters[0]), Value.ConvertToInt(parameters[0]),