Example #1
0
        public void Run(string configFile)
        {
            PanoScreen.Initialize();
            var mosaicInfo = PanoScreen.GetMosaicInfo();

            var screen = new PanoScreen
            {
                Resolution = new Size((int)mosaicInfo.ProjectorWidth * 2 - mosaicInfo.Overlap, (int)mosaicInfo.ProjectorHeight),
                Overlap    = mosaicInfo.Overlap
            };

            screen.AddProjectors(mosaicInfo.DisplayId0, mosaicInfo.DisplayId1);

            var xmlSerializer = new XmlSerializer(typeof(Configuration.Configuration));

            Configuration.Configuration config;
            using (var reader = new XmlTextReader(configFile))
            {
                config = (Configuration.Configuration)xmlSerializer.Deserialize(reader);
            }
            Configuration.Configuration.Instance.UpdateConfig(config);
            screen.Update(config.Settings.PatternSize, new Size(config.Settings.PatternCountX, config.Settings.PatternCountY), config.Settings.KeepCorners, config.Settings.ControlPointsInsideOverlap);
            screen.UpdateProjectorsFromConfig(ProjectorMapper.MapProjectorsData(Configuration.Configuration.Instance.Projectors));

            screen.WarpBlend(false);
            //screen.Warp();
        }
Example #2
0
        public void Initialize(PanoScreen screen)
        {
            _screen = screen;
            var width  = Resolution.Width;
            var height = Resolution.Height;

            Width         = width;
            Height        = height;
            Image1.Width  = width;
            Image1.Height = height;
            WarpControl1.Initialize(screen);

            _screen.SetPattern(
                Configuration.Configuration.Instance.Settings.PatternSize,
                new Size(Configuration.Configuration.Instance.Settings.PatternCountX, Configuration.Configuration.Instance.Settings.PatternCountY),
                Configuration.Configuration.Instance.Settings.ControlPointsInsideOverlap, false);

            _screen.UpdateProjectorsFromConfig(ProjectorMapper.MapProjectorsData(Configuration.Configuration.Instance.Projectors));

            //EventHelper.SubscribeEvent<CalibrationDataChanged, CalibrationData>(OnCalibrationDataChanged);
            EventHelper.SubscribeEvent <ControlPointsMoved, ControlPointData>(OnControlPointsMoved);
            //EventHelper.SubscribeEvent<ApplicationReady, EventArgs>(OnApplicationReady);
        }