Смекни!
smekni.com

Расчёт статически определяемых стержневых систем неравного сечения на растяжение-сжатие (стр. 8 из 10)

Pic:=Tbitmap.Create;

Pic.LoadFromFile('l5.bmp');

Form1.image1.Canvas.Draw(round(ep92[5])-20,485,Pic);


Pic:=Tbitmap.Create;

Pic.LoadFromFile('o5.bmp');

Form1.image2.Canvas.Draw(2,56,Pic);

Pic:=Tbitmap.Create;

Pic.LoadFromFile('o4.bmp');

Form1.image2.Canvas.Draw(2,69,Pic);

Pic:=Tbitmap.Create;

Pic.LoadFromFile('o3.bmp');

Form1.image2.Canvas.Draw(2,83,Pic);

Pic:=Tbitmap.Create;

Pic.LoadFromFile('o2.bmp');

Form1.image2.Canvas.Draw(2,96,Pic);

Pic:=Tbitmap.Create;

Pic.LoadFromFile('o1.bmp');

Form1.image2.Canvas.Draw(2,109,Pic);


Pic:=Tbitmap.Create;

Pic.LoadFromFile('l1.bmp');

Form1.image2.Canvas.Draw(2,136,Pic);

Pic:=Tbitmap.Create;

Pic.LoadFromFile('l2.bmp');

Form1.image2.Canvas.Draw(2,149,Pic);

Pic:=Tbitmap.Create;

Pic.LoadFromFile('l3.bmp');

Form1.image2.Canvas.Draw(2,162,Pic);

Pic:=Tbitmap.Create;

Pic.LoadFromFile('l4.bmp');

Form1.image2.Canvas.Draw(2,175,Pic);

Pic:=Tbitmap.Create;

Pic.LoadFromFile('l5.bmp');

Form1.image2.Canvas.Draw(2,188,Pic);

end;


if (a=1) and (b=1) then begin


epi1; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep12[1]),580-round(masif1[1])); Form1.Image1.Canvas.LineTo(round(ep12[2]),580-round(masif1[2])); Form1.Image1.Canvas.LineTo(round(ep12[2]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 1 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis1[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis1[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 1 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis1[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis1[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 1 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis1[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis1[i])/m,ffFixed,15,okr)+' кН/мм * E')


end;


end;


if (a=1) and (b=2) then begin


epi2; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep22[1]),580-round(masif2[1])); Form1.Image1.Canvas.LineTo(round(ep22[2]),580-round(masif2[2])); Form1.Image1.Canvas.LineTo(round(ep22[3]),580-round(masif2[2])); Form1.Image1.Canvas.LineTo(round(ep22[3]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 2 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis2[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis2[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 2 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis2[i])/m)+' кН/см * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis2[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 2 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis2[i])/m)+' кН/мм * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis2[i])/m,ffFixed,15,okr)+' кН/мм * E')


end; end;


if (a=1) and (b=3) then begin


epi3; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep32[1]),580-round(masif3[1])); Form1.Image1.Canvas.LineTo(round(ep32[2]),580-round(masif3[2])); Form1.Image1.Canvas.LineTo(round(ep32[3]),580-round(masif3[3])); Form1.Image1.Canvas.LineTo(round(ep32[4]),580-round(masif3[3])); Form1.Image1.Canvas.LineTo(round(ep32[4]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis3[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis3[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis3[i])/m)+' кН/см * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis3[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis3[i])/m)+' кН/мм * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis3[i])/m,ffFixed,15,okr)+' кН/мм * E')


end; end;


if (a=2) and (b=1) then begin


epi4; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep42[1]),580-round(masif4[1])); Form1.Image1.Canvas.LineTo(round(ep42[2]),580-round(masif4[2])); Form1.Image1.Canvas.LineTo(round(ep42[3]),580-round(masif4[2])); Form1.Image1.Canvas.LineTo(round(ep42[3]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 2 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis4[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis4[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 2 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis4[i])/m)+' кН/см * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis4[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 2 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis4[i])/m)+' кН/мм * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis4[i])/m,ffFixed,15,okr)+' кН/мм * E')


