Расстояние между точками формула в пространстве: Расстояние между двумя точками

Содержание

Расстояние между точками на плоскости и в пространстве Модуль вектора, его направляющие углы и косинусы. Координаты орта вектора. » Аналитическая геометрия f(x)dx.Ru

п.1. Расстояние между точками на плоскости и в пространстве.

   Мы выведем формулу расстояния между любыми двумя точками в пространстве. Случай на плоскости будет следовать из общей формулы как частный случай.

   Рассмотрим предварительно частный случай. Пусть вектор  коллинеарный какой-нибудь координатной оси, например, Ох.

                                     рис.1.

   Расстояние между точками А и В равно:

               .                                      (1)

Ординаты и аппликаты точек А и В в этом случае равны:

                       , .

Формула, аналогичная формуле (1) имеет место и в случаях, когда  или .

   Рассмотрим теперь общий случай расположения точек А и В в пространстве относительно системы координат Охуz.

   Пусть  и  – две произвольные точки пространства. Проведем через точки А и В плоскости параллельные координатным плоскостям. Эти 6 плоскостей высекают прямоугольный параллелепипед. См. рис.2.

               

                                        рис.2.

   Из прямоугольного треугольника ADC по теореме Пифагора , а из прямоугольного треугольника АВС:

              .

   Так как точки А, D, С лежат в плоскости перпендикулярной оси Оz, то , т.к. , то .

   Точки В, С, D лежат в плоскости перпендикулярной оси Оу, поэтому  и , откуда следует, что .

   Теперь, по формулам, аналогичным формуле (1), имеем:

            ,

            ,

            ,

 откуда следует равенство:

        .

   Таким образом мы доказали следующую теорему.

Теорема. Пусть  и . Тогда

     .            (2)

Следствие. Пусть  и . Тогда

                .

п.2. Модуль вектора, его направляющие углы и косинусы. Координаты орта вектора.

Теорема. (О модуле вектора.)

Модуль вектора равен корню квадратному из суммы квадратов его координат.

   Иначе, если , то

                           .                                   (3)

   Доказательство. Пусть . Тогда равны их  модули и их декартовые координаты:  и

         , , .

Подставляя в формулу (2), получаем (3), ч.т.д.

Теорема доказана.

   Обозначим углы между вектором и координатными осями: , , .

Определение. Углы между вектором и координатными осями называются направляющими углами вектора.

                     

                                       рис.3.

Пусть . По теореме о вычислении проекции вектора на ось, имеем: , , . Отсюда следует:

            , , ,                        (4)

              .                                          (5)

   Из последнего равенства следует, что орт вектора , т.е. вектор единичной длины и сонаправленный с  имеет декартовые координаты:

                 .                               (6)

А т.к. , то по теореме о модуле вектора, получаем:

, откуда следует

                .                                  (7)

Возможно найдутся ответы здесь:

Вычисление расстояния и начального азимута между двумя точками на сфере

Измерение расстояния и начального азимута между точками без проекционных преобразований

Длина дуги большого круга – кратчайшее расстояние между любыми двумя точками находящимися на поверхности сферы, измеренное вдоль линии соединяющей эти две точки (такая линия носит название ортодромии) и проходящей по поверхности сферы или другой поверхности вращения. Сферическая геометрия отличается от обычной Эвклидовой и уравнения расстояния также принимают другую форму. В Эвклидовой геометрии, кратчайшее расстояние между двумя точками – прямая линия. На сфере, прямых линий не бывает. Эти линии на сфере являются частью больших кругов – окружностей, центры которых совпадают с центром сферы.

Начальный азимут — азимут, взяв который при начале движения из точки А, следуя по большому кругу на кратчайшее расстояние до точки B, конечной точкой будет точка B. При движении из точки A в точку B по линии большого круга азимут из текущего положения на конечную точку B постоянно меняется. Начальный азимут [angles-rhumb.html отличен от постоянного], следуя которому, азимут из текущей точки на конечную не меняется, но маршрут следования не является кратчайшим расстоянием между двумя точками.

большой круг

Через любые две точки на поверхности сферы, если они не прямо противоположны друг другу (то есть не являются антиподами), можно провести уникальный большой круг. Две точки, разделяют большой круг на две дуги. Длина короткой дуги – кратчайшее расстояние между двумя точками. Между двумя точками-антиподами можно провести бесконечное количество больших кругов, но расстояние между ними будет одинаково на любом круге и равно половине окружности круга, или pi*R, где R – радиус сферы.

расстояние большого круга

На плоскости (в прямоугольной системе координат), большие круги и их фрагменты, как было упомянуто выше, представляют собой дуги во всех проекциях, кроме гномонической, где большие круги — прямые линии. На практике это означает, что самолеты и другой авиатранспорт всегда использует маршрут минимального расстояния между точками для экономии топлива, то есть полет осуществляется по расстоянию большого круга, на плоскости это выглядит как дуга.

Маршрут Нью-Йорк — Пекин

Форма Земли может быть описана как сфера, поэтому уравнения для вычисления расстояний на большом круге важны для вычисления кратчайшего расстояния между точками на поверхности Земли и часто используются в навигации.

Вычисление расстояния этим методом более эффективно и во многих случаях более точно, чем вычисление его для спроектированных координат (в прямоугольных системах координат), поскольку, во-первых, для этого не надо переводить географические координаты в прямоугольную систему координат (осуществлять проекционные преобразования) и, во-вторых, многие проекции, если неправильно выбраны, могу привести к значительным искажениям длин в силу особенностей проекционных искажений.

Известно, что более точно описывает форму Земли не сфера, а эллипсоид, однако в данной статье рассматривается вычисление расстояний именно на сфере, для вычислений используется сфера радиусом 6372795 метров, что может привести к ошибке вычисления расстояний порядка 0.5%.

Существует три способа расчета сферического расстояния большого круга (подробнее).

[править] Сферическая теорема косинусов

В случае маленьких расстояний и небольшой разрядности вычисления (количество знаков после запятой), использование формулы может приводить к значительным ошибкам связанным с округлением. Графическое изображение формул здесь и далее — из Википедии.

— широта и долгота двух точек в радианах

— разница координат по долготе

— угловая разница

Для перевода углового расстояния в метрическое, нужно угловую разницу умножить на радиус Земли (6372795 метров), единицы конечного расстояния будут равны единицам, в которых выражен радиус (в данном случае — метры).

[править] Формула гаверсинусов

Используется, чтобы избежать проблем с небольшими расстояниями.

[править] Модификация для антиподов

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

[править] Реализация на Avenue

На языке Avenue, используя последнюю формулу для вычисления расстояния большого круга между двумя точками, можно использовать следующий код. Точки для вычисления передаются другим скриптом, либо добавляются в начало данного в виде pnt = point.make(long, lat) (скачать скрипт):

'pnt1, pnt2 - точки между которыми вычисляются расстояния
'pi - число pi, rad - радиус сферы (Земли), num - количество знаков после запятой
pi = 3.14159265358979
rad = 6372795
num = 7

'получение координат точек в радианах
lat1 = pnt1.getY*pi/180
lat2 = pnt2.getY*pi/180
long1 = pnt1.getX*pi/180
long2 = pnt2.getX*pi/180

'косинусы и синусы широт и разниц долгот
cl1 = lat1. 0.5
p4 = sl1*sl2
p5 = cl1*cl2*cdelta
p6 = p4 + p5
p7 = p3/p6
anglerad = (p7.atan).SetFormatPrecision (num)
dist = anglerad*rad
'
вычисление начального азимута
x = (cl1*sl2) - (sl1*cl2*cdelta)
y = sdelta*cl2
z = (-y/x).ATan.AsDegrees
if (x < 0) then z = z+180 end
z = -(z + 180 mod 360 - 180).AsRadians
anglerad2 = z - ((2*pi)*((z/(2*pi)).floor)) angledeg = (anglerad2*180)/pi

