Вниз
Скачать: CL | DM;

Как найти угол между отрезком и осью(любой )   Найти похожие ветки 

← →
TRyaSS ©   (2006-04-25 09:49) [0]

хоть Х, хоть У.Подскажите плз. Даны только координаты точек...


← →
AbrosimovA ©   (2006-04-25 12:14) [1]

procedure TForm1.Button1Click(Sender: TObject);
var a: extended;  // óãîë â ãðàäóñàõ
   y1,x1,y2,x2: extended; //êîîðäèíàòû òî÷åê
begin
(*
    y1 = k*x1 + b; y2 = k*x2 + b ->
 -> b = y1 - k*x1; b = y2 - k*x2 ->
 -> y1 - k*x1 = y2 - k*x2 ->
 -> y1 - y2 = k * (x1 - x2) ->
 -> k:=(y1-y2) / (x1-x2) = tan(a) ->
 -> a = arctan(k) = arctan((y1-y2) / (x1-x2))
*)
 DecimalSeparator:=".";
 y1:=0.0;
 x1:=0.0;
 y2:=4.0;
 x2:=3.0;
 a:=RadToGrad(arctan((y1-y2) / (x1-x2)));
 Caption:=FloatToStr(a) // ~ èñêîìûé óãîë ñ îñüþ X
end;


← →
AbrosimovA ©   (2006-04-25 12:18) [2]

uses Math;

procedure TForm1.Button1Click(Sender: TObject);
var a: extended;  // угол в градусах
  y1,x1,y2,x2: extended; //координаты точек
begin
(*
   y1 = k*x1 + b; y2 = k*x2 + b ->
-> b = y1 - k*x1; b = y2 - k*x2 ->
-> y1 - k*x1 = y2 - k*x2 ->
-> y1 - y2 = k * (x1 - x2) ->
-> k:=(y1-y2) / (x1-x2) = tan(a) ->
-> a = arctan(k) = arctan((y1-y2) / (x1-x2))
*)
DecimalSeparator:=".";
y1:=0.0;
x1:=0.0;
y2:=4.0;
x2:=3.0;
a:=RadToGrad(arctan((y1-y2) / (x1-x2)));
Caption:=FloatToStr(a) // ~ искомый угол к оси X
end;


← →
a22 ©   (2006-04-25 16:06) [3]

нет, ну это ж за 8 или 9 класс математика

  /|
c/ | b
/g_|
 a

c, a, b - стороны треугольника, g - угол... вот ежели есть точки отрезка, значит есть и a, b
далее tg(g) = b/c -> g = arctg(b/c)
это угол с осью Х, есть нужен с осью Y - ну, картинку треугольника мысленно перевернуть надо. наоборот в частном получится


← →
TRyaSS ©   (2006-04-25 16:41) [4]

Спасибо. че-то из головы вылетело ...


← →
a22 ©   (2006-04-26 17:37) [5]

млин я вообще еще и очепятался со сторонами, b/a



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.033 c
2-1164016196
LG
2006-11-20 12:49
2006.12.10
Клавиатурный перехватчик


11-1140201303
Yurka R
2006-02-17 21:35
2006.12.10
Помогите начинающему в некоторых вопросах!


2-1164261109
Pavor
2006-11-23 08:51
2006.12.10
Как добавить запись в таблицу через ADO?


3-1160118569
logslava
2006-10-06 11:09
2006.12.10
Как узнать значение автоинкрементного поля


2-1163750376
Kostafey
2006-11-17 10:59
2006.12.10
Вопрос про сетку DBGrid




   Наверх