Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MB6REFRU.pdf
Скачиваний:
10
Добавлен:
13.02.2015
Размер:
3.83 Mб
Скачать

Оператор Create Pline

Оператор Create Pline

Назначение:

Создает объект типа "полилиния".

Синтаксис:

Create Pline

[ Into { Window window_id | Variable var_name } ] num_points

(x1, y1) (x2, y2) [ ... ] [ Pen... ]

[ Smooth ]

где

window_id – идентификатор окна, целое число; var_name – имя объектной переменной;

num_points – определяет число узлов для полилинии; x, y – координаты для одного узла.

Слово Pen начинает стандартное предложение для назначения стиля линии объекта.

Описание:

Результатом действия оператора Create Pline является новый объект типа "полилиния". Вы можете сразу задать в операторе Create Pline все узлы полилинии. Вы можете также

использовать двухшаговую тактику: сначала постройте объект без узлов оператором Create Pline, и далее, используя оператор Alter Object, задайте все необходимые атрибуты полилинии.

Если оператор Create Pline использует предложение Into Variable, то созданный объект "полилиния" присваивается объектной переменной. Если после слов Into Window указывается окно, объект помещается на подготовленное место в окне (например, на изменяемый слой). Если предложения Into вообще нет в операторе, MapBasic попробует создать полилинию в активном окне; если это невозможно (например, поверх всех окон лежит окно Графика), то объект не будет создан. Параметры x и y являются координатами в той системе координат, которая была объявлена до оператора Create Pline. (Смотрите описание оператора Set CoordSys.) Если система не объявлялась, то координаты будут принимать значения широты и долготы. При этом надо учесть, что MapBasic игнорирует координатную систему самого окна Карты.

Если объект создается для окна Отчета, параметры x и y интерпретируются как координаты на листе в объявленных ранее единицах измерения листа. (Смотрите описание оператора Set Paper Units.) Так XLкоордината – это расстояние от левого края листа до точки, а YLкоордината – расстояние от верхнего края листа.

Замечание: Перед созданием объекта в окне Отчета не забудьте выполнить оператор Set CoordSys Layout.

Если в операторе не участвует предложение Pen, то оператор Create Arc использует установку соответствующего режима для стиля линии в MapInfo (стиль линии можно изменить командой НАСТРОЙКА > СТИЛЬ ЛИНИЙ).

Одна полилиния может состоять как из одной ломаной, так и из нескольких фрагментов. Однофрагментный объект типа "полилиния" может содержать до 32 763 узлов. Для многофрагментных объектов лимит узлов меньше: на каждую ломаную линию надо убавлять по три узла.

Смотрите также:

Alter Object, Insert, Pen, Update

Справочник MapBasic

143

Функция CreatePoint( )

Функция CreatePoint( )

Назначение:

Возвращает объект типа "точка".

Синтаксис:

CreatePoint(x, y)

где

x – XLкоордината точки (или широта), вещественное число; y – YLкоордината точки (или долгота), вещественное число.

Величина, полученная в результате:

Точка. Величина типа Object.

Описание:

Функция CreatePoint(_) возвращает объект типа "точка".

Параметры x и y задают координаты центра окружности в той координатной системе, которая была объявлена MapBasic ранее. Смотрите описание оператора Set CoordSys. Если система не объявлялась, то координаты будут принимать значения широты и долготы. При этом надо учесть, что MapBasic игнорирует координатную систему самого окна Карты.

Точечный объект будет создаваться в соответствии с установкой стиля символа для точечных объектов в операторе Set Style, который надо выполнить до функции CreatePoint(_). Вы можете также воспользоваться для создания объекта оператором Create Point, в котором используется предложение Symbol для определения стиля символа точки.

Графический объект, созданный функцией CreateLine(_), может быть присвоен объектной переменной, которая определяет значение уже существующей строки в таблице (оператор Update) или вновь созданной (оператор Insert).

Замечание: Перед созданием объекта в окне Отчета не забудьте выполнить оператор Set CoordSys Layout.

Пример 1:

В примере используется оператор Insert для создания новой строки в таблице SITES. Функция Cre4 atePoint(_) используется в теле оператора Insert для создания объекта типа "точка", данные которого будут помещены в этой строке.

Open Table "sites.tab"

Insert Into sites (obj)

Values ( CreatePoint( 72.5, 42.4) )

Пример 2:

В следующем фрагменте используются колонки "Xcoord" и "Ycoord" таблицы SITES, как содержащие координаты для точечных объектов, которые с помощью оператора Update и функции CreatePoint(_) будут присоединены к таблице SITES: каждый к соответствующей строке.

Open Table "sites"

Update sites

Set obj = CreatePoint(xcoord, ycoord)

144

Справочник MapBasic

Функция CreatePoint( )

Пример 3:

В приведенном выше примере подразумевается, что колонки "Xcoord" и "Ycoord" содержат значения широты и долготы. Файлы точек MapInfo для DOS содержат координаты в миллионных долях градуса, а не в целых градусах. Кроме того, в большинстве файлов точек MapInfo для DOS принято направление отсчета долгот с Востока на Запад. Поэтому, чтобы оператор Update мог корректно преобразовать файл точек из DOS в Windows, нужно разделить обе координаты на миллион и умножить "Xcoord" на минус единицу:

Update sites

Set obj = CreatePoint( xcoord/1000000,ycoord/1000000)

Смотрите также:

Create Point, Insert, Update

Справочник MapBasic

145

Оператор Create Point

Оператор Create Point

Назначение:

Создает объект типа "точка".

Синтаксис:

Create Point

[ Into { Window window_id | Variable var_name } ] (x, y)

[ Symbol... ]

где

window_id – идентификатор окна, целое число; var_name – имя объектной переменной;

x, y – координаты точки;

Слово Symbol начинает стандартное предложение для назначения стиля символа точечного объекта.

Описание:

Оператор Create Point создает новый точечный объект.

Если оператор включает предложение Into Variable, то созданный объект объявляется как значение объектной переменной. Если после слов Into Window указывается окно, объект помещается на подготовленное место в окне (например, на изменяемый слой). Если Into вообще нет в операторе, MapBasic попробует создать точку в самом верхнем окне; если это невозможно (например, поверх всех окон лежит окно Графика), то объект не будет создан.

Параметры x и y являются координатами в той системе координат, которая была объявлена до оператора Create Point. (Смотрите описание оператора Set CoordSys.) Если система не объявлялась, то координаты будут принимать значения широты и долготы. При этом надо учесть, что MapBasic игнорирует координатную систему самого окна Карты.

Если объект создается для окна Отчета, параметры x и y интерпретируются как координаты на листе в объявленных ранее единицах измерения листа. (Смотрите описание оператора Set Paper Units.) Так XLкоордината – это расстояние от левого края листа до точки, а YLкоордината – расстояние от верхнего края листа. Перед созданием объекта в окне Отчета необходимо выполнить оператор Set CoordSys Layout.

Предложением Symbol назначается стиль символа, которым точечный объект обозначается на Карте. Если в операторе это предложение не участвует, оператор Create Point использует установку соответствующего режима для стиля линии в MapInfo (стиль линии можно изменить командой НАСТРОЙКА > СТИЛЬ СИМВОЛОВ).

Смотрите также:

CreatePoint( ), Insert, Symbol, Update

146

Справочник MapBasic

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]