コード例 #1
0
        public double distance(PointS ps)
        { // расстояние между точками
            double dx = x - ps.X;
            double dy = y - ps.Y;

            return(Math.Sqrt(dx * dx + dy * dy));
        }
コード例 #2
0
        double           rad; // радиус множества
                              // Конструктор выбирает из массива точки:
        public SetOfMassPoint(MassPoint[] collection, PointS ps, double rad)
        {
            List <MassPoint> list = new List <MassPoint>();

            foreach (MassPoint mp in collection)
            {
                if ((mp.coord.distance(ps) <= rad))
                {
                    list.Add(mp);
                }
            }
            set      = list.ToArray();
            this.rad = rad;
        }
コード例 #3
0
        // Реализация метода интерфейса (сравнение расстояний):
        public int CompareTo(object ob)
        {
            PointS temp = new PointS(0, 0);

            if (this.distance(temp) <
                ((PointS)ob).distance(temp))
            {
                return(1);
            }
            if (this.distance(temp) >
                ((PointS)ob).distance(temp))
            {
                return(-1);
            }
            return(0);
        }
コード例 #4
0
 double        mass;  // масса
 public MassPoint(PointS ps, double mass)
 {
     coord     = ps;
     this.mass = mass;
 }