Đưa ra một đường thẳng trên bề mặt trái đất, làm thế nào để tôi vẽ một đường thẳng vuông góc với nó?


9

Đưa ra một đường thẳng trên bề mặt trái đất, làm thế nào để tôi vẽ một đường thẳng vuông góc với nó?

Xin lỗi nếu đây là một câu hỏi rất đơn giản. Tôi nghĩ rằng đây sẽ là một nhiệm vụ đơn giản, nhưng nó đang chứng minh phản trực giác.

Tôi bắt đầu với dòng màu xanh trong hình bên dưới (xem liên kết - Tôi chưa thể tải lên số liệu). Tôi tìm thấy một đường vuông góc bằng cách tính độ dốc của đường màu xanh (m), sau đó vẽ một đường khác (màu xanh lá cây) với độ dốc -1 / m. Khi tôi vẽ các đường trong Matlab (sử dụng 'âm mưu' và 'trục bằng'), chúng trông vuông góc, như mong đợi.

http://imgur.com/7qMkx

Tuy nhiên, khi tôi xuất các dòng này sang Google Earth (sử dụng Hộp công cụ KML), chúng không còn nhìn vuông góc nữa (xem liên kết bên dưới; dòng ngắn hơn là dòng màu xanh từ hình trước).

http://imgur.com/ncJQ7

Tôi hiểu rằng những điều kỳ lạ xảy ra trên các bề mặt cong, nhưng tôi nghĩ rằng các đường ít nhất nên nhìn vuông góc cục bộ. Tôi nghi ngờ điều này có liên quan đến phép chiếu trong Google Earth - đặc biệt là thực tế là các ô lưới dường như có độ dài cạnh gần tương tự nhau, nhưng cạnh dọc có chiều dài = 1 độ, trong khi cạnh vĩ độ có chiều dài = 0,5 trình độ.

Vì vậy, tóm lại:

  • phương pháp tìm đường vuông góc của tôi có hợp lệ trên bề mặt cong không? (nghĩa là vẽ một đường thẳng có độ dốc -1 / m)
  • trong hình ảnh Google Earth, các đường vuông góc có trông như mong đợi hay có điều gì lạ xảy ra không?

CẬP NHẬT:

Để cung cấp thêm bối cảnh: Tôi đang xem dữ liệu radar lấy từ máy bay. Khu vực nhiều màu là 'swath', nơi các quan sát đã được ghi lại. Đường màu xanh mà tôi bắt đầu trong phần giải thích ở trên song song với đường xoáy: đây là đường bay của máy bay (máy bay đang di chuyển theo hướng tây nam). Radar nhìn theo hướng trực giao với đường bay, bên trái. Tôi đang cố gắng vẽ một đường thẳng vuông góc với đường bay; đây phải là hướng mà radar đang nhìn và nên cắt gọn gàng. Như bạn có thể thấy, đây không phải là trường hợp.

nhập mô tả hình ảnh ở đây


2
Trên thực tế, Google miêu tả chính xác góc, trong khi âm mưu Matlab của bạn không ...
whuber

Cảm ơn đã trả lời, whuber. Điều đó có nghĩa là dòng tôi đã tính không thực sự vuông góc với bản gốc? Hay nó có nghĩa là cách tôi xem các dòng trong Matlab bằng cách nào đó là sai? Tôi đã sử dụng lệnh 'trục bằng' trong Matlab để thuyết phục bản thân rằng các đường thẳng vuông góc, nhưng tôi hy vọng điều này sẽ không thể hiện đúng độ cong của trái đất.
Paul Keat

2
Giải thích đầu tiên của bạn là chính xác, Paul. Sử dụng (lon, lat) như thể chúng là tọa độ của Cartesian làm biến dạng các hướng một cách đáng tiếc đến nỗi hầu hết các góc đều bị biến dạng rõ ràng. Do đó, sử dụng công thức Cartesian -1 / m thậm chí sẽ không đưa bạn đến gần một góc phải ngoại trừ một vài hướng may mắn (hoặc tại Xích đạo). Để cung cấp một phương pháp thay thế, sẽ giúp biết loại "đường" bạn muốn (ví dụ như đường trắc địa hoặc đường thẳng), mục đích của bạn trong việc vẽ nó và thời gian cần thiết là bao lâu. (Độ dài ngắn cho phép sử dụng xấp xỉ đơn giản.)
whuber

2
BTW, bạn có thể tìm hiểu rất nhiều về những vấn đề này bằng cách đọc một số chủ đề trên trang web của chúng tôi về các dự đoán tuân thủ .
whuber

Cảm ơn rất nhiều, whuber. Rất thú vị. Tôi đã cung cấp thêm bối cảnh trong mô tả vấn đề, ở trên. Độ dài tôi cần tương đối ngắn (chiều rộng của dải đất, được hiển thị ở trên, là một phần mười của một mức độ), vì vậy mọi đề xuất về các xấp xỉ hợp lệ sẽ được đánh giá cao. Cũng cảm ơn vì liên kết - Tôi sẽ kiểm tra nó.
Paul Keat

