Определить угол.

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
--=GAMER=--
Фиолетовый бот
Фиолетовый бот
Аватара пользователя
 
Сообщения: 810
Зарегистрирован: 22.03.2004 (Пн) 11:29
Откуда: Владивосток

Определить угол.

Сообщение --=GAMER=-- » 16.03.2005 (Ср) 11:24

A__________*_________C
B\
\
\
\
*D
AB,AC,BC,BD - линии (___ \\\)
В и D - точки (*)
Нужно найти угол DBC. А затем рядышком построить аналогичный угол.Спасибо за ответы.
В темноте слепец — самый надежный проводник. В эпоху безумия пусть тебя ведет сумасшедший.

rRenderer Engine
VB Wiki

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 16.03.2005 (Ср) 11:50

Предлагаю нарисовать все в паинте и приложить к вопросу графику, а то шарады трудно разгадывать... Мне например из твоего рисунка ничего не понятно. И, кстати, еще что-нибудь дано? Длины отрезков там, или остальные углы?

SHURUP
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 440
Зарегистрирован: 15.09.2004 (Ср) 14:24
Откуда: Ирпень, Украина

Re: Определить угол.

Сообщение SHURUP » 17.03.2005 (Чт) 0:55

Код: Выделить всё
angleCBD = Atn((Dy - By) / (Dx - Bx))
:roll: где Dx,Dy - координаты точки D
Bx,By - координаты точки B.
зы: на 90 гродусов нужно отдельно обрабатывать ошибку
ззы: а вот насчет такого-же угла - непонял :?
Нам чужого не надо, но своё мы возьмем, чьё бы оно ни было...

--=GAMER=--
Фиолетовый бот
Фиолетовый бот
Аватара пользователя
 
Сообщения: 810
Зарегистрирован: 22.03.2004 (Пн) 11:29
Откуда: Владивосток

Сообщение --=GAMER=-- » 17.07.2005 (Вс) 11:05

SHURUPНе прёт. Показывает какието циферки типа 0.469857!

Мне нужно по координатам точек опредилить угол между отрезком BD
и прямой AС!!
Например B(0,0) D(5,5) - угол 45%
Прбовал с линейными функциями - не прёт....
Вложения
Angle.rar
Рисунок.
(542 байт) Скачиваний: 20
В темноте слепец — самый надежный проводник. В эпоху безумия пусть тебя ведет сумасшедший.

rRenderer Engine
VB Wiki

Bonesnapper
Постоялец
Постоялец
 
Сообщения: 434
Зарегистрирован: 12.09.2004 (Вс) 15:39

Сообщение Bonesnapper » 17.07.2005 (Вс) 11:18

--=GAMER=-- писал(а):SHURUPНе прёт. Показывает какието циферки типа 0.469857!

может это в радианах

http://dizin.net.ru/math/geometry/ugolline.htm

v-adix
Постоялец
Постоялец
 
Сообщения: 490
Зарегистрирован: 14.11.2002 (Чт) 15:11

Сообщение v-adix » 17.07.2005 (Вс) 12:55

Bonesnapper писал(а):
--=GAMER=-- писал(а):SHURUPНе прёт. Показывает какието циферки типа 0.469857!

может это в радианах

http://dizin.net.ru/math/geometry/ugolline.htm

умножай на 180 и получишь в градусах

SHURUP
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 440
Зарегистрирован: 15.09.2004 (Ср) 14:24
Откуда: Ирпень, Украина

Сообщение SHURUP » 17.07.2005 (Вс) 17:24

v-adix писал(а):умножай на 180 и получишь в градусах

:shock:
Умножай на 180 и дели на Pi (3.1415926535897932384626433832795)
Нам чужого не надо, но своё мы возьмем, чьё бы оно ни было...

Eduard
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 31.08.2003 (Вс) 17:12
Откуда: Эстония

Сообщение Eduard » 17.07.2005 (Вс) 17:59

2SHURUP :shock: а какая точность то 3.1415926535897932384626433832795
On Fatal Error Resume Next

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 17.07.2005 (Вс) 20:48


Inferno
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 179
Зарегистрирован: 26.01.2005 (Ср) 1:06

Сообщение Inferno » 18.07.2005 (Пн) 0:59

Самое интересное, что разные компиляторы дают разные значения пи, поэтому если нужна большая точность то лучше не использовать предопределенную константу, а создать самому.

Для сомневающихся. Посмотрите на Pi в Borland C и VC.

GAGArin
Неистовый флудер
Неистовый флудер
 
Сообщения: 1777
Зарегистрирован: 23.12.2002 (Пн) 12:46
Откуда: я тут взялся, не знаю...

Сообщение GAGArin » 18.07.2005 (Пн) 5:30

Если В на АС то А там не надо

= arccos((BC^2+BD^2-CD^2)/2*BC*CD)
Надеюсь как длинну отрезка по координатам посчитать не надо говорить.
Скажите какие функции есть в VB и я напишу как сделать arccos (как я помню вроде его там нету)

v-adix
Постоялец
Постоялец
 
Сообщения: 490
Зарегистрирован: 14.11.2002 (Чт) 15:11

Сообщение v-adix » 18.07.2005 (Пн) 8:23

SHURUP писал(а):
v-adix писал(а):умножай на 180 и получишь в градусах

:shock:
Умножай на 180 и дели на Pi (3.1415926535897932384626433832795)

ой сорри спасибо что поправил :)

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 18.07.2005 (Пн) 13:28