end;


end; if (a=2) and (b=2) then begin


epi5; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep52[1]),580-round(masif5[1])); Form1.Image1.Canvas.LineTo(round(ep52[2]),580-round(masif5[2])); Form1.Image1.Canvas.LineTo(round(ep52[3]),580-round(masif5[3])); Form1.Image1.Canvas.LineTo(round(ep52[4]),580-round(masif5[3])); Form1.Image1.Canvas.LineTo(round(ep52[4]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis5[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis5[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis5[i])/m)+' кН/см * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis5[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis5[i])/m)+' кН/мм * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis5[i])/m,ffFixed,15,okr)+' кН/мм * E')


end;


end; if (a=2) and (b=3) then begin


epi6; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep62[1]),580-round(masif6[1])); Form1.Image1.Canvas.LineTo(round(ep62[2]),580-round(masif6[2])); Form1.Image1.Canvas.LineTo(round(ep62[3]),580-round(masif6[3])); Form1.Image1.Canvas.LineTo(round(ep62[4]),580-round(masif6[4])); Form1.Image1.Canvas.LineTo(round(ep62[5]),580-round(masif6[4]));; Form1.Image1.Canvas.LineTo(round(ep62[5]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 4 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis6[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis6[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 4 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis6[i])/m)+' кН/см * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis6[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 4 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis6[i])/m)+' кН/мм * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis6[i])/m,ffFixed,15,okr)+' кН/мм * E')


end;

end; if (a=3) and (b=1) then begin epi7; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep72[1]),580-round(masif7[1])); Form1.Image1.Canvas.LineTo(round(ep72[2]),580-round(masif7[2])); Form1.Image1.Canvas.LineTo(round(ep72[3]),580-round(masif7[3])); Form1.Image1.Canvas.LineTo(round(ep72[4]),580-round(masif7[4])); Form1.Image1.Canvas.LineTo(round(ep72[4]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis7[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis7[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis7[i])/m)+' кН/см * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis7[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 3 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis7[i])/m)+' кН/мм * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis7[i])/m,ffFixed,15,okr)+' кН/мм * E') end;

end; if (a=3) and (b=2) then begin epi8; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep82[1]),580-round(masif8[1])); Form1.Image1.Canvas.LineTo(round(ep82[2]),580-round(masif8[2])); Form1.Image1.Canvas.LineTo(round(ep82[3]),580-round(masif8[3])); Form1.Image1.Canvas.LineTo(round(ep82[4]),580-round(masif8[4])); Form1.Image1.Canvas.LineTo(round(ep82[5]),580-round(masif8[5]));; Form1.Image1.Canvas.LineTo(round(ep82[5]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 4 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis8[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis8[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 4 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis8[i])/m)+' кН/см * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis8[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 4 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis8[i])/m)+' кН/мм * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis8[i])/m,ffFixed,15,okr)+' кН/мм * E') end;


end;


if (a=3) and (b=3) then begin epi9; Form1.Image1.Canvas.Pen.Width:=2; Form1.Image1.Canvas.Pen.Color:=clRed;


Form1.Image1.Canvas.MoveTo(60,580); Form1.Image1.Canvas.LineTo(round(ep92[1]),580-round(masif9[1])); Form1.Image1.Canvas.LineTo(round(ep92[2]),580-round(masif9[2])); Form1.Image1.Canvas.LineTo(round(ep92[3]),580-round(masif9[3])); Form1.Image1.Canvas.LineTo(round(ep92[4]),580-round(masif9[4])); Form1.Image1.Canvas.LineTo(round(ep92[5]),580-round(masif9[5]));; Form1.Image1.Canvas.LineTo(round(ep92[6]),580-round(masif9[5]));; Form1.Image1.Canvas.LineTo(round(ep92[6]),580);


Form1.Image1.Canvas.Pen.Width:=1; Form1.Image1.Canvas.Pen.Color:=clBlack;


