ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГОЛЬН

Системы координат, проекции, преобразования, привязка
Ответить
tarabukinivan
Новоприбывший
Сообщения: 6
Зарегистрирован: 14 апр 2016, 04:58
Репутация: 0

ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГОЛЬН

Сообщение tarabukinivan » 14 апр 2016, 05:02

Доброго времени суток!
Уже замучился с этими координатами). Живу я на территории Саха(якутия) п. Хандыга. В гуглмапе координаты: 62654648 135550605.
Есть данные от пользовательской сетки: dx=+23.92; dy=-141.27; dz=-81; da=-108; df=+0.00480795; utm=2499997; исходная широта 0.0; Свою зону я не знаю.
Маршрут делаю в навигаторе garmin. Если смотрю файлы гармина, то точки имеют вид: <rtept lat="62.659125700592995" lon="135.55171731859446".
И есть у меня карты местности масштабами: 1:25000 и 1:50000 в программа "ГИС Панорама Мини". В нем прямоугольные координаты вида: х(север), у(восток).
Например, если ввести точку вручную в панораме (карта масштабом:250000) по wgs84(градусы): 62.64807362 135.57017638
она по прямоугольной х(север), у(восток) приобретает вид: 6949333.080000 23529151.880000
А точка на карте (с масштабом:50000) по wgs84(градусы): 62.60602681 135.17616811
по прямоугольной х(север), у(восток) приобретает вид: 694459.939208 23508959.495617
Короче с gpx беру данные вида lat и lon:
62,659125700592995 135,55171731859446
62,659125700592995 135,55171731859446
62,654938688501716 135,56992943398654
62,654938688501716 135,56992943398654
62,652247175574303 135,56472594849765
62,649854561313987 135,55757123976946
62,649854561313987 135,55757123976946
62,649854561313987 135,55757123976946
62,65678882598877 135,55766344070435
62,659406661987305 135,54770708084106
62,660022815689445 135,56797821074724
62,659435495734215 135,55333603173494
62,659656777977943 135,55076513439417
62,659656777977943 135,55076513439417
62,65916995704174 135,55114600807428
Их надо перевести на карту с прямоугольными координатами вида: х(север), у(восток).
Подскажите пожалуйста формулу (не готовую программу) для перевода с координат gpx в прямоугольные.
В интернете нарыл "формулу пересчета координат из WGS-84 в СК-42 и обратно" и написал в Дельфи,но после ее работы
62.64807362 135.57017638 никак не становится: 6949333.080000 23529151.880000 (меняется только 11 цифра после запятого). По моему я перевожу только с wgs-84 в ск-42. Теперь нужно перевести в прямоугольные?
Вот сама формула:
const
pi=3.14159265358979;
ro=206264.8062;
//эллипсоид красовского
ap=6378245;
alp=1/298.3; //0.00335232986925914
e2p=2*alp-alp*alp;//0.00669342162296594
//эллипсод WGS84
aw=6378137;
alw=1/298.257223563; //0.00335281066474748
e2w=2*alw-alw*alw;//0.0066943799901413
a=(ap+aw)/2; //6378191
e2=(e2p+e2W)/2; //0.0066939
da=aw-ap; //-108
de2=e2w-e2p;//9.58367175373768e-7
//линейные элементы трансформирования
dx=23.92;
dy=-141.27;
dz=-80.9;
//угловые элементы трансформирования
wx=0;
wy=0;
wz=0;
ms=25000;//масштабный элемент трансформирования
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Button2: TButton;
Memo1: TMemo;
OpenDialog1: TOpenDialog;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N4: TMenuItem;
Label1: TLabel;
N3: TMenuItem;
Memo2: TMemo;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;filename:string;
implementation
{$R *.dfm}
Function dB(Bd,Ld,H:double):double;
var B, L, M, N,skb1:double;
begin
B:= Bd * Pi/180;
L:= Ld * Pi/180;
skb1:=n/a*e2*sin(b)*cos(b)*da+(sqr(n)/sqr(a)+1)*n*sin(b)*cos(b)*de2/2-(dx*cos(l)+dy*sin(l))*sin(b)+dz*cos(b);
M:= a * (1 - e2) / sqrt((1 - e2 * Sin(b)*sin(b))*(1 - e2 * Sin(b)*sin(b))*(1 - e2 * Sin(b)*sin(b))) ;
N:= a /sqrt(1 - e2 * sqr(Sin(B)));
dB:= ro / (M + H) * skb1 - wx * Sin(L) * (1 + e2 * Cos(2 * B))+ wy * Cos(L) * (1 + e2 * Cos(2 * B))- ro * ms * e2 * Sin(B) * Cos(B);
End;
Function dL(Bd, Ld, H:double):double;
Var B, L, N:double;
begin
B:=Bd * Pi / 180;
L:= Ld * Pi / 180;
N:= a / sqrt(1 - e2 * Sin(B)*sin(b));
dL:= ro / ((N + H) * Cos(B)) * (-dx * Sin(L) + dy * Cos(L))+ sin(B)/cos(b) * (1 - e2) * (wx * Cos(L) + wy * Sin(L)) - wz;
End;
Function WGS84Alt(Bd, Ld, H:double):double;
var B, L, N, dH:double;
begin
B:=Bd * Pi / 180;
L:= Ld * Pi / 180;
N:= a / sqrt(1 - e2 * Sin(B)*sin(b));
dH:= -a / N * da + N * Sin(B) *Sin(B) * de2 / 2 + (dx * Cos(L) + dy * Sin(L)) * Cos(B) + dz * Sin(B)- N * e2 * Sin(B) * Cos(B) * (wx / ro * Sin(L) - wy / ro * Cos(L))+ (a *a/ N + H) * ms;
WGS84Alt:= H + dH;
End;
Function WGS84_SK42_Lat(Bd, Ld, H:double):double;
begin WGS84_SK42_Lat:=Bd - dB(Bd, Ld, H) / 3600;
End;
Function SK42_WGS84_Lat(Bd, Ld, H:double):double;
begin SK42_WGS84_Lat:= Bd + dB(Bd, Ld, H) / 3600;
End;
Function WGS84_SK42_Long(Bd, Ld, H:double):double;
begin WGS84_SK42_Long:=Ld - dL(Bd, Ld, H) / 3600;
End;
Function SK42_WGS84_Long(Bd, Ld, H:double):double;
begin SK42_WGS84_Long:= Ld + dL(Bd, Ld, H) / 3600;
End;

