Example #1
0
        private static void RunTestAndSaveResults(List <Point> points, string outputFileName, double allowedHoleHeight)
        {
            var bitmap = GetWhiteBitmap();

            DrawOutPoints(bitmap, Color.Green, points);

            HolePlugger.PlugHolesRepeatedly(points, allowedHoleHeight, MinXOrMaxXEnum.MaxX);

            DrawOutPoints(bitmap, Color.Red, points);
            SaveResults(bitmap, outputFileName);
        }
Example #2
0
        public void TestModifyMaxXValuesBasedOnNewPoints()
        {
            const string outputFileName = "TestModifyMaxXValuesBasedOnNewPoints";

            var points = new List <Point>
            {
                new Point(50, 0),
                new Point(60, 10),
                new Point(35, 20),
                new Point(50, 30),
                new Point(35, 40),
                new Point(60, 50),
                new Point(70, 60),
                new Point(80, 70),
                new Point(90, 80),
                new Point(99, 90),
            };

            var bitmap = GetWhiteBitmap();

            DrawOutPoints(bitmap, Color.Green, points);

            HolePlugger.PlugHolesRepeatedly(points, 30, MinXOrMaxXEnum.MaxX);

            var minMaxXIndices = new MinAndMaxIndices[89];

            //if index values are not initialized, everything will be bypassed
            for (var yIndex = 0; yIndex < minMaxXIndices.Length; yIndex++)
            {
                minMaxXIndices[yIndex] = new MinAndMaxIndices {
                    Max = 1, InitializedToZeroZero = false
                };
            }

            HolePlugger.ModifyXValuesBasedOnNewPoints(minMaxXIndices, points, MinXOrMaxXEnum.MaxX);

            DrawOutIndices(bitmap, minMaxXIndices, Color.Red);
            SaveResults(bitmap, outputFileName);
        }