'возврат значений длины большого круга и начального азимута
distlist = {dist, angledeg}
return distlist

Для вызова процедуры расчета длин приведенной выше, можно также воспользоваться следующим скриптом, результатом его работы будет расчет длин между точкой testpont до всех точек активной темы вида и запись результата в поле Newdist атрибутивной таблицы этой темы:

atheme = av.getactivedoc.getactivethemes.get(0)
aftab = atheme.getftab
f_shape = aftab.findfield("Shape")

f_dist = aftab.findfield("dist")
f_ang = aftab.findfield("ang") 'testpoint - точка отсчета testpoint = point. make(25.85, 55.15) aftab.seteditable(true) 'для каждой точки темы до которых считают расстояния от точки отсчета for each rec in aftab pnts = {} apoint = aftab.returnvalue(f_shape, rec) pnts.add(apoint.getx) pnts.add(testpoint.getx) pnts.add(apoint.gety) pnts.add(testpoint.gety) 'Вызов процедуры расчета расстояний '"Calc-distance" - название скрипта с процедурой в проекте param = av.run("Calc-distance", pnts) aftab.setvalue(f_dist, rec, param.get(0)) aftab.setvalue(f_ang, rec, param.get(1)) end aftab.seteditable(false)

[править] Реализация на языке Python

Реализует полный вариант расчета через atan2(), более универсальнее, чем вариант для Avenue. (скачать скрипт)

import math
 
 #pi - число pi, rad - радиус сферы (Земли)
 rad = 6372795
 
 #координаты двух точек
 llat1 = 77.1539
 llong1 = -120.398
 
 llat2 = 77.1804
 llong2 = 129.55
 
 #в радианах
 lat1 = llat1*math.pi/180.
 lat2 = llat2*math.pi/180.
 long1 = llong1*math.pi/180.
 long2 = llong2*math. pi/180.
 
 #косинусы и синусы широт и разницы долгот
 cl1 = math.cos(lat1)
 cl2 = math.cos(lat2)
 sl1 = math.sin(lat1)
 sl2 = math.sin(lat2)
 delta = long2 - long1
 cdelta = math.cos(delta)
 sdelta = math.sin(delta)
 
 #вычисления длины большого круга
 y = math.sqrt(math.pow(cl2*sdelta,2)+math.pow(cl1*sl2-sl1*cl2*cdelta,2))
 x = sl1*sl2+cl1*cl2*cdelta
 ad = math.atan2(y,x)
 dist = ad*rad
 
 #вычисление начального азимута
 x = (cl1*sl2) - (sl1*cl2*cdelta)
 y = sdelta*cl2
 z = math.degrees(math.atan(-y/x))
 
 if (x < 0):
     z = z+180.
 
 z2 = (z+180.) % 360. - 180.
 z2 = - math.radians(z2)
 anglerad2 = z2 - ((2*math.pi)*math.floor((z2/(2*math.pi))) )
 angledeg = (anglerad2*180.)/math.pi
 
 print 'Distance >> %.0f' % dist, ' [meters]'
 print 'Initial bearing >> ', angledeg, '[degrees]'

[править] Реализация в Excel

Скачать пример расчета расстояния большого круга и начального азимута в Excel. Демонстрирует расчеты через закон косинусов, гаверсинус, полное уравнение и полное уравнение через atan2(). 0.5) * 6372795

End With

End Function

[править] Проверочный набор данных

Если все считается правильно, должны быть получены следующие результаты (координаты точек даны как широта/долгота, расстояние в метрах, начальный угол в десятичных градусах):

# Точка 1 Точка 2 Расстояние Угол
1 77.1539/-139.398 -77.1804/-139.55 17166029 180.077867811
2 77.1539/120.398 77.1804/129.55 225883 84.7925159033
3 77.1539/-120.398 77.1804/129.55 2332669 324.384112704

[править] Ссылки по теме

Расстояния и теорема Пифагора

Договорившись о системе координат, можно определить расстояние между двумя точками. В одномерном пространстве расстояние между двумя точками — это длина соединяющего их отрезка. Рассмотрим точки P и Q. Расстояние между ними, которое мы обозначим как d (Р, Q), будет вычисляться как абсолютная величина разности: d (Р, Q)=|P-Q|.

Мы помним, что абсолютная величина числа равна положительному значению этого числа. Например, |3|=3 и |-3|=3. Для того, чтобы расстояние было определено однозначно, необходимо, чтобы d (Р, Q)=d (Q,P), то есть величина расстояния между точками не должна зависеть от порядка перечисления этих точек.

Кроме того, расстояние всегда должно быть положительной величиной. Именно поэтому расстояние вычисляют с помощью модуля. Например, расстояние между точками 4 и 9 будет определяться не как: 4-9=-5, а по нашему определению: d (4,9)=|4-9|=|-5|=5.

Давайте посмотрим, как определяется расстояние между двумя точками в двумерном пространстве, то есть между точками на плоскости. Предположим, что у нас есть две точки P и Q, координаты которых заданы как (a, b) и (c, d).

Расположив обе точки на декартовой плоскости, мы можем построить прямоугольный треугольник РОQ. 2}$.
Заметим, что применяя теорему Пифагора для получения формул для вычисления расстояния между двумя точками в двух- и трехмерном про-странствах, мы получили обобщение данной теоремы для n-мерных пространств, где n>2.

Материалы по теме:

Поделиться с друзьями:

Загрузка…

Прямоугольная система координат в пространстве. Формула для вычисления расстояния между двумя точками. Координаты середины отрезка_геометрия 10 класс

Дата_17.02.16-19.02.16 Геометрия 10 класс

Урок 43-44

Тема урока: Прямоугольная система координат в пространстве. Формула для вычисления расстояния между двумя точками. Координаты середины отрезка.

Цели урока:

  • Закрепить полученные знания   по теме системы координат и координаты точки в пространстве; выработать умения строить точку по заданным её координатам; находить координаты точек, изображённой в заданной системе координат;

  • Способствовать развитию пространственного воображения учащихся;  умение развивать аналогии сравнение; способствовать выработке решения задач и развития логического мышления учащихся.

  • Воспитание познавательной активности, чувства ответственности, культуры общения, культуры диалога.

Ход урока

1. Организационный момент, приветствие, пожелания плодотворной работы.

2. Мотивация урока.

Ребята, чтобы найти конкретного человека на нашей планете, что необходимо нам знать? Правильно его место нахождение, т.е. другими словами мы должны знать его координаты.

Как не потеряться в этой жизни? Я думаю нам помогут координаты!!!!

3.Актуализация знаний.

Фронтальный опрос по технологии «Микрофон».

  1. В каком направлении можно двигаться на плоскости?

  2. Сколькими координатами может быть задана точка в пространстве?

  3. Чем определяются точки на координатной плоскости?

  4. Что такое координата?

  5. Как задать координатную плоскость?

  6. Как называется ось 0Х, 0У, OZ?

  7. Назовите координаты точек (по таблице)

  8. Назовите формулу нахождения середины отрезка, длину отрезка

4. Работа с изученным материалом, Формирование первичных умений и навыков

Вся система обозначается Охуz.

Три плоскости, проходящие соответственно через оси координат Ох и Оу, Оу и Оz, Оz и Ох — координатные плоскости. Их обозначают Оху, Оуz, Оzх.

В прямоугольной системе координат каждой точке М пространства сопоставляется тройка чисел, которые называются её координатами.

Проведем через точку М три плоскости, перепендикулярные к осям координат, и обозначим через М1, М2 и М3, точки пересечения этих плоскостей соответственно с осями абсцисс, ординат и аппликат. М1 – абсцисса, М2 – ордината, М3 – аппликата точки М. Координаты точки М записываются: М (х; у; z), х – абсцисса, у – ордината, z-аппликата.

