8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 359 360 361 362 363 364 365

Управление видом графика, камера

Несколько разделов книги посвящены описанию способов, предлагаемых MATLAB для изменения вида графиков (см. разд. "Поворот графика, изменение точки обзора" главы 3 и разд. "Обзор графиков и поверхностей" главы 4).

Ниже приведены основные функции MATLAB, предназначенные для установки требуемого вида осей графического окна. Объектом в данном разделе будет называться содержимое осей (то, на что направлена камера), которое может состоять из нескольких графических объектов MATLAB, к примеру, поверхности (Surface) и многоугольника (Patch).

□ camdoily — изменение положения камеры и объекта.

•camdoily (dx, dy,dz) — перемещение камеры и объекта на dx, dy и dz в системе координат камеры. Перемещение вправо или влево определяется значением dx, вверх или вниз — dy, вдоль оси камеры — dz. Единицы измерения должны соответствовать видимой области, например, camdoily (1, -1, 0) приводит к перемещению объекта в левый верхний угол.

•camdoily (dx, dy, dz, targetraode) — дополнительный четвертый входной аргумент targetmode позволяет задать раздельное перемещение камеры и объекта. Значение movetarget* (используемое по умолчанию) соответствует перемещению и камеры, и объекта, а 1 f ixtarget — только камеры.

•h = title (...)— возвращает указатель на создаваемый заголовок (текстовый объект), свойства которого могут быть изменены при помощи функции set (см. разд. "Вывод текстовой информации"главы 9).

□ xiabel, yiabel и ziabei — подписи к осям (см. разд. "Оформление графика" главы 3).

•xiabel (str) — текст, содержащийся во входном аргументе (строке или строковой переменной), используется в качестве подписи к оси х (для остальных осей аналогично).

•xiabel (str, PropName, PropValue, ...) — помещаемая подпись к оси (объект text) имеет свойства, определяемые парами входных аргументов (см. разд. "Вывод текстовой информации"главы 9).

•h = xiabel (...) — возвращает указатель на создаваемую подпись к оси (объект text), для изменения его свойств следует воспользоваться функцией set (см. главу 9).


•camdolly (dx,dy,dz, targetmode, coordsys) — ПЯТЫЙ дополнительный аргумент coordsys предназначен для указания системы координат и единиц измерения перемещений, задаваемых dx, dy и dz. По умолчанию используется значение • camera, которое обеспечивает передвижение в системе координат камеры (см. функцию camdolly (dx, dy, dz) выше). Для изменения положения камеры на плоскости экрана следует использовать pixels, причем первые два входных аргумента dx и dy задают смещение в пикселах, a dz игнорируется. Часто удобно определять величины перемещений в системе координат осей, для чего следует в качестве пятого входного аргумента указать data.

•camdolly (нах, ...) — перемещение камеры и объекта осуществляется на осях с указателем Нах.

□ camiookat— направление камеры на нужный графический объект или объекты. Применяется в том случае, когда на осях расположено несколько графических объектов и требуется укрупнить вид одного или нескольких из них.

camiookat (h) — направление камеры на графический объект, указателем на который является h (в случае нескольких объектов используется вектор указателей). Последовательность команд, приведенная ниже, обеспечивает построение двух каркасных сферических поверхностей на одних осях и последовательное направление камеры сначала на первую сферу, а затем на вторую:

»

[X,

Y, Z] = sphere;

»

XI

=

X - 1;

»

Y1

=

У - 1;

»

Z1

=

Z - 1;

»

Х2

=

X + 1;

»

Y2

=

Y+l;

Z2

=

Z + 1;

»

HI

=

mesh(XI,

Yl, ZI);

»

hold

on

»

Н2

=

mesh(X2,

Y2, Z2);

»

camiookat(HI)

»

camiookat(H2)

□ camorbit — поворот камеры вокруг объекта.

• camorbit (dtheta, dphi) — поворот камеры вокруг объекта текущих осей на угол dtheta по горизонтали и dphi по вертикали (значения указываются в градусах). Листинг П4 содержит пример использова-


ния camorbit во вложенных циклах с целью осмотра поверхности со всех сторон.

Листинг П4. Вращение камеры вокруг объекта

figure

surf(peaks(40)) for i = 1:4 pause(1)

for j = 1:36

camorbit(10, 0)

pause(0.01) end

camorbit(0, 90)

end

Возможно указание различных способов поворота камеры вокруг объекта.

•camorbit (dtheta, dphi, coordsys, direction) — дополнительные входные аргументы coordsys и direction предназначены для указания системы координат и направления, вокруг которого происходит поворот. Возможны два значения для coordsys: data* (используется по умолчанию) и camera. Если указано data, то поворот камеры происходит вокруг линии, идущей вдоль выбранного направления от точки, на которую нацелена камера. Направление задается во входном аргументе direction и может быть вектором из трех координат [х у z] или символами х, у или z для указания поворота вокруг определенной координатной оси. Выбор в качестве coordsys значения 1 camera приводит к повороту на угол dtheta по горизонтали и dphi по вертикали относительно точки объекта, на которую нацелена камера.

•camorbit (Нах, ...) — поворот камеры применяется к объектам, расположенным в пределах осей с указателем Нах.

□ сатрап— поворот объекта вокруг камеры. Использование аналогично

camorbit.

П campos — установка или определение положения камеры. Положение камеры определяется вектором из трех элементов в декартовой системе координат.

•с = campos — выходной аргумент вектор с содержит координаты камеры в декартовой системе координат текущих осей.



0 ... 359 360 361 362 363 364 365