GAGArin писал(а):Скажите какие функции есть в VB и я напишу как сделать arccos (как я помню вроде его там нету)

MSDN писал(а):Derived Math Functions

The following is a list of nonintrinsic math functions that can be derived from the intrinsic math functions:

Function Derived equivalents
Код: Выделить всё
Secant                             Sec(X) = 1 / Cos(X)                                         
Cosecant                           Cosec(X) = 1 / Sin(X)                                       
Cotangent                          Cotan(X) = 1 / Tan(X)                                       
Inverse Sine                       Arcsin(X) = Atn(X / Sqr(-X * X + 1))                       
Inverse Cosine                     Arccos(X) = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1)         
Inverse Secant                     Arcsec(X) = 2 * Atn(1) - Atn(Sgn(X) / Sqr(X * X - 1))       
Inverse Cosecant                   Arccosec(X) = Atn(Sgn(X) / Sqr(X * X - 1))                 
Inverse Cotangent                  Arccotan(X) = 2 * Atn(1) - Atn(X)                           
Hyperbolic Sine                    HSin(X) = (Exp(X) - Exp(-X)) / 2                           
Hyperbolic Cosine                  HCos(X) = (Exp(X) + Exp(-X)) / 2                           
Hyperbolic Tangent                 HTan(X) = (Exp(X) - Exp(-X)) / (Exp(X) + Exp(-X))           
Hyperbolic Secant                  HSec(X) = 2 / (Exp(X) + Exp(-X))                           
Hyperbolic Cosecant                HCosec(X) = 2 / (Exp(X) - Exp(-X))                         
Hyperbolic Cotangent               HCotan(X) = (Exp(X) + Exp(-X)) / (Exp(X) - Exp(-X))         
Inverse Hyperbolic Sine            HArcsin(X) = Log(X + Sqr(X * X + 1))                       
Inverse Hyperbolic Cosine          HArccos(X) = Log(X + Sqr(X * X - 1))                       
Inverse Hyperbolic Tangent         HArctan(X) = Log((1 + X) / (1 - X)) / 2                     
Inverse Hyperbolic Secant          HArcsec(X) = Log((Sqr(-X * X + 1) + 1) / X)                 
Inverse Hyperbolic Cosecant        HArccosec(X) = Log((Sgn(X) * Sqr(X * X + 1) + 1) / X)       
Inverse Hyperbolic Cotangent       HArccotan(X) = Log((X + 1) / (X - 1)) / 2                   
Logarithm to base N                LogN(X) = Log(X) / Log(N)                                   

Изображение

--=GAMER=--
Фиолетовый бот
Фиолетовый бот
Аватара пользователя
 
Сообщения: 810
Зарегистрирован: 22.03.2004 (Пн) 11:29
Откуда: Владивосток

Сообщение --=GAMER=-- » 19.07.2005 (Вт) 1:48

Спасибо.
В темноте слепец — самый надежный проводник. В эпоху безумия пусть тебя ведет сумасшедший.

rRenderer Engine
VB Wiki

--=GAMER=--
Фиолетовый бот
Фиолетовый бот
Аватара пользователя
 
Сообщения: 810
Зарегистрирован: 22.03.2004 (Пн) 11:29
Откуда: Владивосток

Сообщение --=GAMER=-- » 24.07.2005 (Вс) 7:01

хммм... Мне кажется или он действительно немного не то выдаёт ....

з.ы. Посмотрите в проге...
Вложения
Angle PROG.ZIP
Прога.
(3.99 Кб) Скачиваний: 27
В темноте слепец — самый надежный проводник. В эпоху безумия пусть тебя ведет сумасшедший.

rRenderer Engine
VB Wiki

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 24.07.2005 (Вс) 11:40

Запустил прогу. Ничего не понял. Куда смотреть?
Изображение

--=GAMER=--
Фиолетовый бот
Фиолетовый бот
Аватара пользователя
 
Сообщения: 810
Зарегистрирован: 22.03.2004 (Пн) 11:29
Откуда: Владивосток

Сообщение --=GAMER=-- » 29.07.2005 (Пт) 5:49

Напиши числа в текстбоксах типа 1500 и 1800, жмакни нижнию кнопку и получи результат. Так вот я сомневаюсь в том, что результат верный,
так как "на глаз" получается другой угол. Или это всё из-за разрешения экрана (1024х768) - типа немного искревляестя прямая?
В темноте слепец — самый надежный проводник. В эпоху безумия пусть тебя ведет сумасшедший.

rRenderer Engine
VB Wiki

GAGArin
Неистовый флудер
Неистовый флудер
 
Сообщения: 1777
Зарегистрирован: 23.12.2002 (Пн) 12:46
Откуда: я тут взялся, не знаю...

Сообщение GAGArin » 29.07.2005 (Пт) 7:08

Я так понимаю там exe? Если да, то может стоит положить исходник?

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 29.07.2005 (Пт) 15:42

--=GAMER=-- писал(а):Напиши числа в текстбоксах типа 1500 и 1800, жмакни нижнию кнопку и получи результат. Так вот я сомневаюсь в том, что результат верный,

Результат чего? :shock:
Что вообще делает эта прога?
Действительно, с исходником было бы понятнее.
Изображение

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 29.07.2005 (Пт) 17:54


http://pi.anabar.ru/

Автору топика. Советую ВНИМАТЕЛЬНО перечитать пост №2.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 01.08.2005 (Пн) 8:18

Lasciate ogni speranza, voi ch'entrate.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot и гости: 84

    TopList