Задание:

Назовите координаты точек, лежащих на координатных осях.

Какие из данных точек лежат на координатных осях и на какой: А(5;0;0),

В(-7;5;0), С(0;0;-9), М(0;8;0), Р(0;1;0)?

— Назовите координаты точек, лежащих в координатных плоскостях.

Какие из данных точек лежат в координатных плоскостях и в какой из плоскостей: А(3;0;5), В(-1; 4; 6), С(0;5;-9), М(5;5;0), Х(9;7;0)?

— Назовите координаты точки, совпадающей с началом координат; лежащих в пространстве.

Выбрать среди заданных точек те, которые лежат в пространстве или в начале координат: А(0;7;-2), О (0;0;0), В(2;4;-4), М(8;-5;2), Р(0;0;0).

Задача. Письменно

Дано: А (1;-1;2), В (3;1;-2)

Найдите координаты середины отрезка АВ и его длину.

Решение:

1). Пусть С – середина отрезка АВ, тогда С (; ; ), С (2;0;0)

2). АВ = = = 2.

Ответ: С (2;0;0), АВ = 2.

3) Подготовка к ЕНТ (сб. тестов НЦТ 2009 год, В 3 № 24)

Найти координаты центра тяжести треугольника с вершинами в точках

1)А(3; -4; 7), В(-5; 3; -2) и С(8; 7; -8).

2) А. (-2; -2; 1), В. (-5; 3; 9), С. (2; 2; 1),

Ответ:1) D. (2; 2; -1), 2) Е. (2; -2; -1).

Решение.

Координаты центра тяжести однородной треугольной пластинки, если не учитывать ее толщину, равны среднему арифметическому однородных координат ее вершин. Координаты центра тяжести треугольника, расположенного в пространстве будут находиться по формулам:

ZЕ =

3

Z1 + Z2 + Z3

Возвращаясь к условию задачи, получим: Е (Хц; Уц; Zц)

Хц = (3-5+8 ): 3 = 2 ; Уц = (-4+3+7) : 3 = 2 ; Zц = ( 7- 2 – 8) : 3 = -1

Е(2; 2; -1) – D.

Задача . Самостоятельно (сб. апробационных тестов НЦТ 2013 год, В 0173 № 24)

  1. Найти координаты центра тяжести треугольника с вершинами в точках

А(7; -4), В(-1; 8) и С(-12; -1).

А. (2; 1), В. (-2; 1), С. (3; -2), D. (-1; 2), Е. (2,5; 3).

(Ответ: В(-2; 1) ).

  1. Даны точки: А(-3; 0; 0), В(5; 0; -1), С(0; 0; 8), D (-1;5;0), Е(0; 7;4), F(-6;-1; 0), К(0;0;0), М(0;-3;5), N(2;4;-1), Р(0;-6;0). Определите точки, принадлежащие: а) осям координат х, у, z; б) координатным плоскостям ху, хz, уz.

5. Минута отдыха.

Массаж ушных раковин.

Более тысячи биологически активных точек на ухе известно в настоящее время, поэтому, массируя их, можно последовательно воздействовать на весь организм. Нужно стараться так помассировать ушные раковины, чтобы уши «горели». Упражнение можно выполнять в такой последовательности:
1) потягивание за мочки сверху вниз;
2) потягивание ушной раковины вверх;
3) потягивание ушной раковины к наружи;
4) круговые движения ушной раковины по часовой стрелке и против;

5) растирание ушей до ощущения «горения».

6. Закрепление нового материала.

7. Самостоятельная работа с последующей проверкой: тест
8. Итоги урока. Рефлексия.

9. Д/з §19, § 20, теория, составить кластер по теме (работа в группах),

4, №5 стр. 66; № 8 стр. 68

На уроке закрепили знания по теме прямоугольная система координат в пространстве, научились строить точку по заданным ее координатам и находить координаты точки, изображенной в заданной системе координат.

Никитенко Ольга Александровна, учитель информатики математики

КГУ «Средняя школа№13», г. Усть-Каменогорск

Приложение

Эффективный способ нахождения расстояния между двумя точками 3D

Я пишу код на языке C++ и хочу вычислить расстояние между двумя точками.
Вопрос 1 :

У меня есть две точки P (x1, y1, z1) и Q (x2, y2, z2), где x, y и z равны floats/doubles.

Я хочу найти расстояние между этими двумя точками. Один из способов сделать это :

square_root(x_diff x_diff + y_diff y_diff + z_diff*z_diff)

Но это, вероятно, не самый эффективный способ (например, лучшая формула или готовая утилита в math.h и т. д. )

Вопрос 2 :

Есть ли лучший способ, если я просто хочу определить, действительно ли P и Q являются одними и теми же точками?

Мои входные данные — координаты x, y и z обеих точек.

Спасибо

c++

performance

math

Поделиться

Источник


memC    

15 февраля 2010 в 08:41

11 ответов


  • Xcode для расстояния между двумя точками в google maps

    Возможный Дубликат : Рассчитайте расстояние между двумя точками с помощью google map в iphone Я просто хочу завершить xcode для расчета расстояния между двумя точками . В котором пользователь может ввести оба адреса местоположения, и из этих адресов я хочу вычислить расстояние между ними b, потому…

  • Построение линий между двумя точками в 3D

    Я пишу алгоритм регрессии, который пытается найти 34 точки внутри ящиков. Алгоритм пытается сделать коробки как можно меньше, поэтому обычно края/углы коробок проходят через точки, которые определяют размер коробки. Проблема: мне нужен графический вывод ящиков в R. В 2D легко нарисовать…



47

Вам нужно фактическое расстояние? Вы можете использовать квадрат расстояния, чтобы определить, являются ли они одинаковыми, и для многих других целей. (экономит на операции sqrt)

Поделиться


James    

15 февраля 2010 в 08:45



15

Есть ли лучший способ, если я просто хочу определить, действительно ли P и Q являются одними и теми же точками?

Тогда просто сравните координаты напрямую!

bool areEqual(const Point& p1, const Point& p2) {
     return fabs(p1. x - p2.x) < EPSILON &&
            fabs(p1.y - p2.y) < EPSILON &&
            fabs(p1.z - p2.z) < EPSILON;
}

Поделиться


Mehrdad Afshari    

15 февраля 2010 в 08:47



7

Нет, нет более эффективного способа вычислить dist. Любое лечение с особыми случаями p.x==q.x и т. д. в среднем будет медленнее.

Да, самый быстрый способ увидеть, являются ли p и q одинаковыми точками, — это просто сравнить x, y, z. поскольку они являются плавающими, вы не должны проверять ==, но допускаете некоторую конечную, небольшую разницу, которую вы определяете.

Поделиться


user231967    

15 февраля 2010 в 08:46


  • Вычисление расстояния между 2 точками фигуры 3D с помощью datacursor

    Я строю GUI, который строит фигуру 3D, нажав кнопку. Я пытаюсь вернуть значение расстояния между 2 точками, когда выбираю 2 точки с помощью datacursormode на рисунке. Я знаю формулу для вычисления расстояния,но не знаю,как заставить курсор данных возвращать значение (X, Y, Z) выбранных 2 точек….

  • Расширение линии между 2 точками в пространстве 3D

    Допустим, у меня есть 2 точки в пространстве 3D, одна в: x=2, y=3, z=5 а второй в: x=6, y=7, z=10 Каков самый быстрый способ в коде вычислить координаты третьей точки из расширения (например, удвоения) расстояния между этими двумя точками (относительно точки один)?



6

Вы можете попробовать использовать расширения SSE. Например, вы можете ввести два вектора A (x1, y1, z1) и B (x2, y2, z2):