Câu trả lời:


10

Một nguyên tắc thanh lịch cung cấp một câu trả lời đơn giản:

Tất cả các điểm trên một bề mặt cong mịn đều bằng phẳng ở quy mô đủ lớn.

Điều này có nghĩa là sau khi thay đổi tọa độ affine (thường chỉ liên quan đến việc thay đổi kích thước của một trong số chúng), chúng ta có thể sử dụng các công thức của hình học Euclide, như Định lý Pythagore để tính toán khoảng cách và công thức độ dốc đối ứng âm để tìm đường vuông góc.

Với các tọa độ vĩ độ và kinh độ trên mặt cầu (cách xa các cực, nơi kinh độ trở thành số ít), tất cả những gì chúng ta cần làm là điều chỉnh hướng đông-tây để phản ánh độ dài co lại của một kinh độ khi một người tiến đến cực. Với một mô hình hình cầu của trái đất, sự co lại đó được đưa ra bởi cosin của vĩ độ. Đây chỉ đơn thuần là một sự thay đổi trong tỷ lệ khung hình của cốt truyện, không có gì hơn thế.

Điều này hoạt động cho các khu vực kéo dài không quá một vài độ vĩ độ bắc-nam và không tiếp cận một trong hai cực.

Do đó, tất cả những gì bạn phải làm là:

  1. Nhân tất cả các kinh độ với cosin của một vĩ độ điển hình.

  2. Tính đường thẳng vuông góc.

  3. Hoàn tác điều chỉnh tọa độ.

Ví dụ: giả sử đường ray của máy bay đã lấy nó từ (lon, lat) = (-78, 40) đến (-79, 41). Chúng ta có thể lấy một vĩ độ điển hình để nằm trong khoảng từ 40 đến 41, chẳng hạn như 40,5.

Bước 1 Các tọa độ được điều chỉnh là (-78 * cos (40,5), 40) = (-59.31167, 40) và (-79 * cos (40.5), 41) = (-60,07207, 41).

Bước 2 Câu hỏi đề xuất thực hiện điều này bằng phương pháp độ dốc đối ứng âm. Điều đó sẽ đúng, nhưng nó sẽ thất bại trong một số trường hợp (trong đó độ dốc là vô hạn). Nó là tổng quát hơn và mạnh mẽ hơn để sử dụng số học vector. Đây là cách tính toán.

Vectơ chỉ đường cho đường bay của chuyến bay là sự dịch chuyển từ đầu đến cuối của nó,

v =  (-60.07207, 41) - (-59.31167, 40)
  =  (-0.7604, 1.0).

Xoay bất kỳ vectơ (x, y) theo góc vuông theo chiều kim đồng hồ sẽ tạo ra (y, -x), từ đó hướng vuông góc sang phải là

w = (1.0, 0.7604).

Theo Định lý Pythagore, độ dài của vectơ này là căn bậc hai của tổng bình phương các hệ số của nó,

|w| = sqrt(1^2 + 0.7604^2) = 1.256268

Hãy di chuyển, giả sử, 0,2 độ dọc theo vectơ này từ điểm bắt đầu của chuyến bay. Bắt đầu là (-59.31167, 40) và độ dịch chuyển là 0,2 / | w | lần w, kết thúc vào lúc

(-59.31167, 40) + 0.2 / 1.256268 * (1.0, 0.7604) = (-59.15247  40.12106).

Bước 3 Để hoàn tác điều chỉnh, chia tọa độ đầu tiên của bất kỳ điểm kết quả nào cho cùng một cosin được sử dụng trong Bước 1:

(-59.15247/cos(40.5), 40.12106) = (-77.79064, 40.12106)

Nếu bạn vẽ các điểm này bằng tỷ lệ khung hình 1: 1, góc sẽ có vẻ bị che khuất hơn là góc phải. Nhưng nếu bạn thay đổi tỷ lệ khung hình thành 1: cos (40,5) (khoảng 4: 3), góc sẽ xuất hiện chính xác là 90 độ. Khi bạn vẽ các điểm bằng bất kỳ phép chiếu phù hợp nào - bao gồm Mercator của Google - góc cũng sẽ chính xác.


2
Điều này thật tuyệt vời, whuber. Cảm ơn rất nhiều. Đó là một lời giải thích rất rõ ràng về việc tôi sẽ sai ở đâu và làm thế nào tôi có thể khắc phục vấn đề. Cuối cùng tôi đã sử dụng các hàm 'góc phương vị' và 'tính toán' của Matlab để có được đường vuông góc, nhưng thật tốt khi thấy một lời giải thích chi tiết hơn về các nguyên tắc đầu tiên về cách thực hiện điều này. Cảm ơn nhiều.
Paul Keat
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.