Exemplo n.º 1
0
        /// <summary>
        /// Проверка конической поверхности
        /// </summary>
        /// <param name="Input"></param>
        public CMCGPCheckedResult CheckSurface(CMCheckedGeoPoint Input, CMAPSurfaceC SurfaceC)
        {
            double height     = 100;
            bool   IsObstacle = false;
            double dif        = 0;

            CMCGPCheckedResult CheckedResult = new CMCGPCheckedResult();

            CheckedResult.SurfaceName = "Граница района аэродрома";
            height += APInf.AirfieldHeight;

            if (CMGeoBase.IsPointInPolygon(mPointsList, Input.Coordinates))
            {
                if (CMGeoBase.IsPointInPolygon(SurfaceC.PointsList, Input.Coordinates) == false)
                {
                    CheckedResult.ResultText = "Попадает в границы района аэродрома";
                }
            }

            CheckedResult.IsObstacle    = IsObstacle;
            CheckedResult.PointHeight   = Input.Height;
            CheckedResult.SurfaceHeight = height;
            CheckedResult.Exceeding     = dif;
            return(CheckedResult);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Проверка конической поверхности
        /// </summary>
        /// <param name="Input"></param>

        public CMCGPCheckedResult CheckSurface(CMCheckedGeoPoint Input, CMAPSurfaceC SurfaceC)
        {
            double height     = 100;
            bool   IsObstacle = false;
            double dif        = 0;

            CMCGPCheckedResult CheckedResult = new CMCGPCheckedResult();

            CheckedResult.SurfaceName = SurfaceName;// string.Format("Поверхность R-{0}", Radius);
            height += APInf.AirfieldHeight;

            if (CMGeoBase.IsPointInPolygon(mPointsList, Input.Coordinates))
            {
                if (CMGeoBase.IsPointInPolygon(SurfaceC.PointsList, Input.Coordinates) == false)
                {
                    CheckedResult.ResultText = string.Format("Попадает в {0} ", SurfaceName);
                }
            }

            CheckedResult.IsObstacle    = IsObstacle;
            CheckedResult.PointHeight   = Input.Height;
            CheckedResult.SurfaceHeight = height;
            CheckedResult.Exceeding     = dif;
            return(CheckedResult);
        }
Exemplo n.º 3
0
        public CMAPSurfaces()
        {
            SurfaceA = new CMAPSurfaceA();
            SurfaceB = new CMAPSurfaceB();
            SurfaceC = new CMAPSurfaceC();
            SurfaceOuterHorizontal = new CMAPSurfaceC();
            SurfaceD      = new CMAPSurfaceD();
            SurfaceE      = new CMAPSurfaceC();
            SurfaceNoiseG = new CMBAPSurfaceNoise(5947.81, 726.22, 61, "Шумовая зона Г");
            SurfaceNoiseV = new CMBAPSurfaceNoise(8196.22, 1007.73, 61, "Шумовая зона В");
            SurfaceNoiseB = new CMBAPSurfaceNoise(11073.75, 1368.12, 61, "Шумовая зона Б");

            APPVP_B = new CMAPPVP();

            ApproachSurface    = new CMApproachSurfaceData();
            TransitionSurface  = new CMTransitionSurfaceData();
            TakeoffSurface     = new CMTakeoffSurfaceData(0.016, "Поверхность взлета");
            TakeoffSurfaceInfo = new CMTakeoffSurfaceData(0.012, "Информационная поверхность");

            InnerApproachSurface     = new CMInnerApproachSurfaceData();
            CancelledApproachSurface = new CMCancelledApproachSurfaceData();
            InnerTransitionSurface   = new CMInnerTransitionSurfaceData();
        }