public void TestDimensions() { StructuralElement test = new StructuralElement(new byte[3,3] { {0,0,0}, {0,0,0}, {0,0,0} }, new Point(1,1)); Assert.AreEqual(3, test.Height, "Height is not correct."); Assert.AreEqual(3, test.Width, "Width is not correct."); }
public void TestTopLeftOrigin() { StructuralElement test = new StructuralElement(new byte[3,3] { {0,0,0}, {0,0,0}, {0,0,0} }, new Point(0,0)); Assert.Contains(new Point(0,0), test.ExaminePoints); Assert.Contains(new Point(0,1), test.ExaminePoints); Assert.Contains(new Point(0,2), test.ExaminePoints); Assert.Contains(new Point(1,0), test.ExaminePoints); Assert.Contains(new Point(1,1), test.ExaminePoints); Assert.Contains(new Point(1,2), test.ExaminePoints); Assert.Contains(new Point(2,0), test.ExaminePoints); Assert.Contains(new Point(2,1), test.ExaminePoints); Assert.Contains(new Point(2,2), test.ExaminePoints); }
public void TestCenterOrigin() { StructuralElement test = new StructuralElement(new byte[3,3] { {0,0,0}, {0,0,0}, {0,0,0} }, new Point(1,1)); Assert.Contains(new Point(-1,-1), test.ExaminePoints); Assert.Contains(new Point(-1, 0), test.ExaminePoints); Assert.Contains(new Point(-1, 1), test.ExaminePoints); Assert.Contains(new Point( 0,-1), test.ExaminePoints); Assert.Contains(new Point( 0, 0), test.ExaminePoints); Assert.Contains(new Point( 0, 1), test.ExaminePoints); Assert.Contains(new Point( 1,-1), test.ExaminePoints); Assert.Contains(new Point( 1,0), test.ExaminePoints); Assert.Contains(new Point( 1, 1), test.ExaminePoints); }
public void TestSomePointsOn() { StructuralElement test = new StructuralElement(new byte[3,3] { {255,0,255}, {0,255,0}, {255,0,255} }, new Point(1,1)); Assert.AreEqual(4, test.ExaminePoints.Count, "Unexpected number of points in the examination list."); }
public void SetUp() { StructuralElement element = new StructuralElement( new byte[3,3] { {0,0,0}, {0,0,0}, {0,0,0} }, new Point(1,1)); morphoOperation = new Operation(element); // Fix up the test arrays with the right values. // 0s are a lot prettier to look at than 255s! for (int y = 0; y < TEST_IMAGE_DIMENSION; y++) { for (int x = 0; x < TEST_IMAGE_DIMENSION; x++) { testImageSource[x,y] = (testImageSource[x,y] == 0) ? Constants.PIXEL_VALUE_WHITESPACE : Constants.PIXEL_VALUE_INK; testImageErosionResult[x,y] = (testImageErosionResult[x,y] == 0) ? Constants.PIXEL_VALUE_WHITESPACE : Constants.PIXEL_VALUE_INK; testImageDilationResult[x,y] = (testImageDilationResult[x,y] == 0) ? Constants.PIXEL_VALUE_WHITESPACE : Constants.PIXEL_VALUE_INK; testImageOpeningResult[x,y] = (testImageOpeningResult[x,y] == 0) ? Constants.PIXEL_VALUE_WHITESPACE : Constants.PIXEL_VALUE_INK; testImageClosingSource[x,y] = (testImageClosingSource[x,y] == 0) ? Constants.PIXEL_VALUE_WHITESPACE : Constants.PIXEL_VALUE_INK; testImageClosingResult[x,y] = (testImageClosingResult[x,y] == 0) ? Constants.PIXEL_VALUE_WHITESPACE : Constants.PIXEL_VALUE_INK; } } }
public Operation(StructuralElement element) { this.StructuralElement = element; }