Marks.sml поле lonlatarr. Как закодировать координаты?

программа для загрузки и просмотра спутниковых снимков Земли, Луны, Марса предоставленных сервисами Google Maps и Космоснимки. Возможность работы с GPS приёмником.

Модераторы: Tolik, zed

Marks.sml поле lonlatarr. Как закодировать координаты?

Сообщение mmxland » 13 фев 2013, 06:56

Здравствуйте!

Требуется заполнить поле lonlatarr в Marks.sml для полигона. Пусть координаты вершин будут, например, такие:
(x1: 44.68017200 y1:43.01867800)
(x2: 39.72227100 y2:43.58279500)
(x3: 40.68017200 y3:43.01867800)

Подскажите алгоритм превращения этих координат, в формат SAS.

Знаю, что темы по этому поводу были и не раз, но у меня не получается применить ту информацию ибо там нет конкретики, лишь фрагменты алгоритма...
1. Преобразование втупую из заполненного lonlatarr в Marks.sml по алгоритму BASE64 decode выводит нечитаемое нечто...
2. Фрагмент алгоритма на php выложенного на форуме в ветке viewtopic.php?f=2&t=319 также выводит нечто...

Буду очень признателен за помощь в данной ситуации.
mmxland
Новичок
 
Сообщения: 1
Зарегистрирован: 13 фев 2013, 03:24
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Re: Marks.sml поле lonlatarr. Как закодировать координаты?

Сообщение Tolik » 13 фев 2013, 09:03

mmxland писал(а):1. Преобразование втупую из заполненного lonlatarr в Marks.sml по алгоритму BASE64 decode выводит нечитаемое нечто...

Нечитаемое, потому что бинарный файл. Тем не менее видно, что каждая точка занимает 24 байта: 2 координаты по 10 байт и 4 байта непонятно что :)
Tolik
Гуру
 
Сообщения: 1624
Зарегистрирован: 28 янв 2011, 10:38
Благодарил (а): 68 раз.
Поблагодарили: 242 раз.

Re: Marks.sml поле lonlatarr. Как закодировать координаты?

Сообщение Parasite » 13 фев 2013, 09:13

mmxland писал(а):там нет конкретики, лишь фрагменты алгоритма

И сорцев САСа (с полнейшей конкретикой по данному вопросу унутре оных) ну вот совершенно нигде нет, правда? :twisted:

//CLOSED
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Аватара пользователя
Parasite
Администратор
 
Сообщения: 4532
ICQ: 15819243
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 57 раз.
Поблагодарили: 214 раз.

Re: Marks.sml поле lonlatarr. Как закодировать координаты?

Сообщение zed » 13 фев 2013, 09:41

Tolik писал(а):Тем не менее видно, что каждая точка занимает 24 байта: 2 координаты по 10 байт и 4 байта непонятно что :)

Не непонятно что, а просто мусор. Поскольку тип, в котором хранятся координаты объявлен как:

Код: Выделить всё
type
  TExtendedPoint = record
    X, Y: Extended;
  end;

т.е. без слова packed, а Extended равен 10-ти байтам, то Delphi производит выравнивание памяти до кратности 4-м байтам. Поэтому каждое поле становится по 12 байт, из которых 2 - мусор.
Хитрости GoogleEarth - то, чего вы не знаете о гугле
Аватара пользователя
zed
Гуру
 
Сообщения: 1519
ICQ: 357167611
Зарегистрирован: 16 авг 2008, 20:21
Откуда: Беларусь, Могилёв
Благодарил (а): 37 раз.
Поблагодарили: 177 раз.


Вернуться в SAS.Планета

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

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

cron