Раздел: Документация
0 ... 361 362 363 364 365 Изменение угла обзора камерой объекта, расположенного на осях с указателем Нах ПРОИЗВОДИТСЯ при ПОМОЩИ обращения camzoom(Hax, р). □daspect— изменение или получение масштаба осей. •d = daspect — возвращает вектор d, определяющий масштаб текущих осей. •daspect ([х у z])— установка соотношения масштабов текущих осей, важна пропорция элементов вектора, например: daspect([l 2 1]) Hdaspect([10 20 10]) приводят К одинаковым результатам. Свойство DataAspectRatio принимает значение [х у z], a DataAspectRatioMode— manual. При отображении реальных геометрических объектов для сохранения соотношения геометрических размеров следует устанавливать [ 1, 1, 1], например: >> sphere » daspect([1 1 1]) •darmode = daspect (mode) — выходной аргумент является строковой переменной и содержит значение (auto или manua) свойства DataAspectRatioMode. •daspect (mode) — устанавливает режим выбора масштаба осей, т. е. СВОЙСТВО DataAspectRatioMode принимает значение mode (auto ИЛИ manual). •daspect (Нах, ...) — изменение или получение масштаба осей с указателем Нах. □pbaspect — установка или определение соотношения длин осей. •v = pbaspect — в вектор v записывается соотношение длин текущих осей. •pbaspect ([х у zj)— установка соотношения длин текущих осей, важна пропорция элементов вектора, например: pbaspect ([l l 1]) и pbaspect([io 10 Ю]> приводят к одинаковым результа там. Свойство piotBoxAspectRatio принимает значение [х у z], а PlotBoxAspectRatioMode — manual. •pbarmode = pbaspect ( mode) -—ВЫХОДНОЙ аргумент pbarmode ЯВЛЯет- ся строковой переменной и содержит значение (auto1 или manual) свойства PlotBoxAspectRatioMode. •pbaspect (mode) — устанавливает режим выбора соотношения длин осей, Т. е. свойство PlotBoxAspectRatioMode принимает значение mode (auto ИЛИ manual). •pbaspect<ах, ...)— изменение или получение соотношения длин осей с указателем нах. □view — установка или определение точки обзора. •view (az, el) или view ([az, el]) — задание положения точки обзора при помощи азимута и угла склонения, выраженных в градусах (см. разд. "Поворот графика, изменение точки обзора"главы J). •view(2) — задание двумерных осей с az = о, el = 90 (наблюдатель смотрит на оси сверху, вдоль оси z). •view(3) — изменение вида осей с азимутом и углом склонения, выбираемыми по умолчанию: az = -37.5, el = 30. •[az, el] = view — получение текущих значений азимута и угла склонения. •view(T) — установка точки обзора при помощи матрицы преобразования Т, size(T) = [4 4] (см. функцию viewmtx). •т = view— получение текущей матрицы преобразования значений азимута и угла склонения. □viewmtx — вычисление матрицы преобразования. •т = viewmtx (az, el) — возвращает матрицу ортогонального проектирования для отображения трехмерных объектов на плоскости (экране монитора) в соответствии с точкой обзора, определяемой азимутом и углом склонения (см. функцию view). Сама точка обзора на текущих осях не изменяется. Для получения матрицы проектирования, соответствующей текущему положению точки обзора, следует использовать обращение т = view. •т = viewmtx (az, el, phi) — возвращает матрицу проектирования, обеспечивающую перспективное изображение. Третий входной аргумент phi определяет величину перспективы, значение phi = о соответствует ортогональной проекции. Матрица т преобразует векторы длины четыре [х у z 1] • к векторам, первые две компоненты которых, поделенные на четвертую, являются искомыми проекциями на плоскость экрана. Листинг П7 содержит пример изображения куба с различной перспективой. I Листинг П7. Изменение перспективы изображения figure % Задание координат вершин куба х = [0 11000110011110 0]; у = [0 011000110 00111 1]; z = [0 00001111110011 0]; % Циклическое изменение значения перспективы for phi = 0:10:90 % Получение матрицы проектирования T = viewmtx(-37.5, 30, phi); % Нахоишение проекций V = Т*[х; у; z; ones(size(х))]; xl = v(l, :)./v(4, :); yl = v(2, :)./v(4, :); % Вывод результата на двумерные оси plot(xl, yl) pause (1] end 0 ... 361 362 363 364 365
|