- •Оператор Add Column
- •Оператор Add Map
- •Оператор Alter Button
- •Оператор Alter ButtonPad
- •Оператор Alter Cartographic Frame
- •Оператор Alter Control
- •Оператор Alter MapInfoDialog
- •Оператор Alter Menu
- •Оператор Alter Menu Bar
- •Оператор Alter Menu Item
- •Оператор Alter Object
- •Оператор Alter Table
- •Оператор AutoLabel
- •Оператор Beep
- •Оператор Browse
- •Предложение Brush
- •Функция ButtonPadInfo( )
- •Оператор Call
- •Функция•CartesianArea( )
- •Функция CartesianBuffer( )
- •Функция CartesianDistance ( )
- •Функция CartesianObjectLen( )
- •Функция CartesianPerimeter( )
- •Функция Centroid( )
- •Предложение CharSet
- •Функция ChooseProjection$()
- •Оператор Close All
- •Оператор Close File
- •Оператор Close Table
- •Оператор Close Window
- •Функция CommandInfo()
- •Оператор Commit Table
- •Оператор Continue
- •Предложения Control Button / OKButton / CancelButton
- •Предложение Control CheckBox
- •Предложение Control EditText
- •Предложение Control GroupBox
- •Предложения Control ListBox / MultiListBox
- •Предложение Control PopupMenu
- •Предложение Control RadioGroup
- •Предложение Control StaticText
- •Функция ConvexHull( )
- •Предложение CoordSys
- •Оператор Create Arc
- •Оператор Create ButtonPad
- •Оператор Create ButtonPads As Default
- •Оператор Create Cartographic Legend
- •Функция CreateCircle( )
- •Оператор Create Ellipse
- •Оператор Create Frame
- •Оператор Create Grid
- •Оператор Create Index
- •Оператор Create Legend
- •Оператор Create Line
- •Оператор Create Map
- •Оператор Create Map3D
- •Оператор Create Menu
- •Оператор Create Menu Bar
- •Оператор Create Object
- •Оператор Create Pline
- •Оператор Create Point
- •Оператор Create Ranges
- •Оператор Create Rect
- •Оператор Create Redistricter
- •Оператор Create Region
- •Оператор Create Report From Table
- •Оператор Create RoundRect
- •Оператор Create Styles
- •Оператор Create Table
- •Оператор Create Text
- •Функция CreateText( )
- •Функция DateWindow( )
- •Оператор DDEExecute
- •Оператор DDEPoke
- •Оператор DDETerminate
- •Оператор DDETerminateAll
- •Оператор Declare Function
- •Оператор Declare Sub
- •Оператор Define
- •Оператор Delete
- •Оператор Dialog
- •Оператор Dialog Preserve
- •Оператор Dialog Remove
- •Оператор Dim
- •Оператор Do Case...End Case
- •Оператор Do...Loop
- •Оператор Drop Index
- •Оператор Drop Map
- •Оператор Drop Table
- •Оператор End MapInfo
- •Оператор End Program
- •Процедура EndHandler
- •Оператор Error
- •Оператор Exit Do
- •Оператор Exit For
- •Оператор Exit Function
- •Оператор Exit Sub
- •Оператор Export
- •Оператор Fetch
- •Оператор Find
- •Оператор Find Using
- •Предложение Font
- •Оператор For...Next
- •Процедура ForegroundTaskSwitchHandler
- •Функция FormatDate$
- •Оператор Function...End Function
- •Оператор Get
- •Оператор Global
- •Оператор Goto
- •Оператор Graph
- •Оператор If...Then
- •Оператор Import
- •Оператор Include
- •Оператор Input #
- •Оператор Insert
- •Функция Int( )
- •Функция IsPenWidthPixels()
- •Оператор Kill
- •Функция LabelFindByID( )
- •Функция LabelFindNext( )
- •Функция Labelinfo( )
- •Оператор Layout
- •Функция LegendFrameInfo( )
- •Функция LegendInfo( )
- •Функция LegendStyleInfo( )
- •Оператор Line Input
- •Процедура Main
- •Функция MakeCustomSymbol( )
- •Функция MakeFontSymbol( )
- •Оператор Map
- •Функция Map3dInfo( )
- •Оператор Menu Bar
- •Функция MenuitemInfoByID( )
- •Оператор Metadata
- •Оператор Note
- •Функция NumAllWindows( )
- •Оператор Objects Check
- •Оператор Objects Combine
- •Оператор Objects Enclose
- •Оператор Objects Erase
- •Оператор Objects Intersect
- •Оператор Objects Overlay
- •Оператор Objects Split
- •Оператор OnError
- •Оператор Open File
- •Оператор Open Report
- •Оператор Open Table
- •Оператор Open Window
- •Оператор Pack Table
- •Предложение Pen
- •Функция PenPattern()
- •Функция PenWidthToPoints()
- •Функция PointsToPenWidth()
- •Оператор Print
- •Оператор Print #
- •Оператор PrintWin
- •Оператор ProgressBar
- •Оператор Put
- •Оператор Randomize
- •Оператор ReDim
- •Оператор Register Table
- •Оператор Reload Symbols
- •Процедура RemoteMapGenHandler
- •Процедура RemoteMsgHandler
- •Оператор Remove Cartographic Frame
- •Оператор Remove Map
- •Оператор Rename File
- •Оператор Rename Table
- •Оператор Reproject
- •Оператор Resume
- •Оператор Rollback
- •Оператор Run Application
- •Оператор Run Command
- •Оператор Run Menu Command
- •Оператор Run Program
- •Оператор Save File
- •Оператор Save Window
- •Оператор Save Workspace
- •Оператор Seek
- •Процедура SelChangedHandler
- •Оператор Select
- •Оператор Server Begin Transaction
- •Оператор Server Bind Column
- •Оператор Server Close
- •Функция Server_ColumnInfo( )
- •Оператор Server Commit
- •Функция Server_Connect( )
- •Оператор Server Create Map
- •Оператор Server Disconnect
- •Функция Server_DriverInfo( )
- •Функция Server_EOT( )
- •Функция Server_Execute( )
- •Оператор Server Fetch
- •Функция Server_GetodbcHConn( )
- •Функция Server_GetodbcHStmt( )
- •Оператор Server Link Table
- •Функция Server_NumCols( )
- •Функция Server_NumDrivers( )
- •Оператор Server Refresh
- •Оператор Server Rollback
- •Оператор Server Set Map
- •Оператор Set Application Window
- •Оператор Set Area Units
- •Оператор Set Browse
- •Оператор Set Cartographic Legend
- •Оператор Set Command Info
- •Оператор Set CoordSys
- •Оператор Set Date Window
- •Оператор Set Digitizer
- •Оператор Set Distance Units
- •Оператор Set Drag Threshold
- •Оператор Set Event Processing
- •Оператор Set File Timeout
- •Оператор Set Format
- •Оператор Set Graph
- •Оператор Set Handler
- •Оператор Set Layout
- •Оператор Set Legend
- •Оператор Set Map
- •Оператор Set Map3D
- •Оператор Set Next Document
- •Оператор Set Paper Units
- •Оператор Set ProgressBars
- •Оператор Set Redistricter
- •Оператор Set Resolution
- •Оператор Set Shade
- •Оператор Set Style
- •Оператор Set Table
- •Оператор Set Target
- •Оператор Set Window
- •Оператор Shade
- •Оператор StatusBar
- •Оператор Stop
- •Функция StyleAttr( )
- •Оператор Sub...End Sub
- •Предложение Symbol
- •Оператор Terminate Application
- •Функция Time()
- •Процедура ToolHandler
- •Оператор Type
- •Оператор UnDim
- •Функция UnitAbbr$( )
- •Оператор Unlink
- •Оператор Update
- •Оператор Update Window
- •Оператор While...Wend
- •Процедура WinChangedHandler
- •Процедура WinClosedHandler
- •Процедура WinFocusChangedHandler
- •Оператор Write #
- •Приложение A: Таблица кодов символов
- •Приложение В: Арифметические и географические операторы
- •ИНДЕКС
Функция CreateCircle( )
Функция CreateCircle( )
Назначение:
Возвращает объект "окружность".
Синтаксис:
CreateCircle(x, y, radius)
где
x – XLкоордината центра окружности (или широта), действительное число; y – YLкоордината центра окружности (или долгота), действительное число; radius – действительное число, назначающее радиус окружности.
Величина, полученная в результате:
Величина типа Object.
Описание:
Функция CreateCircle(_) возвращает графический объект типа "окружность".
Параметры x и y задают координаты центра окружности в той координатной системе, которая была объявлена MapBasic ранее. (Смотрите описание оператора Set CoordSys.) Если система не объявлялась, то координаты будут принимать значения широты и долготы. При этом надо учесть, что MapBasic игнорирует координатную систему самого окна Карты.
Параметр radius назначается в тех единицах измерения, которые были назначены MapBasic до выполнения этой функции. (Смотрите описание оператора Set Distance Units.) Если единицы не были объявлены, то радиус будет измеряться в милях.
Линия и заливка создаваемой окружности будут создаваться в соответствии с выбором стилей линии и штриховки в операторе Set Style, который выполняется до функции CreateCircle(_). Вы можете также воспользоваться для создания объекта типа "окружность" оператором Create Ellipse, в котором могут быть предложения Pen и Brush, для определения стилей линии и штриховки.
Графический объект, созданный функцией CreateCircle(_), может быть присвоен объектной переменной, которая задает значение для уже существующей строки таблицы (оператор Update) или вновь созданной (оператор Insert).
Замечание: Перед созданием объекта в окне Отчета не забудьте выполнить оператор Set CoordSys Layout.
Ошибки:
Функция вернет код ошибки ERR_FCN_ARG_RANGE, если значение аргумента выходит за пределы, заданные при его определении.
Пример 1:
В примере используется оператор Insert для создания новой строки в таблице SITIES. Функция CreateCircle(_) используется в теле оператора Insert для создания объекта "окружность", данные которого будут помещены в этой строке.
Open Table "sities.tab"
Insert Into sities (obj)
Values ( CreateCircle( 72.5, 42.4, 20) )
Справочник MapBasic |
117 |
Функция CreateCircle( )
Пример 2:
В следующем примере используется таблица TOWERS, которая имеет три колонки: "Xcoord", "YcoL ord" и "Radius". Колонки "Xcoord" и "Ycoord" содержат значения долготы и широты, где находятся радиостанции, а колонка "Radius" – значения радиусов областей их вещания.
Оператор Update использует функцию CreateCircle(_) для построения окружностей для каждой строки таблицы. После выполнения оператора каждой строке таблицы TOWERS будет присоединен соответствующий объект.
Open Table "towers"
Update towers
Set obj = CreateCircle(xcoord, ycoord, radius)
Смотрите также:
Create Ellipse, Insert, Update
118 |
Справочник MapBasic |
Оператор Create Ellipse
Оператор Create Ellipse
Назначение:
Создает эллипсы и окружности.
Синтаксис:
Create Ellipse
[ Into { Window window_id | Variable var_name } ] (x1, y1) (x2, y2)
[ Pen... ]
[ Brush... ]
где
window_id – идентификатор окна, целое число; var_name – имя объектной переменной;
x1, y1 – координаты одного угла прямоугольника, описывающего эллипс;
x2, y2 – координаты противоположного по диагонали угла прямоугольника, описывающего эллипс; Pen – слово, с которого начинается стандартное предложение для назначения стиля линии объекта; Brush – слово, с которого начинается стандартное предложение для назначения стиля штриховки объекта.
Описание:
Результатом действия оператора Create Ellipse является новый объект типа "эллипс". MapBasic создает объект, вписывая его в прямоугольник, задаваемый координатами двух противоположных углов. Такой прямоугольник называется минимальным прямоугольным покрытием объекта (МПП). Если оператор задает квадрат, то будет создана окружность, иначе – эллипс.
Если оператор включает конструкцию Into Variable, то созданный объект будет значением объектной переменной var_name. Если одним из параметров предложения Into указывается окно, объект помещается на подготовленное место в окне (например, на изменяемый слой). Если предложения Into вообще нет в операторе, MapBasic попробует создать эллипс в самом верхнем окне. Если это невозможно (например, поверх всех окон лежит окно Графика), то объект не будет создан.
Параметры x и y являются координатами в той системе координат, которая была объявлена до оператора Create Ellipse. (Смотрите описание оператора Set CoordSys.) Если система не объявлялась, то координаты будут принимать значения широты и долготы. При этом надо учесть, что MapBasic игнорирует координатную систему самого окна Карты. Если объект создается для окна Отчета, параметры x и y – координаты точки на листе в объявленных ранее единицах измерения листа. (Смотрите описание оператора Set Paper Units.) Так, XLкоордината – это расстояние от левого края листа до точки и YLкоордината – расстояние от верхнего края листа.
Предложения Pen и Brush назначают стиль линии и штриховки объекта. Если в операторе не участвует предложение Pen, оператор Create Rect использует установку соответствующего режима для стиля линии в MapInfo. Стиль линии можно изменить командой НАСТРОЙКА > СТИЛЬ ЛИНИЙ. (Аналогично тому, что предложению Brush в MapInfo соответствует команда НАСТРОЙКА > СТИЛЬ ОБЛАСТЕЙ.)
Смотрите также:
Brush, CreateCircle( ), Insert, Pen, Update
Справочник MapBasic |
119 |
Оператор Create Frame
Оператор Create Frame
Назначение:
Создает новый объект "рамка" в окне Отчета.
Синтаксис:
Create Frame
[ Into { Window layout_win_id | Variable var_name } ] (x1, y1) (x2, y2)
[ Pen ... ]
[ Brush ... ] [ Title title ]
[ From Window contents_win_id ] [ FillFrame { On | Off } ]
где
x1, y1 – координаты одного угла рамки; x2, y2 – координаты другого угла рамки;
layout_win_id – идентификатор окна Отчета, целое число; var_name – имя объектной переменной;
title – строка, задающая заголовок окна, изображение из которого будет помещено в рамку (не имеет смысла использовать, если в операторе используется предложение From Window);
contents_win_id – идентификатор окна, изображение из которого будет помещено в рамку, целое число.
Слово Pen начинает стандартное предложение для назначения стиля линии объекта;
Слово Brush начинает стандартное предложение для назначения стиля штриховки объекта.
Описание:
Результатом действия оператора Create Frame является новый объект типа "рамка" в окне Отчета.
Замечание: Перед созданием объекта в окне Отчета не забудьте выполнить оператор Set CoordSys Layout.
MapInfo запомнит установки в окне Отчета, если поместить оператор Create Frame в файл Рабочего Набора. Файл Рабочего Набора является текстовым, и его можно открыть и отредактировать в окне MapBasic.
Предложение Pen диктует стиль линии контура рамки, а предложение Brush задает стиль раскраски фона рамки.
Если оператор использует предложение Into Variable, то созданный объект будет значением объектной переменной. Если предложением Into Window layout_win_id указывается окно Отчета, объект помещается в это окно. Если предложения Into вообще нет в операторе, MapBasic попробует создать рамку в самом верхнем окне; если это невозможно (например, окно Отчета не лежит поверх всех окон), то объект не будет создан. Перед созданием объекта в окне Отчета необходимо выполнить оператор Set CoordSys Layout.
Предложение From Window используется для задания окна, изображение из которого будет показано в рамке. Для этого необходимо знать идентификатор окна. Окно должно быть уже открыто в MapInfo.
Предложение Title является альтернативой предложению From Window и тоже задает окно,
120 |
Справочник MapBasic |
Оператор Create Frame
изображение из которого будет показано в рамке. Для задания используется заголовок окна. Например, для окна Карты в котором показаны данные таблицы WORLD, предложение будет такое – Title "WORLD Map". Если нет окна для рамки, то параметр title должен быть равен пустой строке (""). Оператор создаст пустой объект.
Если Вы включили в оператор сразу два предложения Title и From Window, то только последнее из них подействует.
При создании рамки для окна Карты, можно применять предложение FillFrame, чтобы управлять заполнением рамки Картой: задание FillFrame On помещает всю Карту в рамку, FillFrame Off (или отсутствие предложения FillFrame) задает режим, в котором помещение рамки в окно зависит от соотношения высоты и ширины окна и рамка может не показывать Карту полностью. Эти режимы управляются флажком в диалоге “Рамка”.
Смотрите также:
Brush, Insert, Layout, Pen, Set CoordSys, Set Layout, Update
Справочник MapBasic |
121 |