Beispiel #1
0
        private void MapFrameViewChanged(object sender, ViewChangedEventArgs e)
        {
            int       xDiff    = e.NewView.X - e.OldView.X;
            int       yDiff    = e.NewView.Y - e.OldView.Y;
            int       wDiff    = e.NewView.Width - e.OldView.Width;
            int       hDiff    = e.NewView.Height - e.OldView.Height;
            Rectangle currView = _geoSlaveMapFrame.View;

            _geoSlaveMapFrame.View = new Rectangle(currView.X + xDiff, currView.Y + yDiff, currView.Width + wDiff, currView.Height + hDiff);

            // clip rectangles needs to move in opposite direction of view
            Rectangle currSlaveClipRect = _geoSlaveMapFrame.ClipRectangle;

            _geoSlaveMapFrame.ClipRectangle = new Rectangle(currSlaveClipRect.X - xDiff, currSlaveClipRect.Y - yDiff, currSlaveClipRect.Width - wDiff, currSlaveClipRect.Height - hDiff);

            var       mf = (MapFrame)MapFrame;
            Rectangle currMasterClipRect = mf.ClipRectangle;

            mf.ClipRectangle = new Rectangle(currMasterClipRect.X - xDiff, currMasterClipRect.Y - yDiff, currMasterClipRect.Width - wDiff, currMasterClipRect.Height - hDiff);
        }
Beispiel #2
0
        private void MapFrameViewChanged(object sender, ViewChangedEventArgs e)
        {
            int       x_diff    = e.NewView.X - e.OldView.X;
            int       y_diff    = e.NewView.Y - e.OldView.Y;
            int       w_diff    = e.NewView.Width - e.OldView.Width;
            int       h_diff    = e.NewView.Height - e.OldView.Height;
            Rectangle curr_view = _geoSlaveMapFrame.View;

            _geoSlaveMapFrame.View = new Rectangle(curr_view.X + x_diff, curr_view.Y + y_diff,
                                                   curr_view.Width + w_diff, curr_view.Height + h_diff);

            // clip rectangles needs to move in opposite direction of view
            Rectangle curr_slaveClipRectangle = _geoSlaveMapFrame.ClipRectangle;

            _geoSlaveMapFrame.ClipRectangle = new Rectangle(curr_slaveClipRectangle.X - x_diff,
                                                            curr_slaveClipRectangle.Y - y_diff,
                                                            curr_slaveClipRectangle.Width - w_diff, curr_slaveClipRectangle.Height - h_diff);

            var       mf = (MapFrame)MapFrame;
            Rectangle curr_masterClipRectangle = mf.ClipRectangle;

            mf.ClipRectangle = new Rectangle(curr_masterClipRectangle.X - x_diff, curr_masterClipRectangle.Y - y_diff,
                                             curr_masterClipRectangle.Width - w_diff, curr_masterClipRectangle.Height - h_diff);
        }
        private void MapFrameViewChanged(object sender, ViewChangedEventArgs e)
        {
            int x_diff = e.NewView.X - e.OldView.X;
            int y_diff = e.NewView.Y - e.OldView.Y;
            int w_diff = e.NewView.Width - e.OldView.Width;
            int h_diff = e.NewView.Height - e.OldView.Height;
            Rectangle curr_view = _geoSlaveMapFrame.View;
            _geoSlaveMapFrame.View = new Rectangle(curr_view.X + x_diff, curr_view.Y + y_diff,
                curr_view.Width + w_diff, curr_view.Height + h_diff);

            // clip rectangles needs to move in opposite direction of view
            Rectangle curr_slaveClipRectangle = _geoSlaveMapFrame.ClipRectangle;
            _geoSlaveMapFrame.ClipRectangle = new Rectangle(curr_slaveClipRectangle.X - x_diff,
                curr_slaveClipRectangle.Y - y_diff,
                curr_slaveClipRectangle.Width - w_diff, curr_slaveClipRectangle.Height - h_diff);

            var mf = (MapFrame)MapFrame;
            Rectangle curr_masterClipRectangle = mf.ClipRectangle;
            mf.ClipRectangle = new Rectangle(curr_masterClipRectangle.X - x_diff, curr_masterClipRectangle.Y - y_diff,
                curr_masterClipRectangle.Width - w_diff, curr_masterClipRectangle.Height - h_diff);
        }