_m128 A = _mm_set_ps(x1, y1, z1, 0.0f)
_m128 B = _mm_set_ps(x2, y2, z2, 0.0f)

Затем вычислите diff с помощью _mm_sub_ps:

__m128 Diff = _mm_sub_ps(A, B)

Далее вычисляют кВ от diff:

__m128 Sqr = __mm_mul_ps(Diff, Diff)

И наконец:

__m128 Sum = add_horizontal(Sqr)
__m128 Res = _mm_sqrt_ss(Sum)

Res[0] будет заполнен вашим ответом.

P.S. add_horizontal — это место для оптимизации

Поделиться


shuvalov    

15 февраля 2010 в 09:15



5

Нет, лучшего способа нет.

Реализация square_root может быть оптимизирована.

Если вы сравниваете два расстояния и хотите знать большее, но не заботитесь о том, каково фактическое расстояние, тогда вы можете просто полностью отказаться от шага квадратного корня и манипулировать своими расстояниями, все еще квадратными. Это было бы применимо к сравнению двух пар точек, чтобы определить, находятся ли они на одинаковом расстоянии друг от друга, например.

Поделиться


Will    

15 февраля 2010 в 08:45



4

Возможно, эта статья покажется вам интересной:

http:/ / www.codemaestro.com / отзывы / 9

Он описывает, как квадратный корень был вычислен в движке Quake 3, утверждая, что на некоторых CPU-х годах он работал в 4 раза быстрее, чем функция sqrt(). Не уверен, что это даст вам производительность boost в C++ в наши дни — но все же интересное чтение

Поделиться


pheelicks    

15 февраля 2010 в 09:02



4

Обратите внимание,что при использовании sqrt(dx*dx+dy*dy+dz*dz) сумма квадратов может переполниться. hypot(dx, dy) вычисляет расстояние напрямую, без каких-либо шансов на переполнение. Я не уверен в самом быстром эквиваленте 3d, но hypot(dx, hypot(dy, dz)) делает свою работу и тоже не переполняется.

Поделиться


Darius Bacon    

15 февраля 2010 в 09:37



2

Q2 ответ: x1 = x2 и y1 = y2 и z1 = z2, если точки одинаковы.

Принимая во внимание, что вы храните точки как float/double, вам, возможно, придется провести сравнение с некоторым Эпсилоном.

Поделиться


Victor Hurdugaci    

15 февраля 2010 в 08:45



1

Есть более быстрые способы получить приблизительное расстояние , но ничего не встроено в стандартные библиотеки. Взгляните на эту статью о FlipCode, которая охватывает метод быстрых расстояний 2D. По сути, он свернул функцию sqrt в составную линейную функцию, которая может быть быстро вычислена, но не является точной. Однако на современных машинах в наши дни fpmath работает довольно быстро, так что не оптимизируйте слишком рано, вы можете обнаружить, что прекрасно справляетесь со своим простым подходом.

Поделиться


Trevor Tippins    

15 февраля 2010 в 08:53



1

Научная библиотека GNU определяет gsl_hypot3 , который вычисляет именно то расстояние, которое вы хотите в первой части вашего вопроса. Немного излишне компилировать все это только для этого, учитывая предложение Дариуса, но, возможно, там есть и другие вещи, которые вы хотите.

Поделиться


Charles Stewart    

15 февраля 2010 в 20:11



0

Что касается вопроса 1, то штраф за производительность — это вычисление самого квадратного корня. Формула для вычисления расстояния с использованием квадратного корня из парных разностей координат такова.

Я бы очень рекомендовал прочитать эту реализацию квадратного корня A-M-A-Z-I-N-G Джона Кармака из программного обеспечения ID, которое он использовал в своем движке в Quake III. Это просто MAGICAL.

Поделиться


Theodore Zographos    

15 февраля 2010 в 17:18


Похожие вопросы:

Google apps script карта api для расчета расстояния между двумя точками

Я знаю, что есть api для расчета расстояния между двумя точками для приложений google, но то, что я ищу, — это google apps script api для расчета расстояния движения, а не прямого расстояния между…

Расстояние между двумя географическими точками?

Как получить точное расстояние (в метрах), учитывая две географические точки (две пары широта/долгота) ? Возможные Дубликаты : Расстояние между двумя географическими точками Расчет расстояния между…

Найти точки между двумя точками?

В своей игре я рисую линию, используя две точки. Я хочу вычислить точки между линиями. Пожалуйста, дайте любую формулу для нахождения точек между этими двумя точками.

Xcode для расстояния между двумя точками в google maps

Возможный Дубликат : Рассчитайте расстояние между двумя точками с помощью google map в iphone Я просто хочу завершить xcode для расчета расстояния между двумя точками . В котором пользователь может…

Построение линий между двумя точками в 3D

Я пишу алгоритм регрессии, который пытается найти 34 точки внутри ящиков. Алгоритм пытается сделать коробки как можно меньше, поэтому обычно края/углы коробок проходят через точки, которые.2 И это довольно легко вычислить для…

Как найти расстояние между двумя точками на карте i

Как найти расстояние между двумя точками на android ecillipse project &php .the project основан на онлайн-хорошей транспортной системе. Тариф перевозчика необходимо было выяснить, поэтому…

Как рассчитать 3D расстояние (включая высоту) между двумя точками в GeoDjango

Пролог : Этот вопрос часто возникает в SO году: 3d расчет расстояния с GeoDjango Вычисление расстояния между двумя точками с использованием широты долготы и высоты (elevation ) Расстояние между…

1.Прямоугольные (декартовы) координаты на прямой, плоскости и в пространстве. Косоугольные системы координат.

Система
координат

– способ, позволяющий численно описать
положение точки на плоскости.

Прямоугольная
система координат (декартова)
задается
2 взаимно перпендикулярными прямыми —
осями, на каждой из которых выбрано
положительное направление и задан
единичный (масштабный) отрезок. Единицу
масштаба обычно берут одинаковой для
обеих осей. Эти оси наз. осями координат,
точку их пересечения О – началом
координат. Ось абсцисс – Ох, ось ординат
– Оу. Оси делят плоскость на 4 области
четверти
или квадранты
.
Единичные векторы осей обозначают i
и j(
|i
| =| j
| = 1, i
┴j
) .

Произвольный
вектор ОМ называется радиус-вектором
точки М. Координатами точки М в системе
координат Оху (Oij)
наз. координаты радиуса-вектора ОМ.
Если ОМ (х; у), то М (х; у). Эти два числа х
и у полностью определяют положение
точки на плоскости – каждой паре х и у
соответствует единственная точка, и
наоборот.

Полярная
система координат

задается точкой О, называемой полюсом,
лучом Ор, называемым полярной осью, и
единичным вектором е того же направления,
что и луч Ор.

Возьмем
на плоскости точку М, не совпадающую с
О. Положение точки М определяется двумя
числами: ее расстоянием г от полюса О
и углом φ, образованным отрезком ОМ с
полярной осью (отсчет углов против
движению часовой стрелки). Числа r и φ
называются полярными координатами
точки М, пишут М(r; φ), при этом r называют
полярным радиусом, φ — полярным углом.

Полярный
угол φ ограничивают промежутком (—π;
π] (или 0< φ< 2πr), а полярный радиус —
[0;∞).

Прямоугольные
координаты точки М выражаются через
полярные координаты точки следующим
образом:

Полярные
же координаты точки М выражаются через
ее декартовы координаты такими формулами:

Декартова
система координат в пространстве:

Прямоугольная
система координат в пространстве
образуется тремя взаимно перпендикулярными
осями координат Ох, Оу и Оz.
Оси координат пересекаются в точке О,
которая называется началом координат,
на каждой оси выбрано положительное
направление, указанное стрелками, и
единица измерения отрезков на осях.
Единицы измерения обычно одинаковы
для всех осей. Ох — ось абсцисс, Оу —
ось ординат, Оz
— ось аппликат.

