Bounds (граница карты) для Широты/долготы

MapInfo, MapBasic
Ответить
baston1981
Интересующийся
Сообщения: 18
Зарегистрирован: 30 окт 2011, 21:40
Репутация: 0
Откуда: МО, Голицыно

Bounds (граница карты) для Широты/долготы

Сообщение baston1981 » 20 фев 2012, 11:30

Ребята, подскажите, можно ли при создании карты в широте/долготе указать ее пределы? А то по умолчанию создается гигантская с соответствующей точностью. Я конечно могу потом миф подправить, но это не интересно.

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: Bounds (граница карты) для Широты/долготы

Сообщение Boris » 04 мар 2012, 19:49

можно. и это написано в стандартном хелпе к мапбасику - команда
Create Map statement
Purpose
Modifies the structure of a table, making the table mappable.
Syntax
Create Map
For table
[ CoordSys... ] Using from_table]
где стандартный вид выражения CoordSys содержит границы для любой системы координат:
CoordSys Earth
[ Projection type, datum, unitname
[ , origin_longitude ] [ , origin_latitude ]
[ , standard_parallel_1 [ , standard_parallel_2 ] ]
[ , azimuth ] [ , scale_factor ]
[ , false_easting ] [ , false_northing ]
[ , range ] ]
[ Affine Units unitname, A, B, C, D, E, F ]
[ Bounds ( minx, miny ) ( maxx, maxy ) ]
которая прекрасно вводится в окно мапбасика в мапинфо
---

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

Код: Выделить всё

"--- Mos Obl World Special ---"
"UTM Zone 37, Northern Hemisphere (WGS 84)\p32637", 2008, 104, 7, 39, 0, 0.9996, 500000, 0, -500000,5000000,1500000,7000000
"UTM Zone 38, Northern Hemisphere (WGS 84)\p32638", 2008, 104, 7, 45, 0, 0.9996, 500000, 0, -500000,5000000,1500000,7000000
"GK Zone 7 (Pulkovo 1942)\p28407", 2008, 1001, 7, 39, 0, 1, 7500000, 0, 6500000,5000000,8500000,7000000
"GK Zone 8 (Pulkovo 1942)\p28408", 2008, 1001, 7, 45, 0, 1, 8500000, 0, 7500000,5000000,9500000,7000000
"Долгота / Широта (WGS 84)\p4326", 2001, 104, 30, 42, 60, 72
"Долгота / Широта (Пулково 1942)\p4284", 2001, 1001, 30, 42, 60, 72

baston1981
Интересующийся
Сообщения: 18
Зарегистрирован: 30 окт 2011, 21:40
Репутация: 0
Откуда: МО, Голицыно

Re: Bounds (граница карты) для Широты/долготы

Сообщение baston1981 » 14 мар 2012, 00:29

Борис, спасибо огромное за ответ. Вот только что получается:
"Долгота / Широта (WGS 84)\p4326", 2001, 104, 30, 42, 60, 72 - так видит границы карты
"Долгота / Широта (WGS 84)\p4326", 1, 104, 30, 42, 60, 72 - а так нет.

baston1981
Интересующийся
Сообщения: 18
Зарегистрирован: 30 окт 2011, 21:40
Репутация: 0
Откуда: МО, Голицыно

Re: Bounds (граница карты) для Широты/долготы

Сообщение baston1981 » 14 мар 2012, 01:38

Разобрался) Высшая математика) 1=2000+1+границы. Борис, спасибо, что ткнули носом.

Цитата: "Вы можете указать предельные границы для координатной системы в файле MAPINFOW.PRJ.
Чтобы сделать это, добавьте 2000 к номеру проекции и укажите границы после списка
параметров проекции"

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: Bounds (граница карты) для Широты/долготы

Сообщение Boris » 14 мар 2012, 07:23

Забыл сказать про одно "но" - после внесения проекции в MAPINFOW.prj текстовое описание ВСЕХ проекций, имеющих общие тип, эллипсоид параметры БЕЗ учета границ, будут отображаться текстовым описание первой встреченной в MAPINFOW.prj проекции, т.к. при поиске мнемонического описания проекции производтся последовательное чтение файла MAPINFOW.prj. И первая встреченная подходящая проекция (точнее система координат) будет выбрана для текстового описания этой проекции при просмотре средствами Mapinfo.

Ответить

Вернуться в «MapInfo»

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

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