Проектирование операций обработки заготовок

 

Листинг 88.1. Передача исходных данных с Form5 в Form7.

//Объявляем объект myForm7 в классе Form7:

Form7 myForm7 = new Form7();

//Присваиваем исходные данные другим переменным

//класса панели Form7, но с такими же именами переменных:

myForm7.d = d;

myForm7.H = H;

myForm7.Rn = Rn;

myForm7.s = s;

myForm7.Radio = Radio;

myForm7.s_sheet = s_sheet;

myForm7.C = C;

myForm7.L = L;

myForm7.rho = rho;

myForm7.nu = nu;

myForm7.El = El;

myForm7.sig_ys = sig_ys;

myForm7.sig_u = sig_u;

myForm7.e_u = e_u;

myForm7.e_tot = e_tot;

//Выводим Form7:

myForm7.Show();

Листинг 88.2. Метод для расчета силы штамповки clip_image002 (Fdraw).

double ForceDraw()

{

//Рассчитываем диаметр заготовки D:

double A, d_m, k_draw, Fdraw;

A=Area_Semiproduct();

D=Math.Sqrt(4*A/pi);

//Уточненный расчет k_draw сложен и зависит от s/D,

//но для упрощения принимаем, что:

k_draw=1;

//Средний диаметр стенки детали:

d_m=d-s;

//По упрощенной формуле (для экономии места)

//рассчитываем силу вытяжки Fdraw в N и

//делим на 1000, чтобы было в kN:

Fdraw=pi*d_m*s*sig_u*k_draw/1000;

return Fdraw;

}

Теперь для выполнения расчета и вывода результатов расчета в окна Form7 (при помощи кнопки со знаком равенства “=”) дважды щелкаем эту кнопку. Появляется файл Form7.cs с шаблоном, в который записываем:

Листинг 88.3. Код кнопки “=” для расчета третьей операции.

//Расчет и передача в окна диалоговой панели Form7

//параметров полуфабриката (Semiproduct):

textBox1.Text = d.ToString();

textBox2.Text = Semiproduct().ToString();

textBox3.Text = Rn.ToString();

textBox4.Text = s.ToString();

textBox5.Text = Allowance().ToString();

textBox6.Text = H.ToString();

textBox7.Text = ForceDraw().ToString();

Листинг 88.4. Код для выполнения анимации.

//Объявляем булеву переменную myHeight со значением false:

bool myHeight = false;

private void timer1_Tick(object sender, EventArgs e)

{

//Вводим анимацию:

if (myHeight == false)

{

//Изменяем высоту элемента управления до 70:

this.button1.Height = 70;

//Изменяем значение myHeight на противоположное:

myHeight = true;

}

else

{

//Изменяем высоту элемента управления до 50: this.button1.Height = 50;

//Изменяем значение myHeight на противоположное:

myHeight = false;

}

}

В этом коде мы можем устанавливать чередование двух других значений высоты элемента управления. Задавая в панели Properties с заголовком timer1 различные значения свойству Interval (а выше мы задали 1000 миллисекунд или 1 секунду), можно изменять частоту чередования высот элемента управления, например, кнопки. Методика приостановки и возобновления анимации (с примерами) дана выше.

Предлагаю ознакомиться с аналогичными статьями: