Spec-Zone.ru › Octave 7

15.3.5 Управление свойствами по умолчанию

Свойства объектов имеют два класса значений по умолчанию: значения по умолчанию по умолчанию (начальные значения) и пользовательские значения по умолчанию, которые могут переопределять значения по умолчанию по умолчанию.

Хотя значения по умолчанию могут быть установлены для любого объекта, они устанавливаются в родительских объектах и применяются к дочерним объектам указанного типа объекта. Например, установка свойства color по умолчанию для объектов line в значение "green" для объекта root приведет к тому, что все объекты line унаследуют color "green" в качестве значения по умолчанию.

set (groot, "defaultlinecolor", "green");

устанавливает цвет линии по умолчанию для всех объектов. Правило построения имени свойства для установки значения по умолчанию таково:

default + object-type + property-name

Это правило может привести к некоторым странно выглядящим именам, например, defaultlinelinewidth" задает свойство linewidth по умолчанию для объектов line.

В приведенном выше примере использовался корневой объект, поэтому значение свойства по умолчанию будет применено ко всем объектам линии. Однако значения по умолчанию иерархичны, поэтому значения по умолчанию, заданные в объектах фигуры, переопределяют значения, заданные в корневом объекте. Аналогично, значения по умолчанию, заданные в объекте оси, переопределяют значения, заданные в объектах фигуры или корневого объекта. Например,

subplot (2, 1, 1);
set (groot, "defaultlinecolor", "red");
set (1, "defaultlinecolor", "green");
set (gca (), "defaultlinecolor", "blue");
line (1:10, rand (1, 10));
subplot (2, 1, 2);
line (1:10, rand (1, 10));
figure (2)
line (1:10, rand (1, 10));

производит две фигуры. Линия в первом подграфике первой фигуры синяя, потому что она наследует свой цвет от родительского объекта оси. Линия во втором подграфике первой фигуры зеленая, потому что она наследует свой цвет от родительского объекта фигуры. Линия во втором окне фигуры красная, потому что она наследует свой цвет от глобального корневого объекта.

Чтобы удалить пользовательское значение по умолчанию, установите свойство по умолчанию в значение "remove". Например,

set (gca (), "defaultlinecolor", "remove");

удаляет пользовательское значение по умолчанию для цвета линии из текущего объекта оси. Чтобы быстро удалить все пользовательские значения по умолчанию, используйте функцию reset.

По умолчанию высокоуровневые функции построения графиков, такие как plot, сбрасывают и переопределяют свойства осей независимо от значений по умолчанию. Примером такого свойства является свойство оси box: оно устанавливается on высокоуровневыми функциями 2D-графики независимо от свойства "defaultaxesbox". Используйте функцию hold для предотвращения этого поведения:

set (groot, "defaultaxesbox", "off");
subplot (2, 1, 1);
plot (1:10)
title ("Box is on anyway")
subplot (2, 1, 2);
hold on
plot (1:10)
title ("Box is off")
: reset (h) ¶

Сбрасывает свойства графического объекта h до их значений по умолчанию.

Для фигур свойства "position", "units", "windowstyle", и "paperunits" не изменяются. Для осей свойства "position" и "units" не изменяются.

Ввод h также может быть вектором дескрипторов графических объектов, в этом случае каждый отдельный объект будет сброшен.

См. также: cla, clf, newplot.

Получение свойства "default" объекта возвращает список пользовательских значений по умолчанию, установленных для объекта. Например,

get (gca (), "default");

возвращает список пользовательских значений по умолчанию для текущего объекта оси.

Значения по умолчанию по умолчанию хранятся в корневом объекте. Команда

get (groot, "factory");

возвращает список значений по умолчанию по умолчанию.

© 1996–2022 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v7.2.0/Managing-Default-Properties.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API