2. Расстояние между двумя точками прямой, плоскости и в пространстве.

Расстояние
между двумя
точками 
это длина отрезка, что соединяет эти
точки.

Формулы
вычисления расстояния между двумя
точками:

1)Формула
вычисления расстояния между двумя
точками A(xa, ya)
и B(xb, yb)
на плоскости:

AB
= √(xb — xa)2 +
(yb — ya)2

2)Формула
вычисления расстояния между двумя
точками A(xa, ya, za)
и B(xb, yb, zb)
в пространстве: AB = √(xb — xa)2 +
(yb — ya)2 +
(zb — za)2

Вывод
формулы для вычисления расстояния
между двумя точками на плоскости.

Из
точек A и B опустим перпендикуляры на
оси координат.

Рассмотрим
прямоугольный треугольник ∆ABC. Катеты
этого треугольника равны:

AC
= xb —
xa
BC
= yb —
ya.

Воспользовавшись
теоремой Пифагора, вычислим длину
отрезка AB:

AB =
√AC2 +
BC2.

Подставив
в это выражение длины отрезков AC и BC,
выраженные через координаты точек A и
B, получим формулу для вычисления
расстояния между точками на плоскости.

Формула
для вычисления расстояния между двумя
точками в пространстве выводится
аналогично.

Расстояние между двумя точками онлайн

С помощю этого онлайн калькулятора можно найти расстояние между точками по известным координатам этих точек. Дается решение с пояснениями. Для нахождения расстояния между точками задайте размерность (2-если задача рассматривается в двухмерном пространстве, 3- если задача рассматривается в трехмерном пространстве), введите координаты точек в ячейки и нажмите на кнопку «Решить». Теоретическую часть смотрите ниже.


Очистить все ячейки?

Инструкция ввода данных. Числа вводятся в виде целых чисел (примеры: 487, 5, -7623 и т.д.), десятичных чисел (напр. 67., 102.54 и т.д.) или дробей. Дробь нужно набирать в виде a/b, где a и b (b>0) целые или десятичные числа. Примеры 45/5, 6.6/76.4, -7/6.7 и т.д.

 

Расстояние между двумя точками на прямой

Пусть заданы на оси OX точки A с координатой xa и B с координатой xb (Рис.1). Найдем расстояние между точками A и B.

Расстояние между точками A и В равно:

Поскольку расстояние от O до В равна xb, а расстояние от O до A равна xa, получим:

На рисунке 2 точки A и В находятся по разные стороны начала координат O. B этом случае рассояние между точками A и B равно:

Поскольку координата точки A отрицательна а координата точки B положительна, то (2) можно записать так:

На рисунке 3 точки A и В находятся c левой стороны начала координат O.

B этом случае рассояние между точками A и B равно:

Координаты точек A и B отрицательны. Тогда , то (5) можно записать так:

Из формул (2),(4),(6) следует, что независимо от расположения точек отностительно начала координат рассояние этих точек равна разности координат этих точек, причем от большего значения вычитается меньшее (так как расстояние не может быть отрицательным числом).

Формулы (2),(4),(6) можно записать и так:

Пример 1. на оси Ox заданы точки \( \small A(x_a)=A(-4) \) и \( \small B(x_b)=B(7) \) . Найти рассояние между этими точками.

Решение. Для нахождения расстояния между точками A и B воспользуемся формулой (7):

Ответ: 11.

Расстояние между двумя точками на плоскости

Пусть на плоскости задана декартова прямоугольная система координат XOY и пусть на плоскости заданы точки A и B, где A имеет координаты (xa,ya), а B имеет координаты (xb,yb) (Рис.4).

Учитывая результаты предыдующего параграфа, можем найти расстояние между точками A и M, а также расстояние между точками B и M:

ABM является прямоугольным треугольником, где AB гипотенуза, а AM и BM катеты. Тогда, исходя из теоремы Пифагора, имеем:

Тогда, учитывая (8), получим:

Откуда:

Пример 2. На плоскости, в декартовой прямоугольной системе координат XOY заданы точки \( \small A(x_a; \ y_a)=A(-6;3) \) и \( \small B(x_b, \ y_b)=B(11,-4). \) . Найти рассояние между этими точками.

Решение. Для нахождения расстояния между точками A и B воспользуемся формулой (9). Подставляя координаты точек A и B в формулу (9), получим:

Ответ: .

Расстояние между двумя точками в пространстве

Рассмотрим в пространстве, в декартовой прямоугольной системе координат точки A и B, где A имеет координаты (xa,ya,za), а B имеет координаты (xb,yb,zb) (Рис.5).

AB является диагональю параллелепипеда, грани которго параллельны координатным плоскостьям и проходят через точки A и B. Но AB является гипотенузой прямоугольного треугольника AMB, а AM и BM являются катетами этого прямоугольного треугольника. Тогда, по теореме Пифагора, имеем:

Учитывая, что BM равно разности третьих координат точек B и A, получим:

Из предыдующего параграфа следует, что:

Но AM=A’B’. Тогда из (10) и (11) следует:

Откуда:

Пример 3. В пространстве задана декартова прямоугольная система координат XOY и точки \( \small A(x_a; \ y_a ;\ z_a)=A(5;1;0) \) и \( \small B(x_b, \ y_b, \ z_b)=B(-8,-4;21). \) Найти рассояние между этими точками.

Решение. Для нахождения расстояния между точками A и B воспользуемся формулой (12). Подставляя координаты точек A и B в формулу (12), получим:

Ответ: .

Формула расстояния

| Блестящая вики по математике и науке

Предположим, что A = x1A = x_1A = x1 и B = x2B = x_2B = x2 — две точки, лежащие на прямой действительных чисел. Тогда расстояние между AAA и BBB равно

.

d (A, B) = ∣x1 − x2∣. d (A, B) = \ lvert x_1 — x_2 \ rvert. d (A, B) = ∣x1 — x2 ∣.

На плоскости мы можем рассматривать ось xxx как одномерную числовую линию, поэтому мы можем вычислить расстояние между любыми двумя точками, лежащими на оси xxx, как абсолютное значение разности их xxx-координат.2} .d (P1, P2) = (x1 — x2) 2+ (y1 — y2) 2.

Поскольку ∣x1 − x2∣ \ lvert x_1 — x_2 \ rvert∣x1 −x2 ∣ — это расстояние между xxx-координатами двух точек и ∣y1 − y2∣ \ lvert y_1 — y_2 \ rvert∣y1 — y2 ∣ — расстояние между yyy-координатами двух точек, формулу расстояния в плоскости xyxyxy можно представить как длину гипотенузы прямоугольного треугольника с вершинами P1 = (x1, y1) P_1 = ( x_1, y_1) P1 = (x1, y1), P2 = (x2, y2), P_2 = (x_2, y_2), P2 = (x2, y2) и P = (x2, y1) P = (x_2, y_1) P = (x2, y1).Тогда формула расстояния — это просто утверждение теоремы Пифагора.

И в 1D, и в 2D функция расстояния удовлетворяет следующим свойствам:

  1. d (P, Q) ≥0d (P, Q) \ geq 0d (P, Q) ≥0 для всех точек P, Q P, QP, Q с равенством тогда и только тогда, когда P = QP = QP = Q
  2. d (P, Q) = d (Q, P) d (P, Q) = d (Q, P) d (P, Q) = d (Q, P) для всех точек P, QP, QP, Q
  3. d (P, Q) ≤d (P, R) + d (R, Q) d (P, Q) \ leq d (P, R) + d (R, Q) d (P, Q) ≤d (P, R) + d (R, Q) для всех точек P, Q, RP, Q, RP, Q, R.

