예제 #1
0
        public void Should_Throw_EmptyAreaException_When_ReducedArea_IsEmpty()
        {
            _mapBuilder.InitNewMap(_destArea, _sourceArea);
            var reducedArea = Area2D.Empty;

            Should.Throw <EmptyAreaException>(() => _mapBuilder.ReduceDestArea(reducedArea));
        }
예제 #2
0
        public void Should_Throw_EmptyAreaException_When_IgnoreArea_IsEmpty()
        {
            _mapBuilder.InitNewMap(_destArea, _sourceArea);
            var ignoreArea = Area2D.Empty;

            Should.Throw <EmptyAreaException>(() => _mapBuilder.SetIgnoredSourcedArea(ignoreArea));
        }
        public void Should_Throw_EmptyAreaException_When_AreaOnDest_IsEmpty()
        {
            _mapBuilder.InitNewMap(_destArea, _sourceArea);
            var areaOnDest   = Area2D.Empty;
            var areaOnSource = Area2D.Create(0, 0, 5, 5);

            Should.Throw <EmptyAreaException>(() => _mapBuilder.AddAssociatedAreas(areaOnDest, areaOnSource));
        }
예제 #4
0
        public PmData(ZsImage destImage, ZsImage srcImage)
        {
            if (destImage == null)
            {
                throw new ArgumentNullException(nameof(destImage));
            }

            if (srcImage == null)
            {
                throw new ArgumentNullException(nameof(srcImage));
            }

            DestImage = destImage;
            SrcImage  = srcImage;

            Nnf      = new Nnf(destImage.Width, destImage.Height, srcImage.Width, srcImage.Height);
            Settings = new PatchMatchSettings();

            var destImageArea = Area2D.Create(0, 0, destImage.Width, destImage.Height);

            DestImagePixelsArea = destImageArea;

            var mapBuilder = new Area2DMapBuilder();

            mapBuilder.InitNewMap(
                destImageArea,
                Area2D.Create(0, 0, srcImage.Width, srcImage.Height));
            Map = mapBuilder.Build();
        }
예제 #5
0
        protected static Area2DMap CreateMapping(int x, int y, int w, int h)
        {
            var builder = new Area2DMapBuilder();

            builder.InitNewMap(Area2D.Create(x, y, w, h), Area2D.Create(x, y, w, h));
            var mapping = builder.Build();

            return(mapping);
        }
예제 #6
0
        public WhenAddMapping()
        {
            _mapBuilder = new Area2DMapBuilder();

            _sourceArea = Area2D.Create(0, 0, 10, 10);
            _destArea   = Area2D.Create(0, 0, 10, 10);

            _mapping = _mapBuilder.InitNewMap(_destArea, _sourceArea)
                       .Build();

            _mapBuilder = new Area2DMapBuilder();
        }
예제 #7
0
 public void Should_Throw_EmptyAreaException_When_Dest_Is_Empty()
 {
     Should.Throw <EmptyAreaException>(() => _mapBuilder.InitNewMap(_emptyArea, _sourceArea));
 }
예제 #8
0
        public void Every_Dest_Point_From_Result_Should_Present_In_DestArea()
        {
            _mapBuilder.InitNewMap(_destArea, _sourceArea);
            var mapping = _mapBuilder.Build();

            foreach (var destPoint in mapping.DestPoints)
            {
                _destArea.Points.Contains(destPoint).ShouldBeTrue();
            }
        }
예제 #9
0
 public void Should_Throw_ArgumentNullException_When_Mapping_Is_Null()
 {
     _mapBuilder.InitNewMap(_destArea, _sourceArea);
     Should.Throw <ArgumentNullException>(() => _mapBuilder.AddMapping(null));
 }