if ComboBox6.Text='м' then begin for i:=1 to 5 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis9[i])/m)+' кН/м * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis9[i])/m,ffFixed,15,okr)+' кН/м * E') end;


if ComboBox6.Text='см' then begin for i:=1 to 5 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis9[i])/m)+' кН/см * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis9[i])/m,ffFixed,15,okr)+' кН/см * E') end;


if ComboBox6.Text='мм' then begin for i:=1 to 5 do if Form4.ComboBox1.Text='Неограниченно' then Form1.Memo1.Lines.Add('= '+Floattostr(abs(chis9[i])/m)+' кН/мм * E') else Form1.Memo1.Lines.Add('= '+FloattostrF(abs(chis9[i])/m,ffFixed,15,okr)+' кН/мм * E') end;


end;


end else MessageDlg('Точки приложения сил, недолжны выходить за пределы бруса.',mtInformation,[mbOK],0); end else MessageDlg('Силы должны вводиться по порядку.',mtInformation,[mbOK],0); end else MessageDlg('Ошибка. Проверьте поля площадей.',mtInformation,[mbOK],0); end else MessageDlg('Ошибка. Проверьте поля значений сил.',mtInformation,[mbOK],0); end else MessageDlg('Ошибка. Проверьте поля точек приложения сил.',mtInformation,[mbOK],0); end else MessageDlg('Ошибка. Проверьте поля длин участков.',mtInformation,[mbOK],0); end else MessageDlg('Ошибка. Проверьте поля площадей.',mtInformation,[mbOK],0); end else MessageDlg('Не заданно значение третей силы',mtInformation,[mbOK],0); end else MessageDlg('Не заданна точка приложения третей силы',mtInformation,[mbOK],0); end else MessageDlg('Не заданно значение второй силы',mtInformation,[mbOK],0); end else MessageDlg('Не заданна точка приложения второй силы',mtInformation,[mbOK],0); end else MessageDlg('Не заданно значение первой силы',mtInformation,[mbOK],0); end else MessageDlg('Не заданна точка приложения первой силы',mtInformation,[mbOK],0); end else MessageDlg('Не заданна площадь третьего участка',mtInformation,[mbOK],0); end else MessageDlg('Не заданна длина третьего участка',mtInformation,[mbOK],0); end else MessageDlg('Не заданна площадь второго участка',mtInformation,[mbOK],0); end else MessageDlg('Не заданна длина второго участка',mtInformation,[mbOK],0); end else MessageDlg('Не заданна площадь первого участка',mtInformation,[mbOK],0); end else MessageDlg('Не заданна длина первого участка',mtInformation,[mbOK],0);


end;


procedure TForm1.N2Click(Sender: TObject); begin


image2.Canvas.Brush.Color:=clWhite; image2.Canvas.Brush.Style:=bsSolid; image2.Canvas.Rectangle(0,0,600,667); Form1.Memo1.Clear; image1.Canvas.Brush.Color:=clWhite; image1.Canvas.Brush.Style:=bsSolid; image1.Canvas.Rectangle(0,0,600,667); a:=1; b:=1; Edit2.Visible:=false; Edit3.Visible:=false; Edit5.Visible:=false; Edit6.Visible:=false; Edit8.Visible:=false; Edit9.Visible:=false; Edit11.Visible:=false; Edit12.Visible:=false; Combobox4.Visible:=false; Combobox5.Visible:=false; Edit1.Text:=''; Edit2.Text:='1'; Edit3.Text:='1'; Edit4.Text:=''; Edit5.Text:='0'; Edit6.Text:='1'; Edit7.Text:=''; Edit8.Text:='1'; Edit9.Text:='1'; Edit10.Text:=''; Edit11.Text:='1'; Edit12.Text:='1'; ComboBox1.Text:='1'; ComboBox2.Text:='1'; ComboBox3.Text:='Влево'; ComboBox4.Text:='Влево'; ComboBox5.Text:='Влево'; ComboBox6.Text:='м'; Form1.Memo1.Clear; if ComboBox3.Text='Влево' then s1:=-1