Каково расстояние между точками (0,5) (0,5) (0,5) и (0,13) (0,13) (0,13)?


Обратите внимание, что обе эти точки лежат на оси yyy, и поэтому расстояние между точками является абсолютной величиной разности yyy-координат, которая составляет ∣5−13∣ = ∣ − 8∣ = 8.□ \ lvert 5-13 \ rvert = \ lvert -8 \ rvert = 8. \ _ \ Square∣5−13∣ = ∣ − 8∣ = 8. □

Чтобы обобщить вышеупомянутую проблему, если две точки P1 = (x1, y1) P_1 = (x_1, y_1) P1 = (x1, y1) и P2 = (x2, y2) P_2 = (x_2, y_2) P2 = (X2, y2) имеют одинаковую координату xxx, т.е. x1 = x2x_1 = x_2x1 = x2, тогда расстояние между двумя точками равно d (P1, P2) = ∣y1 − y2∣ d (P_1 , P_2) = | y_1-y_2 | d (P1, P2) = ∣y1 −y2 ∣, а отрезок P1P2‾ \ overline {P_1P_2} P1 P2 является вертикальным отрезком.

Аналогично, если P1P_1P1 и P2P_2P2 имеют одинаковую yyy-координату (y1 = y2y_1 = y_2y1 = y2), то d (P1, P2) = ∣x1 − x2∣d (P_1, P_2) = | x_1- x_2 | d (P1, P2) = ∣x1 −x2 ∣, а отрезок P1P2‾ \ overline {P_1P_2} P1 P2 — горизонтальный отрезок.

Найдите площадь прямоугольника в плоскости xyxyxy с вершинами

A = (6, −3), B = (6,7), C = (2,7) и D = (2, −3). A = (6, -3), B = (6, 7), C = (2, 7), \ text {и} D = (2, -3). A = (6, −3), B = (6,7), C = (2,7) и D = (2, −3).


Точки AAA и BBB имеют одинаковую xxx-координату, что означает d (A, B) = ∣7 — (- 3) ∣ = 10d (A, B) = \ lvert 7 — (-3) \ rvert = 10d ( A, B) = ∣7 — (- 3) ∣ = 10. Точки BBB и CCC имеют одинаковую yyy-координату, откуда d (B, C) = ∣6−2∣ = 4d (B, C) = \ lvert 6-2 \ rvert = 4d (B, C) = ∣6− 2∣ = 4.Мы проверяем, что точки CCC и DDD имеют одинаковую xxx-координату, а DDD и AAA имеют одинаковую yyy-координату, что означает, что точки действительно являются вершинами прямоугольника.

Тогда площадь прямоугольника равна
[ABCD] = AB⋅BC = 4⋅10 = 40. □ [ABCD] = AB \ cdot BC = 4 \ cdot 10 = 40. \ _ \ square [ABCD] = AB⋅BC = 4⋅10 = 40. □

Расстояние между двумя точками: определение, формулы и примеры

Мы в Cuemath считаем, что математика — это жизненный навык. Наши эксперты по математике сосредотачиваются на том, «почему» стоит за «что».«Студенты могут изучить огромное количество интерактивных рабочих листов, наглядных пособий, симуляторов, практических тестов и многого другого, чтобы глубже понять концепцию.

Забронируйте БЕСПЛАТНОЕ пробное занятие сегодня! и поучаствуйте в онлайн-классе Cuemath LIVE вместе со своим ребенком.

Определение расстояния между двумя точками

Расстояние между любыми двумя точками — это длина отрезка линии, соединяющего точки.

Например, если \ (A \) и \ (B \) — две точки, и если \ (\ overline {AB} = 10 \) см, это означает, что расстояние между \ (A \) и \ (B \ ) составляет \ (10 ​​\) см.

Расстояние между двумя точками — это длина соединяющего их отрезка (но НЕ МОЖЕТ быть длиной соединяющей их кривой).

Как найти расстояние между двумя точками, если даны их координаты?

Давайте узнаем об этом подробнее. 2} \]

Это называется формулой расстояния .

Давайте узнаем, как вывести эту формулу дальше.


Формула доказательства расстояния

Предположим, что:

\ [A = (x_1, y_1) \\ [0,2 см] B = (x_2, y_2) \]

Далее предположим, что \ (\ overline {AB} = d \)

Теперь мы нанесем данные точки на координатную плоскость и соединим их линией.

