Графические объекты
описание структур данных графических объектов
Описание
В Scilab'е графическое окно и рисование его содержимого представлены
иерархическими объектами. Верхний уровень иерархии - это
Figure
("Окно"). Каждое окно
Figure
определяет по меньшей мере одного потомка
типа Axes
("оси"). Каждый объект осей
Axes
содержит набор листовых объектов, которые
являются основными графическими объектами такими, как
Polylines
("ломанные линии"),
Rectangles
("прямоугольники"),
Arcs
("дуги"), Segs
("сегменты"),...
Он может также содержать составной тип Compound
,
который является рекурсивным набором объектов. Главный интерес
графического режима заключается в том, чтобы сделать обмен
свойствами проще. Этот графический режим обеспечивает набор
графических функций высокого уровня (см. set, get),
используемых для управления свойствами объектов, такими, как данные,
координаты и масштабирование, цвет и вид без необходимости повторять
команды инициализации графики.
Графические объекты связаны с переменными Scilab'а типа
handle
("дескриптор"). Дескриптор - это
уникальный идентификатор, который связан с каждым образцом
созданного графического объекта. Используя этот дескриптор, можно
добраться до свойств объекта через функции set
и get
. Дескрипторы также используются для
манипулирования графическими объектами, чтобы двигать, копировать
или удалять их.
- Командное окно, кореневой объект, мышь:
По своим меню командное окно может рассматриваться как специальное графическое окно. К своим меню и некоторым графическим метанастройкам можно обращаться через их указатели, которые возращаются
c=get(0)
. См. подробности в Свойства командного окна.Корневой объект является виртуальным графическим объектом, используемым для получения свойств экрана компьютера. Его указатель тот же, что у командного окна:
r=get(0)
, но к свойствам экрана можно обращаться только в режиме чтения. См. подробности в Свойства корневого объекта.В Windows, можно получить некоторые дополнительные параметры экрана, окна и мыши через функцию getsystemmetrics.
- Figure:
Объект графического окна
Figure
- это верхний уровень иерархии графических объектов. Этот объект определяет параметры собственно графического окна, а также значения по умолчанию параметров при создании потомков. Потомки графического окна являются объектами осейAxes
.Дескриптор текущего графического окна (графического окна, используемого для построения графиков) может быть получен с помощью
get("current_figure")
и он может быть установлен с помощьюset("current_figure",h)
, гдеh
- это или дескриптор графического окна, илиfigure_id
. В последнем случае, если графическое окно ещё не существует, то оно будет создано.См. подробности в свойствах графического окна.
- Axes:
Объект осей The
Axes
- это второй уровень иерархии графических объектов. Этот объект определяет параметры для изменения координат и рисования осей, а также значений по умолчанию параметров для создания его потомков. См. подробности в свойствах осей. Дескриптор текущих осейAxes
может быть получен с помощьюget("current_axes")
.- Compound:
Составной объект
Compound
- это просто вектор потомков и с единственным свойством (свойство видимости). Он используется для склеивания набора объектов вместе.См. функции glue, unglue и свойства составного объекта Compound .
- Axis:
Объект оси
Axis
- это лист иерархии графических объектов. Этот объект определяет параметры для масштабирования и вида осей.См. подробности в свойствах оси.
- Polyline:
Объект ломаной линии
Polyline
- это лист иерархии графических объектов. Он определяет двумерные и трёхмерные ломаные линии и свойства рисования продолжения ломаных линий.См. подробности в свойствах ломаных линий.
- Arc:
Объект дуги
Arc
- это лист иерархии графических объектов. Этот объект определяет параметры эллипсов и части эллипсов.См. подробности в свойствах дуги.
- Rectangle:
Объект прямоугольника
Rectangle
- это лист иерархии графических объектов. Этот объект определяет параметры прямоугольников и залитых прямоугольников.См. подробности в свойствах прямоугольника.
- Surface:
Объект поверхности
Surface
- это лист иерархии графических объектов. У него есть подтипыFac3d
илиPlot3d
. Этот объект определяет параметры для графиков трёхмерной поверхности.См. подробности в свойствах поверхности.
- Fec:
Объект
Fec
- это лист иерархии графических объектов. Он представляет двумерные графики конечных элементов.См. подробности в свойствах fec.
- Grayplot:
Объект палитры серого
Grayplot
- это лист иерархии графических объектов. Он представляет двумерные графики поверхности с помощью цветов и изображений.См. подробности в палитре серого.
- Matplot:
Объект
Matplot
- это лист иерархии графических объектов. Он представляет двумерные графики с помощью матриц с целочисленными элементами.См. подробности в свойствах Matplot'а.
- Segs:
Объект сегментов
Segs
- это лист иерархии графических объектов. Этот объект определяет параметры для набора раскрашенных сегментов или раскрашенных стрелок.См. подробности в свойствах сегментов.
- Champ:
Объект фона
Champ
- это лист иерархии графических объектов. Этот объект определяет параметры двумерного векторного поля.См. подробности в свойствах фона.
- Text:
Объект текста
Text
- это лист иерархии графических объектов. Этот объект определяет параметры для рисования строк.См. подробности в свойствах текста.
- Label:
Объект подписи
Label
- это потомок графического объекта осейAxes
. Этот объект определяет параметры подписей к осям x, y и z, а также названия, нарисованного в графическом окне.См. подробности в свойствах объекта подписи Label.
- Legend:
Объект легенды
Legend
- это лист иерархии графических объектов. Этот объект определяет параметры легенды, рисуемой ниже графиковplot2dx
. Этот объект требует дальнейшей разработки.См. подробности в свойствах объекта легенды Legend.
Другие объекты
- Интерактивные компоненты (uicontrol)
Scilab позволяет создавать графические интерактивные компоененты такие как ползунки, числовые поля, изменяемые кнопкой мыши, редактируемые таблицы, редактируемые текстовые поля в графических элементах, флажки, группы кнопок, выпадающие списки, выпадающие меню кнопки и др. Эти объекты являются прямыми потомками фигуры, в которой они определены. Их свойства могут быть установлены и настроены через их указатели как и для других графических объектов. Пожалуйста, см. подробности в uicontrol properties.
- Меню пользовательского интерфейса
uimenu() позволяет добавлять и управлять некоторыми меню на панели меню любого графического окна.
uimenu()
возвращает указатель через который можно обращаться к содержимому и свойствам созданного меню. Пожалуйста, см. подробности в uimenus properties.
Примеры
// Проиграйте этот пример строчку за строчкой // создать графическое окно в объектном режиме // получить дескриптор объекта Figure и распечатать его свойства f = scf() a = f.children // дескриптор потомка - осей Axes x = (1:10)'; plot2d(x,[x.^2 x.^1.5]) e = a.children //Составной объект Compound двух ломаных линий p1 = e.children(1) // свойства последней нарисованной ломаной линии p1.foreground = 5; // изменение цвета ломаной линии e.children.thickness = 5; // изменение толщины двух ломаных линий delete(e.children(2)) move(e.children,[0,30]) //перевод ломаной линии a.axes_bounds=[0 0 0.5 0.5]; subplot(222) //создать новый объект осей Axes plot(1:10); a1 = f.children(1); // получить его дескриптор copy(e.children,a1); // скопировать объект ломаной линии первого графика в новый объект осей Axes a1.data_bounds = [1 0;10 100]; //изменить пределы осей Axes scf(10); //создать новое графическое окно с figure_id=10 plot3d() // график посылается в графическое окно 10 scf(f); // создать предыдущее графическое окно текущим plot2d(x,x^3) // график посылается в первоначальное графическое окно
Смотрите также
- set — set properties of some graphic objects or uimenus or uicontrol interactive components
- get — Gets the handle of a graphical or User Interface object, or the property's value of objects.
- move — move, translate, a graphic entity and its children.
- delete — delete a graphic entity and its children.
- ged — Scilab Graphic Editor
- редактор объектов — Interactive edition of hierarchical properties of graphic objects
- plot — 2D plot
- surf — 3D surface plot
- getsystemmetrics — Retrieves the specified system metric or system configuration setting (Windows only)
- setlookandfeel — sets the current default look and feel.
Report an issue | ||
<< Графики: введение | Графики | graphical editor >> |