예제 #1
0
 public PixelPoint GetPixelPoint(ProjectionPoint Point)
 {
     return(new PixelPoint()
     {
         X = R11 * Point.X + R12 * Point.Y + Ref1, Y = R21 * Point.X + R22 * Point.Y + Ref2
     });
 }
예제 #2
0
파일: TAN.cs 프로젝트: mostanes/umbrella2
        public override EquatorialPoint GetEquatorialPoint(ProjectionPoint Point)
        {
            double Rho  = Sqrt(Point.X * Point.X + Point.Y * Point.Y + ADDC);
            double C    = Atan(Rho);
            double RAn  = RA + Atan2(Point.X, Cos(Dec) - Point.Y * Sin(Dec));
            double Decn = Asin((Point.Y * Cos(Dec) + Sin(Dec)) * Cos(C));

            return(new EquatorialPoint()
            {
                RA = RAn, Dec = Decn
            });
        }
예제 #3
0
파일: TAN.cs 프로젝트: mostanes/umbrella2
 public override ProjectionPoint[] GetProjectionPoints(EquatorialPoint[] Points)
 {
     ProjectionPoint[] EqP = new ProjectionPoint[Points.Length];
     for (int i = 0; i < Points.Length; i++)
     {
         double DDec = Points[i].Dec;
         double RRa  = Points[i].RA;
         double CC   = Sin(DDec) * Sin(Dec) + Cos(DDec) * Cos(Dec) * Cos(RRa - RA);
         EqP[i].X = Cos(DDec) * Sin(RRa - RA) / CC;
         EqP[i].Y = (Cos(Dec) * Sin(DDec) - Sin(Dec) * Cos(DDec) * Cos(RRa - RA)) / CC;
     }
     return(EqP);
 }
예제 #4
0
 public ProjectionPoint[] GetProjectionPoints(PixelPoint[] Points)
 {
     ProjectionPoint[] pps = new ProjectionPoint[Points.Length];
     for (int i = 0; i < Points.Length; i++)
     {
         pps[i] = new ProjectionPoint()
         {
             X = C11 * (Points[i].X - Ref1) + C12 * (Points[i].Y - Ref2), Y = C21 * (Points[i].X - Ref1) + C22 * (Points[i].Y - Ref2)
         }
     }
     ;
     return(pps);
 }
예제 #5
0
 public abstract EquatorialPoint GetEquatorialPoint(ProjectionPoint Point);