Далее мы построим прямоугольный треугольник с гипотенузой \ (\ overline {AB} \).2} \]

  • Расстояние до точки \ ((a, b) \) от:

    (i) ось x равна \ (| b | \)

    (ii) ось y равна \ (| a | \)

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

  • Помогите своему ребенку набрать больше баллов с помощью запатентованного БЕСПЛАТНОГО диагностического теста Cuemath. Получите доступ к подробным отчетам, индивидуальным планам обучения и БЕСПЛАТНОЙ консультации. Попытайтесь пройти тест сейчас.


    Решенные примеры

    Найдите расстояние между двумя точками \ ((2, -6 \)) и \ ((7, 3 \))

    Решение:

    Допустим, что данные точки равны:

    \ [\ begin {align} (x_1, y_1) & = (2, -6) \\ [0.2} \\ [0,3 см] d & = \ sqrt {25 + 81} \\ [0,3 см] d & = \ sqrt {106} \ end {align} \]

    \ (\ следовательно \) Расстояние \ (= \ sqrt {106} \)

    Покажите, что точки \ ((2, -1), (0, 1) \) и \ ((2, 3 \)) являются вершинами прямоугольного треугольника.

    Решение:

    Допустим, что данные точки равны:

    \ [\ begin {align} A & = (2, -1) \\ [0,2 см] B & = (0,1) \\ [0.2 \\ [0,3 см] 8 + 8 & = 16 \\ [0,3 см] 16 & = 16 \ конец {выровнено} \]

    Таким образом, \ (A, B \) и \ (C \) удовлетворяют теореме Пифагора.

    Итак, \ (\ треугольник ABC \) прямоугольный треугольник.

    Мы можем доказать то же самое, отметив все координаты на графике:

    Таким образом,

    Данные точки образуют прямоугольный треугольник.

    Найдите точку на оси Y, которая равноудалена от точек \ ((- 1, 2 \)) и \ ((2, 3) \)

    Решение:

    Мы знаем, что координата x любой точки на оси y равна \ (0 \)

    Следовательно, мы считаем точку, равноудаленную от данных точек, равной \ ((0, k \)).2-6к \\ 2к & = 8 \\ к & = 4 \ конец {выровнено} \]

    Следовательно, требуется точка \ ((0, k) = (0, 4) \)

    \ (\ следовательно \) Обязательная точка \ (= (0, 4) \)

    Калькулятор расстояния между двумя точками

    Вот «Калькулятор расстояния между двумя точками».

    Здесь вы можете ввести координаты двух точек, и вам будет показано расстояние между ними с пошаговым объяснением.

    CLUEless по математике? Узнайте, как учителя CUEMATH объяснят вашему ребенку Расстояние между двумя точками , используя интерактивное моделирование и рабочие листы, чтобы им больше никогда не приходилось запоминать что-либо по математике!

    Изучите интерактивные и персонализированные онлайн-классы Cuemath, которые сделают вашего ребенка экспертом по математике. Забронируйте БЕСПЛАТНОЕ пробное занятие сегодня!


    Практические вопросы

    Сложные вопросы

    1. Вершинами прямоугольника являются \ ((- 4, -3), (4, -3), (4, 3), \) и \ ((- 4, 3) \).Какая у него площадь?
    2. Вершины прямоугольного треугольника — это \ ((- 3, 6), (1, 6) \) и \ ((1, -1) \). Какая у него площадь?

    Образцы материалов олимпиады по математике

    IMO (Международная олимпиада по математике) — это конкурсный экзамен по математике, который ежегодно проводится для школьников. Он побуждает детей развивать свои навыки решения математических задач с точки зрения соревнований.

    Вы можете БЕСПЛАТНО скачать образцы работ по оценкам ниже:

    Чтобы узнать больше об олимпиаде по математике щелкните здесь


    Часто задаваемые вопросы (FAQ)

    1.Каково определение расстояния между двумя точками?

    Расстояние между любыми двумя точками — это длина отрезка линии, соединяющего точки.

    Например, если \ (A \) и \ (B \) — две точки, и если \ (\ overline {AB} = 10 \) см, это означает, что расстояние между \ (A \) и \ (B \ ) составляет \ (10 ​​\) см.

    2. Какова формула расстояния между двумя точками?

    Расстояние \ (d \) между двумя точками с координатами \ ((x_1, y_1) \) и \ ((x_2, y_2 \)) составляет:

    \ [d = \ sqrt {(x_2-x_1) ^ 2 + (y_2-y_1) ^ 2} \]

    Это называется формулой расстояния .

    Расстояние между 2 точками

    Краткое объяснение

    Когда мы знаем горизонтальных и вертикальных расстояний между двумя точками, мы можем вычислить расстояние по прямой следующим образом:

    расстояние = √ a 2 + b 2

    Представьте, что вы знаете расположение двух точек (A и B), как здесь.

    Какое расстояние между ними?

    Мы можем провести линии вниз от A и вдоль от B, чтобы получился прямоугольный треугольник.

    И с небольшой помощью Пифагора мы знаем, что:

    a 2 + b 2 = c 2

    Теперь отметьте координаты точек A и B.

    x A означает координату x точки A
    y A означает координату y точки A

    Горизонтальное расстояние a составляет (x A — x B )

    Вертикальное расстояние b равно (y A — y B )

    Теперь мы можем найти c (расстояние между точками):

    Начать с: c 2 = a 2 + b 2

    Введите вычисления для a и b: c 2 = (x A — x B ) 2 + (y A — y B ) 2

    Квадратный корень из обеих сторон:

    Сделанный!

    Примеры

    Пример 1

    Введите значения:

    Пример 2

    Неважно, в каком порядке расположены точки, потому что возведение в квадрат удаляет любые негативы:

    Введите значения:

    Пример 3

    А вот еще пример с некоторыми отрицательными координатами… все еще работает:

    Введите значения:

    (при желании √136 может быть дополнительно упрощено до 2√34)

    Попробуйте сами

    Перетащите точки:

    Три или более размеров

    Отлично работает в 3 (и более!) Измерениях.

    Возвести в квадрат разность для каждой оси, затем просуммировать их и извлечь квадратный корень:

    Расстояние = √ [(x A — x B ) 2 + (y A — y B ) 2 + (z A — z B ) 2 ]

    Пример: расстояние между двумя точками (8,2,6) и (3,5,7) составляет:

    = √ [(8−3) 2 + (2−5) 2 + (6−7) 2 ]
    = √ [5 2 + (−3) 2 + (−1) 2 ]
    = √ (25 + 9 + 1)
    = √35
    Что примерно 5.9

    Калькулятор расстояний

    Калькулятор расстояний

    Калькуляторы, представленные ниже, можно использовать для определения расстояния между двумя точками на двухмерной плоскости или трехмерном пространстве. Их также можно использовать для определения расстояния между двумя парами широты и долготы или двумя выбранными точками на карте.

    2D-калькулятор расстояния

    Используйте этот калькулятор, чтобы найти расстояние между двумя точками на 2D-координатной плоскости.

    Трехмерный калькулятор расстояний

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

    Расстояние по широте и долготе

    Используйте этот калькулятор, чтобы найти кратчайшее расстояние (большой круг / воздушное расстояние) между двумя точками на поверхности Земли.

    Расстояние на карте

    Щелкните карту ниже, чтобы установить две точки на карте и найти кратчайшее расстояние (большой круг / воздушное расстояние) между ними. После создания маркер (маркеры) можно переместить, щелкнув и удерживая, а затем перетащив их.

    ‘;
    calcResult + = »;
    } else if (markerCount> 0) {
    calcResult + = ‘

    Point 1: [‘ + lat1 + ‘,’ + lon1 + ‘]

    Установите другой маркер на карте, чтобы рассчитать расстояние.

    ‘;
    }еще{
    calcResult + = ‘

    Установите два маркера на карте, чтобы рассчитать расстояние между ними.

    ‘;
    }
    calcResult + = »;
    gObj («mapresult»). innerHTML = calcResult;
    }

    Расстояние в системе координат

    Расстояние в двухмерной координатной плоскости:

    Расстояние между двумя точками на двухмерной координатной плоскости можно найти с помощью следующей формулы расстояния

    d = √ (x 2 — x 1 ) 2 + (y 2 — y 1 ) 2

    , где (x 1 , y 1 ) и (x 2 , y 2 ) — координаты двух задействованных точек.Порядок точек не имеет значения для формулы, если выбранные точки совпадают. Например, учитывая две точки (1, 5) и (3, 2), либо 3, либо 1 могут быть обозначены как x 1 или x 2 , если используются соответствующие значения y:

    Использование (1, 5) как (x 1 , y 1 ) и (3, 2) как (x 2 , y 2 ):

    d = √ (3-1) 2 + (2-5) 2
    = √2 2 + (-3) 2
    = √4 + 9
    = √13

    Использование (3, 2) как (x 1 , y 1 ) и (1, 5) как (x 2 , y 2 ):

    d = √ (1-3) 2 + (5-2) 2
    = √ (-2) 2 + 3 2
    = √4 + 9
    = √13

    В любом случае результат один и тот же.

    Расстояние в трехмерном координатном пространстве:

    Расстояние между двумя точками на трехмерной координатной плоскости можно найти с помощью следующей формулы расстояния

    d = √ (x 2 — x 1 ) 2 + (y 2 — y 1 ) 2 + (z 2 — z 1 ) 2

    , где (x 1 , y 1 , z 1 ) и (x 2 , y 2 , z 2 ) — трехмерные координаты двух задействованных точек.Как и в случае двухмерной версии формулы, не имеет значения, какая из двух точек обозначена (x 1 , y 1 , z 1 ) или (x 2 , y 2 , z 2 ), если в формуле используются соответствующие точки. Учитывая две точки (1, 3, 7) и (2, 4, 8), расстояние между точками можно найти следующим образом:

    d = √ (2 — 1) 2 + (4 — 3) 2 + (8-7) 2
    = √1 2 + 1 2 + 1 2
    = √3

    Расстояние между двумя точками на поверхности Земли

    Есть несколько способов найти расстояние между двумя точками на поверхности Земли.Ниже приведены две общие формулы.

    Формула Хаверсина:

    Формула гаверсинуса может использоваться, чтобы найти расстояние между двумя точками на сфере, учитывая их широту и долготу:

    В формуле гаверсинуса d — это расстояние между двумя точками вдоль большого круга, r — радиус сферы, & directphi; 1 и & Stratocaster; 2 — это широты двух точек, а λ 1 и λ 2 — долготы двух точек, все в радианах.

    Формула гаверсинуса работает, находя расстояние по большому кругу между точками широты и долготы на сфере, которое можно использовать для аппроксимации расстояния на Земле (поскольку оно в основном сферическое). Большой круг (также ортодромия) сферы — это самый большой круг, который можно нарисовать на любой данной сфере. Он образован пересечением плоскости и сферы через центральную точку сферы. Расстояние по дуге большого круга — это кратчайшее расстояние между двумя точками на поверхности сферы.

    Результаты с использованием формулы гаверсинуса могут иметь погрешность до 0,5%, потому что Земля — ​​не идеальная сфера, а эллипсоид с радиусом 6 378 км (3963 мили) на экваторе и радиусом 6 357 км (3950 миль). у столба. Из-за этого формула Ламберта (формула эллипсоидальной поверхности) более точно аппроксимирует поверхность Земли, чем формула гаверсинуса (формула сферической поверхности).

    Формула Ламберта:

    Формула Ламберта (формула, используемая вычислителями выше) — это метод, используемый для вычисления кратчайшего расстояния по поверхности эллипсоида.Когда он используется для аппроксимации Земли и расчета расстояния на поверхности Земли, он имеет точность порядка 10 метров на тысячи километров, что более точно, чем формула гаверсинуса.

    Формула Ламберта выглядит следующим образом:

    , где a — экваториальный радиус эллипсоида (в данном случае Земли), σ — центральный угол в радианах между точками широты и долготы (найденный с помощью такого метода, как формула гаверсинуса), f — сглаживание Земля, а также X и Y развернуты ниже.

    Где P = (β 1 + β 2 ) / 2 и Q = (β 2 — β 1 ) / 2

    В приведенных выше выражениях β 1 и β 1 — это уменьшенные широты с использованием следующего уравнения:

    загар (β) = (1 — f) загар (& Straightphi;)

    , где & Stratocaster; широта точки.

    Обратите внимание, что ни формула гаверсинуса, ни формула Ламберта не обеспечивают точное расстояние, потому что невозможно учесть все неровности на поверхности Земли.

    Как рассчитать расстояние между двумя координатами

    Обновлено 15 декабря 2020 г.

    Автор Nucreisha Langdon

    Знание того, как рассчитать расстояние между двумя координатами, имеет множество практических применений в науке и строительстве. Чтобы найти расстояние между двумя точками на двумерной сетке, вам необходимо знать координаты x и y каждой точки. Чтобы найти расстояние между двумя точками в трехмерном пространстве, вам также необходимо знать z-координаты этих точек. 2

    , чтобы найти квадрат расстояния между двумя точками.2 = 41

    Таким образом, квадрат расстояния между координатами равен 41.

    Извлеките квадратный корень из D 2 , чтобы найти D, фактическое расстояние между двумя точками. Например, если D 2 = 41, то D = 6,403, и поэтому расстояние между (-3, 7) и (1, 2) равно 6,403.

    Расстояние в трех измерениях

      Вычислите положительную разницу между координатами z и назовите это число Z. Координаты z — это третьи числа в каждом наборе координат.2 = 141

      Таким образом, квадрат расстояния между координатами равен 141.

      Извлеките квадратный корень из D 2 , чтобы найти D, фактическое расстояние между двумя точками. Например, если D 2 = 141, тогда D = 11,874, и поэтому расстояние между (-3, 7, 10) и (1, 2, 0) равно 11,87.

    Определение расстояния между двумя точками в трехмерном пространстве

    Вторая точка в трехмерном пространстве

    К настоящему времени вы и Дельфиниус, возможно, уже пришли к идее поиска точек, проводя линию от начала координат и затем ища прямоугольный треугольник.Разместим в нашем пространстве еще одну зеленую точку на расстоянии d от начала координат:

    Второй момент

    Если смотреть в сторону начала координат с некоторой точки положительного угла x , то по оси x виден другой прямоугольный треугольник:

    Дистанционный треугольник

    Линия c такая же, как и раньше, а расстояние d мы уже описали.А как насчет z 2? Это длина точки d в направлении z , составляющая линию, параллельную оси z . Этот отрезок линии образует угол 90o с плоскостью x y . От Пифагора:

    Теперь мы куда-то идем, потому что можем заменить c :

    Если извлечь квадратный корень из обеих сторон:

    d — это расстояние.В этом примере d — это расстояние от начала координат до второй точки. Начало координат можно записать как (0, 0, 0). Если мы включим эту «0» информацию:

    Расстояние между двумя точками в трехмерном пространстве

    Дельфиниус, будучи умным дельфином, любит, чтобы результаты были как можно более общими. Допустим, у нас есть две произвольные точки в пространстве, и мы хотим знать расстояние между ними.

    Расстояние между двумя произвольными точками

    Одна из точек находится в ( x 1, y 1, z 1).Другая точка находится в ( x 2, y 2, z 2). Вместо расстояния от начала координат в (0, 0, 0) у нас есть расстояние от точки ( x 1, y 1, z 1).

    Уравнение расстояния d :

    Теперь мы рассмотрим два примера Дельфиниуса, чтобы проверить математику.

    Пример: Найдите расстояние между двумя точками (0, 0, 3) и (0, 0, -3).

    Эти две точки находятся на оси z , и расстояние между ними равно 6. Как насчет использования уравнения?

    Что, если бы мы поменяли местами точки?

    Из-за возведения в квадрат, какая точка равна «1», а какая — «2», значения не имеет.

    Пример: Найдите расстояние между (-1, 2, -5) и (1, -2, 5).

    Мы используем уравнение, которое дает нам расстояние между двумя точками:

    Мы разработали уравнение расстояния и провели некоторые вычисления.Что может сделать дельфина счастливее?

    Краткое содержание урока

    Начало координат — это место, где x , y и z равны нулю. Гипотенуза — самая длинная сторона прямоугольного треугольника. Теорема Пифагора связывает длины сторон прямоугольного треугольника. Используя теорему Пифагора, мы нашли расстояние между двумя произвольными точками в трехмерном пространстве.

    Для двух точек с координатами ( x 1, y 1, z 1) и ( x 2, y 2, z 2) расстояние d составляет

    Расстояние между двумя точками 3D

    Формула расстояния между двумя точками

    Обычно в двухмерном пространстве каждая точка в пространстве определяется двумя параметрами: координатой x и координатой y.Вам потребуется пара координатных осей, чтобы определить точное положение точки на плане. Комбинация координат x и y выражается в виде упорядоченной пары, например, (x, y). Итак, координаты точки, скажем M, можно выразить как M (x, y). Эта упорядоченная пара (x, y) дает вам координаты точки.

    Прежде чем вы научитесь определять расстояние между двумя точками 3D, вы должны знать базовую формулу расстояния, которая приведена ниже.

    Рассматривая две точки M (x1, y1) и N (x2, y2) на данной координатной оси, вы можете найти расстояние между ними по формуле:

    Шаги, чтобы найти расстояние между двумя точками:

    • Во-первых, вам нужно взять координаты двух точек, таких как (x1, y1) и (x2, y2).

    • Затем вы должны использовать формулу расстояния, которая равна √ [(x2 — x1) ² + (y2 — y1) ²].

    • Теперь вам нужно рассчитать расстояние по вертикали и горизонтали между двумя точками. Расстояние по горизонтали (x2 — x1) представляет точки на оси x, а расстояние по вертикали (y2 — y1) обозначает точки на оси y.

    • Затем вы должны возвести в квадрат оба значения, полученные из (x2 — x1) и (y2 — y1).

    • Теперь все, что вам нужно сделать, это сложить оба значения, что выглядит как (x2 — x1) 2 + (y2 — y1) 2.

    • Наконец, вам нужно найти квадратный корень из полученного значения.

    • В итоге вы получите расстояние между двумя точками на координатной плоскости.

    Расстояние между двумя точками в 3D

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

    А пока обратитесь к рис.1. Здесь точки P (x1, y1, z1) и Q (x2, y2, z2) относятся к системе прямоугольных осей OX, OY и OZ.

    (изображение будет загружено в ближайшее время)

    Из точек P и Q нужно провести плоскости, параллельные координатной плоскости. Тогда вы получите прямоугольный параллелепипед с диагональю PQ.

    Как видно на рисунке, ∠PAQ образует прямой угол. Это позволяет нам применить теорему Пифагора в треугольнике PAQ.

    Добавить комментарий

    Ваш адрес email не будет опубликован.