Пример #1
0
        private void Instance_OnHolographicInfoChanged(HolographicInfo obj)
        {
            for (int i = 0; i < points.Count; i++)
            {
                Point point = points[i];
                //_spaceTransformer.Pt2Xy(obj.fHorizontalValue, obj.fVerticalValue, obj.struPtzPos.fPanPos, obj.struPtzPos.fTiltPos, point.X, point.Y, out double x, out double y);

                Point tagPoint = _spaceTransformer.AngleLocationToScreenLocation(point.X, point.Y, obj.CameraParameter);
                TagCollection[i].Location = tagPoint;
            }
        }
Пример #2
0
        private void MiAddTag_Click(object sender, RoutedEventArgs e)
        {
            string          devId           = "test";
            HolographicInfo holographicInfo = HolographicInfoCache.Instance.GetHolographicInfoByDeviceId(devId);

            if (string.IsNullOrEmpty(holographicInfo.Id))
            {
                LogHelper.Default.DebugFormatted("获取设备id:{0} 的全息信息失败,无法计算标签位置", devId);
                return;
            }

            PTZ ptz = _spaceTransformer.ScreenLocationToAngleLocation(_mouseRightClickPosition, holographicInfo.CameraParameter);

            TagConfigWindow tagConfigWindow = new TagConfigWindow();

            tagConfigWindow.Owner = Window.GetWindow(this);
            tagConfigWindow.Show();
        }
Пример #3
0
        private void Instance_OnGisInfoChanged(CHCNetSDK.NET_DVR_GIS_UPLOADINFO obj)
        {
            HolographicInfo holographicInfo = new HolographicInfo()
            {
                CameraParameter = new CameraParam()
                {
                    HorizontalFieldOfView = obj.fHorizontalValue,
                    VerticalFieldOfView   = obj.fVerticalValue,
                    Pan  = obj.struPtzPos.fPanPos,
                    Tilt = obj.struPtzPos.fTiltPos,
                    Zoom = obj.struPtzPos.fZoomPos,
                },
                GeoInfo = new GeographicInfo()
                {
                },
                Id = "test",
            };

            _holographicInfoDict.AddOrUpdate(holographicInfo.Id, holographicInfo, (oldKey, oldValue) => holographicInfo);
            OnHolographicInfoChanged?.Invoke(holographicInfo);
        }