public AstronomicalPoint(AngularUnit HorizontalAngle, AngularUnit verticalAngle)
        {
            //Check if verticalAngle is not between -90 and 90
            this.m_HorizontalAngle = HorizontalAngle.ChangeTo <TAngular>();

            this.m_VerticalAngle = verticalAngle.ChangeTo <TAngular>();
        }
        public SphericalPoint(LinearUnit radius, AngularUnit HorizontalAngle, AngularUnit verticalAngle)
        {
            this.m_Radius = radius.ChangeTo <TLinear>();

            this.m_HorizontalAngle = HorizontalAngle.ChangeTo <TAngular>();

            this.m_VerticalAngle = verticalAngle.ChangeTo <TAngular>();
        }
예제 #3
0
        public IPolar Rotate(AngularUnit value, RotateDirection direction)
        {
            double tempValue = (int)direction * (int)Handedness * value.ChangeTo <TAngular>().Value;

            LinearCollection <TLinear> newRadius = (LinearCollection <TLinear>) this.Radius.Clone();

            AngularCollection <TAngular> newAngle = (AngularCollection <TAngular>) this.Angle.AddAllValuesWith(tempValue);

            return(new Polar <TLinear, TAngular>(newRadius, newAngle, this.Handedness));
        }
예제 #4
0
        public EllipsoidalPoint(IEllipsoid ellipsoid, AngularUnit horizontalAngle, AngularUnit verticalAngle)
        {
            if (verticalAngle.Range != AngleRange.MinusPiTOPi)
            {
                verticalAngle.Range = AngleRange.MinusPiTOPi;
            }

            this.m_Datum = ellipsoid.ChangeTo <TLinear, TAngular>();

            this.m_VerticalAngle = verticalAngle.ChangeTo <TAngular>();

            this.m_HorizontalAngle = horizontalAngle.ChangeTo <TAngular>();
        }
예제 #5
0
        public GeodeticPoint(IEllipsoid ellipsoid, LinearUnit height, AngularUnit longitude, AngularUnit latitude)
        {
            if (latitude.Range != AngleRange.MinusPiTOPi)
            {
                latitude.Range = AngleRange.MinusPiTOPi;
            }

            this.m_Datum = ellipsoid.ChangeTo <TLinear, TAngular>();

            this.m_Height = height.ChangeTo <TLinear>();

            this.m_Latitude = latitude.ChangeTo <TAngular>();

            this.m_Longitude = longitude.ChangeTo <TAngular>();
        }
예제 #6
0
        public PolarPoint(LinearUnit radius, AngularUnit angle)
        {
            this.m_Radius = (TLinear)radius.ChangeTo <TLinear>();

            this.m_Angle = (TAngular)angle.ChangeTo <TAngular>();
        }