public void generate()
        {
            //для рандомного генерування
            Random rand = new Random();

            //генерування наявності 3D (генеруємо число до 100, якщо менше 50 - має 3D, якщо більше - не має
            network.set_3D((rand.Next(100) < 50) ? true : false);

            //створення модульного класу для збереження меж генерування
            RangeOfRandomNode range = new RangeOfRandomNode();

            //відкриття форми для заповнення меж
            Form generationRange = new SetRangeOfRandomNode(range);

            generationRange.ShowDialog();

            //кількість майбутніх вузлів
            int num = rand.Next(range.get_minNumNodes(), range.get_maxNumNodes());

            //цикл генерування вузлів
            for (int counter = 0; counter < num; counter++)
            {
                //створення нового вузла
                Node newNode = new Node();

                //встановлення рандомно-згенерованих параметрів вузла
                {
                    //встановлення координат
                    newNode.set_X(rand.Next(range.get_minX(), range.get_maxX()));
                    newNode.set_Y(rand.Next(range.get_minY(), range.get_maxY()));
                    newNode.set_Z(rand.Next(range.get_minZ(), range.get_maxZ()));

                    //встановлення наявності GPS у вузлі
                    newNode.setGPS((rand.Next(100) < 50) ? true : false);

                    //встановлення розмірів вузла
                    newNode.setHeight(rand.Next(range.get_minHeight(), range.get_maxHeight()));
                    newNode.setLength(rand.Next(range.get_minLength(), range.get_maxLength()));
                    newNode.setWidth(rand.Next(range.get_minWidth(), range.get_maxWidth()));

                    //встановлення списку сенсорів, радіусу дії та часу заряду акумулятора
                    for (int numCurrentSensor = 0; numCurrentSensor < 0; numCurrentSensor++)
                    {
                        ;
                    }

                    int rangeOfAction = rand.Next(range.get_minRange(), range.get_maxRange());
                    newNode.setRandeOfAction(rangeOfAction - rangeOfAction % 100);

                    newNode.setBatteryCharge(rand.Next(range.get_minBatteryCharge(), range.get_maxBatteryCharge()));
                }

                //додавання сформованого вузла в мережу
                network.addNode(newNode);
            }

            network.calculateSize();
        }
        private RangeOfRandomNode range;                     //клас для зберігання меж рандомного вузла

        public SetRangeOfRandomNode(RangeOfRandomNode range) //конструктор (приймаємо об'єкт для зберігання меж)
        {
            InitializeComponent();
            this.range = range;
        }