Страница 1 из 3
					
				Помогите с расчетом направления отрезка
				Добавлено: 30 июн 2016, 10:10
				 klerk184
				Добрый день Всем!
Нужна помощь в расчете направления. Для определения направлений отрезков данных фигур:
			
		
				
			 
- 2016-06-30_13-06-32.png (9.8 КБ) 10060 просмотров
 
Я сделал вот так:
Код: Выделить всё
If end_x > start_x And end_y > start_y Then
										direction = "СВ"
									End If
									If end_x < start_x And end_y < start_y Then
										direction = "ЮЗ"
									End If
									If end_x < start_x And end_y > start_y Then
										direction = "СЗ"
									End If
									If end_x > start_x And end_y < start_y Then
										direction = "ЮВ"
									End If
									If end_x = start_x And end_y > start_y Then
										direction = "С"
									End If
									If end_x = start_x And end_y < start_y Then
										direction = "Ю"
									End If
									If end_x > start_x And end_y = start_y Then
										direction = "В"
									End If
									If end_x < start_x And end_y = start_y Then
										direction = "З"
									End If
т.е. сравнением координат точек.
Теперь не могу сообразить, как мне вычислить направление в градусах и минутах, чтоб в итоге получить например такие данные: отрезок 1-2	СВ:89°21'56.16"
 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 30 июн 2016, 12:37
				 trir
				
			 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 30 июн 2016, 18:05
				 Boris
				
По моему для проекционных координат все же чаще используют arctg (арктангенс)
Обратные_тригонометрические_функции 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 30 июн 2016, 19:41
				 Ariki
				Удобнее всего использовать 
atan2(), но в MapBasic её нет, так что придётся реализовать самостоятельно через atn(). Формулы по ссылке в Википедии. Ещё нужно будет перевести радианы в градусы-минуты-секунды, но об этом на ГИС-Лабе даже целая 
статья есть.
 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 01 июл 2016, 05:49
				 klerk184
				Спасибо всем. Буду разбираться!
			 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 01 июл 2016, 07:01
				 klerk184
				Ariki писал(а):Удобнее всего использовать 
atan2(), но в MapBasic её нет, так что придётся реализовать самостоятельно через atn(). Формулы по ссылке в Википедии. Ещё нужно будет перевести радианы в градусы-минуты-секунды, но об этом на ГИС-Лабе даже целая 
статья есть.
 
мдааа... честно ничего не понял из формул. не знаю как все это применить на практике. Может сможете немного разжевать для не понимающего в геометрии и тому подобному)))
 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 01 июл 2016, 07:26
				 dab
				klerk184 писал(а):
Нужна помощь в расчете направления. Для определения направлений отрезков данных фигур:
У меня сложилось впечатление, что Вам нужно определить порядок обхода точек многоугольника - "по часовой" или против. Если так, Вам сюда 
http://algolist.manual.ru/maths/geom/polygon/orient.php 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 01 июл 2016, 07:34
				 klerk184
				dab писал(а):klerk184 писал(а):
Нужна помощь в расчете направления. Для определения направлений отрезков данных фигур:
У меня сложилось впечатление, что Вам нужно определить порядок обхода точек многоугольника - "по часовой" или против. Если так, Вам сюда 
http://algolist.manual.ru/maths/geom/polygon/orient.php 
Нет, чтоб нумерация шла строго по часовой стрелке, я уже сделал. Теперь нужно вычислить направление отрезка в градусах, минутах и секундах
 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 01 июл 2016, 11:53
				 Ariki
				klerk184 писал(а):
мдааа... честно ничего не понял из формул. не знаю как все это применить на практике. Может сможете немного разжевать для не понимающего в геометрии и тому подобному)))
А что вам непонятно? Это же самые основы тригонометрии. Вычисляете разности координат Δx и Δy между концом и началом отрезка, а затем в зависимости от знаков разностей делите одно на другое, вычисляете арктангенс, при необходимости прибавляете или отнимаете π. Получаете угол в радианах, затем переводите его в градусы и конвертируете в представление в виде градусов, минут и секунд путём последовательного отбрасывания целой части и умножения дробной части на 60.
 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 01 июл 2016, 12:07
				 klerk184
				Ariki писал(а):klerk184 писал(а):
мдааа... честно ничего не понял из формул. не знаю как все это применить на практике. Может сможете немного разжевать для не понимающего в геометрии и тому подобному)))
А что вам непонятно? Это же самые основы тригонометрии. Вычисляете разности координат Δx и Δy между концом и началом отрезка, а затем в зависимости от знаков разностей делите одно на другое, вычисляете арктангенс, при необходимости прибавляете или отнимаете π. Получаете угол в радианах, затем переводите его в градусы и конвертируете в представление в виде градусов, минут и секунд путём последовательного отбрасывания целой части и умножения дробной части на 60.
 
Спасибо огромное. Теперь я все понял! я просто никогда с тригонометрией не сталкивался
 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 04 июл 2016, 06:11
				 klerk184
				Всем привет! Оказалось что такое решение не подходит, т.к. система координат в WGS-84
сейчас думаю как по другому найти. может кто знает? пишите))
			 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 04 июл 2016, 07:33
				 klerk184
				Мне нужно найти угол альфа, на рисунке я попытался нарисовать. Из рисунка: сторона а=b, так как это радиус. как найти сторону С и угол альфа?
			
		
				
			 
- 2016-06-30_13-06-32 (2).png (28.64 КБ) 9724 просмотра
  
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 04 июл 2016, 12:35
				 trir
				
			 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 04 июл 2016, 12:42
				 klerk184
				
А причем тут сфера? у меня же вроде в плоскости.
 
			
					
				Re: Помогите с расчетом направления отрезка
				Добавлено: 04 июл 2016, 12:59
				 trir