trir
Гуру
Сообщения: 5298
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1015
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение trir » 14 апр 2016, 06:54

для кода есть тэг "code"
Панорама ведь умеет пересчитывать! Зачем мучится и изобретать велосипед???

tarabukinivan
Новоприбывший
Сообщения: 6
Зарегистрирован: 14 апр 2016, 04:58
Репутация: 0

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение tarabukinivan » 14 апр 2016, 09:23

ГИС Панорама мини. Беру координаты в формате gpx. меняю расширение на txt. В панораме нажимаю создание объекта - Создание по загруженным с файла объектам.Выходит создано 0 объектов. Видит только когда все лишнее удаляю и привожу в вид:
62,659125700592995 135,55171731859446
62,659125700592995 135,55171731859446
62,654938688501716 135,56992943398654
62,654938688501716 135,56992943398654
62,652247175574303 135,56472594849765
62,649854561313987 135,55757123976946
62,649854561313987 135,55757123976946
62,649854561313987 135,55757123976946
62,65678882598877 135,55766344070435
62,659406661987305 135,54770708084106
И берет только в прямоугольных координатах.

trir
Гуру
Сообщения: 5298
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1015
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение trir » 14 апр 2016, 09:43


Аватара пользователя
Artalex
Новоприбывший
Сообщения: 13
Зарегистрирован: 18 сен 2009, 14:22
Репутация: 1

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение Artalex » 14 апр 2016, 22:02

перевести из wgs84 в ск42 можно Геокалькулятором из Photomod Lite

[ Сообщение с мобильного устройства ]

trir
Гуру
Сообщения: 5298
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1015
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение trir » 14 апр 2016, 22:26

или в "ГИС Панорама Мини"

tarabukinivan
Новоприбывший
Сообщения: 6
Зарегистрирован: 14 апр 2016, 04:58
Репутация: 0

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение tarabukinivan » 15 апр 2016, 04:49

Почему, если перевожу из wgs в краковскую, потом эти координаты в прямоугольные по ГОСТ Р 51794-2008 выходит совсем другое.
Я так понял в файле gpx координаты вида:
62,659125700592995 135,55171731859446
62,659125700592995 135,55171731859446
62,654938688501716 135,56992943398654
62,654938688501716 135,56992943398654
62,652247175574303 135,56472594849765
62,649854561313987 135,55757123976946
62,649854561313987 135,55757123976946
62,649854561313987 135,55757123976946
62,65678882598877 135,55766344070435
62,659406661987305 135,54770708084106
Заданы в WGS-84 в градусах?
Я координаты выше по формуле (22)и (23) перевожу в Краковские, потом по формулам (25-26) в прямоугольные. Правильно ли я перевожу.
Прибор у меня (т.е. gps) показывает координаты как на панораме, если ввожу пользовательскую сетку:
dx=23.92
dy=-141.27
dz=-80.9
da=-108
df=0.00480796
utm=2500000
смещение по широте 0
масштаб 1.
поэтому при переходе с wgs в краковскую в формуле (22),(23) ввожу dx=23.92 dy=-141.27 dz=-80.9 da=-108. Масштаб 1. А куда писать df и utm?
Его сначала нужно перевести в Краковские градусы. Потом с градусов в метры (прямоугольные координаты)?
Вложения
GOST_R_51794-2008.rtf
(7.89 МБ) 593 скачивания

trir
Гуру
Сообщения: 5298
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1015
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение trir » 15 апр 2016, 06:42


tarabukinivan
Новоприбывший
Сообщения: 6
Зарегистрирован: 14 апр 2016, 04:58
Репутация: 0

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение tarabukinivan » 15 апр 2016, 08:59

Спасибо trir!

tarabukinivan
Новоприбывший
Сообщения: 6
Зарегистрирован: 14 апр 2016, 04:58
Репутация: 0

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение tarabukinivan » 15 апр 2016, 08:59

Спасибо trir!

ericsson
Гуру
Сообщения: 3321
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 748
Ваше звание: Вредитель полей

Re: ОЧЕНЬ НУЖНА ПОМОЩЬ ПО ПЕРЕВОДУ КООРДИНАТ С GPS В ПРЯМОУГ

Сообщение ericsson » 15 апр 2016, 19:25

А можно в конце концов убрать название темы капсом и сделать нормально?

Ответить

Вернуться в «Координаты и привязка»

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя